Closed MrSanker closed 2 years ago
just tried to reproduce this, made sure i had fast chests turned off, started opening the ice trap chests in the light trial
i didn't see any long animations
you said "every single ice trap," could you try the ice traps in the room with 6 chests in the light trial?
I am able to replicate this on a vanilla save with fast chests off. In both the ice trial (water trial?) and Light trial.
@leggettc18 just in rachael or can you get it to happen when running latest dev in debug from code too?
just tried to reproduce this, made sure i had fast chests turned off, started opening the ice trap chests in the light trial
i didn't see any long animations
you said "every single ice trap," could you try the ice traps in the room with 6 chests in the light trial?
oh hey, sorry for not reading earlier, but the awnser is yes, it happens here too, and in the ice cavern ones, and every single ice trap chest, also, just in case, this is rachael alfa, not a dev build
@briaguya-ai I'm not sure if it's latest dev but it's one of the branches I was working on that has commits post Rachael Alfa. I'll pull latest dev in a minute. It looks to me like get GetItemEntry for the ice traps that was added for rando has CHEST_ANIMATION_LONG on it. The fix should probably be to not use that entry for vanilla rather than changing the chest animation though. Although that doesn't explain why you weren't able to replicate it if you're 100% certain fast chests was off for you.
EDIT: Confirmed it still happens for me on latest dev
weird, so i had fast chests on, then opened one, then turned fast chests off, opened another and wasn't able to repro
but after restarting the game with fast chests off from the get-go i was able to repro
weird, so i had fast chests on, then opened one, then turned fast chests off, opened another and wasn't able to repro
but after restarting the game with fast chests off from the get-go i was able to repro
sooooo, in order to reproduce the error you have to launch the game with fast chests off?
also one thing is that i tried to reproduce the error in the title screen savefile and it didnt worked, only works on real savefiles
looks like we're relying on getting the ogID from GetRandomizedItemId, which shouldn't be an issue but probably is in the ice trap scenario for some reason
as for the fast chests issue, that seems like a different issue, probably is fixed by reloading a room with fast chests off but i haven't done too much investigation there
now the debug save stuff is completely new, no idea how that would impact any of this...
We're talking vanilla save files here, so GetRandomizedItemId wouldn't even be in the picture here would it?
it looks like we didn't have a 64dd check around this, but it shouldn't be a problem considering getrandomizeditemid would just be returning the ogid in that scenario, but even wrapping all that in a 64dd check didn't seem to fix it https://github.com/briaguya-ai/Shipwright/commit/6361f626b1256a9c735f247bd2a4bfdc48246b3f
Actually, looking at it now, it's 100% because of the extra GetItemTable entry that was added for Ice Traps (assuming it was added so that Ice Traps that replaced freestanding items looked like Ice Arrows?)
GET_ITEM(ITEM_ARROW_ICE, OBJECT_GI_M_ARROW, GID_ARROW_ICE, 0x3C, 0x80, CHEST_ANIM_LONG), // Ice Traps
This was added at index 124
or 0x7C
, which used to be GET_ITEM_NONE
before rando. GET_ITEM_NONE
has a short chest animation, whereas this new fake Ice Arrows entry has a long chest animation. So replacing that with a short chest animation should be fine. That value isn't taken into account for the overworld freestanding item case in rando is it?
freestanding ice traps aren't rendering as ice arrows in rando, but ti'm pretty sure that's because of the itemIdToModel
stuff in randomizer.cpp
i'm thinking adding the entry for ice traps was a way to make sure we could shuffle them in, and copying the ice arrow entry was probably just a quick way to add an entry there
so yeah, just changing that entry to use short seems like a good fix to me if it's tested and working
Yep, the chest animations are short and the free standing ice trap (which looks like a huge rupee btw) doesn't seem to be affected by it. They didn't normally pop up a text box or anything did they?
no text box, and yeah, the huge rupee is from
{ GI_ICE_TRAP, GID_RUPEE_GOLD },
in itemIdToModel
in randomizer.cpp
Yup makes sense. I'm about to make a PR then.
yeah so, looks like every single ice trap on the game acts like if you were opening a progress-item chest
also, in the video, the savefile is not randomized
https://user-images.githubusercontent.com/88207750/179368555-75873125-c0dc-4e54-9f95-80afba2e7a66.mp4