diff --git a/patches/ips/alternate_door_colors.ips b/patches/ips/alternate_door_colors.ips index 5b53351ab..f1ceede7a 100644 Binary files a/patches/ips/alternate_door_colors.ips and b/patches/ips/alternate_door_colors.ips differ diff --git a/patches/rom_map/Bank DF.txt b/patches/rom_map/Bank DF.txt index 9dd4efbc0..41a08efed 100644 --- a/patches/rom_map/Bank DF.txt +++ b/patches/rom_map/Bank DF.txt @@ -1,9 +1,10 @@ D4DF - D761: ; credits.asm D91B - DF0A: ; credits.asm E000 - E127: ; credits.asm -E200 - FEEF: [FREE] +E200 - E212: ; alternate_door_colors.asm +E212 - FEEF: [free] FEF0 - FEFF: seed name (null-terminated ASCII string) -FF04 - FF04: [FREE] +FF04 - FF04: [free] FF05 - FF06: randomizer settings: - bitmask $0001: walljump-boots item enabled - bitmask $0002: split speedbooster item enabled diff --git a/patches/src/alternate_door_colors.asm b/patches/src/alternate_door_colors.asm index a6d20d46c..5d3ac750f 100644 --- a/patches/src/alternate_door_colors.asm +++ b/patches/src/alternate_door_colors.asm @@ -1,18 +1,11 @@ arch snes.cpu lorom -!bank_82_free_space_start = $82FA00 +!bank_82_free_space_start = $82FA00 !bank_82_free_space_end = $82FA80 -!pb_1 = #$019E -!pb_2 = #$0114 -!pb_3 = #$008A -!super_1 = #$43F0 -!super_2 = #$2A8A -!super_3 = #$1184 -!missile_1 = #$7C1F -!missile_2 = #$5816 -!missile_3 = #$340D +!bank_df_free_space_start = $dfe200 ; must match addresses in customize.rs [these colors may be modifided there] +!bank_df_free_space_end = $dfe212 org $82E7D0 jmp hook_load_tileset @@ -45,37 +38,60 @@ update_palette: plb plb ; Power Bomb door: - lda !pb_1 + lda.l pb_1 sta $C002 sta $C202 - lda !pb_2 + lda.l pb_2 sta $C004 sta $C204 - lda !pb_3 + lda.l pb_3 sta $C006 sta $C206 ; Super door: - lda !super_1 + lda.l super_1 sta $C022 sta $C222 - lda !super_2 + lda.l super_2 sta $C024 sta $C224 - lda !super_3 + lda.l super_3 sta $C026 sta $C226 ; Missile door: - lda !missile_1 + lda.l missile_1 sta $C042 sta $C242 - lda !missile_2 + lda.l missile_2 sta $C044 sta $C244 - lda !missile_3 + lda.l missile_3 sta $C046 sta $C246 plb rts -assert pc() <= !bank_82_free_space_end \ No newline at end of file +assert pc() <= !bank_82_free_space_end + +org !bank_df_free_space_start + +pb_1: + dw $019E +pb_2: + dw $0114 +pb_3: + dw $008A +super_1: + dw $43F0 +super_2: + dw $2A8A +super_3: + dw $1184 +missile_1: + dw $7C1F +missile_2: + dw $5816 +missile_3: + dw $340D + +assert pc() <= !bank_df_free_space_end \ No newline at end of file diff --git a/patches/src/map_area.asm b/patches/src/map_area.asm index f8b503317..9088a056a 100644 --- a/patches/src/map_area.asm +++ b/patches/src/map_area.asm @@ -1359,7 +1359,7 @@ write_room_name_tiles: assert pc() <= !bank_82_freespace2_end org !bank_85_freespace2_start -dw $0000 ; Partially revealed tiles palette value: overwrote by customize.rs if using dark theme +dw $0000 ; partially revealed tiles palette value: overwrote by customize.rs if using dark theme !bit_offset = $3a !bit_offset_round = $3e @@ -2185,6 +2185,7 @@ draw_sprite: .sprite_disabled PLA BRA .sprite_is_disabled + assert pc() <= !bank_85_freespace3_end ; Fixes FX for rare bug when entering right-sided door through East Pants Room @@ -2196,4 +2197,4 @@ fix_pants_room_fx: .no_fix STX $78D ; replaced code RTS -assert pc() <= !bank_94_freespace_end +assert pc() <= !bank_94_freespace_end \ No newline at end of file diff --git a/rust/maprando-web/src/seed.rs b/rust/maprando-web/src/seed.rs index 0beb51c68..234641f8f 100644 --- a/rust/maprando-web/src/seed.rs +++ b/rust/maprando-web/src/seed.rs @@ -319,7 +319,8 @@ async fn customize_seed( }, door_theme: match req.door_theme.0.as_str() { "vanilla" => DoorTheme::Vanilla, - "alternate" => DoorTheme::Alternate, + "vibrant" => DoorTheme::Vibrant, + "contrast" => DoorTheme::Contrast, _ => panic!( "Unexpected door_theme option: {}", req.door_theme.0.as_str() diff --git a/rust/maprando-web/templates/seed/customize_seed.html b/rust/maprando-web/templates/seed/customize_seed.html index 9a913a76b..115b00852 100644 --- a/rust/maprando-web/templates/seed/customize_seed.html +++ b/rust/maprando-web/templates/seed/customize_seed.html @@ -88,11 +88,13 @@
Vanilla: Doors have the colors that they do in the vanilla game.
Alternate: Different door colors are used, which may be easier to distinguish for - color-blind players. This is based on a color scheme by Vibrant Colors.
+Vibrant: Different door colors are used, which may be easier to distinguish for + color-blind players.
+Contrast: Different door colors are used, which may be easier to distinguish for + color-blind players. Simlar to the Vibrant door colors but the contrast between door colors is more pronounced.
Note that the Alternate setting has side effects on colors in other places, such as in the HUD, some types of +
Note that the Vibrant and Contrast settings have side effects on colors in other places, such as in the HUD, some types of beam doors, and acid.