Diablo® III

OS X authenticator behavior

On OS X the feature of "occasionly" asking for a new code is not working. It asks every time at game login for a code regardless of the option set in the Battle.net authenticator options.

I don't think this is a regression. To knowledge this never worked correctly on OS X. At least there are several reports in the past. Most prominent I know of:

http://eu.battle.net/d3/en/forum/topic/4847926347

The same account on windows from the same location works as expected/advertised. On OS X it is not.

I created a ticket for this issue twice. Each time it was "forwarded" to the "respective" recipients but nothing can be done at this point from them. They are probably right.. but..

We are here at 1.0.8. It is still not fixed or even acknowledged as a bug (or denied).
Reply Quote
MVP - Technical Support
View profile
I've not seen this problem in OS X so far. The authenticator asking for your code each login should be platform agnostic - it depends upon your IP address and the information stored in the session ID on the server side, and expires one week from creation or when your IP address changes.

The IP address in question here would be that of your cable/DSL modem since that is the WAN IP (internet level address) Blizzard's servers see. It could be that you are experiencing corrupt preferences, or locked preferences.

Could you check in the following folders to see if you have any files with .lock or .lockfile appended to their names?

/Users/Shared/Battle.net/
/Users/UserName/Library/Preferences
/Users/UserName/Library/Application Support/Blizzard/Diablo III/

To gain access to the /Users/Library folder, also commonly written as ~/Library, hold down the Option key while selecting the Go menu from within the Finder and choose Library, which is normally hidden from view.

If you have any files with .lock or .lockfile with a Blizzard affiliated name, delete the lockfiles (but leave the originals!). Those files are created when the OS accesses them to prevent something else from gaining simultaneous access which could corrupt them. It's part of the "sandbox" security system OS X uses.

If you do not find any lockfiles and/or this persists afterward, please try removing the authenticator and reattaching it. If you are using the mobile authenticator, make sure not to use the Restore code when reattaching it to your account - let Battle.net give you a new serial number to enter, as this will clear the battle.net cache and give you a clean slate to work from.
Reply Quote
Thanks for the reply. Due to the fragmentation of the Battle.net regions it seems not to be so easy to get feedback on some issues.

I have found these two files and deleted them:

/Users/UserName/Library/Preferences/com.blizzard.diablo3.plist.lockfile
/Users/UserName/Library/Preferences/com.blizzard.Launcher.DriverInfo-diablo3_engb.plist.lockfile


I also tried to "start fresh" by deleting the users preference directory:

/Users/UserName/Library/Application\ Support/Blizzard/

So now I have these files in the user's specific directory.

$ find Library/Application\ Support/Blizzard/Diablo\ III/
Library/Application Support/Blizzard/Diablo III/
Library/Application Support/Blizzard/Diablo III/D3Prefs.txt


$ find Library/Preferences/ | grep bliz
Library/Preferences/com.blizzard.diablo3.plist
Library/Preferences/com.blizzard.Launcher.DriverInfo-diablo3_engb.plist


I still can't get the authenticator questionaire to behave as I would like to (that is - like it works for me on Windows).

I have gone through the process of generating a new authenticator ID earlier. (I reseted my phone but forgot to write down the ID - so I required to Blizzard to remove the authenticator and I could create a new one). The behavior was the same with both.

Of course it can be still a file permission issue. It would make sense that some kind of token is stored in the Battle.net folder as this is probably more of a a Battle.net than Diablo feature(?).

The shared Battle.net directory is a little bigger though. So I'm not so sure where to look first. There are no .lock files here at least.

OT. I noticed that the Battle.net app still has some references to the subversion repository where it was build from. Maybe remove them in future releases:

$ find /Users/Shared/Battle.net/ -iname .svn
/Users/Shared/Battle.net/Client/Blizzard Launcher.app/.svn
/Users/Shared/Battle.net/Client/Blizzard Launcher.app/Contents/.svn
/Users/Shared/Battle.net/Client/Blizzard Launcher.app/Contents/MacOS/.svn
/Users/Shared/Battle.net/Client/Blizzard Launcher.app/Contents/Resources/.svn


Any further hints what to check for will be highly appreciated. I don't mind debugging some around since this one is so annoying.. gnnnnggnn.. ;-)
Reply Quote
MVP - Technical Support
View profile
Could you try deleting both of the following folders and see if this resolves the issue?

/Users/Shared/Battle.net
/Users/Shared/Blizzard/Battle.net

Make sure not to delete the /Users/Shared/Blizzard folder itself as it contains actual game preferences. You only want to delete the Battle.net related files listed above.

The .svn components are not present in my Blizzard Launcher build, or any other part of my Blizzard file structure, so you probably have leftover from a PTR version. Deleting the two folders above will recreate the proper client launcher programs and give you a clean slate where Battle.net is concerned.
Reply Quote
I tried that. Still no luck.

Some additional tidbits:

/Users/Shared/Blizzard only contained the Battle.net folder. No game preferences found here. Kind of makes sense since the game preferences are probably stored on a per user basis in the ~/Library location (just guessing). So I decided the remove it completely.

The new, automatically created folders indeed do not contain the .svn leftovers anymore. I never was on PTR though. They might have been left overs from some patch from 1.0.0 to 1.0.8.

Could it be an issue with non-english-language Versions of OS X? Some unexpected client string send to the server? I just know too little about the implemented system to think of something. Normally I'd say that even a matching IP address should be enough for validation - but of course if there is an additional token or cookie thing stored locally.. there is no debug log right? :-)

EDIT

Of there is:

2013.05.25 12:18:38.711946130 ===== Battle.net Platform : Connect =====
2013.05.25 12:18:38.712370301 ===== Battle.net Platform : Connect =====
2013.05.25 12:18:38.714272719 ===== Battle.net Platform : calling Interface.Connect to Bnet eu.actual.battle.net:1119 =====
2013.05.25 12:18:38.858115616 >>> Platform::CheckAssert_OnAPIInitialized Platform::OnAPIInitialized_Authentication_Internal code=0
2013.05.25 12:18:38.858459631 >>> Platform::CheckAssert_OnAPIInitialized Platform::OnAPIInitialized_Challenge_Internal code=0
2013.05.25 12:18:38.860025620 >>> Platform::CheckAssert_OnAPIInitialized Platform::OnAPIInitialized_Report_Internal code=0
2013.05.25 12:18:38.860107689 >>> Platform::OnConnected_Internal code=0 connId=1 address=eu.actual.battle.net port=1119
2013.05.25 12:18:38.860258569 ===== Battle.net Platform : Connected to Battle.net =====
2013.05.25 12:18:38.860357108 ===== Battle.net Platform : Authentication.Logon xxx@xxx.com =====
2013.05.25 12:18:38.895183073 >>> xxx@xxx.com BnetService::Authentication::LogonCallback code=0
2013.05.25 12:18:38.934147629 >>> AuthenticationListener::OnUpdate code=0
2013.05.25 12:18:39.089098501 >>> AuthenticationListener::OnModuleMessage name=RequestPassword
2013.05.25 12:18:39.089483098 >>> xxx@xxx.com BnetService::Authentication_OnModuleMessage name=RequestPassword
2013.05.25 12:18:39.282145256 >>> AuthenticationListener::OnModuleMessage name=RequestToken
2013.05.25 12:18:39.282467319 >>> xxx@xxx.com BnetService::Authentication_OnModuleMessage name=RequestToken
2013.05.25 12:18:40.750035000 ENDING GAME


Not much to see here I guess since "everyhting works as expected". But the question remains - why is there a request for a token? :/
Edited by Tuna#1227 on 5/25/2013 4:22 AM PDT
Reply Quote
MVP - Technical Support
View profile
You noted that you wiped the /Users/Shared/Blizzard folder, but did you also wipe the /Users/Shared/Battle.net folder as well? That contains all of the Agent client data and is recreated when you run the launcher again.

Your logs show you are accessing eu.actual.battle.net - is the Europe region your actual home region (as in is your client also downloaded from eu.battle.net)? The reason I ask is because if you live in the US and select Europe as your region, because your IP does not originate in the EU zone, battle.net would flag you as playing outside your region and always ask you for your authenticator code as a security measure. Military personnel abroad have the same issue to deal with.
Reply Quote
Sorry that I didn't mentioned it, but yes, I deleted both of the directories. At least by doing that I saved a couple of megabytes that seemed accumulate over time by the various patch updates.

Europe is my home region. I play from Germany but installed an English client version. It is been a year since I downloaded it so I can't remember where I actually got it from. I remember I tried to carefully select the package and chose enGB over enUS. I verified that the files in the app directory still carry the enGB names.

Does it make a difference where I downloaded the enGB torrent client from? Is there a way to verify what client I have and if it is the correct one? I didn't know that the client itself distinguishes itself here. I thought this was handled by what region I set in the Battle.net account..
Reply Quote
MVP - Technical Support
View profile
If you chose the enGB client then you should be set.

I've gone through everything you've said, and also done my own research on this. It seems that every last thread I've encountered with this issue comes from the EU region. I'm going to see if this can be escalated so the European IT team can look into this. I can't offer any guarantees, but at least I'll try to get it looked into.

Until then it looks like you'll need to enter your authenticator code each time you log in.
Reply Quote
Cool, thanks a lot. I know the outcome is uncertain but knowing that it is being looked into reliefs me a bit.

I'm pretty sure there is something.. the other reports on the EU forum just line up too well with my issue.

Fortunately this one is not critical - but it would be more comfortable if it works correctly. Life is complicated enough already ;-)
Reply Quote
More on this topic.

This time I have another machine at my place. I reinstalled from scratch. OS X and Diablo. This time I select English as the main language for the OS. I'm kind of certain I selected the EU_en client but can't verify at this point.

The authenticator works correctly now and asks me like it does on Windows. Another thing I noticed is that the in-game clock now shows up in 12H format instead of 24H. I tried switching the main language on the other machine that has issues to English as well to see if that helps but with no success. Also the clock was still in 24H format.

I wonder how Diablo determines the locale. And if that can have an impact on the authenticator.

====

Alright. With the spare machine around I decide to take the bitter pill and "re-roll" OS X. Now having a fresh OS X and Diablo install the authenticator is working as intended. So it was a local issue with the machine's install after all. It is too bad I couldn't figure out what it was. It may have been the 10.7 to 10.8 update step, or a difference between the Day-Zero pre-installer of Diablo and the current web installer or something completely different..

Anyway.. I'm alright now for the moment!
Edited by Tuna#1227 on 6/15/2013 10:58 PM PDT
Reply Quote
MVP - Technical Support
View profile
I think I may have figured out what it was. I had recently dealt with the new Battle.net Desktop App being tested in beta right now and one of its uninstall instructions is to delete the file net.battle.authenticator.prefs in the ~/Library/Preferences folder. Authenticator issues rarely come up, so that was a file I easily overlooked. Had I seen/known of that file off the top of my head earlier I might have saved you an OS reinstall.

As for the 24H clock that's an easy one. Go to System Preferences -> Date & Time -> Clock and deselect Use a 24-hour clock. Diablo III should no longer use that clock. It gets its time from system time so it would honor the current setting in the OS AFAIK.

Anywho, if you get any authenticator issues again, refer to that file above. It may just save you some real headaches. I only wish I'd seen it referenced sooner.
________________________________________________
Diablo III and World of Warcraft Technical Support MVP
Official Mac Tech Support Forum Cookie™ (Mint Chocolate Chip)
Guaranteed tasty; Potentially volatile when dipped in General Forums Syrup®
Caution: This cookie bites back.
Reply Quote
A small correction on the 24H time display. It is not picked up by the clock setting. Instead it picks up from the set locale of the system.

On Mountain Lion this can be configured at System Preferences -> Language & Text -> Region.
Reply Quote

Please report any Code of Conduct violations, including:

Threats of violence. We take these seriously and will alert the proper authorities.

Posts containing personal information about other players. This includes physical addresses, e-mail addresses, phone numbers, and inappropriate photos and/or videos.

Harassing or discriminatory language. This will not be tolerated.

Forums Code of Conduct

Report Post # written by

Reason
Explain (256 characters max)
Submit Cancel

Reported!

[Close]