SMW: v1.1 Content Update (#1344)

* Make Bowser unkillable on Egg Hunt

* Increment Data Package version

Changed a location name.

* Baseline for Bowser Rooms shuffling

* Add boss shuffle

* Remove extra space

* Overworld Palette Shuffle

* Fix Literature Trap typo

* Handle Queuing traps and new Timer Trap

* Fix trap name and actually create them

* Early Climb and Overworld Speed

* Add correct tooltip for Early Climb

* Tooltip text edit

* Address unconnected regions

* Add option to fully exclude Special Zone levels from the seed

* Fix Chocolate Island 4 Dragon Coins logic

* Update worlds/smw/Client.py to use `getattr`
This commit is contained in:
PoryGone
2023-01-29 23:53:56 -05:00
committed by GitHub
parent 428344b6bc
commit dc2aa5f41e
11 changed files with 425 additions and 58 deletions

View File

@@ -136,6 +136,15 @@ valid_background_colors = {
0xFFF45A: [0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07], # Castle
}
valid_ow_palettes = {
0x2D1E: [0x00, 0x01, 0x03], # Main OW
0x2D1F: [0x00, 0x03, 0x04], # Yoshi's Island
0x2D20: [0x00, 0x01, 0x03, 0x04], # Vanilla Dome
0x2D21: [0x00, 0x02, 0x03, 0x04], # Forest of Illusion
0x2D22: [0x00, 0x01, 0x03, 0x04], # Valley of Bowser
0x2D24: [0x00, 0x02, 0x03], # Star Road
}
def generate_shuffled_level_music(world, player):
shuffled_level_music = level_music_value_data.copy()
@@ -158,6 +167,12 @@ def generate_shuffled_ow_music(world, player):
return shuffled_ow_music
def generate_shuffled_ow_palettes(rom, world, player):
if world.overworld_palette_shuffle[player]:
for address, valid_palettes in valid_ow_palettes.items():
chosen_palette = world.random.choice(valid_palettes)
rom.write_byte(address, chosen_palette)
def generate_shuffled_header_data(rom, world, player):
if world.music_shuffle[player] != "full" and not world.foreground_palette_shuffle[player] and not world.background_palette_shuffle[player]:
return