matoom / frostbite

MUD client for dragonrealms.
29 stars 17 forks source link

Frostbite.exe has stopped working #25

Closed Temig closed 7 years ago

Temig commented 7 years ago

When logging in the application crashes on the connection wizard as soon as it tries to display my character list. I've tried on different computers, running as administrator, in compatibility mode, basically everything I can think of.

This only started happening after upgrading my account to Premium (I was literally logged in through Frostbite, logged out, upgraded the account, and the issue started then and there).

The auth logs show a response from the login server with a character list, but the Frontend crashes regardless.

matoom commented 7 years ago

I've never had a chance to test it with a premium account or more than one character slot. The login procedure doesn't exactly follow any particular specification, it's all reverse engineered.

It would be helpful if you could provide the auth log with all the personal information omitted/obfuscated but with the other (hidden) symbols still intact. I'm sure it's nothing that can't be fixed but without any hard data it's pretty tough.

Or possibly the user ohbeanz might have some idea since he was the one who introduced the multi-character selection feature. https://github.com/matoom/frostbite/pull/7

Meanwhile if you're using the windows version you can still likely get logged in if you use the ".sal" file from the dr website.

  1. sign in: https://www.play.net/dr/signin_needed.asp
  2. select wizard or stormfront (which ever you don't have installed)
  3. *.sal file download pops up
  4. run client with the sal location - "Frostbite.exe *.sal"
matoom commented 7 years ago

Or if you could just point out any differences from the auth log. I have a mock server set up and this is what it basically looks like: https://github.com/matoom/frostbite/blob/master/support/mock.rb

Usually if you have a character called "Test" for example you should see something like this:

C 1 1 0 0 W_TEST_001 Test

Temig commented 7 years ago

My current auth log show the following: C 3 16 1 1 W_ACCTNAME_000 Char1 W_ACCTNAME_002 Char2 W_ACCTNAME_003 Char3

It's at that point that is crashes and did so even when I had a single character on a premium account with an auth log line that read:

C 1 16 1 1 W_ACCTNAME_000 charName

The only other differences I see are the server returns to the F and G command which now read: F PREMIUM G DragonRealms PREMIUM 0 ROOT=sgc/dr MKTG=info/default.htm MAIN=main/default.htm GAMEINFO=information/default.htm PLAYINFO=main/default.htm MSGBRD=message/default.htm CHAT=chat/default.htm FILES=files/default.htm COMMING=main/default.htm STUFF=main/comingsoon.htm BILLINGFAQ=account/default.htm BILLINGOPTIONS=offer/payment.htm LTSIGNUP=https://account.play.net/simunet_private/cc-signup.cgi BILLINGINFO=http://account.play.net/simunet_private/acctInfo.cgi?key={KEY}&SITE=sgc GAMES=main/games.htm FEEDBACK=feedback/default.htm MAILFAIL=/sgc/dr/feedback/mailfail.htm MAILSUCC=/sgc/dr/feedback/mailsent.htm MAILSERVE=SGC SIGNUP=http://ad-track.play.net/sgc/signup_redirect.cgi SIGNUPA=http://ad-track.play.net/sgc/signup_again.cgi instead of: F NORMAL G DragonRealms NORMAL 0 ROOT=sgc/dr MKTG=info/default.htm MAIN=main/default.htm GAMEINFO=information/default.htm PLAYINFO=main/default.htm MSGBRD=message/default.htm CHAT=chat/default.htm FILES=files/default.htm COMMING=main/default.htm STUFF=main/comingsoon.htm BILLINGFAQ=account/default.htm BILLINGOPTIONS=offer/payment.htm LTSIGNUP=https://account.play.net/simunet_private/cc-signup.cgi BILLINGINFO=http://account.play.net/simunet_private/acctInfo.cgi?key={KEY}&SITE=sgc GAMES=main/games.htm FEEDBACK=feedback/default.htm MAILFAIL=/sgc/dr/feedback/mailfail.htm MAILSUCC=/sgc/dr/feedback/mailsent.htm MAILSERVE=SGC SIGNUP=http://ad-track.play.net/sgc/signup_redirect.cgi SIGNUPA=http://ad-track.play.net/sgc/signup_again.cgi

matoom commented 7 years ago

Ok, thanks. Crash confirmed.

It's caused by the regex QRegExp rx("\\t(\w{2,})"); which i guess was supposed to grab all the account and user names but in this case it matches the number "16" from the \w{2,}. I don't know if i can just simply make it 3 character minimum.

I'll have to think about it a little bit but one way or another, i'll come up with a new release soon. If you have a platform preference (win, linux or mac), let me know so i can do that one first.

Temig commented 7 years ago

WIN would be great 👍 Getting tired of all of the random SF crashes so looking forward to moving back over :) Thanks!

matoom commented 7 years ago

Ok, a new version with a fix should be up now.

https://github.com/matoom/frostbite/releases/tag/v1.6.4-beta

There was still a some concern as i was testing the data you posted on the comment section and there was one TAB character somehow missing from there. Hopefully that was just something that got lost in the comment formatting but if not probably needs a few more changes. If you can try it and let me know if it works now.

As always the settings are still part of the installation package and the possibility of moving profiles to the system user folder is still on the todo list. If you want to keep all the previous settings you can just copy the binary (frostbite.exe) from the install package (unless you have some really old version).

Temig commented 7 years ago

I'm still crashing, but I think you uploaded the wrong package. The new .exe has the same MD5 checksum as the old version I had.

matoom commented 7 years ago

You're right indeed, which incidentally means that the previous version was also not correctly uploaded. :)

I re-uploaded under the same release as before : https://github.com/matoom/frostbite/releases/tag/v1.6.4-beta

Temig commented 7 years ago

Up and running! Thanks for the quick fix!