SA2B: v2.3 - The Chao Update (#2277)

Changelog:

Features:
- New goal
  - Chaos Chao
    - Raise a Chaos Chao to win!
- New optional Location Checks
  - Chao Animal Parts
    - Each body part from each type of animal is a location
  - Chao Stats
    - 0-99 levels of each of the 7 Chao stats can be locations
    - The frequency of Chao Stat locations can be set (every level, every 2nd level, etc)
  - Kindergartensanity
    - Classroom lessons are locations
      - Either all lessons or any one of each category can be set as locations
  - Shopsanity
    - A specified number of locations can be placed in the Chao Black Market
    - These locations are unlocked by acquiring `Chao Coin`s
    - Ring costs for these items can be adjusted 
  - Chao Karate can now be set to one location per fight, instead of one per tournament
- Items
  - If any Chao locations are active, the following will be in the item pool:
    - Chao Eggs
    - Garden Seeds
    - Garden Fruit
    - Chao Hats
    - Chaos Drives
- The starting eggs in the garden can be a random color
- Chao World entrances can be shuffled
- Chao are given default names
- New Traps
  - Reverse Trap

Quality of Life:
- Chao Save Data is now separate per-slot in addition to per-seed
  - This allows a single player to have multiple slots in the same seed, each having separate Chao progress
- Chao Race/Karate progress is now displayed on Stage Select (when hovering over Chao World)
- All Chao can now enter the Hero and Dark races
- Chao Karate difficulty can be set separately from Chao Race difficulty
- Chao Aging can be sped up at will, up to 15×
- New mod `config` option to fine-tune Chao Stat multiplication
  - Note: This does not mix well with the Mod Manager "`Chao Stat Multiplier`" code
- Pong Traps can now activate in Chao World
- Maximum range for possible number of Emblems is now 1000
- General APWorld cleanup and optimization
  - Option access has moved to the new options system
  - An item group now exists for trap items

Bug Fixes:
- Dry Lagoon now has all 11 Animals
- Eternal Engine - 2 (Standard and Hard Logic) now requires only `Tails - Booster`
- Lost Colony - 2 (Hard Logic) now requires no upgrades
- Lost Colony - Animal 9 (Hard Logic) now requires either `Eggman - Jet Engine` or `Eggman - Large Cannon`
This commit is contained in:
PoryGone
2023-11-16 02:08:38 -05:00
committed by GitHub
parent 829c664304
commit 85d02b2dc5
12 changed files with 3581 additions and 1326 deletions

View File

@@ -1,6 +1,9 @@
# Emblem Definition
emblem = "Emblem"
# Market Token Definition
market_token = "Chao Coin"
# Upgrade Definitions
sonic_gloves = "Sonic - Magic Glove"
sonic_light_shoes = "Sonic - Light Shoes"
@@ -36,6 +39,8 @@ rouge_pick_nails = "Rouge - Pick Nails"
rouge_treasure_scope = "Rouge - Treasure Scope"
rouge_iron_boots = "Rouge - Iron Boots"
# Junk
five_rings = "Five Rings"
ten_rings = "Ten Rings"
twenty_rings = "Twenty Rings"
@@ -44,6 +49,8 @@ shield = "Shield"
magnetic_shield = "Magnetic Shield"
invincibility = "Invincibility"
# Traps
omochao_trap = "OmoTrap"
timestop_trap = "Chaos Control Trap"
confuse_trap = "Confusion Trap"
@@ -54,9 +61,12 @@ darkness_trap = "Darkness Trap"
ice_trap = "Ice Trap"
slow_trap = "Slow Trap"
cutscene_trap = "Cutscene Trap"
reverse_trap = "Reverse Trap"
pong_trap = "Pong Trap"
# Chaos Emeralds
white_emerald = "White Chaos Emerald"
red_emerald = "Red Chaos Emerald"
cyan_emerald = "Cyan Chaos Emerald"
@@ -65,4 +75,140 @@ green_emerald = "Green Chaos Emerald"
yellow_emerald = "Yellow Chaos Emerald"
blue_emerald = "Blue Chaos Emerald"
# Chao Eggs
normal_egg = "Normal Egg"
yellow_monotone_egg = "Yellow Mono-Tone Egg"
white_monotone_egg = "White Mono-Tone Egg"
brown_monotone_egg = "Brown Mono-Tone Egg"
sky_blue_monotone_egg = "Sky Blue Mono-Tone Egg"
pink_monotone_egg = "Pink Mono-Tone Egg"
blue_monotone_egg = "Blue Mono-Tone Egg"
grey_monotone_egg = "Grey Mono-Tone Egg"
green_monotone_egg = "Green Mono-Tone Egg"
red_monotone_egg = "Red Mono-Tone Egg"
lime_green_monotone_egg = "Lime Green Mono-Tone Egg"
purple_monotone_egg = "Purple Mono-Tone Egg"
orange_monotone_egg = "Orange Mono-Tone Egg"
black_monotone_egg = "Black Mono-Tone Egg"
yellow_twotone_egg = "Yellow Two-Tone Egg"
white_twotone_egg = "White Two-Tone Egg"
brown_twotone_egg = "Brown Two-Tone Egg"
sky_blue_twotone_egg = "Sky Blue Two-Tone Egg"
pink_twotone_egg = "Pink Two-Tone Egg"
blue_twotone_egg = "Blue Two-Tone Egg"
grey_twotone_egg = "Grey Two-Tone Egg"
green_twotone_egg = "Green Two-Tone Egg"
red_twotone_egg = "Red Two-Tone Egg"
lime_green_twotone_egg = "Lime Green Two-Tone Egg"
purple_twotone_egg = "Purple Two-Tone Egg"
orange_twotone_egg = "Orange Two-Tone Egg"
black_twotone_egg = "Black Two-Tone Egg"
normal_shiny_egg = "Normal Shiny Egg"
yellow_shiny_egg = "Yellow Shiny Egg"
white_shiny_egg = "White Shiny Egg"
brown_shiny_egg = "Brown Shiny Egg"
sky_blue_shiny_egg = "Sky Blue Shiny Egg"
pink_shiny_egg = "Pink Shiny Egg"
blue_shiny_egg = "Blue Shiny Egg"
grey_shiny_egg = "Grey Shiny Egg"
green_shiny_egg = "Green Shiny Egg"
red_shiny_egg = "Red Shiny Egg"
lime_green_shiny_egg = "Lime Green Shiny Egg"
purple_shiny_egg = "Purple Shiny Egg"
orange_shiny_egg = "Orange Shiny Egg"
black_shiny_egg = "Black Shiny Egg"
# Chao Fruit
chao_garden_fruit = "Chao Garden Fruit"
hero_garden_fruit = "Hero Garden Fruit"
dark_garden_fruit = "Dark Garden Fruit"
strong_fruit = "Strong Fruit"
tasty_fruit = "Tasty Fruit"
hero_fruit = "Hero Fruit"
dark_fruit = "Dark Fruit"
round_fruit = "Round Fruit"
triangle_fruit = "Triangle Fruit"
square_fruit = "Square Fruit"
heart_fruit = "Heart Fruit"
chao_fruit = "Chao Fruit"
smart_fruit = "Smart Fruit"
orange_fruit = "Orange Fruit"
blue_fruit = "Blue Fruit"
pink_fruit = "Pink Fruit"
green_fruit = "Green Fruit"
purple_fruit = "Purple Fruit"
yellow_fruit = "Yellow Fruit"
red_fruit = "Red Fruit"
mushroom_fruit = "Mushroom"
super_mushroom_fruit = "Super Mushroom"
mint_candy_fruit = "Mint Candy"
grapes_fruit = "Grapes"
# Chao Seeds
strong_seed = "Strong Seed"
tasty_seed = "Tasty Seed"
hero_seed = "Hero Seed"
dark_seed = "Dark Seed"
round_seed = "Round Seed"
triangle_seed = "Triangle Seed"
square_seed = "Square Seed"
# Chao Hats
pumpkin_hat = "Pumpkin"
skull_hat = "Skull"
apple_hat = "Apple"
bucket_hat = "Bucket"
empty_can_hat = "Empty Can"
cardboard_box_hat = "Cardboard Box"
flower_pot_hat = "Flower Pot"
paper_bag_hat = "Paper Bag"
pan_hat = "Pan"
stump_hat = "Stump"
watermelon_hat = "Watermelon"
red_wool_beanie_hat = "Red Wool Beanie"
blue_wool_beanie_hat = "Blue Wool Beanie"
black_wool_beanie_hat = "Black Wool Beanie"
pacifier_hat = "Pacifier"
# Animal Items
animal_penguin = "Penguin"
animal_seal = "Seal"
animal_otter = "Otter"
animal_rabbit = "Rabbit"
animal_cheetah = "Cheetah"
animal_warthog = "Warthog"
animal_bear = "Bear"
animal_tiger = "Tiger"
animal_gorilla = "Gorilla"
animal_peacock = "Peacock"
animal_parrot = "Parrot"
animal_condor = "Condor"
animal_skunk = "Skunk"
animal_sheep = "Sheep"
animal_raccoon = "Raccoon"
animal_halffish = "HalfFish"
animal_skeleton_dog = "Skeleton Dog"
animal_bat = "Bat"
animal_dragon = "Dragon"
animal_unicorn = "Unicorn"
animal_phoenix = "Phoenix"
chaos_drive_yellow = "Yellow Chaos Drive"
chaos_drive_green = "Green Chaos Drive"
chaos_drive_red = "Red Chaos Drive"
chaos_drive_purple = "Purple Chaos Drive"
# Goal Item
maria = "What Maria Wanted"

View File

@@ -909,6 +909,7 @@ dry_lagoon_animal_7 = "Dry Lagoon - 7 Animals"
dry_lagoon_animal_8 = "Dry Lagoon - 8 Animals"
dry_lagoon_animal_9 = "Dry Lagoon - 9 Animals"
dry_lagoon_animal_10 = "Dry Lagoon - 10 Animals"
dry_lagoon_animal_11 = "Dry Lagoon - 11 Animals"
dry_lagoon_upgrade = "Dry Lagoon - Upgrade"
egg_quarters_1 = "Egg Quarters - 1"
egg_quarters_2 = "Egg Quarters - 2"
@@ -1150,10 +1151,190 @@ chao_race_dark_2 = "Chao Race - Dark 2"
chao_race_dark_3 = "Chao Race - Dark 3"
chao_race_dark_4 = "Chao Race - Dark 4"
chao_beginner_karate = "Chao Karate - Beginner"
chao_standard_karate = "Chao Karate - Standard"
chao_expert_karate = "Chao Karate - Expert"
chao_super_karate = "Chao Karate - Super"
chao_beginner_karate_1 = "Chao Karate - Beginner 1"
chao_beginner_karate_2 = "Chao Karate - Beginner 2"
chao_beginner_karate_3 = "Chao Karate - Beginner 3"
chao_beginner_karate_4 = "Chao Karate - Beginner 4"
chao_beginner_karate_5 = "Chao Karate - Beginner 5"
chao_standard_karate_1 = "Chao Karate - Standard 1"
chao_standard_karate_2 = "Chao Karate - Standard 2"
chao_standard_karate_3 = "Chao Karate - Standard 3"
chao_standard_karate_4 = "Chao Karate - Standard 4"
chao_standard_karate_5 = "Chao Karate - Standard 5"
chao_expert_karate_1 = "Chao Karate - Expert 1"
chao_expert_karate_2 = "Chao Karate - Expert 2"
chao_expert_karate_3 = "Chao Karate - Expert 3"
chao_expert_karate_4 = "Chao Karate - Expert 4"
chao_expert_karate_5 = "Chao Karate - Expert 5"
chao_super_karate_1 = "Chao Karate - Super 1"
chao_super_karate_2 = "Chao Karate - Super 2"
chao_super_karate_3 = "Chao Karate - Super 3"
chao_super_karate_4 = "Chao Karate - Super 4"
chao_super_karate_5 = "Chao Karate - Super 5"
chao_stat_swim_base = "Chao Stat - Swim - "
chao_stat_fly_base = "Chao Stat - Fly - "
chao_stat_run_base = "Chao Stat - Run - "
chao_stat_power_base = "Chao Stat - Power - "
chao_stat_stamina_base = "Chao Stat - Stamina - "
chao_stat_luck_base = "Chao Stat - Luck - "
chao_stat_intelligence_base = "Chao Stat - Intelligence - "
chao_black_market_base = "Black Market - "
# Animal Event Locations
animal_penguin = "Penguin Behavior"
animal_seal = "Seal Behavior"
animal_otter = "Otter Behavior"
animal_rabbit = "Rabbit Behavior"
animal_cheetah = "Cheetah Behavior"
animal_warthog = "Warthog Behavior"
animal_bear = "Bear Behavior"
animal_tiger = "Tiger Behavior"
animal_gorilla = "Gorilla Behavior"
animal_peacock = "Peacock Behavior"
animal_parrot = "Parrot Behavior"
animal_condor = "Condor Behavior"
animal_skunk = "Skunk Behavior"
animal_sheep = "Sheep Behavior"
animal_raccoon = "Raccoon Behavior"
animal_halffish = "HalfFish Behavior"
animal_skeleton_dog = "Skeleton Dog Behavior"
animal_bat = "Bat Behavior"
animal_dragon = "Dragon Behavior"
animal_unicorn = "Unicorn Behavior"
animal_phoenix = "Phoenix Behavior"
# Animal Body Part Locations
chao_penguin_arms = "Chao - Penguin Arms"
chao_penguin_forehead = "Chao - Penguin Forehead"
chao_penguin_legs = "Chao - Penguin Legs"
chao_seal_arms = "Chao - Seal Arms"
chao_seal_tail = "Chao - Seal Tail"
chao_otter_arms = "Chao - Otter Arms"
chao_otter_ears = "Chao - Otter Ears"
chao_otter_face = "Chao - Otter Face"
chao_otter_legs = "Chao - Otter Legs"
chao_otter_tail = "Chao - Otter Tail"
chao_rabbit_arms = "Chao - Rabbit Arms"
chao_rabbit_ears = "Chao - Rabbit Ears"
chao_rabbit_legs = "Chao - Rabbit Legs"
chao_rabbit_tail = "Chao - Rabbit Tail"
chao_cheetah_arms = "Chao - Cheetah Arms"
chao_cheetah_ears = "Chao - Cheetah Ears"
chao_cheetah_legs = "Chao - Cheetah Legs"
chao_cheetah_tail = "Chao - Cheetah Tail"
chao_warthog_arms = "Chao - Warthog Arms"
chao_warthog_ears = "Chao - Warthog Ears"
chao_warthog_face = "Chao - Warthog Face"
chao_warthog_legs = "Chao - Warthog Legs"
chao_warthog_tail = "Chao - Warthog Tail"
chao_bear_arms = "Chao - Bear Arms"
chao_bear_ears = "Chao - Bear Ears"
chao_bear_legs = "Chao - Bear Legs"
chao_tiger_arms = "Chao - Tiger Arms"
chao_tiger_ears = "Chao - Tiger Ears"
chao_tiger_legs = "Chao - Tiger Legs"
chao_tiger_tail = "Chao - Tiger Tail"
chao_gorilla_arms = "Chao - Gorilla Arms"
chao_gorilla_ears = "Chao - Gorilla Ears"
chao_gorilla_forehead = "Chao - Gorilla Forehead"
chao_gorilla_legs = "Chao - Gorilla Legs"
chao_peacock_forehead = "Chao - Peacock Forehead"
chao_peacock_legs = "Chao - Peacock Legs"
chao_peacock_tail = "Chao - Peacock Tail"
chao_peacock_wings = "Chao - Peacock Wings"
chao_parrot_forehead = "Chao - Parrot Forehead"
chao_parrot_legs = "Chao - Parrot Legs"
chao_parrot_tail = "Chao - Parrot Tail"
chao_parrot_wings = "Chao - Parrot Wings"
chao_condor_ears = "Chao - Condor Ears"
chao_condor_legs = "Chao - Condor Legs"
chao_condor_tail = "Chao - Condor Tail"
chao_condor_wings = "Chao - Condor Wings"
chao_skunk_arms = "Chao - Skunk Arms"
chao_skunk_forehead = "Chao - Skunk Forehead"
chao_skunk_legs = "Chao - Skunk Legs"
chao_skunk_tail = "Chao - Skunk Tail"
chao_sheep_arms = "Chao - Sheep Arms"
chao_sheep_ears = "Chao - Sheep Ears"
chao_sheep_legs = "Chao - Sheep Legs"
chao_sheep_horn = "Chao - Sheep Horn"
chao_sheep_tail = "Chao - Sheep Tail"
chao_raccoon_arms = "Chao - Raccoon Arms"
chao_raccoon_ears = "Chao - Raccoon Ears"
chao_raccoon_legs = "Chao - Raccoon Legs"
chao_dragon_arms = "Chao - Dragon Arms"
chao_dragon_ears = "Chao - Dragon Ears"
chao_dragon_legs = "Chao - Dragon Legs"
chao_dragon_horn = "Chao - Dragon Horn"
chao_dragon_tail = "Chao - Dragon Tail"
chao_dragon_wings = "Chao - Dragon Wings"
chao_unicorn_arms = "Chao - Unicorn Arms"
chao_unicorn_ears = "Chao - Unicorn Ears"
chao_unicorn_forehead = "Chao - Unicorn Forehead"
chao_unicorn_legs = "Chao - Unicorn Legs"
chao_unicorn_tail = "Chao - Unicorn Tail"
chao_phoenix_forehead = "Chao - Phoenix Forehead"
chao_phoenix_legs = "Chao - Phoenix Legs"
chao_phoenix_tail = "Chao - Phoenix Tail"
chao_phoenix_wings = "Chao - Phoenix Wings"
# Chao Kindergarten Locations
chao_kindergarten_drawing_1 = "Chao Kindergarten - Drawing 1"
chao_kindergarten_drawing_2 = "Chao Kindergarten - Drawing 2"
chao_kindergarten_drawing_3 = "Chao Kindergarten - Drawing 3"
chao_kindergarten_drawing_4 = "Chao Kindergarten - Drawing 4"
chao_kindergarten_drawing_5 = "Chao Kindergarten - Drawing 5"
chao_kindergarten_shake_dance = "Chao Kindergarten - Shake Dance"
chao_kindergarten_spin_dance = "Chao Kindergarten - Spin Dance"
chao_kindergarten_step_dance = "Chao Kindergarten - Step Dance"
chao_kindergarten_gogo_dance = "Chao Kindergarten - Go-Go Dance"
chao_kindergarten_exercise = "Chao Kindergarten - Exercise"
chao_kindergarten_song_1 = "Chao Kindergarten - Song 1"
chao_kindergarten_song_2 = "Chao Kindergarten - Song 2"
chao_kindergarten_song_3 = "Chao Kindergarten - Song 3"
chao_kindergarten_song_4 = "Chao Kindergarten - Song 4"
chao_kindergarten_song_5 = "Chao Kindergarten - Song 5"
chao_kindergarten_bell = "Chao Kindergarten - Bell"
chao_kindergarten_castanets = "Chao Kindergarten - Castanets"
chao_kindergarten_cymbals = "Chao Kindergarten - Cymbals"
chao_kindergarten_drum = "Chao Kindergarten - Drum"
chao_kindergarten_flute = "Chao Kindergarten - Flute"
chao_kindergarten_maracas = "Chao Kindergarten - Maracas"
chao_kindergarten_trumpet = "Chao Kindergarten - Trumpet"
chao_kindergarten_tambourine = "Chao Kindergarten - Tambourine"
chao_kindergarten_any_drawing = "Chao Kindergarten - Any Drawing"
chao_kindergarten_any_dance = "Chao Kindergarten - Any Dance"
chao_kindergarten_any_song = "Chao Kindergarten - Any Song"
chao_kindergarten_any_instrument = "Chao Kindergarten - Any Instrument"
# Chao Goal Locations
chaos_chao = "Chaos Chao"
chaos_chao_region = "Chaos Chao"
# Kart Race Definitions
kart_race_beginner_sonic = "Kart Race - Beginner - Sonic"
@@ -1261,9 +1442,18 @@ green_hill_region = "Green Hill"
grand_prix = "Grand Prix"
grand_prix_region = "Grand Prix"
chao_garden_beginner_region = "Chao Garden - Beginner"
chao_garden_intermediate_region = "Chao Garden - Intermediate"
chao_garden_expert_region = "Chao Garden - Expert"
chao_race_beginner_region = "Chao Race - Beginner"
chao_race_intermediate_region = "Chao Race - Intermediate"
chao_race_expert_region = "Chao Race - Expert"
chao_karate_beginner_region = "Chao Karate - Beginner"
chao_karate_intermediate_region = "Chao Karate - Standard"
chao_karate_expert_region = "Chao Karate - Expert"
chao_karate_super_region = "Chao Karate - Super"
chao_kindergarten_region = "Chao Kindergarten"
black_market_region = "Black Market"
kart_race_beginner_region = "Kart Race - Beginner"
kart_race_standard_region = "Kart Race - Intermediate"