From 418f1c0b083476c357a318b84a52bed28c6a43f9 Mon Sep 17 00:00:00 2001 From: nn <53490794+nn357@users.noreply.github.com> Date: Wed, 14 Jan 2026 00:53:06 +0900 Subject: [PATCH 01/11] disable_spikeblue --- patches/rom_map/Bank 90.txt | 1 + patches/src/remove_bluesuit.asm | 7 ++++ patches/src/remove_spikesuit.asm | 31 ++++++++++++++++++ .../help/quality/disable_bluesuit.html | 18 +++++++++++ .../help/quality/disable_spikesuit.html | 18 +++++++++++ .../templates/generate/quality_of_life.html | 32 +++++++++++++++++++ .../templates/generate/scripts.html | 4 +++ rust/maprando/src/patch.rs | 8 +++++ rust/maprando/src/settings.rs | 2 ++ 9 files changed, 121 insertions(+) create mode 100644 patches/src/remove_bluesuit.asm create mode 100644 patches/src/remove_spikesuit.asm create mode 100644 rust/maprando-web/templates/generate/help/quality/disable_bluesuit.html create mode 100644 rust/maprando-web/templates/generate/help/quality/disable_spikesuit.html diff --git a/patches/rom_map/Bank 90.txt b/patches/rom_map/Bank 90.txt index a5a383881b..6895fe176e 100644 --- a/patches/rom_map/Bank 90.txt +++ b/patches/rom_map/Bank 90.txt @@ -8,3 +8,4 @@ $F980 - $FA00: respin.asm $FA00 - $FC00: map_progress_maintain.asm (list of cross-area tiles to reveal) $FC00 - $FC10: Fake Lava.asm $FC10 - $FC20: vanilla_bugfixes.asm +$FC20 - $FC3F: remove_spikesuit.asm \ No newline at end of file diff --git a/patches/src/remove_bluesuit.asm b/patches/src/remove_bluesuit.asm new file mode 100644 index 0000000000..15e4cf3ea3 --- /dev/null +++ b/patches/src/remove_bluesuit.asm @@ -0,0 +1,7 @@ +; Removes bluesuit ability + +arch snes.cpu +lorom + +org $91D35C ; replace branch check of samus running momentum flag +nop nop \ No newline at end of file diff --git a/patches/src/remove_spikesuit.asm b/patches/src/remove_spikesuit.asm new file mode 100644 index 0000000000..bff0071251 --- /dev/null +++ b/patches/src/remove_spikesuit.asm @@ -0,0 +1,31 @@ +; Removes a spikesuit state from samus + +arch snes.cpu +lorom + +!bank_90_free_space_start = $90FC20 +!bank_90_free_space_end = $90FC3F + +org $90D4BC ; hook end of shinespark crash + jsl check_ss + nop + nop + +org !bank_90_free_space_start +check_ss: + LDA $0ACC ; Samus palette type normal? [regular shinecharge] + BNE .skip + LDA $0A68 ; special timer non zero? [can spark] + BEQ .skip + STZ $0A68 ; goodbye spikesuit + LDA #$02D + JSL $8090CB ; play a sound effect + ;LDA #$0016 + ;JSL $8090A3 + .skip: + LDA #$0002 + STA $0A32 + STZ $0DEC + RTL + +assert pc() <= !bank_90_free_space_end \ No newline at end of file diff --git a/rust/maprando-web/templates/generate/help/quality/disable_bluesuit.html b/rust/maprando-web/templates/generate/help/quality/disable_bluesuit.html new file mode 100644 index 0000000000..65fffabec9 --- /dev/null +++ b/rust/maprando-web/templates/generate/help/quality/disable_bluesuit.html @@ -0,0 +1,18 @@ +