vg-json-data / sm-json-data

JSON representations of Super Metroid Game Data
Other
26 stars 12 forks source link

Add damage boost entrance/exit conditions #1505

Open blkerby opened 4 months ago

blkerby commented 4 months ago

There are some uses for carrying a damage boost across rooms. A couple examples:

In some cases, carrying i-frames without a damage boost could also be useful.

Probably most if not all of the G-mode setups (currently in logic) could also be used to leave with a damage boost, so it should be possible to reuse/repurpose those. The leaveWithGModeSetup exit condition could be renamed (e.g. to leaveWithEnemyDamage) to reflect its more general purpose. But it would be necessary to add a property describing the type of enemy damage, in order to account for the energy lost from the hit. And there will be additional damage boost setups using enemy projectiles, which don't work for setting up G-mode.

osse101 commented 4 months ago

Kronic Boost, the strat, is a case where the damage boost is used for the momentum and not the iframes. Specifically for the property of colliding with a wall without resetting speed. It is also special because you need to be a certain distance from the door. Acid chozo top door could save on heat frames entering with a boost, but maybe that only helps if the acid is predrained? There could be some weird situations out there.

leaveWithGModeSetup is going to be all cases where you take damage inside a door transition but there is a larger set of damage sources next to the door, which includes projectiles and even more enemies. And taking damage and running to the transition, where we need to track remaining iframes.

Fish Tank top left entrance can enter with a mid transition damage hit to resetFallSpeed and reach the ledge. Sand Halls are common uses of carrying iframes into the next room to avoid damage.

kjbranch commented 1 month ago

Looks like it is possible to use a neutral damage boost to get very deep stuck as well. I was able to do this with a Cacatac spike through the right door of Below Spazer.

osse101 commented 1 month ago

Thats how any% does it, using a geemer in parlor to deepstuck and climb OOB.