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

"check_end_run" hasn't the expected behaviour #83

Closed viroulep closed 7 years ago

viroulep commented 8 years ago

These lines from the function :

if self.bosses and self.bosses[-1][0] in ['???', 'The Lamb', 'Mega Satan']:
    end_type = "Won"

I don't know if it worked with Rebirth, but with Afterbirth it's broken : the end_type can never be "Won" because neither of "???"/"The Lamb"/"Mega Satan" is added to the boss encountered list.

Boss detection is achieved by looking for "Mom clear times", and in afterbirth's logs it only concerns Mom's death (I don't know/remember for Rebirth).

What I've found is that at the end of each boss the following log output occurs :

deathspawn_boss, color idx -1
Boss %bossid% added to SaveState

I believe we can rely on the second line to determine boss clearing, as it is output only when the player defeats the boss. I did some research and made some id/boss name association :

If this looks good to you I'll push a fix to #82.

Hyphen-ated commented 8 years ago

should we just cut this? we're not using it in a meaningful way, are we?

viroulep commented 8 years ago

Right now no, but if we want to restore the "run summary" thing it may be a nice information (?).

Zamiell commented 8 years ago

I vote cut it. Besides, nothing you get after the state changes to "Won" would affect the run summary.

viroulep commented 8 years ago

Unless someone actually has a need for this, we could indeed cut it. (Which would make the "bosses" field useless in the serialization)

Hyphen-ated commented 7 years ago

all boss stuff was cut