In phases 2 and 4 of the boss fight in Undertale, Flowey has two attacks he uses involving save-states (similar to those found in game console emulators like Dolphin).
This PR adds the second of those two attacks -- x-bullets-upper-save-states.
Flowey summons five triplets of bullets from each upper eye at the player (similar behavior from the base x-bullets-upper attack https://github.com/TheAfroOfDoom/omega-flowey-minecraft-remastered/pull/10). Part-way through this first group of bullets he "save-state's" (verb) and the text FILE 2 SAVED appears on the bottom left of the screen.
Flowey then begins to summon a second group of bullets, this time using homing-vines (https://github.com/TheAfroOfDoom/omega-flowey-minecraft-remastered/pull/27), but right before they hit the player he "load-state's" (verb) and the arena state is reset to the state it was at when he save-state'd earlier. That is:
bullets from the old state are re-summoned at the same position / rotation
new bullets from the state right before we load-state are deleted
the player's position and rotation are reset to what they were when we save-state'd
This was a relatively complicated attack to make but I'm happy with the behavior of it and mostly happy with the quality/maintainability of the underlying code.
In the original/old map, the behavior was actually wrong. I didn't make the second set of bullets be homing-vines -- they were just more x-bullets. I additionally, erroneously, added an "x-bullets-lower-save-states" attack which didn't exist in the original.
(we could pretty easily add this though ^, maybe in a different non-vanilla version of the boss-fight)
We adjust the timing between attack for boss-fight phases 2 and 4 in these commits. This allows the music cadence/amount of attacks during the save-state phases to be more accurate to Undertale.
Summary
This can be thought of as a sort-of follow-up to https://github.com/TheAfroOfDoom/omega-flowey-minecraft-remastered/pull/91.
This PR adds the second of those two attacks --
x-bullets-upper-save-states
.Flowey summons five triplets of bullets from each upper eye at the player (similar behavior from the base
x-bullets-upper
attack https://github.com/TheAfroOfDoom/omega-flowey-minecraft-remastered/pull/10). Part-way through this first group of bullets he "save-state's" (verb) and the textFILE 2 SAVED
appears on the bottom left of the screen.Flowey then begins to summon a second group of bullets, this time using
homing-vines
(https://github.com/TheAfroOfDoom/omega-flowey-minecraft-remastered/pull/27), but right before they hit the player he "load-state's" (verb) and the arena state is reset to the state it was at when he save-state'd earlier. That is:In the original/old map, the behavior was actually wrong. I didn't make the second set of bullets be homing-vines -- they were just more x-bullets. I additionally, erroneously, added an "x-bullets-lower-save-states" attack which didn't exist in the original.
(we could pretty easily add this though ^, maybe in a different non-vanilla version of the boss-fight)
We also add this attack to the relevant boss-fight phases alongside the
homing-vines-save-states
attack in attack phases 2 and 4 (https://github.com/TheAfroOfDoom/omega-flowey-minecraft-remastered/commit/e737865e5cfcc1e41b2244a733d391dd592c3a15).Notable commit(s):
https://github.com/TheAfroOfDoom/omega-flowey-minecraft-remastered/commit/5e0e6125644779fb234d1978227b04308b6dbd78
This commit adds the logic for save/load-state-ing entities relevant to the
x-bullets-upper
attack (in contrast to the base logic being forhoming-vines
in https://github.com/TheAfroOfDoom/omega-flowey-minecraft-remastered/pull/91).https://github.com/TheAfroOfDoom/omega-flowey-minecraft-remastered/commit/4afa8ae79c4c53219fbf7bda52a909c47d94814e, https://github.com/TheAfroOfDoom/omega-flowey-minecraft-remastered/commit/88e4d0d88edafa60708b58982fd673c5a192c321
We adjust the timing between attack for boss-fight phases 2 and 4 in these commits. This allows the music cadence/amount of attacks during the save-state phases to be more accurate to Undertale.
Reproducing in-game
Preview
attack
attack will not load-state if player takes damage
videos with sound
Supplemental changes