Skip to content

Commit

Permalink
Fixed multiworld support patch not working with VariaRandomizer's
Browse files Browse the repository at this point in the history
  • Loading branch information
lordlou committed Aug 8, 2021
1 parent be073ee commit fb3ca18
Show file tree
Hide file tree
Showing 6 changed files with 50 additions and 20 deletions.
4 changes: 0 additions & 4 deletions worlds/sm/sm_randomizer_rom/src/common.asm
Original file line number Diff line number Diff line change
@@ -1,8 +1,4 @@
init_memory:
lda config_multiworld
beq +
jsl init_randolive
jsl mw_init ; Init multiworld
+
;jsl $8b9146
rtl
15 changes: 15 additions & 0 deletions worlds/sm/sm_randomizer_rom/src/items.asm
Original file line number Diff line number Diff line change
Expand Up @@ -21,11 +21,26 @@
!IStartDrawLoop = #i_start_draw_loop
!IStartHiddenDrawLoop = #i_start_hidden_draw_loop

!Click = $37 ;Sound when selecting a HUD item

!ITEM_RAM = $7E09A2

; SM Item Patches
pushpc

org $84FF00 ;You can safely change this address to free space in bank $84 ($20000-$27FFF)
SOUNDFX:
JSR SETFX
AND #$00FF
JSL $809049
RTS
SETFX:
LDA #$0002
STA $05D7
LDA $0000,y
INY
RTS

;org $8095f7
; jsl nmi_read_messages : nop

Expand Down
15 changes: 0 additions & 15 deletions worlds/sm/sm_randomizer_rom/src/main.asm
Original file line number Diff line number Diff line change
Expand Up @@ -35,27 +35,12 @@ org $808000 ; Disable copy protection screen
; Config flags
incsrc config.asm

; Super Metroid custom Samus sprite "engine" by Artheau
incsrc "sprite/sprite.asm"

; These patches include their own origins and patch locations
incsrc randopatches/introskip.asm
incsrc randopatches/wake_zebes.asm
incsrc randopatches/misc.asm
incsrc randopatches/nofanfare.asm
incsrc randopatches/g4_skip.asm
incsrc randopatches/credits.asm
incsrc randopatches/tracking.asm
incsrc randopatches/seed_display.asm
incsrc randopatches/max_ammo.asm

; Start anywhere patch, not used right now until graph based generation is in.
; incsrc startanywhere.asm

; Add code to the main code bank
org $b88000
incsrc common.asm
incsrc randolive.asm
incsrc multiworld.asm
incsrc items.asm

Expand Down
Binary file not shown.
Binary file removed worlds/sm/variaRandomizer/patches/common/ips/sm.ips
Binary file not shown.
36 changes: 35 additions & 1 deletion worlds/sm/variaRandomizer/rom/rompatcher.py
Original file line number Diff line number Diff line change
Expand Up @@ -19,8 +19,42 @@ class RomPatcher:
IPSPatches = {
# applied on all seeds
'Standard': [
# handles starting location and start blue doors
'new_game.ips',
# generic PLM spawner used for extra saves, blinking doors etc.
'plm_spawn.ips',
# needed fixes for VARIA
'vanilla_bugfixes.ips',
# use a byte in a unused room state header field to store area ID in the VARIA sense
'area_ids.ips',
# custom credits, backup save system, base tracking code
'credits_varia.ips',
# actual game hijacks to update tracking stats
'tracking.ips',
# enemy names in menu for seed ID
'seed_display.ips',
# door ASM to wake zebes early in blue brinstar
'wake_zebes.ips',
# door ASM to skip G4 cutscene when all 4 bosses are dead
'g4_skip.ips',
# faster MB cutscene transitions
'Mother_Brain_Cutscene_Edits',
# "Balanced" suit mode
'Removes_Gravity_Suit_heat_protection',
# use any button for angle up/down
'AimAnyButton.ips',
# credits item% based on actual number of items in the game
'endingtotals.ips',
# MSU-1 patch
'supermetroid_msu1.ips',
# displays max ammo
'max_ammo_display.ips',
# VARIA logo on startup screen
'varia_logo.ips',
# new nothing plm
'nothing_item_plm.ips',
# multiworld support
'sm.ips'
'multiworld.ips'
],
# VARIA tweaks
'VariaTweaks' : ['WS_Etank', 'LN_Chozo_SpaceJump_Check_Disable', 'ln_chozo_platform.ips', 'bomb_torizo.ips'],
Expand Down

0 comments on commit fb3ca18

Please sign in to comment.