Hyphen-ated / RebirthItemTracker

Uses the log.txt file to track item pickups in Binding of Isaac: Rebirth.
BSD 2-Clause "Simplified" License
121 stars 26 forks source link

Items and floors are forgotten when exiting and continuing #149

Closed josh-cook closed 4 years ago

josh-cook commented 5 years ago

I will try to get an image to be more helpful with this image but away from my computer.

Say you're on Caves 1 and you have multiple items and you exit out to the main menu, then you continue the run you were on, all items dissappear and it states you're on basement 1 until you going down to a new floor (caves 2 ) then your items start from caves 2 so it jumps from B1 -> C2.

Should be easily replicatable, let me know if you need more info other than screenshots. Thanks.

Note: I did check this issue but I think it's slightly different #58

Hyphen-ated commented 5 years ago

I'm unable to reproduce this. Are you closing the game after exiting to the main menu, and you forgot to mention this? It's documented in the readme that the tracker will forget all your stuff if you do this.

If you aren't closing the game, what version of the game are you playing?

Hyphen-ated commented 5 years ago

You may ask "why doesn't the tracker just remember your run between game launches?" The tracker currently doesn't persist any state about runs; it reads it all from the game's log.txt, which the game wipes clean at launch. Changing this would add substantial extra complexity, and raises some questions about how to make sure we don't merge runs that shouldn't be merged. Nobody has cared enough about the potential improvement here that they decided to do that work.

josh-cook commented 5 years ago

Looks like it was a one off, not sure what happened (maybe my game had a bad time). Regarding your last comment, yeah the complexity added for the remember of the previous games state I can imagine would be relatively bigger.

Just a question on that, would it be easy to store that data (of the continued game) in a storedlog.txt and continue from that rather than log.txt unless the game only writes to log.txt which means that you'd need to continually write to storedlog.txt which is horrid, not really familiar with the language used so not sussed that part out myself.

Thanks for looking into this though, keep up the good work. Feel free to close the issue whenever :+1: