Bug Turns_Spent can be lost over RO

Alium

Member
Tested on r25834 and r25863

$location[].turns_spent can be lost over RO. Steps to reproduce:
  1. Adventure anywhere
  2. Don't close mafia
  3. Wait for roll over
  4. Click refresh button in Mafia UI (haven't tested other refresh options like closing the window)
  5. Turns_spent for where you adventured is not correct
Attached file is copied out of gCLI and shows the issue. I put a couple comments in there too.

Have tried the following and no error. Was thinking issue was mafia getting forced logged out without knowing about it.
  1. Adventure anywhere
  2. Don't close mafia
  3. Log in and out to account outside of mafia
  4. Click refresh button in Mafia UI
  5. Turns_spent for where you adventured is correct
 

Attachments

I've gotten this bug quite a few times. One small addition is that it can sometimes happen "silently", where even though you have actively closed out of the Mafia UI, the Java process doesn't terminate after attempting to close Mafia, leaving a small ghost process using a minimal amount of RAM that nonetheless prevents mafia from saving the .ser file on close; in cases like that, Mafia tends to (mostly) correctly store preference changes but thinks you've spent zero turns in every zone. It's possible to work around, but kind of irritating; I've definitely gotten into the habit of writing down the delay left in key zones before I log out on a speedrun just in case this bug rears its head again.
 
The only solution I can think of is to have some sort of persistence thread that periodically persists your turns_spent
 
Tried logging out after roll over instead of refresh button.
  1. Adventure anywhere
  2. Don't close mafia
  3. Wait for roll over
  4. Click general -> log out
  5. Log back in
  6. Turns_spent for where you adventured is correct
I'm guessing the refresh button doesn't log out.. haven't looked at code. Could add logging out to refresh button to help with part of the issue. Doesn't resolve scotch's issue though.
 
Back
Top