From fa233b25831a4a0ea0d7ca3dae5381e164783c30 Mon Sep 17 00:00:00 2001 From: Bryce Wilson Date: Thu, 14 Mar 2024 05:37:10 -0600 Subject: [PATCH] Pokemon Emerald: v2 Update (#2918) --- worlds/pokemon_emerald/CHANGELOG.md | 186 + worlds/pokemon_emerald/README.md | 57 +- worlds/pokemon_emerald/__init__.py | 817 ++-- worlds/pokemon_emerald/client.py | 536 ++- worlds/pokemon_emerald/data.py | 1461 ++++-- .../pokemon_emerald/data/base_patch.bsdiff4 | Bin 209743 -> 243175 bytes .../pokemon_emerald/data/extracted_data.json | 2 +- worlds/pokemon_emerald/data/items.json | 1016 +++-- worlds/pokemon_emerald/data/locations.json | 4057 ++++++++++++++++- .../data/regions/battle_frontier.json | 458 ++ .../pokemon_emerald/data/regions/cities.json | 1391 +++++- .../data/regions/dungeons.json | 1040 ++++- .../data/regions/{unused => }/islands.json | 120 +- .../pokemon_emerald/data/regions/routes.json | 1695 ++++++- .../data/regions/unused/battle_frontier.json | 368 +- .../data/regions/unused/dungeons.json | 50 +- .../data/regions/unused/routes.json | 82 - .../data/trade_pokemon_schema.json | 162 + .../docs/en_Pokemon Emerald.md | 26 +- .../{data/README.md => docs/region data.md} | 38 +- worlds/pokemon_emerald/docs/rom changes.md | 36 +- worlds/pokemon_emerald/docs/warps.md | 50 + worlds/pokemon_emerald/docs/wonder trades.md | 103 + worlds/pokemon_emerald/items.py | 6 +- worlds/pokemon_emerald/locations.py | 182 +- worlds/pokemon_emerald/opponents.py | 116 + worlds/pokemon_emerald/options.py | 415 +- worlds/pokemon_emerald/pokemon.py | 662 ++- worlds/pokemon_emerald/regions.py | 80 +- worlds/pokemon_emerald/rom.py | 707 ++- worlds/pokemon_emerald/rules.py | 1007 ++-- worlds/pokemon_emerald/sanity_check.py | 145 +- .../test/test_accessibility.py | 19 +- worlds/pokemon_emerald/util.py | 340 +- 34 files changed, 14201 insertions(+), 3229 deletions(-) create mode 100644 worlds/pokemon_emerald/CHANGELOG.md create mode 100644 worlds/pokemon_emerald/data/regions/battle_frontier.json rename worlds/pokemon_emerald/data/regions/{unused => }/islands.json (73%) delete mode 100644 worlds/pokemon_emerald/data/regions/unused/routes.json create mode 100644 worlds/pokemon_emerald/data/trade_pokemon_schema.json rename worlds/pokemon_emerald/{data/README.md => docs/region data.md} (74%) create mode 100644 worlds/pokemon_emerald/docs/warps.md create mode 100644 worlds/pokemon_emerald/docs/wonder trades.md create mode 100644 worlds/pokemon_emerald/opponents.py diff --git a/worlds/pokemon_emerald/CHANGELOG.md b/worlds/pokemon_emerald/CHANGELOG.md new file mode 100644 index 000000000000..dbc1123b7719 --- /dev/null +++ b/worlds/pokemon_emerald/CHANGELOG.md @@ -0,0 +1,186 @@ +# 2.0.0 + +### Features +- Picking up items for other players will display the actual item name and receiving player in-game instead of +"ARCHIPELAGO ITEM". (This does have a limit, but you're unlikely to reach it in all but the largest multiworlds.) +- New goal `legendary_hunt`. Your goal is to catch/defeat some number of legendary encounters. That is, the static +encounters themselves, whatever species they may be. Legendary species found in the wild don't count. + - You can force the goal to require captures with `legendary_hunt_catch`. If you accidentally faint a legendary, you + can respawn it by beating the champion. + - The number of legendaries needed is controlled by the `legendary_hunt_count` option. + - The caves containing Kyogre and Groudon are fixed to one location per seed. You need to go to the weather + institute to trigger a permanent weather event at the corresponding locations. Only one weather event can be active + at a time. + - The move tutor for the move Sleep Talk has been changed to Dig and is unlimited use (for Sealed Chamber). + - Relicanth and Wailord are guaranteed to be reachable in the wild (for Sealed Chamber). Interacting with the Sealed + Chamber wall will give you dex info for Wailord and Relicanth. + - Event legendaries are included for this goal (see below for new ferry behavior and event tickets). + - The roamer is included in this count. It will _always_ be Latios no matter what your options are. Otherwise you + might not have any way of knowing which species is roaming to be able to track it. In legendary hunt, Latios will + never appear as a wild pokemon to make tracking it easier. The television broadcast that creates the roamer will + give you dex info for Latios. + - You can set which encounters are considered for this goal with the `allowed_legendary_hunt_encounters` option. +- New option `dexsanity`. Adds pokedex entries as locations. + - Added locations contribute either a Poke Ball, Great Ball, or Ultra Ball to the item pool, based on the evolution + stage. + - Logic uses only wild encounters for now. + - Defeating a gym leader awards "seen" info on 1/8th of the pokedex. +- New option `trainersanity`. Defeating a trainer awards a random item. + - Trainers no longer award money upon defeat. Instead they add a sellable item to the item pool. + - Missable trainers are prevented from disappearing when this is enabled. + - Gym trainers remain active after their leader is defeated. + - Does not include trainers in the Trick House. +- New option `berry_trees`. Adds berry trees as locations. + - All soil patches start with a fully grown berry tree that gives one item. + - There are 88 berry trees. + - Berries cannot be planted in soil with this option enabled. + - Soil that doesn't start with a tree on a fresh save contributes a Sitrus Berry to the item pool. +- New option `death_link`. Forgive me, Figment. +- Added Artisan Cave locations + - Requires Wailmer Pail and the ability to Surf to access. +- Added Trick House locations. The Trick Master is finally here! + - He will make new layouts only if you have the corresponding badge (or beat the game) and have completed the + previous layout (all vanilla behavior). + - If you neglect to pick up an item in a puzzle before completing it, the Trick Master will give the item to you + alongside the prize. + - Locations are enabled or disabled with their broader categories (npc gifts, overworld items, etc...) +- Added daily berry gift locations. There are a half dozen or so NPCs that give you one or two berries per day. + - All these locations are considered NPC gifts. + - The NPCs have been reworked to give this gift once permanently so they can be added as locations. +- New option `remote_items`. All randomized items are sent from the server instead of being patched into your game +(except for start inventory, which remains in the PC) + - As a side effect, when you pick up your own item, there will be a gap between the item disappearing from the + overworld and your game actually receiving it. It also causes gifts from NPCs which contain your own items to not + show up until after their text box closes. It can feel odd, but there should be no danger to it. + - If the seed is in race mode, this is forcibly enabled. + - Benefits include: + - Two players can play the same slot and both receive items that slot picks up for itself (as long as it was + randomized) + - You receive items you picked up for yourself if you lose progress on your save + - Competitive integrity; the patch file no longer has any knowledge of item placement +- New option `match_trainer_levels`. This is a sort of pseudo level cap for a randomizer context. + - When you start a trainer fight, all your pokemon have their levels temporarily set to the highest level in the + opponent's party. + - During the battle, all earned exp is set to 0 (EVs are still gained during battle as normal). When the outcome of + the battle is decided, your pokemon have their levels reset to what they were before the fight and exp is awarded as + it would have been without this option. Think of it as holding earned exp in reserve and awarding it at the end + instead, even giving it to fainted pokemon if they earned any before fainting. + - Exp gain is based on _your_ party's average level to moderate exp over the course of a seed. Wild battles are + entirely unchanged by this option. +- New option `match_trainer_levels_bonus`. A flat bonus to apply to your party's levels when using +`match_trainer_levels`. In case you want to give yourself a nerf or buff while still approximately matching your +opponent. +- New option `force_fully_evolved`. Define a level at which trainers will stop using pokemon that have further evolution +stages. +- New option `move_blacklist`. Define a list of moves that should not be given randomly to learnsets or TMs. Move names +are accurate to Gen 3 except for capitalization. +- New option `extra_bumpy_slope`. Adds a "bumpy slope" to Route 115 that lets you hop up the ledge with the Acro Bike. +- New option `modify_118`. Changes Route 118 so that it must be crossed with the Acro Bike, and cannot be crossed by +surfing. +- Changed `require_flash` option to a choice between none, only granite cave, only victory road, or both caves. +- Removed `static_encounters` option. +- New option `legendary_encounters`. Replaces `static_encounters`, but only concerns legendaries. +- New option `misc_pokemon`. Replaces `static_encounters`, but only concerns non-legendaries. +- Removed `fly_without_badge` option. (Don't worry) +- New option `hm_requirements`. Will eventually be able to give you more control over the badge requirements for all +HMs. For now, only includes the presets `vanilla` and `fly_without_badge`. +- Removed `allow_wild_legendaries`, `allow_starter_legendaries`, and `allow_trainer_legendaries` options. +- New options `wild_encounter_blacklist`, `starter_blacklist`, and `trainer_party_blacklist`. + - These take lists of species and prevent them from randomizing into the corresponding categories + - If adhering to your blacklist would make it impossible to choose a random species, your blacklist is ignored in + that case + - All three include a shorthand for excluding legendaries +- Removed `enable_ferry` option. + - The ferry is now always present. + - The S.S. Ticket item/location is now part of `key_items`. +- Added event tickets and islands. + - All event tickets are given to the player by Norman after defeating the Champion alongside the S.S. Ticket. + - As in vanilla, these tickets are only usable from Lilycove. Not Slateport or the Battle Frontier. +- New option `event_tickets`. Randomizes the above-mentioned tickets into the item pool. +- New option `enable_wonder_trading`. You can participate in Wonder Trading by interacting with the center receptionist +on the second floor of Pokemon Centers. + - Why is this an option instead of just being enabled? You might want to disable wonder trading in a meta yaml to + make sure certain rules can't be broken. Or you may want to turn it off for yourself to definitively prevent being + asked for help if you prefer to keep certain walls up between your game and others. Trades _do_ include items and + known moves, which means there is potential for an extra level of cooperation and even ways to go out of logic. But + that's not a boundary everyone wants broken down all the time. Please be respectful of someone's choice to not + participate if that's their preference. + - A lot of time was spent trying to make this all work without having to touch your client. Hopefully it goes + smoothly, but there's room for jank. Anything you decide to give to her you should consider gone forever, whether + because it was traded away or because something "went wrong in transit" and the pokemon's data got lost after being + removed from the server. + - Wonder Trading is _not_ resistant to save scumming in either direction. You _could_ abuse it to dupe pokemon, + because there's not realistically a way for me to prevent it, but I'd urge you to stick to the spirit of the design + unless everyone involved doesn't mind. + - The wonder trades you receive are stored in your save data even before you pick them up, so if you save after the + client tells you that you received a wonder trade, it's safe. You don't need to retrieve it from a poke center for + it to persist. However, if you reset your game to a point in time before your client popped the "Wonder trade + received" message, that pokemon is lost forever. +- New `easter_egg` passphrase system. + - All valid easter egg passphrases will be a phrase that it's possible to submit as a trendy phrase in Dewford Town. + Changing the trendy phrase does ***not*** trigger easter eggs. Only the phrase you put in your YAML can trigger an + easter egg. + - There may be other ways to learn more information. + - Phrases are case insensitive. Here are a couple examples of possible phrases: `"GET FOE"`, + `"HERE GOES GRANDMOTHER"`, `"late eh?"` (None of those do anything, but I'd love to hear what you think they would.) +- Added three new easter egg effects. +- Changed the original easter egg phrase to use the new system. +- Renamed `tm_moves` to `tm_tutor_moves`. Move tutors are also affected by this option (except the new Dig tutor). +- Renamed `tm_compatibility` to `tm_tutor_compatibility`. Move tutors are also affected by this option. +- Changed `tm_tutor_compatibility` to be a percent chance instead of a choice. Use `-1` for vanilla. +- Changed `hm_compatibility` to be a percent chance instead of a choice. Use `-1` for vanilla. +- New option `music`. Shuffles all looping music. Includes FRLG tracks and possibly some unused stuff. +- New option `fanfares`. Shuffles all fanfares. Includes FRLG tracks. When this is enabled, pressing B will interrupt +most fanfares. +- New option `purge_spinners`. Trainers that change which direction they face will do so predictably, and will no longer +turn to face you when you run. +- New option `normalize_encounter_rates`. Sets every encounter slot to (almost) equal probability. Does NOT make every +species equally likely to appear, but makes rare encounters less rare. +- Added `Trick House` location group. +- Removed `Postgame Locations` location group. + +### QoL + +- Can teach moves over HM moves. +- Fishing is much less random; pokemon will always bite if there's an encounter there. +- Mirage Island is now always present. +- Waking Rayquaza is no longer required. After releasing Kyogre, going to Sootopolis will immediately trigger the +Rayquaza cutscene. +- Renamed some locations to be more accurate. +- Most trainers will no longer ask to be registered in your Pokegear after battle. Also removed most step-based match +calls. +- Removed a ledge on Route 123. With careful routing, it's now possible to check every location without having to save +scum or go back around. +- Added "GO HOME" button on the start menu where "EXIT" used to be. Will teleport you to Littleroot. +- Some locations which are directly blocked by completing your goal are automatically excluded. + - For example, the S.S. Ticket and a Champion goal, or the Sludge Bomb TM and the Norman goal. + - Your particular options might still result in locations that can't be reached until after your goal. For example, + setting a Norman goal and setting your E4 requirement to 8 gyms means that post-Champion locations will not be + reachable before defeating Norman, but they are NOT excluded by this modification. That's one of the simpler + examples. It is extremely tedious to try to detect these sorts of situations, so I'll instead leave it to you to be + aware of your own options. +- Species in the pokedex are searchable by type even if you haven't caught that species yet + +### Fixes + +- Mt. Pyre summit state no longer changes when you finish the Sootopolis events, which would lock you out of one or two +locations. +- Whiting out under certain conditions no longer softlocks you by moving Mr. Briney to an inaccessible area. +- It's no longer possible to join a room using the wrong patch file, even if the slot names match. +- NPCs now stop moving while you're receiving an item. +- Creating a secret base no longer triggers sending the Secret Power TM location. +- Hopefully fix bug where receiving an item while walking over a trigger can skip that trigger (the Moving +Truck/Petalburg wrong warp) + +## Easter Eggs + +There are plenty among you who are capable of ~~cheating~~ finding information about the easter egg phrases by reading +source code, writing brute force scripts, and inspecting memory for clues and answers. By all means, go ahead, that can +be your version of this puzzle and I don't intend to stand in your way. **However**, I would ask that any information +you come up with by doing this, you keep entirely to yourself until the community as a whole has figured out what you +know. There was not previously a way to reasonably learn about or make guesses at the easter egg, but that has changed. +There are mechanisms by which solutions can be found or guessed over the course of multiple games by multiple people, +and I'd rather the fun not get spoiled immediately. + +Once a solution has been found I'd _still_ prefer discussion about hints and effects remain behind spoiler tags just in +case there are people who want to do the hunt on their own. Thank you all, and good luck. diff --git a/worlds/pokemon_emerald/README.md b/worlds/pokemon_emerald/README.md index 2c1e9e356046..8441afc56ae6 100644 --- a/worlds/pokemon_emerald/README.md +++ b/worlds/pokemon_emerald/README.md @@ -1,58 +1,3 @@ # Pokemon Emerald -Version 1.2.1 - -This README contains general info useful for understanding the world. Pretty much all the long lists of locations, -regions, and items are stored in `data/` and (mostly) loaded in by `data.py`. Access rules are in `rules.py`. Check -[data/README.md](data/README.md) for more detailed information on the JSON files holding most of the data. - -## Warps - -Quick note to start, you should not be defining or modifying encoded warps from this repository. They're encoded in the -source code repository for the mod, and then assigned to regions in `data/regions/`. All warps in the game already exist -within `extracted_data.json`, and all relevant warps are already placed in `data/regions/` (unless they were deleted -accidentally). - -Many warps are actually two or three events acting as one logical warp. Doorways, for example, are often 2 tiles wide -indoors but only 1 tile wide outdoors. Both indoor warps point to the outdoor warp, and the outdoor warp points to only -one of the indoor warps. We want to describe warps logically in a way that retains information about individual warp -events. That way a 2-tile-wide doorway doesnt look like a one-way warp next to an unrelated two-way warp, but if we want -to randomize the destinations of those warps, we can still get back each individual id of the multi-tile warp. - -This is how warps are encoded: - -`{source_map}:{source_warp_ids}/{dest_map}:{dest_warp_ids}[!]` - -- `source_map`: The map the warp events are located in -- `source_warp_ids`: The ids of all adjacent warp events in source_map which lead to the same destination (these must be -in ascending order) -- `dest_map`: The map of the warp event to which this one is connected -- `dest_warp_ids`: The ids of the warp events in dest_map -- `[!]`: If the warp expects to lead to a destination which doesnot lead back to it, add a ! to the end - -Example: `MAP_LAVARIDGE_TOWN_HOUSE:0,1/MAP_LAVARIDGE_TOWN:4` - -Example 2: `MAP_AQUA_HIDEOUT_B1F:14/MAP_AQUA_HIDEOUT_B1F:12!` - -Note: A warp must have its destination set to another warp event. However, that does not guarantee that the destination -warp event will warp back to the source. - -Note 2: Some warps _only_ act as destinations and cannot actually be interacted with by the player as sources. These are -usually places you fall from a hole above. At the time of writing, these are actually not accounted for, but there are -no instances where it changes logical access. - -Note 3: Some warp destinations go to the map `MAP_DYNAMIC` and have a special warp id. These edge cases are: - -- The Moving Truck -- Terra Cave -- Marine Cave -- The Department Store Elevator -- Secret Bases -- The Trade Center -- The Union Room -- The Record Corner -- 2P/4P Battle Colosseum - -Note 4: The trick house on Route 110 changes the warp destinations of its entrance and ending room as you progress -through the puzzles, but the source code only sets the trick house up for the first puzzle, and I assume the destination -gets overwritten at run time when certain flags are set. +Version 2.0.0 diff --git a/worlds/pokemon_emerald/__init__.py b/worlds/pokemon_emerald/__init__.py index 4d40dd196688..c17fd1bc197c 100644 --- a/worlds/pokemon_emerald/__init__.py +++ b/worlds/pokemon_emerald/__init__.py @@ -5,7 +5,7 @@ import copy import logging import os -from typing import Any, Set, List, Dict, Optional, Tuple, ClassVar +from typing import Any, Set, List, Dict, Optional, Tuple, ClassVar, TextIO, Union from BaseClasses import ItemClassification, MultiWorld, Tutorial, LocationProgressType from Fill import FillError, fill_restrictive @@ -14,21 +14,18 @@ from worlds.AutoWorld import WebWorld, World from .client import PokemonEmeraldClient # Unused, but required to register with BizHawkClient -from .data import (SpeciesData, MapData, EncounterTableData, LearnsetMove, TrainerPokemonData, StaticEncounterData, - TrainerData, data as emerald_data) +from .data import LEGENDARY_POKEMON, MapData, SpeciesData, TrainerData, data as emerald_data from .items import (ITEM_GROUPS, PokemonEmeraldItem, create_item_label_to_code_map, get_item_classification, offset_item_value) from .locations import (LOCATION_GROUPS, PokemonEmeraldLocation, create_location_label_to_id_map, - create_locations_with_tags) -from .options import (Goal, ItemPoolType, RandomizeWildPokemon, RandomizeBadges, RandomizeTrainerParties, RandomizeHms, - RandomizeStarters, LevelUpMoves, RandomizeAbilities, RandomizeTypes, TmCompatibility, - HmCompatibility, RandomizeStaticEncounters, NormanRequirement, PokemonEmeraldOptions) -from .pokemon import get_random_species, get_random_move, get_random_damaging_move, get_random_type -from .regions import create_regions -from .rom import PokemonEmeraldDeltaPatch, generate_output, location_visited_event_to_id_map -from .rules import set_rules -from .sanity_check import validate_regions -from .util import int_to_bool_array, bool_array_to_int + create_locations_with_tags, set_free_fly, set_legendary_cave_entrances) +from .opponents import randomize_opponent_parties +from .options import (Goal, DarkCavesRequireFlash, HmRequirements, ItemPoolType, PokemonEmeraldOptions, + RandomizeWildPokemon, RandomizeBadges, RandomizeHms, NormanRequirement) +from .pokemon import (get_random_move, get_species_id_by_label, randomize_abilities, randomize_learnsets, + randomize_legendary_encounters, randomize_misc_pokemon, randomize_starters, + randomize_tm_hm_compatibility,randomize_types, randomize_wild_encounters) +from .rom import PokemonEmeraldDeltaPatch, create_patch class PokemonEmeraldWebWorld(WebWorld): @@ -89,22 +86,46 @@ class PokemonEmeraldWorld(World): item_name_groups = ITEM_GROUPS location_name_groups = LOCATION_GROUPS - data_version = 1 + data_version = 2 required_client_version = (0, 4, 3) - badge_shuffle_info: Optional[List[Tuple[PokemonEmeraldLocation, PokemonEmeraldItem]]] = None - hm_shuffle_info: Optional[List[Tuple[PokemonEmeraldLocation, PokemonEmeraldItem]]] = None - free_fly_location_id: int = 0 - - modified_species: List[Optional[SpeciesData]] - modified_maps: List[MapData] + badge_shuffle_info: Optional[List[Tuple[PokemonEmeraldLocation, PokemonEmeraldItem]]] + hm_shuffle_info: Optional[List[Tuple[PokemonEmeraldLocation, PokemonEmeraldItem]]] + free_fly_location_id: int + blacklisted_moves: Set[int] + blacklisted_wilds: Set[int] + blacklisted_starters: Set[int] + blacklisted_opponent_pokemon: Set[int] + hm_requirements: Dict[str, Union[int, List[str]]] + auth: bytes + + modified_species: Dict[int, SpeciesData] + modified_maps: Dict[str, MapData] modified_tmhm_moves: List[int] - modified_static_encounters: List[int] + modified_legendary_encounters: List[int] modified_starters: Tuple[int, int, int] modified_trainers: List[TrainerData] + def __init__(self, multiworld, player): + super(PokemonEmeraldWorld, self).__init__(multiworld, player) + self.badge_shuffle_info = None + self.hm_shuffle_info = None + self.free_fly_location_id = 0 + self.blacklisted_moves = set() + self.blacklisted_wilds = set() + self.blacklisted_starters = set() + self.blacklisted_opponent_pokemon = set() + self.modified_maps = copy.deepcopy(emerald_data.maps) + self.modified_species = copy.deepcopy(emerald_data.species) + self.modified_tmhm_moves = [] + self.modified_starters = emerald_data.starters + self.modified_trainers = [] + self.modified_legendary_encounters = [] + @classmethod def stage_assert_generate(cls, multiworld: MultiWorld) -> None: + from .sanity_check import validate_regions + if not os.path.exists(cls.settings.rom_file): raise FileNotFoundError(cls.settings.rom_file) @@ -114,15 +135,83 @@ def get_filler_item_name(self) -> str: return "Great Ball" def generate_early(self) -> None: - # If badges or HMs are vanilla, Norman locks you from using Surf, which means you're not guaranteed to be - # able to reach Fortree Gym, Mossdeep Gym, or Sootopolis Gym. So we can't require reaching those gyms to - # challenge Norman or it creates a circular dependency. - # This is never a problem for completely random badges/hms because the algo will not place Surf/Balance Badge - # on Norman on its own. It's never a problem for shuffled badges/hms because there is no scenario where Cut or - # the Stone Badge can be a lynchpin for access to any gyms, so they can always be put on Norman in a worst case - # scenario. - # This will also be a problem in warp rando if direct access to Norman's room requires Surf or if access - # any gym leader in general requires Surf. We will probably have to force this to 0 in that case. + self.hm_requirements = { + "HM01 Cut": ["Stone Badge"], + "HM02 Fly": ["Feather Badge"], + "HM03 Surf": ["Balance Badge"], + "HM04 Strength": ["Heat Badge"], + "HM05 Flash": ["Knuckle Badge"], + "HM06 Rock Smash": ["Dynamo Badge"], + "HM07 Waterfall": ["Rain Badge"], + "HM08 Dive": ["Mind Badge"], + } + if self.options.hm_requirements == HmRequirements.option_fly_without_badge: + self.hm_requirements["HM02 Fly"] = 0 + + self.blacklisted_moves = {emerald_data.move_labels[label] for label in self.options.move_blacklist.value} + + self.blacklisted_wilds = { + get_species_id_by_label(species_name) + for species_name in self.options.wild_encounter_blacklist.value + if species_name != "_Legendaries" + } + if "_Legendaries" in self.options.wild_encounter_blacklist.value: + self.blacklisted_wilds |= LEGENDARY_POKEMON + + self.blacklisted_starters = { + get_species_id_by_label(species_name) + for species_name in self.options.starter_blacklist.value + if species_name != "_Legendaries" + } + if "_Legendaries" in self.options.starter_blacklist.value: + self.blacklisted_starters |= LEGENDARY_POKEMON + + self.blacklisted_opponent_pokemon = { + get_species_id_by_label(species_name) + for species_name in self.options.trainer_party_blacklist.value + if species_name != "_Legendaries" + } + if "_Legendaries" in self.options.starter_blacklist.value: + self.blacklisted_opponent_pokemon |= LEGENDARY_POKEMON + + # In race mode we don't patch any item location information into the ROM + if self.multiworld.is_race and not self.options.remote_items: + logging.warning("Pokemon Emerald: Forcing Player %s (%s) to use remote items due to race mode.", + self.player, self.multiworld.player_name[self.player]) + self.options.remote_items.value = Toggle.option_true + + if self.options.goal == Goal.option_legendary_hunt: + # Prevent turning off all legendary encounters + if len(self.options.allowed_legendary_hunt_encounters.value) == 0: + raise ValueError(f"Pokemon Emerald: Player {self.player} ({self.multiworld.player_name[self.player]}) " + "needs to allow at least one legendary encounter when goal is legendary hunt.") + + # Prevent setting the number of required legendaries higher than the number of enabled legendaries + if self.options.legendary_hunt_count.value > len(self.options.allowed_legendary_hunt_encounters.value): + logging.warning("Pokemon Emerald: Legendary hunt count for Player %s (%s) higher than number of allowed " + "legendary encounters. Reducing to number of allowed encounters.", self.player, + self.multiworld.player_name[self.player]) + self.options.legendary_hunt_count.value = len(self.options.allowed_legendary_hunt_encounters.value) + + # Require random wild encounters if dexsanity is enabled + if self.options.dexsanity and self.options.wild_pokemon == RandomizeWildPokemon.option_vanilla: + raise ValueError(f"Pokemon Emerald: Player {self.player} ({self.multiworld.player_name[self.player]}) must " + "not leave wild encounters vanilla if enabling dexsanity.") + + # If badges or HMs are vanilla, Norman locks you from using Surf, + # which means you're not guaranteed to be able to reach Fortree Gym, + # Mossdeep Gym, or Sootopolis Gym. So we can't require reaching those + # gyms to challenge Norman or it creates a circular dependency. + # + # This is never a problem for completely random badges/hms because the + # algo will not place Surf/Balance Badge on Norman on its own. It's + # never a problem for shuffled badges/hms because there is no scenario + # where Cut or the Stone Badge can be a lynchpin for access to any gyms, + # so they can always be put on Norman in a worst case scenario. + # + # This will also be a problem in warp rando if direct access to Norman's + # room requires Surf or if access any gym leader in general requires + # Surf. We will probably have to force this to 0 in that case. max_norman_count = 7 if self.options.badges == RandomizeBadges.option_vanilla: @@ -141,17 +230,22 @@ def generate_early(self) -> None: self.options.norman_count.value = max_norman_count def create_regions(self) -> None: + from .regions import create_regions regions = create_regions(self) - tags = {"Badge", "HM", "KeyItem", "Rod", "Bike"} + tags = {"Badge", "HM", "KeyItem", "Rod", "Bike", "EventTicket"} # Tags with progression items always included if self.options.overworld_items: tags.add("OverworldItem") if self.options.hidden_items: tags.add("HiddenItem") if self.options.npc_gifts: tags.add("NpcGift") - if self.options.enable_ferry: - tags.add("Ferry") + if self.options.berry_trees: + tags.add("BerryTree") + if self.options.dexsanity: + tags.add("Pokedex") + if self.options.trainersanity: + tags.add("Trainer") create_locations_with_tags(self, regions, tags) self.multiworld.regions.extend(regions.values()) @@ -166,18 +260,18 @@ def exclude_locations(location_names: List[str]): continue # Location not in multiworld if self.options.goal == Goal.option_champion: - # Always required to beat champion before receiving this + # Always required to beat champion before receiving these exclude_locations([ - "Littleroot Town - S.S. Ticket from Norman" + "Littleroot Town - S.S. Ticket from Norman", + "Littleroot Town - Aurora Ticket from Norman", + "Littleroot Town - Eon Ticket from Norman", + "Littleroot Town - Mystic Ticket from Norman", + "Littleroot Town - Old Sea Map from Norman", + "Ever Grande City - Champion Wallace", + "Meteor Falls 1F - Rival Steven", + "Trick House Puzzle 8 - Item", ]) - # S.S. Ticket requires beating champion, so ferry is not accessible until after goal - if not self.options.enable_ferry: - exclude_locations([ - "SS Tidal - Hidden Item in Lower Deck Trash Can", - "SS Tidal - TM49 from Thief" - ]) - # Construction workers don't move until champion is defeated if "Safari Zone Construction Workers" not in self.options.remove_roadblocks.value: exclude_locations([ @@ -186,8 +280,12 @@ def exclude_locations(location_names: List[str]): "Safari Zone NE - Item on Ledge", "Safari Zone SE - Hidden Item in South Grass 1", "Safari Zone SE - Hidden Item in South Grass 2", - "Safari Zone SE - Item in Grass" + "Safari Zone SE - Item in Grass", ]) + elif self.options.goal == Goal.option_steven: + exclude_locations([ + "Meteor Falls 1F - Rival Steven", + ]) elif self.options.goal == Goal.option_norman: # If the player sets their options such that Surf or the Balance # Badge is vanilla, a very large number of locations become @@ -207,7 +305,7 @@ def exclude_locations(location_names: List[str]): "Petalburg City - HM03 from Wally's Uncle", "Dewford Town - TM36 from Sludge Bomb Man", "Mauville City - Basement Key from Wattson", - "Mauville City - TM24 from Wattson" + "Mauville City - TM24 from Wattson", ]) def create_items(self) -> None: @@ -217,8 +315,9 @@ def create_items(self) -> None: if location.address is not None ] - # Filter progression items which shouldn't be shuffled into the itempool. Their locations - # still exist, but event items will be placed and locked at their vanilla locations instead. + # Filter progression items which shouldn't be shuffled into the itempool. + # Their locations will still exist, but event items will be placed and + # locked at their vanilla locations instead. filter_tags = set() if not self.options.key_items: @@ -227,12 +326,17 @@ def create_items(self) -> None: filter_tags.add("Rod") if not self.options.bikes: filter_tags.add("Bike") + if not self.options.event_tickets: + filter_tags.add("EventTicket") if self.options.badges in {RandomizeBadges.option_vanilla, RandomizeBadges.option_shuffle}: filter_tags.add("Badge") if self.options.hms in {RandomizeHms.option_vanilla, RandomizeHms.option_shuffle}: filter_tags.add("HM") + # If Badges and HMs are set to the `shuffle` option, don't add them to + # the normal item pool, but do create their items and save them and + # their locations for use in `pre_fill` later. if self.options.badges == RandomizeBadges.option_shuffle: self.badge_shuffle_info = [ (location, self.create_item_by_code(location.default_item_code)) @@ -244,14 +348,18 @@ def create_items(self) -> None: for location in [l for l in item_locations if "HM" in l.tags] ] + # Filter down locations to actual items that will be filled and create + # the itempool. item_locations = [location for location in item_locations if len(filter_tags & location.tags) == 0] default_itempool = [self.create_item_by_code(location.default_item_code) for location in item_locations] + # Take the itempool as-is if self.options.item_pool_type == ItemPoolType.option_shuffled: self.multiworld.itempool += default_itempool - elif self.options.item_pool_type in {ItemPoolType.option_diverse, ItemPoolType.option_diverse_balanced}: - item_categories = ["Ball", "Heal", "Vitamin", "EvoStone", "Money", "TM", "Held", "Misc"] + # Recreate the itempool from random items + elif self.options.item_pool_type in (ItemPoolType.option_diverse, ItemPoolType.option_diverse_balanced): + item_categories = ["Ball", "Heal", "Candy", "Vitamin", "EvoStone", "Money", "TM", "Held", "Misc", "Berry"] # Count occurrences of types of vanilla items in pool item_category_counter = Counter() @@ -306,38 +414,23 @@ def refresh_tm_choices() -> None: self.multiworld.itempool.append(item) def set_rules(self) -> None: + from .rules import set_rules set_rules(self) def generate_basic(self) -> None: - locations: List[PokemonEmeraldLocation] = self.multiworld.get_locations(self.player) - - # Set our free fly location - # If not enabled, set it to Littleroot Town by default - fly_location_name = "EVENT_VISITED_LITTLEROOT_TOWN" - if self.options.free_fly_location: - fly_location_name = self.random.choice([ - "EVENT_VISITED_SLATEPORT_CITY", - "EVENT_VISITED_MAUVILLE_CITY", - "EVENT_VISITED_VERDANTURF_TOWN", - "EVENT_VISITED_FALLARBOR_TOWN", - "EVENT_VISITED_LAVARIDGE_TOWN", - "EVENT_VISITED_FORTREE_CITY", - "EVENT_VISITED_LILYCOVE_CITY", - "EVENT_VISITED_MOSSDEEP_CITY", - "EVENT_VISITED_SOOTOPOLIS_CITY", - "EVENT_VISITED_EVER_GRANDE_CITY" - ]) - - self.free_fly_location_id = location_visited_event_to_id_map[fly_location_name] + # Create auth + # self.auth = self.random.randbytes(16) # Requires >=3.9 + self.auth = self.random.getrandbits(16 * 8).to_bytes(16, "little") - free_fly_location_location = self.multiworld.get_location("FREE_FLY_LOCATION", self.player) - free_fly_location_location.item = None - free_fly_location_location.place_locked_item(self.create_event(fly_location_name)) + randomize_types(self) + randomize_wild_encounters(self) + set_free_fly(self) + set_legendary_cave_entrances(self) # Key items which are considered in access rules but not randomized are converted to events and placed # in their vanilla locations so that the player can have them in their inventory for logic. def convert_unrandomized_items_to_events(tag: str) -> None: - for location in locations: + for location in self.multiworld.get_locations(self.player): if location.tags is not None and tag in location.tags: location.place_locked_item(self.create_event(self.item_id_to_name[location.default_item_code])) location.progress_type = LocationProgressType.DEFAULT @@ -351,30 +444,36 @@ def convert_unrandomized_items_to_events(tag: str) -> None: convert_unrandomized_items_to_events("Rod") if not self.options.bikes: convert_unrandomized_items_to_events("Bike") + if not self.options.event_tickets: + convert_unrandomized_items_to_events("EventTicket") if not self.options.key_items: convert_unrandomized_items_to_events("KeyItem") def pre_fill(self) -> None: - # Items which are shuffled between their own locations + # Badges and HMs that are set to shuffle need to be placed at + # their own subset of locations if self.options.badges == RandomizeBadges.option_shuffle: badge_locations: List[PokemonEmeraldLocation] badge_items: List[PokemonEmeraldItem] # Sort order makes `fill_restrictive` try to place important badges later, which # makes it less likely to have to swap at all, and more likely for swaps to work. - # In the case of vanilla HMs, navigating Granite Cave is required to access more than 2 gyms, - # so Knuckle Badge deserves highest priority if Flash is logically required. badge_locations, badge_items = [list(l) for l in zip(*self.badge_shuffle_info)] badge_priority = { - "Knuckle Badge": 0 if (self.options.hms == RandomizeHms.option_vanilla and self.options.require_flash) else 3, + "Knuckle Badge": 3, "Balance Badge": 1, "Dynamo Badge": 1, "Mind Badge": 2, "Heat Badge": 2, "Rain Badge": 3, "Stone Badge": 4, - "Feather Badge": 5 + "Feather Badge": 5, } + # In the case of vanilla HMs, navigating Granite Cave is required to access more than 2 gyms, + # so Knuckle Badge deserves highest priority if Flash is logically required. + if self.options.hms == RandomizeHms.option_vanilla and \ + self.options.require_flash in (DarkCavesRequireFlash.option_both, DarkCavesRequireFlash.option_only_granite_cave): + badge_priority["Knuckle Badge"] = 0 badge_items.sort(key=lambda item: badge_priority.get(item.name, 0)) # Un-exclude badge locations, since we need to put progression items on them @@ -384,6 +483,11 @@ def pre_fill(self) -> None: else location.progress_type collection_state = self.multiworld.get_all_state(False) + + # If HM shuffle is on, HMs are not placed and not in the pool, so + # `get_all_state` did not contain them. Collect them manually for + # this fill. We know that they will be included in all state after + # this stage. if self.hm_shuffle_info is not None: for _, item in self.hm_shuffle_info: collection_state.collect(item) @@ -406,25 +510,29 @@ def pre_fill(self) -> None: logging.debug(f"Failed to shuffle badges for player {self.player}. Retrying.") continue + # Badges are guaranteed to be either placed or in the multiworld's itempool now if self.options.hms == RandomizeHms.option_shuffle: hm_locations: List[PokemonEmeraldLocation] hm_items: List[PokemonEmeraldItem] # Sort order makes `fill_restrictive` try to place important HMs later, which # makes it less likely to have to swap at all, and more likely for swaps to work. - # In the case of vanilla badges, navigating Granite Cave is required to access more than 2 gyms, - # so Flash deserves highest priority if it's logically required. hm_locations, hm_items = [list(l) for l in zip(*self.hm_shuffle_info)] hm_priority = { - "HM05 Flash": 0 if (self.options.badges == RandomizeBadges.option_vanilla and self.options.require_flash) else 3, + "HM05 Flash": 3, "HM03 Surf": 1, "HM06 Rock Smash": 1, "HM08 Dive": 2, "HM04 Strength": 2, "HM07 Waterfall": 3, "HM01 Cut": 4, - "HM02 Fly": 5 + "HM02 Fly": 5, } + # In the case of vanilla badges, navigating Granite Cave is required to access more than 2 gyms, + # so Flash deserves highest priority if it's logically required. + if self.options.badges == RandomizeBadges.option_vanilla and \ + self.options.require_flash in (DarkCavesRequireFlash.option_both, DarkCavesRequireFlash.option_only_granite_cave): + hm_priority["HM05 Flash"] = 0 hm_items.sort(key=lambda item: hm_priority.get(item.name, 0)) # Un-exclude HM locations, since we need to put progression items on them @@ -454,465 +562,110 @@ def pre_fill(self) -> None: continue def generate_output(self, output_directory: str) -> None: - def randomize_abilities() -> None: - # Creating list of potential abilities - ability_label_to_value = {ability.label.lower(): ability.ability_id for ability in emerald_data.abilities} - - ability_blacklist_labels = {"cacophony"} - option_ability_blacklist = self.options.ability_blacklist.value - if option_ability_blacklist is not None: - ability_blacklist_labels |= {ability_label.lower() for ability_label in option_ability_blacklist} - - ability_blacklist = {ability_label_to_value[label] for label in ability_blacklist_labels} - ability_whitelist = [a.ability_id for a in emerald_data.abilities if a.ability_id not in ability_blacklist] - - if self.options.abilities == RandomizeAbilities.option_follow_evolutions: - already_modified: Set[int] = set() - - # Loops through species and only tries to modify abilities if the pokemon has no pre-evolution - # or if the pre-evolution has already been modified. Then tries to modify all species that evolve - # from this one which have the same abilities. - # The outer while loop only runs three times for vanilla ordering: Once for a first pass, once for - # Hitmonlee/Hitmonchan, and once to verify that there's nothing left to do. - while True: - had_clean_pass = True - for species in self.modified_species: - if species is None: - continue - if species.species_id in already_modified: - continue - if species.pre_evolution is not None and species.pre_evolution not in already_modified: - continue - - had_clean_pass = False - - old_abilities = species.abilities - new_abilities = ( - 0 if old_abilities[0] == 0 else self.random.choice(ability_whitelist), - 0 if old_abilities[1] == 0 else self.random.choice(ability_whitelist) - ) - - evolutions = [species] - while len(evolutions) > 0: - evolution = evolutions.pop() - if evolution.abilities == old_abilities: - evolution.abilities = new_abilities - already_modified.add(evolution.species_id) - evolutions += [ - self.modified_species[evolution.species_id] - for evolution in evolution.evolutions - if evolution.species_id not in already_modified - ] - - if had_clean_pass: - break - else: # Not following evolutions - for species in self.modified_species: - if species is None: - continue - - old_abilities = species.abilities - new_abilities = ( - 0 if old_abilities[0] == 0 else self.random.choice(ability_whitelist), - 0 if old_abilities[1] == 0 else self.random.choice(ability_whitelist) - ) - - species.abilities = new_abilities - - def randomize_types() -> None: - if self.options.types == RandomizeTypes.option_shuffle: - type_map = list(range(18)) - self.random.shuffle(type_map) - - # We never want to map to the ??? type, so swap whatever index maps to ??? with ??? - # So ??? will always map to itself, and there are no pokemon which have the ??? type - mystery_type_index = type_map.index(9) - type_map[mystery_type_index], type_map[9] = type_map[9], type_map[mystery_type_index] - - for species in self.modified_species: - if species is not None: - species.types = (type_map[species.types[0]], type_map[species.types[1]]) - elif self.options.types == RandomizeTypes.option_completely_random: - for species in self.modified_species: - if species is not None: - new_type_1 = get_random_type(self.random) - new_type_2 = new_type_1 - if species.types[0] != species.types[1]: - while new_type_1 == new_type_2: - new_type_2 = get_random_type(self.random) - - species.types = (new_type_1, new_type_2) - elif self.options.types == RandomizeTypes.option_follow_evolutions: - already_modified: Set[int] = set() - - # Similar to follow evolutions for abilities, but only needs to loop through once. - # For every pokemon without a pre-evolution, generates a random mapping from old types to new types - # and then walks through the evolution tree applying that map. This means that evolutions that share - # types will have those types mapped to the same new types, and evolutions with new or diverging types - # will still have new or diverging types. - # Consider: - # - Charmeleon (Fire/Fire) -> Charizard (Fire/Flying) - # - Onyx (Rock/Ground) -> Steelix (Steel/Ground) - # - Nincada (Bug/Ground) -> Ninjask (Bug/Flying) && Shedinja (Bug/Ghost) - # - Azurill (Normal/Normal) -> Marill (Water/Water) - for species in self.modified_species: - if species is None: - continue - if species.species_id in already_modified: - continue - if species.pre_evolution is not None and species.pre_evolution not in already_modified: - continue - - type_map = list(range(18)) - self.random.shuffle(type_map) - - # We never want to map to the ??? type, so swap whatever index maps to ??? with ??? - # So ??? will always map to itself, and there are no pokemon which have the ??? type - mystery_type_index = type_map.index(9) - type_map[mystery_type_index], type_map[9] = type_map[9], type_map[mystery_type_index] - - evolutions = [species] - while len(evolutions) > 0: - evolution = evolutions.pop() - evolution.types = (type_map[evolution.types[0]], type_map[evolution.types[1]]) - already_modified.add(evolution.species_id) - evolutions += [self.modified_species[evo.species_id] for evo in evolution.evolutions] - - def randomize_learnsets() -> None: - type_bias = self.options.move_match_type_bias.value - normal_bias = self.options.move_normal_type_bias.value - - for species in self.modified_species: - if species is None: - continue - - old_learnset = species.learnset - new_learnset: List[LearnsetMove] = [] - - i = 0 - # Replace filler MOVE_NONEs at start of list - while old_learnset[i].move_id == 0: - if self.options.level_up_moves == LevelUpMoves.option_start_with_four_moves: - new_move = get_random_move(self.random, {move.move_id for move in new_learnset}, type_bias, - normal_bias, species.types) - else: - new_move = 0 - new_learnset.append(LearnsetMove(old_learnset[i].level, new_move)) - i += 1 - - while i < len(old_learnset): - # Guarantees the starter has a good damaging move - if i == 3: - new_move = get_random_damaging_move(self.random, {move.move_id for move in new_learnset}) - else: - new_move = get_random_move(self.random, {move.move_id for move in new_learnset}, type_bias, - normal_bias, species.types) - new_learnset.append(LearnsetMove(old_learnset[i].level, new_move)) - i += 1 - - species.learnset = new_learnset - - def randomize_tm_hm_compatibility() -> None: - for species in self.modified_species: - if species is None: - continue - - combatibility_array = int_to_bool_array(species.tm_hm_compatibility) - - # TMs - for i in range(0, 50): - if self.options.tm_compatibility == TmCompatibility.option_fully_compatible: - combatibility_array[i] = True - elif self.options.tm_compatibility == TmCompatibility.option_completely_random: - combatibility_array[i] = self.random.choice([True, False]) + self.modified_trainers = copy.deepcopy(emerald_data.trainers) + self.modified_tmhm_moves = copy.deepcopy(emerald_data.tmhm_moves) + self.modified_legendary_encounters = copy.deepcopy(emerald_data.legendary_encounters) + self.modified_misc_pokemon = copy.deepcopy(emerald_data.misc_pokemon) + self.modified_starters = copy.deepcopy(emerald_data.starters) - # HMs - for i in range(50, 58): - if self.options.hm_compatibility == HmCompatibility.option_fully_compatible: - combatibility_array[i] = True - elif self.options.hm_compatibility == HmCompatibility.option_completely_random: - combatibility_array[i] = self.random.choice([True, False]) + randomize_abilities(self) + randomize_learnsets(self) + randomize_tm_hm_compatibility(self) + randomize_legendary_encounters(self) + randomize_misc_pokemon(self) + randomize_opponent_parties(self) + randomize_starters(self) - species.tm_hm_compatibility = bool_array_to_int(combatibility_array) + # Modify catch rate + min_catch_rate = min(self.options.min_catch_rate.value, 255) + for species in self.modified_species.values(): + species.catch_rate = max(species.catch_rate, min_catch_rate) - def randomize_tm_moves() -> None: + # Modify TM moves + if self.options.tm_tutor_moves: new_moves: Set[int] = set() for i in range(50): - new_move = get_random_move(self.random, new_moves) + new_move = get_random_move(self.random, new_moves | self.blacklisted_moves) new_moves.add(new_move) self.modified_tmhm_moves[i] = new_move - def randomize_wild_encounters() -> None: - should_match_bst = self.options.wild_pokemon in { - RandomizeWildPokemon.option_match_base_stats, - RandomizeWildPokemon.option_match_base_stats_and_type - } - should_match_type = self.options.wild_pokemon in { - RandomizeWildPokemon.option_match_type, - RandomizeWildPokemon.option_match_base_stats_and_type - } - should_allow_legendaries = self.options.allow_wild_legendaries == Toggle.option_true - - for map_data in self.modified_maps: - new_encounters: List[Optional[EncounterTableData]] = [None, None, None] - old_encounters = [map_data.land_encounters, map_data.water_encounters, map_data.fishing_encounters] - - for i, table in enumerate(old_encounters): - if table is not None: - species_old_to_new_map: Dict[int, int] = {} - for species_id in table.slots: - if species_id not in species_old_to_new_map: - original_species = emerald_data.species[species_id] - target_bst = sum(original_species.base_stats) if should_match_bst else None - target_type = self.random.choice(original_species.types) if should_match_type else None - - species_old_to_new_map[species_id] = get_random_species( - self.random, - self.modified_species, - target_bst, - target_type, - should_allow_legendaries - ).species_id - - new_slots: List[int] = [] - for species_id in table.slots: - new_slots.append(species_old_to_new_map[species_id]) - - new_encounters[i] = EncounterTableData(new_slots, table.rom_address) - - map_data.land_encounters = new_encounters[0] - map_data.water_encounters = new_encounters[1] - map_data.fishing_encounters = new_encounters[2] - - def randomize_static_encounters() -> None: - if self.options.static_encounters == RandomizeStaticEncounters.option_shuffle: - shuffled_species = [encounter.species_id for encounter in emerald_data.static_encounters] - self.random.shuffle(shuffled_species) - - self.modified_static_encounters = [] - for i, encounter in enumerate(emerald_data.static_encounters): - self.modified_static_encounters.append(StaticEncounterData( - shuffled_species[i], - encounter.rom_address - )) - else: - should_match_bst = self.options.static_encounters in { - RandomizeStaticEncounters.option_match_base_stats, - RandomizeStaticEncounters.option_match_base_stats_and_type - } - should_match_type = self.options.static_encounters in { - RandomizeStaticEncounters.option_match_type, - RandomizeStaticEncounters.option_match_base_stats_and_type - } - - for encounter in emerald_data.static_encounters: - original_species = self.modified_species[encounter.species_id] - target_bst = sum(original_species.base_stats) if should_match_bst else None - target_type = self.random.choice(original_species.types) if should_match_type else None - - self.modified_static_encounters.append(StaticEncounterData( - get_random_species(self.random, self.modified_species, target_bst, target_type).species_id, - encounter.rom_address - )) - - def randomize_opponent_parties() -> None: - should_match_bst = self.options.trainer_parties in { - RandomizeTrainerParties.option_match_base_stats, - RandomizeTrainerParties.option_match_base_stats_and_type + create_patch(self, output_directory) + + del self.modified_trainers + del self.modified_tmhm_moves + del self.modified_legendary_encounters + del self.modified_misc_pokemon + del self.modified_starters + del self.modified_species + + def write_spoiler(self, spoiler_handle: TextIO): + if self.options.dexsanity: + from collections import defaultdict + + spoiler_handle.write(f"\n\nWild Pokemon ({self.multiworld.player_name[self.player]}):\n\n") + + species_maps = defaultdict(set) + for map in self.modified_maps.values(): + if map.land_encounters is not None: + for encounter in map.land_encounters.slots: + species_maps[encounter].add(map.name[4:]) + + if map.water_encounters is not None: + for encounter in map.water_encounters.slots: + species_maps[encounter].add(map.name[4:]) + + if map.fishing_encounters is not None: + for encounter in map.fishing_encounters.slots: + species_maps[encounter].add(map.name[4:]) + + lines = [f"{emerald_data.species[species].label}: {', '.join(maps)}\n" + for species, maps in species_maps.items()] + lines.sort() + for line in lines: + spoiler_handle.write(line) + + del self.modified_maps + + def extend_hint_information(self, hint_data): + if self.options.dexsanity: + from collections import defaultdict + + slot_to_rod = { + 0: "_OLD_ROD", + 1: "_OLD_ROD", + 2: "_GOOD_ROD", + 3: "_GOOD_ROD", + 4: "_GOOD_ROD", + 5: "_SUPER_ROD", + 6: "_SUPER_ROD", + 7: "_SUPER_ROD", + 8: "_SUPER_ROD", + 9: "_SUPER_ROD", } - should_match_type = self.options.trainer_parties in { - RandomizeTrainerParties.option_match_type, - RandomizeTrainerParties.option_match_base_stats_and_type - } - allow_legendaries = self.options.allow_trainer_legendaries == Toggle.option_true - - per_species_tmhm_moves: Dict[int, List[int]] = {} - - for trainer in self.modified_trainers: - new_party = [] - for pokemon in trainer.party.pokemon: - original_species = emerald_data.species[pokemon.species_id] - target_bst = sum(original_species.base_stats) if should_match_bst else None - target_type = self.random.choice(original_species.types) if should_match_type else None - - new_species = get_random_species( - self.random, - self.modified_species, - target_bst, - target_type, - allow_legendaries - ) - - if new_species.species_id not in per_species_tmhm_moves: - per_species_tmhm_moves[new_species.species_id] = list({ - self.modified_tmhm_moves[i] - for i, is_compatible in enumerate(int_to_bool_array(new_species.tm_hm_compatibility)) - if is_compatible - }) - - tm_hm_movepool = per_species_tmhm_moves[new_species.species_id] - level_up_movepool = list({ - move.move_id - for move in new_species.learnset - if move.move_id != 0 and move.level <= pokemon.level - }) - - new_moves = ( - self.random.choice(tm_hm_movepool if self.random.random() < 0.25 and len(tm_hm_movepool) > 0 else level_up_movepool), - self.random.choice(tm_hm_movepool if self.random.random() < 0.25 and len(tm_hm_movepool) > 0 else level_up_movepool), - self.random.choice(tm_hm_movepool if self.random.random() < 0.25 and len(tm_hm_movepool) > 0 else level_up_movepool), - self.random.choice(tm_hm_movepool if self.random.random() < 0.25 and len(tm_hm_movepool) > 0 else level_up_movepool) - ) - - new_party.append(TrainerPokemonData(new_species.species_id, pokemon.level, new_moves)) - - trainer.party.pokemon = new_party - - def randomize_starters() -> None: - match_bst = self.options.starters in { - RandomizeStarters.option_match_base_stats, - RandomizeStarters.option_match_base_stats_and_type - } - match_type = self.options.starters in { - RandomizeStarters.option_match_type, - RandomizeStarters.option_match_base_stats_and_type - } - allow_legendaries = self.options.allow_starter_legendaries == Toggle.option_true - - starter_bsts = ( - sum(emerald_data.species[emerald_data.starters[0]].base_stats) if match_bst else None, - sum(emerald_data.species[emerald_data.starters[1]].base_stats) if match_bst else None, - sum(emerald_data.species[emerald_data.starters[2]].base_stats) if match_bst else None - ) - - starter_types = ( - self.random.choice(emerald_data.species[emerald_data.starters[0]].types) if match_type else None, - self.random.choice(emerald_data.species[emerald_data.starters[1]].types) if match_type else None, - self.random.choice(emerald_data.species[emerald_data.starters[2]].types) if match_type else None - ) - - new_starters = ( - get_random_species(self.random, self.modified_species, - starter_bsts[0], starter_types[0], allow_legendaries), - get_random_species(self.random, self.modified_species, - starter_bsts[1], starter_types[1], allow_legendaries), - get_random_species(self.random, self.modified_species, - starter_bsts[2], starter_types[2], allow_legendaries) - ) - - egg_code = self.options.easter_egg.value - egg_check_1 = 0 - egg_check_2 = 0 - - for i in egg_code: - egg_check_1 += ord(i) - egg_check_2 += egg_check_1 * egg_check_1 - - egg = 96 + egg_check_2 - (egg_check_1 * 0x077C) - if egg_check_2 == 0x14E03A and egg < 411 and egg > 0 and egg not in range(252, 277): - self.modified_starters = (egg, egg, egg) - else: - self.modified_starters = ( - new_starters[0].species_id, - new_starters[1].species_id, - new_starters[2].species_id - ) - - # Putting the unchosen starter onto the rival's team - rival_teams: List[List[Tuple[str, int, bool]]] = [ - [ - ("TRAINER_BRENDAN_ROUTE_103_TREECKO", 0, False), - ("TRAINER_BRENDAN_RUSTBORO_TREECKO", 1, False), - ("TRAINER_BRENDAN_ROUTE_110_TREECKO", 2, True ), - ("TRAINER_BRENDAN_ROUTE_119_TREECKO", 2, True ), - ("TRAINER_BRENDAN_LILYCOVE_TREECKO", 3, True ), - ("TRAINER_MAY_ROUTE_103_TREECKO", 0, False), - ("TRAINER_MAY_RUSTBORO_TREECKO", 1, False), - ("TRAINER_MAY_ROUTE_110_TREECKO", 2, True ), - ("TRAINER_MAY_ROUTE_119_TREECKO", 2, True ), - ("TRAINER_MAY_LILYCOVE_TREECKO", 3, True ) - ], - [ - ("TRAINER_BRENDAN_ROUTE_103_TORCHIC", 0, False), - ("TRAINER_BRENDAN_RUSTBORO_TORCHIC", 1, False), - ("TRAINER_BRENDAN_ROUTE_110_TORCHIC", 2, True ), - ("TRAINER_BRENDAN_ROUTE_119_TORCHIC", 2, True ), - ("TRAINER_BRENDAN_LILYCOVE_TORCHIC", 3, True ), - ("TRAINER_MAY_ROUTE_103_TORCHIC", 0, False), - ("TRAINER_MAY_RUSTBORO_TORCHIC", 1, False), - ("TRAINER_MAY_ROUTE_110_TORCHIC", 2, True ), - ("TRAINER_MAY_ROUTE_119_TORCHIC", 2, True ), - ("TRAINER_MAY_LILYCOVE_TORCHIC", 3, True ) - ], - [ - ("TRAINER_BRENDAN_ROUTE_103_MUDKIP", 0, False), - ("TRAINER_BRENDAN_RUSTBORO_MUDKIP", 1, False), - ("TRAINER_BRENDAN_ROUTE_110_MUDKIP", 2, True ), - ("TRAINER_BRENDAN_ROUTE_119_MUDKIP", 2, True ), - ("TRAINER_BRENDAN_LILYCOVE_MUDKIP", 3, True ), - ("TRAINER_MAY_ROUTE_103_MUDKIP", 0, False), - ("TRAINER_MAY_RUSTBORO_MUDKIP", 1, False), - ("TRAINER_MAY_ROUTE_110_MUDKIP", 2, True ), - ("TRAINER_MAY_ROUTE_119_MUDKIP", 2, True ), - ("TRAINER_MAY_LILYCOVE_MUDKIP", 3, True ) - ] - ] - for i, starter in enumerate([new_starters[1], new_starters[2], new_starters[0]]): - potential_evolutions = [evolution.species_id for evolution in starter.evolutions] - picked_evolution = starter.species_id - if len(potential_evolutions) > 0: - picked_evolution = self.random.choice(potential_evolutions) + species_maps = defaultdict(set) + for map in self.modified_maps.values(): + if map.land_encounters is not None: + for encounter in map.land_encounters.slots: + species_maps[encounter].add(map.name[4:] + "_GRASS") - for trainer_name, starter_position, is_evolved in rival_teams[i]: - trainer_data = self.modified_trainers[emerald_data.constants[trainer_name]] - trainer_data.party.pokemon[starter_position].species_id = picked_evolution if is_evolved else starter.species_id + if map.water_encounters is not None: + for encounter in map.water_encounters.slots: + species_maps[encounter].add(map.name[4:] + "_WATER") - self.modified_species = copy.deepcopy(emerald_data.species) - self.modified_trainers = copy.deepcopy(emerald_data.trainers) - self.modified_maps = copy.deepcopy(emerald_data.maps) - self.modified_tmhm_moves = copy.deepcopy(emerald_data.tmhm_moves) - self.modified_static_encounters = copy.deepcopy(emerald_data.static_encounters) - self.modified_starters = copy.deepcopy(emerald_data.starters) - - # Randomize species data - if self.options.abilities != RandomizeAbilities.option_vanilla: - randomize_abilities() - - if self.options.types != RandomizeTypes.option_vanilla: - randomize_types() - - if self.options.level_up_moves != LevelUpMoves.option_vanilla: - randomize_learnsets() - - randomize_tm_hm_compatibility() # Options are checked within this function + if map.fishing_encounters is not None: + for slot, encounter in enumerate(map.fishing_encounters.slots): + species_maps[encounter].add(map.name[4:] + slot_to_rod[slot]) - min_catch_rate = min(self.options.min_catch_rate.value, 255) - for species in self.modified_species: - if species is not None: - species.catch_rate = max(species.catch_rate, min_catch_rate) - - if self.options.tm_moves: - randomize_tm_moves() - - # Randomize wild encounters - if self.options.wild_pokemon != RandomizeWildPokemon.option_vanilla: - randomize_wild_encounters() - - # Randomize static encounters - if self.options.static_encounters != RandomizeStaticEncounters.option_vanilla: - randomize_static_encounters() - - # Randomize opponents - if self.options.trainer_parties != RandomizeTrainerParties.option_vanilla: - randomize_opponent_parties() - - # Randomize starters - if self.options.starters != RandomizeStarters.option_vanilla: - randomize_starters() + hint_data[self.player] = { + self.location_name_to_id[f"Pokedex - {emerald_data.species[species].label}"]: ", ".join(maps) + for species, maps in species_maps.items() + } - generate_output(self, output_directory) + def modify_multidata(self, multidata: Dict[str, Any]): + import base64 + multidata["connect_names"][base64.b64encode(self.auth).decode("ascii")] = multidata["connect_names"][self.multiworld.player_name[self.player]] def fill_slot_data(self) -> Dict[str, Any]: slot_data = self.options.as_dict( @@ -921,23 +674,33 @@ def fill_slot_data(self) -> Dict[str, Any]: "hms", "key_items", "bikes", + "event_tickets", "rods", "overworld_items", "hidden_items", "npc_gifts", + "berry_trees", "require_itemfinder", "require_flash", - "enable_ferry", "elite_four_requirement", "elite_four_count", "norman_requirement", "norman_count", + "legendary_hunt_catch", + "legendary_hunt_count", "extra_boulders", "remove_roadblocks", + "allowed_legendary_hunt_encounters", + "extra_bumpy_slope", "free_fly_location", - "fly_without_badge", + "remote_items", + "dexsanity", + "trainersanity", + "modify_118", + "death_link", ) slot_data["free_fly_location_id"] = self.free_fly_location_id + slot_data["hm_requirements"] = self.hm_requirements return slot_data def create_item(self, name: str) -> PokemonEmeraldItem: diff --git a/worlds/pokemon_emerald/client.py b/worlds/pokemon_emerald/client.py index d8b4b8d5878f..0dccc1fe17a0 100644 --- a/worlds/pokemon_emerald/client.py +++ b/worlds/pokemon_emerald/client.py @@ -1,19 +1,28 @@ -from typing import TYPE_CHECKING, Dict, Set +import asyncio +import copy +import orjson +import random +import time +from typing import TYPE_CHECKING, Optional, Dict, Set, Tuple +import uuid from NetUtils import ClientStatus +from Options import Toggle +import Utils import worlds._bizhawk as bizhawk from worlds._bizhawk.client import BizHawkClient -from .data import BASE_OFFSET, data -from .options import Goal +from .data import BASE_OFFSET, POKEDEX_OFFSET, data +from .options import Goal, RemoteItems +from .util import pokemon_data_to_json, json_to_pokemon_data if TYPE_CHECKING: from worlds._bizhawk.context import BizHawkClientContext -EXPECTED_ROM_NAME = "pokemon emerald version / AP 2" +EXPECTED_ROM_NAME = "pokemon emerald version / AP 5" -IS_CHAMPION_FLAG = data.constants["FLAG_IS_CHAMPION"] +DEFEATED_WALLACE_FLAG = data.constants["TRAINER_FLAGS_START"] + data.constants["TRAINER_WALLACE"] DEFEATED_STEVEN_FLAG = data.constants["TRAINER_FLAGS_START"] + data.constants["TRAINER_STEVEN"] DEFEATED_NORMAN_FLAG = data.constants["TRAINER_FLAGS_START"] + data.constants["TRAINER_NORMAN_1"] @@ -31,7 +40,7 @@ "FLAG_RECEIVED_POKENAV", # Talk to Mr. Stone "FLAG_DELIVERED_STEVEN_LETTER", "FLAG_DELIVERED_DEVON_GOODS", - "FLAG_HIDE_ROUTE_119_TEAM_AQUA", # Clear Weather Institute + "FLAG_HIDE_ROUTE_119_TEAM_AQUA_SHELLY", # Clear Weather Institute "FLAG_MET_ARCHIE_METEOR_FALLS", # Magma steals meteorite "FLAG_GROUDON_AWAKENED_MAGMA_HIDEOUT", # Clear Magma Hideout "FLAG_MET_TEAM_AQUA_HARBOR", # Aqua steals submarine @@ -41,19 +50,19 @@ "FLAG_HIDE_SKY_PILLAR_TOP_RAYQUAZA", # Rayquaza departs for Sootopolis "FLAG_OMIT_DIVE_FROM_STEVEN_LETTER", # Steven gives Dive HM (clears seafloor cavern grunt) "FLAG_IS_CHAMPION", - "FLAG_PURCHASED_HARBOR_MAIL" + "FLAG_PURCHASED_HARBOR_MAIL", ] EVENT_FLAG_MAP = {data.constants[flag_name]: flag_name for flag_name in TRACKER_EVENT_FLAGS} KEY_LOCATION_FLAGS = [ - "NPC_GIFT_RECEIVED_HM01", - "NPC_GIFT_RECEIVED_HM02", - "NPC_GIFT_RECEIVED_HM03", - "NPC_GIFT_RECEIVED_HM04", - "NPC_GIFT_RECEIVED_HM05", - "NPC_GIFT_RECEIVED_HM06", - "NPC_GIFT_RECEIVED_HM07", - "NPC_GIFT_RECEIVED_HM08", + "NPC_GIFT_RECEIVED_HM_CUT", + "NPC_GIFT_RECEIVED_HM_FLY", + "NPC_GIFT_RECEIVED_HM_SURF", + "NPC_GIFT_RECEIVED_HM_STRENGTH", + "NPC_GIFT_RECEIVED_HM_FLASH", + "NPC_GIFT_RECEIVED_HM_ROCK_SMASH", + "NPC_GIFT_RECEIVED_HM_WATERFALL", + "NPC_GIFT_RECEIVED_HM_DIVE", "NPC_GIFT_RECEIVED_ACRO_BIKE", "NPC_GIFT_RECEIVED_WAILMER_PAIL", "NPC_GIFT_RECEIVED_DEVON_GOODS_RUSTURF_TUNNEL", @@ -70,7 +79,7 @@ "HIDDEN_ITEM_ABANDONED_SHIP_RM_1_KEY", "HIDDEN_ITEM_ABANDONED_SHIP_RM_4_KEY", "HIDDEN_ITEM_ABANDONED_SHIP_RM_6_KEY", - "ITEM_ABANDONED_SHIP_HIDDEN_FLOOR_ROOM_4_SCANNER", + "ITEM_ABANDONED_SHIP_HIDDEN_FLOOR_ROOM_2_SCANNER", "ITEM_ABANDONED_SHIP_CAPTAINS_OFFICE_STORAGE_KEY", "NPC_GIFT_RECEIVED_OLD_ROD", "NPC_GIFT_RECEIVED_GOOD_ROD", @@ -78,6 +87,24 @@ ] KEY_LOCATION_FLAG_MAP = {data.locations[location_name].flag: location_name for location_name in KEY_LOCATION_FLAGS} +LEGENDARY_NAMES = { + "Groudon": "GROUDON", + "Kyogre": "KYOGRE", + "Rayquaza": "RAYQUAZA", + "Latias": "LATIAS", + "Latios": "LATIOS", + "Regirock": "REGIROCK", + "Regice": "REGICE", + "Registeel": "REGISTEEL", + "Mew": "MEW", + "Deoxys": "DEOXYS", + "Ho-oh": "HO_OH", + "Lugia": "LUGIA", +} + +DEFEATED_LEGENDARY_FLAG_MAP = {data.constants[f"FLAG_DEFEATED_{name}"]: name for name in LEGENDARY_NAMES.values()} +CAUGHT_LEGENDARY_FLAG_MAP = {data.constants[f"FLAG_CAUGHT_{name}"]: name for name in LEGENDARY_NAMES.values()} + class PokemonEmeraldClient(BizHawkClient): game = "Pokemon Emerald" @@ -86,14 +113,31 @@ class PokemonEmeraldClient(BizHawkClient): local_checked_locations: Set[int] local_set_events: Dict[str, bool] local_found_key_items: Dict[str, bool] - goal_flag: int + local_defeated_legendaries: Dict[str, bool] + goal_flag: Optional[int] + + wonder_trade_update_event: asyncio.Event + latest_wonder_trade_reply: dict + wonder_trade_cooldown: int + wonder_trade_cooldown_timer: int + + death_counter: Optional[int] + previous_death_link: float + ignore_next_death_link: bool def __init__(self) -> None: super().__init__() self.local_checked_locations = set() self.local_set_events = {} self.local_found_key_items = {} - self.goal_flag = IS_CHAMPION_FLAG + self.local_defeated_legendaries = {} + self.goal_flag = None + self.wonder_trade_update_event = asyncio.Event() + self.wonder_trade_cooldown = 5000 + self.wonder_trade_cooldown_timer = 0 + self.death_counter = None + self.previous_death_link = 0 + self.ignore_next_death_link = False async def validate_rom(self, ctx: "BizHawkClientContext") -> bool: from CommonClient import logger @@ -123,88 +167,103 @@ async def validate_rom(self, ctx: "BizHawkClientContext") -> bool: ctx.want_slot_data = True ctx.watcher_timeout = 0.125 + self.death_counter = None + self.previous_death_link = 0 + self.ignore_next_death_link = False + return True async def set_auth(self, ctx: "BizHawkClientContext") -> None: - slot_name_bytes = (await bizhawk.read(ctx.bizhawk_ctx, [(data.rom_addresses["gArchipelagoInfo"], 64, "ROM")]))[0] - ctx.auth = bytes([byte for byte in slot_name_bytes if byte != 0]).decode("utf-8") + import base64 + auth_raw = (await bizhawk.read(ctx.bizhawk_ctx, [(data.rom_addresses["gArchipelagoInfo"], 16, "ROM")]))[0] + ctx.auth = base64.b64encode(auth_raw).decode("utf-8") async def game_watcher(self, ctx: "BizHawkClientContext") -> None: - if ctx.slot_data is not None: - if ctx.slot_data["goal"] == Goal.option_champion: - self.goal_flag = IS_CHAMPION_FLAG - elif ctx.slot_data["goal"] == Goal.option_steven: - self.goal_flag = DEFEATED_STEVEN_FLAG - elif ctx.slot_data["goal"] == Goal.option_norman: - self.goal_flag = DEFEATED_NORMAN_FLAG + if ctx.server is None or ctx.server.socket.closed or ctx.slot_data is None: + return + + if ctx.slot_data["goal"] == Goal.option_champion: + self.goal_flag = DEFEATED_WALLACE_FLAG + elif ctx.slot_data["goal"] == Goal.option_steven: + self.goal_flag = DEFEATED_STEVEN_FLAG + elif ctx.slot_data["goal"] == Goal.option_norman: + self.goal_flag = DEFEATED_NORMAN_FLAG + elif ctx.slot_data["goal"] == Goal.option_legendary_hunt: + self.goal_flag = None + + if ctx.slot_data["remote_items"] == RemoteItems.option_true and not ctx.items_handling & 0b010: + ctx.items_handling = 0b011 + Utils.async_start(ctx.send_msgs([{ + "cmd": "ConnectUpdate", + "items_handling": ctx.items_handling + }])) try: - # Checks that the player is in the overworld - overworld_guard = (data.ram_addresses["gMain"] + 4, (data.ram_addresses["CB2_Overworld"] + 1).to_bytes(4, "little"), "System Bus") + guards: Dict[str, Tuple[int, bytes, str]] = {} - # Read save block address - read_result = await bizhawk.guarded_read( - ctx.bizhawk_ctx, - [(data.ram_addresses["gSaveBlock1Ptr"], 4, "System Bus")], - [overworld_guard] + # Checks that the player is in the overworld + guards["IN OVERWORLD"] = ( + data.ram_addresses["gMain"] + 4, + (data.ram_addresses["CB2_Overworld"] + 1).to_bytes(4, "little"), + "System Bus" ) - if read_result is None: # Not in overworld - return - - # Checks that the save block hasn't moved - save_block_address_guard = (data.ram_addresses["gSaveBlock1Ptr"], read_result[0], "System Bus") - - save_block_address = int.from_bytes(read_result[0], "little") - # Handle giving the player items - read_result = await bizhawk.guarded_read( + # Read save block addresses + read_result = await bizhawk.read( ctx.bizhawk_ctx, [ - (save_block_address + 0x3778, 2, "System Bus"), # Number of received items - (data.ram_addresses["gArchipelagoReceivedItem"] + 4, 1, "System Bus") # Received item struct full? - ], - [overworld_guard, save_block_address_guard] + (data.ram_addresses["gSaveBlock1Ptr"], 4, "System Bus"), + (data.ram_addresses["gSaveBlock2Ptr"], 4, "System Bus"), + ] ) - if read_result is None: # Not in overworld, or save block moved - return - num_received_items = int.from_bytes(read_result[0], "little") - received_item_is_empty = read_result[1][0] == 0 + # Checks that the save data hasn't moved + guards["SAVE BLOCK 1"] = (data.ram_addresses["gSaveBlock1Ptr"], read_result[0], "System Bus") + guards["SAVE BLOCK 2"] = (data.ram_addresses["gSaveBlock2Ptr"], read_result[1], "System Bus") - # If the game hasn't received all items yet and the received item struct doesn't contain an item, then - # fill it with the next item - if num_received_items < len(ctx.items_received) and received_item_is_empty: - next_item = ctx.items_received[num_received_items] - await bizhawk.write(ctx.bizhawk_ctx, [ - (data.ram_addresses["gArchipelagoReceivedItem"] + 0, (next_item.item - BASE_OFFSET).to_bytes(2, "little"), "System Bus"), - (data.ram_addresses["gArchipelagoReceivedItem"] + 2, (num_received_items + 1).to_bytes(2, "little"), "System Bus"), - (data.ram_addresses["gArchipelagoReceivedItem"] + 4, [1], "System Bus"), # Mark struct full - (data.ram_addresses["gArchipelagoReceivedItem"] + 5, [next_item.flags & 1], "System Bus"), - ]) + sb1_address = int.from_bytes(guards["SAVE BLOCK 1"][1], "little") + sb2_address = int.from_bytes(guards["SAVE BLOCK 2"][1], "little") + + await self.handle_death_link(ctx, guards) + await self.handle_received_items(ctx, guards) + await self.handle_wonder_trade(ctx, guards) # Read flags in 2 chunks read_result = await bizhawk.guarded_read( ctx.bizhawk_ctx, - [(save_block_address + 0x1450, 0x96, "System Bus")], # Flags - [overworld_guard, save_block_address_guard] + [(sb1_address + 0x1450, 0x96, "System Bus")], # Flags + [guards["IN OVERWORLD"], guards["SAVE BLOCK 1"]] ) if read_result is None: # Not in overworld, or save block moved return - flag_bytes = read_result[0] read_result = await bizhawk.guarded_read( ctx.bizhawk_ctx, - [(save_block_address + 0x14E6, 0x96, "System Bus")], # Flags - [overworld_guard, save_block_address_guard] + [(sb1_address + 0x14E6, 0x96, "System Bus")], # Flags continued + [guards["IN OVERWORLD"], guards["SAVE BLOCK 1"]] ) if read_result is not None: flag_bytes += read_result[0] + # Read pokedex flags + pokedex_caught_bytes = bytes(0) + if ctx.slot_data["dexsanity"] == Toggle.option_true: + # Read pokedex flags + read_result = await bizhawk.guarded_read( + ctx.bizhawk_ctx, + [(sb2_address + 0x28, 0x34, "System Bus")], + [guards["IN OVERWORLD"], guards["SAVE BLOCK 2"]] + ) + if read_result is not None: + pokedex_caught_bytes = read_result[0] + game_clear = False local_checked_locations = set() local_set_events = {flag_name: False for flag_name in TRACKER_EVENT_FLAGS} local_found_key_items = {location_name: False for location_name in KEY_LOCATION_FLAGS} + defeated_legendaries = {legendary_name: False for legendary_name in LEGENDARY_NAMES.values()} + caught_legendaries = {legendary_name: False for legendary_name in LEGENDARY_NAMES.values()} # Check set flags for byte_i, byte in enumerate(flag_bytes): @@ -219,12 +278,45 @@ async def game_watcher(self, ctx: "BizHawkClientContext") -> None: if flag_id == self.goal_flag: game_clear = True + if flag_id in DEFEATED_LEGENDARY_FLAG_MAP: + defeated_legendaries[DEFEATED_LEGENDARY_FLAG_MAP[flag_id]] = True + + if flag_id in CAUGHT_LEGENDARY_FLAG_MAP: + caught_legendaries[CAUGHT_LEGENDARY_FLAG_MAP[flag_id]] = True + if flag_id in EVENT_FLAG_MAP: local_set_events[EVENT_FLAG_MAP[flag_id]] = True if flag_id in KEY_LOCATION_FLAG_MAP: local_found_key_items[KEY_LOCATION_FLAG_MAP[flag_id]] = True + # Check pokedex + if ctx.slot_data["dexsanity"] == Toggle.option_true: + for byte_i, byte in enumerate(pokedex_caught_bytes): + for i in range(8): + if byte & (1 << i) != 0: + dex_number = (byte_i * 8 + i) + 1 + + location_id = dex_number + BASE_OFFSET + POKEDEX_OFFSET + if location_id in ctx.server_locations: + local_checked_locations.add(location_id) + + # Count legendary hunt flags + if ctx.slot_data["goal"] == Goal.option_legendary_hunt: + # If legendary hunt doesn't require catching, add defeated legendaries to caught_legendaries + if ctx.slot_data["legendary_hunt_catch"] == Toggle.option_false: + for legendary, is_defeated in defeated_legendaries.items(): + if is_defeated: + caught_legendaries[legendary] = True + + num_caught = 0 + for legendary, is_caught in caught_legendaries.items(): + if is_caught and legendary in [LEGENDARY_NAMES[name] for name in ctx.slot_data["allowed_legendary_hunt_encounters"]]: + num_caught += 1 + + if num_caught >= ctx.slot_data["legendary_hunt_count"]: + game_clear = True + # Send locations if local_checked_locations != self.local_checked_locations: self.local_checked_locations = local_checked_locations @@ -232,14 +324,14 @@ async def game_watcher(self, ctx: "BizHawkClientContext") -> None: if local_checked_locations is not None: await ctx.send_msgs([{ "cmd": "LocationChecks", - "locations": list(local_checked_locations) + "locations": list(local_checked_locations), }]) # Send game clear if not ctx.finished_game and game_clear: await ctx.send_msgs([{ "cmd": "StatusUpdate", - "status": ClientStatus.CLIENT_GOAL + "status": ClientStatus.CLIENT_GOAL, }]) # Send tracker event flags @@ -254,7 +346,7 @@ async def game_watcher(self, ctx: "BizHawkClientContext") -> None: "key": f"pokemon_emerald_events_{ctx.team}_{ctx.slot}", "default": 0, "want_reply": False, - "operations": [{"operation": "or", "value": event_bitfield}] + "operations": [{"operation": "or", "value": event_bitfield}], }]) self.local_set_events = local_set_events @@ -269,9 +361,313 @@ async def game_watcher(self, ctx: "BizHawkClientContext") -> None: "key": f"pokemon_emerald_keys_{ctx.team}_{ctx.slot}", "default": 0, "want_reply": False, - "operations": [{"operation": "or", "value": key_bitfield}] + "operations": [{"operation": "or", "value": key_bitfield}], }]) self.local_found_key_items = local_found_key_items + + if ctx.slot_data["goal"] == Goal.option_legendary_hunt: + if caught_legendaries != self.local_defeated_legendaries and ctx.slot is not None: + legendary_bitfield = 0 + for i, legendary_name in enumerate(LEGENDARY_NAMES.values()): + if caught_legendaries[legendary_name]: + legendary_bitfield |= 1 << i + + await ctx.send_msgs([{ + "cmd": "Set", + "key": f"pokemon_emerald_legendaries_{ctx.team}_{ctx.slot}", + "default": 0, + "want_reply": False, + "operations": [{"operation": "or", "value": legendary_bitfield}], + }]) + self.local_defeated_legendaries = caught_legendaries except bizhawk.RequestFailedError: # Exit handler and return to main loop to reconnect pass + + async def handle_death_link(self, ctx: "BizHawkClientContext", guards: Dict[str, Tuple[int, bytes, str]]) -> None: + """ + Checks whether the player has died while connected and sends a death link if so. Queues a death link in the game + if a new one has been received. + """ + if ctx.slot_data.get("death_link", Toggle.option_false) == Toggle.option_true: + if "DeathLink" not in ctx.tags: + await ctx.update_death_link(True) + self.previous_death_link = ctx.last_death_link + + sb1_address = int.from_bytes(guards["SAVE BLOCK 1"][1], "little") + sb2_address = int.from_bytes(guards["SAVE BLOCK 2"][1], "little") + + read_result = await bizhawk.guarded_read( + ctx.bizhawk_ctx, [ + (sb1_address + 0x177C + (52 * 4), 4, "System Bus"), # White out stat + (sb1_address + 0x177C + (22 * 4), 4, "System Bus"), # Canary stat + (sb2_address + 0xAC, 4, "System Bus"), # Encryption key + ], + [guards["SAVE BLOCK 1"], guards["SAVE BLOCK 2"]] + ) + if read_result is None: # Save block moved + return + + encryption_key = int.from_bytes(read_result[2], "little") + times_whited_out = int.from_bytes(read_result[0], "little") ^ encryption_key + + # Canary is an unused stat that will always be 0. There is a low chance that we've done this read on + # a frame where the user has just entered a battle and the encryption key has been changed, but the data + # has not yet been encrypted with the new key. If `canary` is 0, `times_whited_out` is correct. + canary = int.from_bytes(read_result[1], "little") ^ encryption_key + + # Skip all deathlink code if save is not yet loaded (encryption key is zero) or white out stat not yet + # initialized (starts at 100 as a safety for subtracting values from an unsigned int). + if canary == 0 and encryption_key != 0 and times_whited_out >= 100: + if self.previous_death_link != ctx.last_death_link: + self.previous_death_link = ctx.last_death_link + if self.ignore_next_death_link: + self.ignore_next_death_link = False + else: + await bizhawk.write( + ctx.bizhawk_ctx, + [(data.ram_addresses["gArchipelagoDeathLinkQueued"], [1], "System Bus")] + ) + + if self.death_counter is None: + self.death_counter = times_whited_out + elif times_whited_out > self.death_counter: + await ctx.send_death(f"{ctx.player_names[ctx.slot]} is out of usable POKéMON! " + f"{ctx.player_names[ctx.slot]} whited out!") + self.ignore_next_death_link = True + self.death_counter = times_whited_out + + async def handle_received_items(self, ctx: "BizHawkClientContext", guards: Dict[str, Tuple[int, bytes, str]]) -> None: + """ + Checks the index of the most recently received item and whether the item queue is full. Writes the next item + into the game if necessary. + """ + received_item_address = data.ram_addresses["gArchipelagoReceivedItem"] + + sb1_address = int.from_bytes(guards["SAVE BLOCK 1"][1], "little") + + read_result = await bizhawk.guarded_read( + ctx.bizhawk_ctx, + [ + (sb1_address + 0x3778, 2, "System Bus"), # Number of received items + (received_item_address + 4, 1, "System Bus") # Received item struct full? + ], + [guards["IN OVERWORLD"], guards["SAVE BLOCK 1"]] + ) + if read_result is None: # Not in overworld, or save block moved + return + + num_received_items = int.from_bytes(read_result[0], "little") + received_item_is_empty = read_result[1][0] == 0 + + # If the game hasn't received all items yet and the received item struct doesn't contain an item, then + # fill it with the next item + if num_received_items < len(ctx.items_received) and received_item_is_empty: + next_item = ctx.items_received[num_received_items] + should_display = 1 if next_item.flags & 1 or next_item.player == ctx.slot else 0 + await bizhawk.write(ctx.bizhawk_ctx, [ + (received_item_address + 0, (next_item.item - BASE_OFFSET).to_bytes(2, "little"), "System Bus"), + (received_item_address + 2, (num_received_items + 1).to_bytes(2, "little"), "System Bus"), + (received_item_address + 4, [1], "System Bus"), + (received_item_address + 5, [should_display], "System Bus"), + ]) + + async def handle_wonder_trade(self, ctx: "BizHawkClientContext", guards: Dict[str, Tuple[int, bytes, str]]) -> None: + """ + Read wonder trade status from save data and either send a queued pokemon to data storage or attempt to retrieve + one from data storage and write it into the save. + """ + from CommonClient import logger + + sb1_address = int.from_bytes(guards["SAVE BLOCK 1"][1], "little") + + read_result = await bizhawk.guarded_read( + ctx.bizhawk_ctx, + [ + (sb1_address + 0x377C, 0x50, "System Bus"), # Wonder trade data + (sb1_address + 0x37CC, 1, "System Bus"), # Is wonder trade sent + ], + [guards["IN OVERWORLD"], guards["SAVE BLOCK 1"]] + ) + + if read_result is not None: + wonder_trade_pokemon_data = read_result[0] + trade_is_sent = read_result[1][0] + + if trade_is_sent == 0 and wonder_trade_pokemon_data[19] == 2: + # Game has wonder trade data to send. Send it to data storage, remove it from the game's memory, + # and mark that the game is waiting on receiving a trade + Utils.async_start(self.wonder_trade_send(ctx, pokemon_data_to_json(wonder_trade_pokemon_data))) + await bizhawk.write(ctx.bizhawk_ctx, [ + (sb1_address + 0x377C, bytes(0x50), "System Bus"), + (sb1_address + 0x37CC, [1], "System Bus"), + ]) + elif trade_is_sent != 0 and wonder_trade_pokemon_data[19] != 2: + # Game is waiting on receiving a trade. See if there are any available trades that were not + # sent by this player, and if so, try to receive one. + if self.wonder_trade_cooldown_timer <= 0 and f"pokemon_wonder_trades_{ctx.team}" in ctx.stored_data: + if any(item[0] != ctx.slot + for key, item in ctx.stored_data.get(f"pokemon_wonder_trades_{ctx.team}", {}).items() + if key != "_lock" and orjson.loads(item[1])["species"] <= 386): + received_trade = await self.wonder_trade_receive(ctx) + if received_trade is None: + self.wonder_trade_cooldown_timer = self.wonder_trade_cooldown + self.wonder_trade_cooldown *= 2 + self.wonder_trade_cooldown += random.randrange(0, 500) + else: + await bizhawk.write(ctx.bizhawk_ctx, [ + (sb1_address + 0x377C, json_to_pokemon_data(received_trade), "System Bus"), + ]) + logger.info("Wonder trade received!") + self.wonder_trade_cooldown = 5000 + + else: + # Very approximate "time since last loop", but extra delay is fine for this + self.wonder_trade_cooldown_timer -= int(ctx.watcher_timeout * 1000) + + async def wonder_trade_acquire(self, ctx: "BizHawkClientContext", keep_trying: bool = False) -> Optional[dict]: + """ + Acquires a lock on the `pokemon_wonder_trades_{ctx.team}` key in + datastorage. Locking the key means you have exclusive access + to modifying the value until you unlock it or the key expires (5 + seconds). + + If `keep_trying` is `True`, it will keep trying to acquire the lock + until successful. Otherwise it will return `None` if it fails to + acquire the lock. + """ + while not ctx.exit_event.is_set(): + lock = int(time.time_ns() / 1000000) + message_uuid = str(uuid.uuid4()) + await ctx.send_msgs([{ + "cmd": "Set", + "key": f"pokemon_wonder_trades_{ctx.team}", + "default": {"_lock": 0}, + "want_reply": True, + "operations": [{"operation": "update", "value": {"_lock": lock}}], + "uuid": message_uuid, + }]) + + self.wonder_trade_update_event.clear() + try: + await asyncio.wait_for(self.wonder_trade_update_event.wait(), 5) + except asyncio.TimeoutError: + if not keep_trying: + return None + continue + + reply = copy.deepcopy(self.latest_wonder_trade_reply) + + # Make sure the most recently received update was triggered by our lock attempt + if reply.get("uuid", None) != message_uuid: + if not keep_trying: + return None + await asyncio.sleep(self.wonder_trade_cooldown) + continue + + # Make sure the current value of the lock is what we set it to + # (I think this should theoretically never run) + if reply["value"]["_lock"] != lock: + if not keep_trying: + return None + await asyncio.sleep(self.wonder_trade_cooldown) + continue + + # Make sure that the lock value we replaced is at least 5 seconds old + # If it was unlocked before our change, its value was 0 and it will look decades old + if lock - reply["original_value"]["_lock"] < 5000: + # Multiple clients trying to lock the key may get stuck in a loop of checking the lock + # by trying to set it, which will extend its expiration. So if we see that the lock was + # too new when we replaced it, we should wait for increasingly longer periods so that + # eventually the lock will expire and a client will acquire it. + self.wonder_trade_cooldown *= 2 + self.wonder_trade_cooldown += random.randrange(0, 500) + + if not keep_trying: + self.wonder_trade_cooldown_timer = self.wonder_trade_cooldown + return None + await asyncio.sleep(self.wonder_trade_cooldown) + continue + + # We have the lock, reset the cooldown and return + self.wonder_trade_cooldown = 5000 + return reply + + async def wonder_trade_send(self, ctx: "BizHawkClientContext", data: str) -> None: + """ + Sends a wonder trade pokemon to data storage + """ + from CommonClient import logger + + reply = await self.wonder_trade_acquire(ctx, True) + + wonder_trade_slot = 0 + while str(wonder_trade_slot) in reply["value"]: + wonder_trade_slot += 1 + + await ctx.send_msgs([{ + "cmd": "Set", + "key": f"pokemon_wonder_trades_{ctx.team}", + "default": {"_lock": 0}, + "operations": [{"operation": "update", "value": { + "_lock": 0, + str(wonder_trade_slot): (ctx.slot, data), + }}], + }]) + + logger.info("Wonder trade sent! We'll notify you here when a trade has been found.") + + async def wonder_trade_receive(self, ctx: "BizHawkClientContext") -> Optional[str]: + """ + Tries to pop a pokemon out of the wonder trades. Returns `None` if + for some reason it can't immediately remove a compatible pokemon. + """ + reply = await self.wonder_trade_acquire(ctx) + + if reply is None: + return None + + candidate_slots = [ + int(slot) + for slot in reply["value"] + if slot != "_lock" \ + and reply["value"][slot][0] != ctx.slot \ + and orjson.loads(reply["value"][slot][1])["species"] <= 386 + ] + + if len(candidate_slots) == 0: + await ctx.send_msgs([{ + "cmd": "Set", + "key": f"pokemon_wonder_trades_{ctx.team}", + "default": {"_lock": 0}, + "operations": [{"operation": "update", "value": {"_lock": 0}}], + }]) + return None + + wonder_trade_slot = max(candidate_slots) + + await ctx.send_msgs([{ + "cmd": "Set", + "key": f"pokemon_wonder_trades_{ctx.team}", + "default": {"_lock": 0}, + "operations": [ + {"operation": "update", "value": {"_lock": 0}}, + {"operation": "pop", "value": str(wonder_trade_slot)}, + ] + }]) + + return reply["value"][str(wonder_trade_slot)][1] + + def on_package(self, ctx: "BizHawkClientContext", cmd: str, args: dict) -> None: + if cmd == "Connected": + Utils.async_start(ctx.send_msgs([{ + "cmd": "SetNotify", + "keys": [f"pokemon_wonder_trades_{ctx.team}"], + }, { + "cmd": "Get", + "keys": [f"pokemon_wonder_trades_{ctx.team}"], + }])) + elif cmd == "SetReply": + if args.get("key", "") == f"pokemon_wonder_trades_{ctx.team}": + self.latest_wonder_trade_reply = args + self.wonder_trade_update_event.set() diff --git a/worlds/pokemon_emerald/data.py b/worlds/pokemon_emerald/data.py index bc51d84963c5..c4f7d7711c81 100644 --- a/worlds/pokemon_emerald/data.py +++ b/worlds/pokemon_emerald/data.py @@ -5,7 +5,6 @@ and sorting, and Warp methods. """ from dataclasses import dataclass -import copy from enum import IntEnum import orjson from typing import Dict, List, NamedTuple, Optional, Set, FrozenSet, Tuple, Any, Union @@ -16,6 +15,25 @@ BASE_OFFSET = 3860000 +POKEDEX_OFFSET = 10000 + +IGNORABLE_MAPS = { + "MAP_ALTERING_CAVE", + "MAP_CAVE_OF_ORIGIN_UNUSED_RUBY_SAPPHIRE_MAP1", + "MAP_CAVE_OF_ORIGIN_UNUSED_RUBY_SAPPHIRE_MAP2", + "MAP_CAVE_OF_ORIGIN_UNUSED_RUBY_SAPPHIRE_MAP3", +} +"""These maps exist but don't show up in the rando or are unused, and so should be discarded""" + +POSTGAME_MAPS = { + "MAP_DESERT_UNDERPASS", + "MAP_SAFARI_ZONE_NORTHEAST", + "MAP_SAFARI_ZONE_SOUTHEAST", + "MAP_METEOR_FALLS_STEVENS_CAVE", +} +"""These maps have encounters and are locked behind beating the champion. Those encounter slots should be ignored for logical access to a species.""" + +NUM_REAL_SPECIES = 386 class Warp: @@ -55,14 +73,14 @@ def encode(self) -> str: return f"{self.source_map}:{source_ids_string}/{self.dest_map}:{dest_ids_string}{'!' if self.is_one_way else ''}" - def connects_to(self, other: 'Warp') -> bool: + def connects_to(self, other: "Warp") -> bool: """ Returns true if this warp sends the player to `other` """ return self.dest_map == other.source_map and set(self.dest_ids) <= set(other.source_ids) @staticmethod - def decode(encoded_string: str) -> 'Warp': + def decode(encoded_string: str) -> "Warp": """ Create a Warp object from an encoded string """ @@ -87,6 +105,7 @@ def decode(encoded_string: str) -> 'Warp': class ItemData(NamedTuple): label: str item_id: int + modern_id: Optional[int] classification: ItemClassification tags: FrozenSet[str] @@ -96,11 +115,25 @@ class LocationData(NamedTuple): label: str parent_region: str default_item: int - rom_address: int + address: Union[int, List[int]] flag: int tags: FrozenSet[str] +class EncounterTableData(NamedTuple): + slots: List[int] + address: int + + +@dataclass +class MapData: + name: str + header_address: int + land_encounters: Optional[EncounterTableData] + water_encounters: Optional[EncounterTableData] + fishing_encounters: Optional[EncounterTableData] + + class EventData(NamedTuple): name: str parent_region: str @@ -108,13 +141,21 @@ class EventData(NamedTuple): class RegionData: name: str + parent_map: MapData + has_grass: bool + has_water: bool + has_fishing: bool exits: List[str] warps: List[str] locations: List[str] events: List[EventData] - def __init__(self, name: str): + def __init__(self, name: str, parent_map: MapData, has_grass: bool, has_water: bool, has_fishing: bool): self.name = name + self.parent_map = parent_map + self.has_grass = has_grass + self.has_water = has_water + self.has_fishing = has_fishing self.exits = [] self.warps = [] self.locations = [] @@ -181,9 +222,9 @@ class EvolutionData(NamedTuple): species_id: int -class StaticEncounterData(NamedTuple): +class MiscPokemonData(NamedTuple): species_id: int - rom_address: int + address: int @dataclass @@ -191,16 +232,18 @@ class SpeciesData: name: str label: str species_id: int + national_dex_number: int base_stats: BaseStats types: Tuple[int, int] abilities: Tuple[int, int] evolutions: List[EvolutionData] pre_evolution: Optional[int] catch_rate: int + friendship: int learnset: List[LearnsetMove] tm_hm_compatibility: int - learnset_rom_address: int - rom_address: int + learnset_address: int + address: int class AbilityData(NamedTuple): @@ -208,19 +251,6 @@ class AbilityData(NamedTuple): label: str -class EncounterTableData(NamedTuple): - slots: List[int] - rom_address: int - - -@dataclass -class MapData: - name: str - land_encounters: Optional[EncounterTableData] - water_encounters: Optional[EncounterTableData] - fishing_encounters: Optional[EncounterTableData] - - class TrainerPokemonDataTypeEnum(IntEnum): NO_ITEM_DEFAULT_MOVES = 0 ITEM_DEFAULT_MOVES = 1 @@ -250,15 +280,15 @@ class TrainerPokemonData: class TrainerPartyData: pokemon: List[TrainerPokemonData] pokemon_data_type: TrainerPokemonDataTypeEnum - rom_address: int + address: int @dataclass class TrainerData: trainer_id: int party: TrainerPartyData - rom_address: int - battle_script_rom_address: int + address: int + script_address: int class PokemonEmeraldData: @@ -269,11 +299,13 @@ class PokemonEmeraldData: regions: Dict[str, RegionData] locations: Dict[str, LocationData] items: Dict[int, ItemData] - species: List[Optional[SpeciesData]] - static_encounters: List[StaticEncounterData] + species: Dict[int, SpeciesData] + legendary_encounters: List[MiscPokemonData] + misc_pokemon: List[MiscPokemonData] tmhm_moves: List[int] abilities: List[AbilityData] - maps: List[MapData] + move_labels: Dict[str, int] + maps: Dict[str, MapData] warps: Dict[str, Warp] warp_map: Dict[str, Optional[str]] trainers: List[TrainerData] @@ -286,29 +318,20 @@ def __init__(self) -> None: self.regions = {} self.locations = {} self.items = {} - self.species = [] - self.static_encounters = [] + self.species = {} + self.legendary_encounters = [] + self.misc_pokemon = [] self.tmhm_moves = [] self.abilities = [] - self.maps = [] + self.move_labels = {} + self.maps = {} self.warps = {} self.warp_map = {} self.trainers = [] def load_json_data(data_name: str) -> Union[List[Any], Dict[str, Any]]: - return orjson.loads(pkgutil.get_data(__name__, "data/" + data_name).decode('utf-8-sig')) - - -data = PokemonEmeraldData() - -def create_data_copy() -> PokemonEmeraldData: - new_copy = PokemonEmeraldData() - new_copy.species = copy.deepcopy(data.species) - new_copy.tmhm_moves = copy.deepcopy(data.tmhm_moves) - new_copy.maps = copy.deepcopy(data.maps) - new_copy.static_encounters = copy.deepcopy(data.static_encounters) - new_copy.trainers = copy.deepcopy(data.trainers) + return orjson.loads(pkgutil.get_data(__name__, "data/" + data_name).decode("utf-8-sig")) def _init() -> None: @@ -319,6 +342,39 @@ def _init() -> None: location_attributes_json = load_json_data("locations.json") + # Create map data + for map_name, map_json in extracted_data["maps"].items(): + if map_name in IGNORABLE_MAPS: + continue + + land_encounters = None + water_encounters = None + fishing_encounters = None + + if "land_encounters" in map_json: + land_encounters = EncounterTableData( + map_json["land_encounters"]["slots"], + map_json["land_encounters"]["address"] + ) + if "water_encounters" in map_json: + water_encounters = EncounterTableData( + map_json["water_encounters"]["slots"], + map_json["water_encounters"]["address"] + ) + if "fishing_encounters" in map_json: + fishing_encounters = EncounterTableData( + map_json["fishing_encounters"]["slots"], + map_json["fishing_encounters"]["address"] + ) + + data.maps[map_name] = MapData( + map_name, + map_json["header_address"], + land_encounters, + water_encounters, + fishing_encounters + ) + # Load/merge region json files region_json_list = [] for file in pkg_resources.resource_listdir(__name__, "data/regions"): @@ -338,7 +394,13 @@ def _init() -> None: data.regions = {} for region_name, region_json in regions_json.items(): - new_region = RegionData(region_name) + new_region = RegionData( + region_name, + data.maps[region_json["parent_map"]], + region_json["has_grass"], + region_json["has_water"], + region_json["has_fishing"] + ) # Locations for location_name in region_json["locations"]: @@ -346,15 +408,35 @@ def _init() -> None: raise AssertionError(f"Location [{location_name}] was claimed by multiple regions") location_json = extracted_data["locations"][location_name] - new_location = LocationData( - location_name, - location_attributes_json[location_name]["label"], - region_name, - location_json["default_item"], - location_json["rom_address"], - location_json["flag"], - frozenset(location_attributes_json[location_name]["tags"]) - ) + if location_name.startswith("TRAINER_BRENDAN_") or location_name.startswith("TRAINER_MAY_"): + import re + locale = re.match("TRAINER_BRENDAN_([A-Z0-9_]+)_MUDKIP_REWARD", location_name).group(1) + alternate_rival_jsons = [extracted_data["locations"][alternate] for alternate in [ + f"TRAINER_BRENDAN_{locale}_TORCHIC_REWARD", + f"TRAINER_BRENDAN_{locale}_TREECKO_REWARD", + f"TRAINER_MAY_{locale}_MUDKIP_REWARD", + f"TRAINER_MAY_{locale}_TORCHIC_REWARD", + f"TRAINER_MAY_{locale}_TREECKO_REWARD", + ]] + new_location = LocationData( + location_name, + location_attributes_json[location_name]["label"], + region_name, + location_json["default_item"], + [location_json["address"]] + [j["address"] for j in alternate_rival_jsons], + location_json["flag"], + frozenset(location_attributes_json[location_name]["tags"]) + ) + else: + new_location = LocationData( + location_name, + location_attributes_json[location_name]["label"], + region_name, + location_json["default_item"], + location_json["address"], + location_json["flag"], + frozenset(location_attributes_json[location_name]["tags"]) + ) new_region.locations.append(location_name) data.locations[location_name] = new_location claimed_locations.add(location_name) @@ -401,6 +483,7 @@ def _init() -> None: data.items[data.constants[item_constant_name]] = ItemData( attributes["label"], data.constants[item_constant_name], + attributes["modern_id"], item_classification, frozenset(attributes["tags"]) ) @@ -408,408 +491,408 @@ def _init() -> None: # Create species data # Excludes extras like copies of Unown and special species values like SPECIES_EGG. - all_species: List[Tuple[str, str]] = [ - ("SPECIES_BULBASAUR", "Bulbasaur"), - ("SPECIES_IVYSAUR", "Ivysaur"), - ("SPECIES_VENUSAUR", "Venusaur"), - ("SPECIES_CHARMANDER", "Charmander"), - ("SPECIES_CHARMELEON", "Charmeleon"), - ("SPECIES_CHARIZARD", "Charizard"), - ("SPECIES_SQUIRTLE", "Squirtle"), - ("SPECIES_WARTORTLE", "Wartortle"), - ("SPECIES_BLASTOISE", "Blastoise"), - ("SPECIES_CATERPIE", "Caterpie"), - ("SPECIES_METAPOD", "Metapod"), - ("SPECIES_BUTTERFREE", "Butterfree"), - ("SPECIES_WEEDLE", "Weedle"), - ("SPECIES_KAKUNA", "Kakuna"), - ("SPECIES_BEEDRILL", "Beedrill"), - ("SPECIES_PIDGEY", "Pidgey"), - ("SPECIES_PIDGEOTTO", "Pidgeotto"), - ("SPECIES_PIDGEOT", "Pidgeot"), - ("SPECIES_RATTATA", "Rattata"), - ("SPECIES_RATICATE", "Raticate"), - ("SPECIES_SPEAROW", "Spearow"), - ("SPECIES_FEAROW", "Fearow"), - ("SPECIES_EKANS", "Ekans"), - ("SPECIES_ARBOK", "Arbok"), - ("SPECIES_PIKACHU", "Pikachu"), - ("SPECIES_RAICHU", "Raichu"), - ("SPECIES_SANDSHREW", "Sandshrew"), - ("SPECIES_SANDSLASH", "Sandslash"), - ("SPECIES_NIDORAN_F", "Nidoran Female"), - ("SPECIES_NIDORINA", "Nidorina"), - ("SPECIES_NIDOQUEEN", "Nidoqueen"), - ("SPECIES_NIDORAN_M", "Nidoran Male"), - ("SPECIES_NIDORINO", "Nidorino"), - ("SPECIES_NIDOKING", "Nidoking"), - ("SPECIES_CLEFAIRY", "Clefairy"), - ("SPECIES_CLEFABLE", "Clefable"), - ("SPECIES_VULPIX", "Vulpix"), - ("SPECIES_NINETALES", "Ninetales"), - ("SPECIES_JIGGLYPUFF", "Jigglypuff"), - ("SPECIES_WIGGLYTUFF", "Wigglytuff"), - ("SPECIES_ZUBAT", "Zubat"), - ("SPECIES_GOLBAT", "Golbat"), - ("SPECIES_ODDISH", "Oddish"), - ("SPECIES_GLOOM", "Gloom"), - ("SPECIES_VILEPLUME", "Vileplume"), - ("SPECIES_PARAS", "Paras"), - ("SPECIES_PARASECT", "Parasect"), - ("SPECIES_VENONAT", "Venonat"), - ("SPECIES_VENOMOTH", "Venomoth"), - ("SPECIES_DIGLETT", "Diglett"), - ("SPECIES_DUGTRIO", "Dugtrio"), - ("SPECIES_MEOWTH", "Meowth"), - ("SPECIES_PERSIAN", "Persian"), - ("SPECIES_PSYDUCK", "Psyduck"), - ("SPECIES_GOLDUCK", "Golduck"), - ("SPECIES_MANKEY", "Mankey"), - ("SPECIES_PRIMEAPE", "Primeape"), - ("SPECIES_GROWLITHE", "Growlithe"), - ("SPECIES_ARCANINE", "Arcanine"), - ("SPECIES_POLIWAG", "Poliwag"), - ("SPECIES_POLIWHIRL", "Poliwhirl"), - ("SPECIES_POLIWRATH", "Poliwrath"), - ("SPECIES_ABRA", "Abra"), - ("SPECIES_KADABRA", "Kadabra"), - ("SPECIES_ALAKAZAM", "Alakazam"), - ("SPECIES_MACHOP", "Machop"), - ("SPECIES_MACHOKE", "Machoke"), - ("SPECIES_MACHAMP", "Machamp"), - ("SPECIES_BELLSPROUT", "Bellsprout"), - ("SPECIES_WEEPINBELL", "Weepinbell"), - ("SPECIES_VICTREEBEL", "Victreebel"), - ("SPECIES_TENTACOOL", "Tentacool"), - ("SPECIES_TENTACRUEL", "Tentacruel"), - ("SPECIES_GEODUDE", "Geodude"), - ("SPECIES_GRAVELER", "Graveler"), - ("SPECIES_GOLEM", "Golem"), - ("SPECIES_PONYTA", "Ponyta"), - ("SPECIES_RAPIDASH", "Rapidash"), - ("SPECIES_SLOWPOKE", "Slowpoke"), - ("SPECIES_SLOWBRO", "Slowbro"), - ("SPECIES_MAGNEMITE", "Magnemite"), - ("SPECIES_MAGNETON", "Magneton"), - ("SPECIES_FARFETCHD", "Farfetch'd"), - ("SPECIES_DODUO", "Doduo"), - ("SPECIES_DODRIO", "Dodrio"), - ("SPECIES_SEEL", "Seel"), - ("SPECIES_DEWGONG", "Dewgong"), - ("SPECIES_GRIMER", "Grimer"), - ("SPECIES_MUK", "Muk"), - ("SPECIES_SHELLDER", "Shellder"), - ("SPECIES_CLOYSTER", "Cloyster"), - ("SPECIES_GASTLY", "Gastly"), - ("SPECIES_HAUNTER", "Haunter"), - ("SPECIES_GENGAR", "Gengar"), - ("SPECIES_ONIX", "Onix"), - ("SPECIES_DROWZEE", "Drowzee"), - ("SPECIES_HYPNO", "Hypno"), - ("SPECIES_KRABBY", "Krabby"), - ("SPECIES_KINGLER", "Kingler"), - ("SPECIES_VOLTORB", "Voltorb"), - ("SPECIES_ELECTRODE", "Electrode"), - ("SPECIES_EXEGGCUTE", "Exeggcute"), - ("SPECIES_EXEGGUTOR", "Exeggutor"), - ("SPECIES_CUBONE", "Cubone"), - ("SPECIES_MAROWAK", "Marowak"), - ("SPECIES_HITMONLEE", "Hitmonlee"), - ("SPECIES_HITMONCHAN", "Hitmonchan"), - ("SPECIES_LICKITUNG", "Lickitung"), - ("SPECIES_KOFFING", "Koffing"), - ("SPECIES_WEEZING", "Weezing"), - ("SPECIES_RHYHORN", "Rhyhorn"), - ("SPECIES_RHYDON", "Rhydon"), - ("SPECIES_CHANSEY", "Chansey"), - ("SPECIES_TANGELA", "Tangela"), - ("SPECIES_KANGASKHAN", "Kangaskhan"), - ("SPECIES_HORSEA", "Horsea"), - ("SPECIES_SEADRA", "Seadra"), - ("SPECIES_GOLDEEN", "Goldeen"), - ("SPECIES_SEAKING", "Seaking"), - ("SPECIES_STARYU", "Staryu"), - ("SPECIES_STARMIE", "Starmie"), - ("SPECIES_MR_MIME", "Mr. Mime"), - ("SPECIES_SCYTHER", "Scyther"), - ("SPECIES_JYNX", "Jynx"), - ("SPECIES_ELECTABUZZ", "Electabuzz"), - ("SPECIES_MAGMAR", "Magmar"), - ("SPECIES_PINSIR", "Pinsir"), - ("SPECIES_TAUROS", "Tauros"), - ("SPECIES_MAGIKARP", "Magikarp"), - ("SPECIES_GYARADOS", "Gyarados"), - ("SPECIES_LAPRAS", "Lapras"), - ("SPECIES_DITTO", "Ditto"), - ("SPECIES_EEVEE", "Eevee"), - ("SPECIES_VAPOREON", "Vaporeon"), - ("SPECIES_JOLTEON", "Jolteon"), - ("SPECIES_FLAREON", "Flareon"), - ("SPECIES_PORYGON", "Porygon"), - ("SPECIES_OMANYTE", "Omanyte"), - ("SPECIES_OMASTAR", "Omastar"), - ("SPECIES_KABUTO", "Kabuto"), - ("SPECIES_KABUTOPS", "Kabutops"), - ("SPECIES_AERODACTYL", "Aerodactyl"), - ("SPECIES_SNORLAX", "Snorlax"), - ("SPECIES_ARTICUNO", "Articuno"), - ("SPECIES_ZAPDOS", "Zapdos"), - ("SPECIES_MOLTRES", "Moltres"), - ("SPECIES_DRATINI", "Dratini"), - ("SPECIES_DRAGONAIR", "Dragonair"), - ("SPECIES_DRAGONITE", "Dragonite"), - ("SPECIES_MEWTWO", "Mewtwo"), - ("SPECIES_MEW", "Mew"), - ("SPECIES_CHIKORITA", "Chikorita"), - ("SPECIES_BAYLEEF", "Bayleaf"), - ("SPECIES_MEGANIUM", "Meganium"), - ("SPECIES_CYNDAQUIL", "Cindaquil"), - ("SPECIES_QUILAVA", "Quilava"), - ("SPECIES_TYPHLOSION", "Typhlosion"), - ("SPECIES_TOTODILE", "Totodile"), - ("SPECIES_CROCONAW", "Croconaw"), - ("SPECIES_FERALIGATR", "Feraligatr"), - ("SPECIES_SENTRET", "Sentret"), - ("SPECIES_FURRET", "Furret"), - ("SPECIES_HOOTHOOT", "Hoothoot"), - ("SPECIES_NOCTOWL", "Noctowl"), - ("SPECIES_LEDYBA", "Ledyba"), - ("SPECIES_LEDIAN", "Ledian"), - ("SPECIES_SPINARAK", "Spinarak"), - ("SPECIES_ARIADOS", "Ariados"), - ("SPECIES_CROBAT", "Crobat"), - ("SPECIES_CHINCHOU", "Chinchou"), - ("SPECIES_LANTURN", "Lanturn"), - ("SPECIES_PICHU", "Pichu"), - ("SPECIES_CLEFFA", "Cleffa"), - ("SPECIES_IGGLYBUFF", "Igglybuff"), - ("SPECIES_TOGEPI", "Togepi"), - ("SPECIES_TOGETIC", "Togetic"), - ("SPECIES_NATU", "Natu"), - ("SPECIES_XATU", "Xatu"), - ("SPECIES_MAREEP", "Mareep"), - ("SPECIES_FLAAFFY", "Flaafy"), - ("SPECIES_AMPHAROS", "Ampharos"), - ("SPECIES_BELLOSSOM", "Bellossom"), - ("SPECIES_MARILL", "Marill"), - ("SPECIES_AZUMARILL", "Azumarill"), - ("SPECIES_SUDOWOODO", "Sudowoodo"), - ("SPECIES_POLITOED", "Politoed"), - ("SPECIES_HOPPIP", "Hoppip"), - ("SPECIES_SKIPLOOM", "Skiploom"), - ("SPECIES_JUMPLUFF", "Jumpluff"), - ("SPECIES_AIPOM", "Aipom"), - ("SPECIES_SUNKERN", "Sunkern"), - ("SPECIES_SUNFLORA", "Sunflora"), - ("SPECIES_YANMA", "Yanma"), - ("SPECIES_WOOPER", "Wooper"), - ("SPECIES_QUAGSIRE", "Quagsire"), - ("SPECIES_ESPEON", "Espeon"), - ("SPECIES_UMBREON", "Umbreon"), - ("SPECIES_MURKROW", "Murkrow"), - ("SPECIES_SLOWKING", "Slowking"), - ("SPECIES_MISDREAVUS", "Misdreavus"), - ("SPECIES_UNOWN", "Unown"), - ("SPECIES_WOBBUFFET", "Wobbuffet"), - ("SPECIES_GIRAFARIG", "Girafarig"), - ("SPECIES_PINECO", "Pineco"), - ("SPECIES_FORRETRESS", "Forretress"), - ("SPECIES_DUNSPARCE", "Dunsparce"), - ("SPECIES_GLIGAR", "Gligar"), - ("SPECIES_STEELIX", "Steelix"), - ("SPECIES_SNUBBULL", "Snubbull"), - ("SPECIES_GRANBULL", "Granbull"), - ("SPECIES_QWILFISH", "Qwilfish"), - ("SPECIES_SCIZOR", "Scizor"), - ("SPECIES_SHUCKLE", "Shuckle"), - ("SPECIES_HERACROSS", "Heracross"), - ("SPECIES_SNEASEL", "Sneasel"), - ("SPECIES_TEDDIURSA", "Teddiursa"), - ("SPECIES_URSARING", "Ursaring"), - ("SPECIES_SLUGMA", "Slugma"), - ("SPECIES_MAGCARGO", "Magcargo"), - ("SPECIES_SWINUB", "Swinub"), - ("SPECIES_PILOSWINE", "Piloswine"), - ("SPECIES_CORSOLA", "Corsola"), - ("SPECIES_REMORAID", "Remoraid"), - ("SPECIES_OCTILLERY", "Octillery"), - ("SPECIES_DELIBIRD", "Delibird"), - ("SPECIES_MANTINE", "Mantine"), - ("SPECIES_SKARMORY", "Skarmory"), - ("SPECIES_HOUNDOUR", "Houndour"), - ("SPECIES_HOUNDOOM", "Houndoom"), - ("SPECIES_KINGDRA", "Kingdra"), - ("SPECIES_PHANPY", "Phanpy"), - ("SPECIES_DONPHAN", "Donphan"), - ("SPECIES_PORYGON2", "Porygon2"), - ("SPECIES_STANTLER", "Stantler"), - ("SPECIES_SMEARGLE", "Smeargle"), - ("SPECIES_TYROGUE", "Tyrogue"), - ("SPECIES_HITMONTOP", "Hitmontop"), - ("SPECIES_SMOOCHUM", "Smoochum"), - ("SPECIES_ELEKID", "Elekid"), - ("SPECIES_MAGBY", "Magby"), - ("SPECIES_MILTANK", "Miltank"), - ("SPECIES_BLISSEY", "Blissey"), - ("SPECIES_RAIKOU", "Raikou"), - ("SPECIES_ENTEI", "Entei"), - ("SPECIES_SUICUNE", "Suicune"), - ("SPECIES_LARVITAR", "Larvitar"), - ("SPECIES_PUPITAR", "Pupitar"), - ("SPECIES_TYRANITAR", "Tyranitar"), - ("SPECIES_LUGIA", "Lugia"), - ("SPECIES_HO_OH", "Ho-oh"), - ("SPECIES_CELEBI", "Celebi"), - ("SPECIES_TREECKO", "Treecko"), - ("SPECIES_GROVYLE", "Grovyle"), - ("SPECIES_SCEPTILE", "Sceptile"), - ("SPECIES_TORCHIC", "Torchic"), - ("SPECIES_COMBUSKEN", "Combusken"), - ("SPECIES_BLAZIKEN", "Blaziken"), - ("SPECIES_MUDKIP", "Mudkip"), - ("SPECIES_MARSHTOMP", "Marshtomp"), - ("SPECIES_SWAMPERT", "Swampert"), - ("SPECIES_POOCHYENA", "Poochyena"), - ("SPECIES_MIGHTYENA", "Mightyena"), - ("SPECIES_ZIGZAGOON", "Zigzagoon"), - ("SPECIES_LINOONE", "Linoon"), - ("SPECIES_WURMPLE", "Wurmple"), - ("SPECIES_SILCOON", "Silcoon"), - ("SPECIES_BEAUTIFLY", "Beautifly"), - ("SPECIES_CASCOON", "Cascoon"), - ("SPECIES_DUSTOX", "Dustox"), - ("SPECIES_LOTAD", "Lotad"), - ("SPECIES_LOMBRE", "Lombre"), - ("SPECIES_LUDICOLO", "Ludicolo"), - ("SPECIES_SEEDOT", "Seedot"), - ("SPECIES_NUZLEAF", "Nuzleaf"), - ("SPECIES_SHIFTRY", "Shiftry"), - ("SPECIES_NINCADA", "Nincada"), - ("SPECIES_NINJASK", "Ninjask"), - ("SPECIES_SHEDINJA", "Shedinja"), - ("SPECIES_TAILLOW", "Taillow"), - ("SPECIES_SWELLOW", "Swellow"), - ("SPECIES_SHROOMISH", "Shroomish"), - ("SPECIES_BRELOOM", "Breloom"), - ("SPECIES_SPINDA", "Spinda"), - ("SPECIES_WINGULL", "Wingull"), - ("SPECIES_PELIPPER", "Pelipper"), - ("SPECIES_SURSKIT", "Surskit"), - ("SPECIES_MASQUERAIN", "Masquerain"), - ("SPECIES_WAILMER", "Wailmer"), - ("SPECIES_WAILORD", "Wailord"), - ("SPECIES_SKITTY", "Skitty"), - ("SPECIES_DELCATTY", "Delcatty"), - ("SPECIES_KECLEON", "Kecleon"), - ("SPECIES_BALTOY", "Baltoy"), - ("SPECIES_CLAYDOL", "Claydol"), - ("SPECIES_NOSEPASS", "Nosepass"), - ("SPECIES_TORKOAL", "Torkoal"), - ("SPECIES_SABLEYE", "Sableye"), - ("SPECIES_BARBOACH", "Barboach"), - ("SPECIES_WHISCASH", "Whiscash"), - ("SPECIES_LUVDISC", "Luvdisc"), - ("SPECIES_CORPHISH", "Corphish"), - ("SPECIES_CRAWDAUNT", "Crawdaunt"), - ("SPECIES_FEEBAS", "Feebas"), - ("SPECIES_MILOTIC", "Milotic"), - ("SPECIES_CARVANHA", "Carvanha"), - ("SPECIES_SHARPEDO", "Sharpedo"), - ("SPECIES_TRAPINCH", "Trapinch"), - ("SPECIES_VIBRAVA", "Vibrava"), - ("SPECIES_FLYGON", "Flygon"), - ("SPECIES_MAKUHITA", "Makuhita"), - ("SPECIES_HARIYAMA", "Hariyama"), - ("SPECIES_ELECTRIKE", "Electrike"), - ("SPECIES_MANECTRIC", "Manectric"), - ("SPECIES_NUMEL", "Numel"), - ("SPECIES_CAMERUPT", "Camerupt"), - ("SPECIES_SPHEAL", "Spheal"), - ("SPECIES_SEALEO", "Sealeo"), - ("SPECIES_WALREIN", "Walrein"), - ("SPECIES_CACNEA", "Cacnea"), - ("SPECIES_CACTURNE", "Cacturne"), - ("SPECIES_SNORUNT", "Snorunt"), - ("SPECIES_GLALIE", "Glalie"), - ("SPECIES_LUNATONE", "Lunatone"), - ("SPECIES_SOLROCK", "Solrock"), - ("SPECIES_AZURILL", "Azurill"), - ("SPECIES_SPOINK", "Spoink"), - ("SPECIES_GRUMPIG", "Grumpig"), - ("SPECIES_PLUSLE", "Plusle"), - ("SPECIES_MINUN", "Minun"), - ("SPECIES_MAWILE", "Mawile"), - ("SPECIES_MEDITITE", "Meditite"), - ("SPECIES_MEDICHAM", "Medicham"), - ("SPECIES_SWABLU", "Swablu"), - ("SPECIES_ALTARIA", "Altaria"), - ("SPECIES_WYNAUT", "Wynaut"), - ("SPECIES_DUSKULL", "Duskull"), - ("SPECIES_DUSCLOPS", "Dusclops"), - ("SPECIES_ROSELIA", "Roselia"), - ("SPECIES_SLAKOTH", "Slakoth"), - ("SPECIES_VIGOROTH", "Vigoroth"), - ("SPECIES_SLAKING", "Slaking"), - ("SPECIES_GULPIN", "Gulpin"), - ("SPECIES_SWALOT", "Swalot"), - ("SPECIES_TROPIUS", "Tropius"), - ("SPECIES_WHISMUR", "Whismur"), - ("SPECIES_LOUDRED", "Loudred"), - ("SPECIES_EXPLOUD", "Exploud"), - ("SPECIES_CLAMPERL", "Clamperl"), - ("SPECIES_HUNTAIL", "Huntail"), - ("SPECIES_GOREBYSS", "Gorebyss"), - ("SPECIES_ABSOL", "Absol"), - ("SPECIES_SHUPPET", "Shuppet"), - ("SPECIES_BANETTE", "Banette"), - ("SPECIES_SEVIPER", "Seviper"), - ("SPECIES_ZANGOOSE", "Zangoose"), - ("SPECIES_RELICANTH", "Relicanth"), - ("SPECIES_ARON", "Aron"), - ("SPECIES_LAIRON", "Lairon"), - ("SPECIES_AGGRON", "Aggron"), - ("SPECIES_CASTFORM", "Castform"), - ("SPECIES_VOLBEAT", "Volbeat"), - ("SPECIES_ILLUMISE", "Illumise"), - ("SPECIES_LILEEP", "Lileep"), - ("SPECIES_CRADILY", "Cradily"), - ("SPECIES_ANORITH", "Anorith"), - ("SPECIES_ARMALDO", "Armaldo"), - ("SPECIES_RALTS", "Ralts"), - ("SPECIES_KIRLIA", "Kirlia"), - ("SPECIES_GARDEVOIR", "Gardevoir"), - ("SPECIES_BAGON", "Bagon"), - ("SPECIES_SHELGON", "Shelgon"), - ("SPECIES_SALAMENCE", "Salamence"), - ("SPECIES_BELDUM", "Beldum"), - ("SPECIES_METANG", "Metang"), - ("SPECIES_METAGROSS", "Metagross"), - ("SPECIES_REGIROCK", "Regirock"), - ("SPECIES_REGICE", "Regice"), - ("SPECIES_REGISTEEL", "Registeel"), - ("SPECIES_KYOGRE", "Kyogre"), - ("SPECIES_GROUDON", "Groudon"), - ("SPECIES_RAYQUAZA", "Rayquaza"), - ("SPECIES_LATIAS", "Latias"), - ("SPECIES_LATIOS", "Latios"), - ("SPECIES_JIRACHI", "Jirachi"), - ("SPECIES_DEOXYS", "Deoxys"), - ("SPECIES_CHIMECHO", "Chimecho") + all_species: List[Tuple[str, str, int]] = [ + ("SPECIES_BULBASAUR", "Bulbasaur", 1), + ("SPECIES_IVYSAUR", "Ivysaur", 2), + ("SPECIES_VENUSAUR", "Venusaur", 3), + ("SPECIES_CHARMANDER", "Charmander", 4), + ("SPECIES_CHARMELEON", "Charmeleon", 5), + ("SPECIES_CHARIZARD", "Charizard", 6), + ("SPECIES_SQUIRTLE", "Squirtle", 7), + ("SPECIES_WARTORTLE", "Wartortle", 8), + ("SPECIES_BLASTOISE", "Blastoise", 9), + ("SPECIES_CATERPIE", "Caterpie", 10), + ("SPECIES_METAPOD", "Metapod", 11), + ("SPECIES_BUTTERFREE", "Butterfree", 12), + ("SPECIES_WEEDLE", "Weedle", 13), + ("SPECIES_KAKUNA", "Kakuna", 14), + ("SPECIES_BEEDRILL", "Beedrill", 15), + ("SPECIES_PIDGEY", "Pidgey", 16), + ("SPECIES_PIDGEOTTO", "Pidgeotto", 17), + ("SPECIES_PIDGEOT", "Pidgeot", 18), + ("SPECIES_RATTATA", "Rattata", 19), + ("SPECIES_RATICATE", "Raticate", 20), + ("SPECIES_SPEAROW", "Spearow", 21), + ("SPECIES_FEAROW", "Fearow", 22), + ("SPECIES_EKANS", "Ekans", 23), + ("SPECIES_ARBOK", "Arbok", 24), + ("SPECIES_PIKACHU", "Pikachu", 25), + ("SPECIES_RAICHU", "Raichu", 26), + ("SPECIES_SANDSHREW", "Sandshrew", 27), + ("SPECIES_SANDSLASH", "Sandslash", 28), + ("SPECIES_NIDORAN_F", "Nidoran Female", 29), + ("SPECIES_NIDORINA", "Nidorina", 30), + ("SPECIES_NIDOQUEEN", "Nidoqueen", 31), + ("SPECIES_NIDORAN_M", "Nidoran Male", 32), + ("SPECIES_NIDORINO", "Nidorino", 33), + ("SPECIES_NIDOKING", "Nidoking", 34), + ("SPECIES_CLEFAIRY", "Clefairy", 35), + ("SPECIES_CLEFABLE", "Clefable", 36), + ("SPECIES_VULPIX", "Vulpix", 37), + ("SPECIES_NINETALES", "Ninetales", 38), + ("SPECIES_JIGGLYPUFF", "Jigglypuff", 39), + ("SPECIES_WIGGLYTUFF", "Wigglytuff", 40), + ("SPECIES_ZUBAT", "Zubat", 41), + ("SPECIES_GOLBAT", "Golbat", 42), + ("SPECIES_ODDISH", "Oddish", 43), + ("SPECIES_GLOOM", "Gloom", 44), + ("SPECIES_VILEPLUME", "Vileplume", 45), + ("SPECIES_PARAS", "Paras", 46), + ("SPECIES_PARASECT", "Parasect", 47), + ("SPECIES_VENONAT", "Venonat", 48), + ("SPECIES_VENOMOTH", "Venomoth", 49), + ("SPECIES_DIGLETT", "Diglett", 50), + ("SPECIES_DUGTRIO", "Dugtrio", 51), + ("SPECIES_MEOWTH", "Meowth", 52), + ("SPECIES_PERSIAN", "Persian", 53), + ("SPECIES_PSYDUCK", "Psyduck", 54), + ("SPECIES_GOLDUCK", "Golduck", 55), + ("SPECIES_MANKEY", "Mankey", 56), + ("SPECIES_PRIMEAPE", "Primeape", 57), + ("SPECIES_GROWLITHE", "Growlithe", 58), + ("SPECIES_ARCANINE", "Arcanine", 59), + ("SPECIES_POLIWAG", "Poliwag", 60), + ("SPECIES_POLIWHIRL", "Poliwhirl", 61), + ("SPECIES_POLIWRATH", "Poliwrath", 62), + ("SPECIES_ABRA", "Abra", 63), + ("SPECIES_KADABRA", "Kadabra", 64), + ("SPECIES_ALAKAZAM", "Alakazam", 65), + ("SPECIES_MACHOP", "Machop", 66), + ("SPECIES_MACHOKE", "Machoke", 67), + ("SPECIES_MACHAMP", "Machamp", 68), + ("SPECIES_BELLSPROUT", "Bellsprout", 69), + ("SPECIES_WEEPINBELL", "Weepinbell", 70), + ("SPECIES_VICTREEBEL", "Victreebel", 71), + ("SPECIES_TENTACOOL", "Tentacool", 72), + ("SPECIES_TENTACRUEL", "Tentacruel", 73), + ("SPECIES_GEODUDE", "Geodude", 74), + ("SPECIES_GRAVELER", "Graveler", 75), + ("SPECIES_GOLEM", "Golem", 76), + ("SPECIES_PONYTA", "Ponyta", 77), + ("SPECIES_RAPIDASH", "Rapidash", 78), + ("SPECIES_SLOWPOKE", "Slowpoke", 79), + ("SPECIES_SLOWBRO", "Slowbro", 80), + ("SPECIES_MAGNEMITE", "Magnemite", 81), + ("SPECIES_MAGNETON", "Magneton", 82), + ("SPECIES_FARFETCHD", "Farfetch'd", 83), + ("SPECIES_DODUO", "Doduo", 84), + ("SPECIES_DODRIO", "Dodrio", 85), + ("SPECIES_SEEL", "Seel", 86), + ("SPECIES_DEWGONG", "Dewgong", 87), + ("SPECIES_GRIMER", "Grimer", 88), + ("SPECIES_MUK", "Muk", 89), + ("SPECIES_SHELLDER", "Shellder", 90), + ("SPECIES_CLOYSTER", "Cloyster", 91), + ("SPECIES_GASTLY", "Gastly", 92), + ("SPECIES_HAUNTER", "Haunter", 93), + ("SPECIES_GENGAR", "Gengar", 94), + ("SPECIES_ONIX", "Onix", 95), + ("SPECIES_DROWZEE", "Drowzee", 96), + ("SPECIES_HYPNO", "Hypno", 97), + ("SPECIES_KRABBY", "Krabby", 98), + ("SPECIES_KINGLER", "Kingler", 99), + ("SPECIES_VOLTORB", "Voltorb", 100), + ("SPECIES_ELECTRODE", "Electrode", 101), + ("SPECIES_EXEGGCUTE", "Exeggcute", 102), + ("SPECIES_EXEGGUTOR", "Exeggutor", 103), + ("SPECIES_CUBONE", "Cubone", 104), + ("SPECIES_MAROWAK", "Marowak", 105), + ("SPECIES_HITMONLEE", "Hitmonlee", 106), + ("SPECIES_HITMONCHAN", "Hitmonchan", 107), + ("SPECIES_LICKITUNG", "Lickitung", 108), + ("SPECIES_KOFFING", "Koffing", 109), + ("SPECIES_WEEZING", "Weezing", 110), + ("SPECIES_RHYHORN", "Rhyhorn", 111), + ("SPECIES_RHYDON", "Rhydon", 112), + ("SPECIES_CHANSEY", "Chansey", 113), + ("SPECIES_TANGELA", "Tangela", 114), + ("SPECIES_KANGASKHAN", "Kangaskhan", 115), + ("SPECIES_HORSEA", "Horsea", 116), + ("SPECIES_SEADRA", "Seadra", 117), + ("SPECIES_GOLDEEN", "Goldeen", 118), + ("SPECIES_SEAKING", "Seaking", 119), + ("SPECIES_STARYU", "Staryu", 120), + ("SPECIES_STARMIE", "Starmie", 121), + ("SPECIES_MR_MIME", "Mr. Mime", 122), + ("SPECIES_SCYTHER", "Scyther", 123), + ("SPECIES_JYNX", "Jynx", 124), + ("SPECIES_ELECTABUZZ", "Electabuzz", 125), + ("SPECIES_MAGMAR", "Magmar", 126), + ("SPECIES_PINSIR", "Pinsir", 127), + ("SPECIES_TAUROS", "Tauros", 128), + ("SPECIES_MAGIKARP", "Magikarp", 129), + ("SPECIES_GYARADOS", "Gyarados", 130), + ("SPECIES_LAPRAS", "Lapras", 131), + ("SPECIES_DITTO", "Ditto", 132), + ("SPECIES_EEVEE", "Eevee", 133), + ("SPECIES_VAPOREON", "Vaporeon", 134), + ("SPECIES_JOLTEON", "Jolteon", 135), + ("SPECIES_FLAREON", "Flareon", 136), + ("SPECIES_PORYGON", "Porygon", 137), + ("SPECIES_OMANYTE", "Omanyte", 138), + ("SPECIES_OMASTAR", "Omastar", 139), + ("SPECIES_KABUTO", "Kabuto", 140), + ("SPECIES_KABUTOPS", "Kabutops", 141), + ("SPECIES_AERODACTYL", "Aerodactyl", 142), + ("SPECIES_SNORLAX", "Snorlax", 143), + ("SPECIES_ARTICUNO", "Articuno", 144), + ("SPECIES_ZAPDOS", "Zapdos", 145), + ("SPECIES_MOLTRES", "Moltres", 146), + ("SPECIES_DRATINI", "Dratini", 147), + ("SPECIES_DRAGONAIR", "Dragonair", 148), + ("SPECIES_DRAGONITE", "Dragonite", 149), + ("SPECIES_MEWTWO", "Mewtwo", 150), + ("SPECIES_MEW", "Mew", 151), + ("SPECIES_CHIKORITA", "Chikorita", 152), + ("SPECIES_BAYLEEF", "Bayleef", 153), + ("SPECIES_MEGANIUM", "Meganium", 154), + ("SPECIES_CYNDAQUIL", "Cindaquil", 155), + ("SPECIES_QUILAVA", "Quilava", 156), + ("SPECIES_TYPHLOSION", "Typhlosion", 157), + ("SPECIES_TOTODILE", "Totodile", 158), + ("SPECIES_CROCONAW", "Croconaw", 159), + ("SPECIES_FERALIGATR", "Feraligatr", 160), + ("SPECIES_SENTRET", "Sentret", 161), + ("SPECIES_FURRET", "Furret", 162), + ("SPECIES_HOOTHOOT", "Hoothoot", 163), + ("SPECIES_NOCTOWL", "Noctowl", 164), + ("SPECIES_LEDYBA", "Ledyba", 165), + ("SPECIES_LEDIAN", "Ledian", 166), + ("SPECIES_SPINARAK", "Spinarak", 167), + ("SPECIES_ARIADOS", "Ariados", 168), + ("SPECIES_CROBAT", "Crobat", 169), + ("SPECIES_CHINCHOU", "Chinchou", 170), + ("SPECIES_LANTURN", "Lanturn", 171), + ("SPECIES_PICHU", "Pichu", 172), + ("SPECIES_CLEFFA", "Cleffa", 173), + ("SPECIES_IGGLYBUFF", "Igglybuff", 174), + ("SPECIES_TOGEPI", "Togepi", 175), + ("SPECIES_TOGETIC", "Togetic", 176), + ("SPECIES_NATU", "Natu", 177), + ("SPECIES_XATU", "Xatu", 178), + ("SPECIES_MAREEP", "Mareep", 179), + ("SPECIES_FLAAFFY", "Flaaffy", 180), + ("SPECIES_AMPHAROS", "Ampharos", 181), + ("SPECIES_BELLOSSOM", "Bellossom", 182), + ("SPECIES_MARILL", "Marill", 183), + ("SPECIES_AZUMARILL", "Azumarill", 184), + ("SPECIES_SUDOWOODO", "Sudowoodo", 185), + ("SPECIES_POLITOED", "Politoed", 186), + ("SPECIES_HOPPIP", "Hoppip", 187), + ("SPECIES_SKIPLOOM", "Skiploom", 188), + ("SPECIES_JUMPLUFF", "Jumpluff", 189), + ("SPECIES_AIPOM", "Aipom", 190), + ("SPECIES_SUNKERN", "Sunkern", 191), + ("SPECIES_SUNFLORA", "Sunflora", 192), + ("SPECIES_YANMA", "Yanma", 193), + ("SPECIES_WOOPER", "Wooper", 194), + ("SPECIES_QUAGSIRE", "Quagsire", 195), + ("SPECIES_ESPEON", "Espeon", 196), + ("SPECIES_UMBREON", "Umbreon", 197), + ("SPECIES_MURKROW", "Murkrow", 198), + ("SPECIES_SLOWKING", "Slowking", 199), + ("SPECIES_MISDREAVUS", "Misdreavus", 200), + ("SPECIES_UNOWN", "Unown", 201), + ("SPECIES_WOBBUFFET", "Wobbuffet", 202), + ("SPECIES_GIRAFARIG", "Girafarig", 203), + ("SPECIES_PINECO", "Pineco", 204), + ("SPECIES_FORRETRESS", "Forretress", 205), + ("SPECIES_DUNSPARCE", "Dunsparce", 206), + ("SPECIES_GLIGAR", "Gligar", 207), + ("SPECIES_STEELIX", "Steelix", 208), + ("SPECIES_SNUBBULL", "Snubbull", 209), + ("SPECIES_GRANBULL", "Granbull", 210), + ("SPECIES_QWILFISH", "Qwilfish", 211), + ("SPECIES_SCIZOR", "Scizor", 212), + ("SPECIES_SHUCKLE", "Shuckle", 213), + ("SPECIES_HERACROSS", "Heracross", 214), + ("SPECIES_SNEASEL", "Sneasel", 215), + ("SPECIES_TEDDIURSA", "Teddiursa", 216), + ("SPECIES_URSARING", "Ursaring", 217), + ("SPECIES_SLUGMA", "Slugma", 218), + ("SPECIES_MAGCARGO", "Magcargo", 219), + ("SPECIES_SWINUB", "Swinub", 220), + ("SPECIES_PILOSWINE", "Piloswine", 221), + ("SPECIES_CORSOLA", "Corsola", 222), + ("SPECIES_REMORAID", "Remoraid", 223), + ("SPECIES_OCTILLERY", "Octillery", 224), + ("SPECIES_DELIBIRD", "Delibird", 225), + ("SPECIES_MANTINE", "Mantine", 226), + ("SPECIES_SKARMORY", "Skarmory", 227), + ("SPECIES_HOUNDOUR", "Houndour", 228), + ("SPECIES_HOUNDOOM", "Houndoom", 229), + ("SPECIES_KINGDRA", "Kingdra", 230), + ("SPECIES_PHANPY", "Phanpy", 231), + ("SPECIES_DONPHAN", "Donphan", 232), + ("SPECIES_PORYGON2", "Porygon2", 233), + ("SPECIES_STANTLER", "Stantler", 234), + ("SPECIES_SMEARGLE", "Smeargle", 235), + ("SPECIES_TYROGUE", "Tyrogue", 236), + ("SPECIES_HITMONTOP", "Hitmontop", 237), + ("SPECIES_SMOOCHUM", "Smoochum", 238), + ("SPECIES_ELEKID", "Elekid", 239), + ("SPECIES_MAGBY", "Magby", 240), + ("SPECIES_MILTANK", "Miltank", 241), + ("SPECIES_BLISSEY", "Blissey", 242), + ("SPECIES_RAIKOU", "Raikou", 243), + ("SPECIES_ENTEI", "Entei", 244), + ("SPECIES_SUICUNE", "Suicune", 245), + ("SPECIES_LARVITAR", "Larvitar", 246), + ("SPECIES_PUPITAR", "Pupitar", 247), + ("SPECIES_TYRANITAR", "Tyranitar", 248), + ("SPECIES_LUGIA", "Lugia", 249), + ("SPECIES_HO_OH", "Ho-oh", 250), + ("SPECIES_CELEBI", "Celebi", 251), + ("SPECIES_TREECKO", "Treecko", 252), + ("SPECIES_GROVYLE", "Grovyle", 253), + ("SPECIES_SCEPTILE", "Sceptile", 254), + ("SPECIES_TORCHIC", "Torchic", 255), + ("SPECIES_COMBUSKEN", "Combusken", 256), + ("SPECIES_BLAZIKEN", "Blaziken", 257), + ("SPECIES_MUDKIP", "Mudkip", 258), + ("SPECIES_MARSHTOMP", "Marshtomp", 259), + ("SPECIES_SWAMPERT", "Swampert", 260), + ("SPECIES_POOCHYENA", "Poochyena", 261), + ("SPECIES_MIGHTYENA", "Mightyena", 262), + ("SPECIES_ZIGZAGOON", "Zigzagoon", 263), + ("SPECIES_LINOONE", "Linoone", 264), + ("SPECIES_WURMPLE", "Wurmple", 265), + ("SPECIES_SILCOON", "Silcoon", 266), + ("SPECIES_BEAUTIFLY", "Beautifly", 267), + ("SPECIES_CASCOON", "Cascoon", 268), + ("SPECIES_DUSTOX", "Dustox", 269), + ("SPECIES_LOTAD", "Lotad", 270), + ("SPECIES_LOMBRE", "Lombre", 271), + ("SPECIES_LUDICOLO", "Ludicolo", 272), + ("SPECIES_SEEDOT", "Seedot", 273), + ("SPECIES_NUZLEAF", "Nuzleaf", 274), + ("SPECIES_SHIFTRY", "Shiftry", 275), + ("SPECIES_NINCADA", "Nincada", 290), + ("SPECIES_NINJASK", "Ninjask", 291), + ("SPECIES_SHEDINJA", "Shedinja", 292), + ("SPECIES_TAILLOW", "Taillow", 276), + ("SPECIES_SWELLOW", "Swellow", 277), + ("SPECIES_SHROOMISH", "Shroomish", 285), + ("SPECIES_BRELOOM", "Breloom", 286), + ("SPECIES_SPINDA", "Spinda", 327), + ("SPECIES_WINGULL", "Wingull", 278), + ("SPECIES_PELIPPER", "Pelipper", 279), + ("SPECIES_SURSKIT", "Surskit", 283), + ("SPECIES_MASQUERAIN", "Masquerain", 284), + ("SPECIES_WAILMER", "Wailmer", 320), + ("SPECIES_WAILORD", "Wailord", 321), + ("SPECIES_SKITTY", "Skitty", 300), + ("SPECIES_DELCATTY", "Delcatty", 301), + ("SPECIES_KECLEON", "Kecleon", 352), + ("SPECIES_BALTOY", "Baltoy", 343), + ("SPECIES_CLAYDOL", "Claydol", 344), + ("SPECIES_NOSEPASS", "Nosepass", 299), + ("SPECIES_TORKOAL", "Torkoal", 324), + ("SPECIES_SABLEYE", "Sableye", 302), + ("SPECIES_BARBOACH", "Barboach", 339), + ("SPECIES_WHISCASH", "Whiscash", 340), + ("SPECIES_LUVDISC", "Luvdisc", 370), + ("SPECIES_CORPHISH", "Corphish", 341), + ("SPECIES_CRAWDAUNT", "Crawdaunt", 342), + ("SPECIES_FEEBAS", "Feebas", 349), + ("SPECIES_MILOTIC", "Milotic", 350), + ("SPECIES_CARVANHA", "Carvanha", 318), + ("SPECIES_SHARPEDO", "Sharpedo", 319), + ("SPECIES_TRAPINCH", "Trapinch", 328), + ("SPECIES_VIBRAVA", "Vibrava", 329), + ("SPECIES_FLYGON", "Flygon", 330), + ("SPECIES_MAKUHITA", "Makuhita", 296), + ("SPECIES_HARIYAMA", "Hariyama", 297), + ("SPECIES_ELECTRIKE", "Electrike", 309), + ("SPECIES_MANECTRIC", "Manectric", 310), + ("SPECIES_NUMEL", "Numel", 322), + ("SPECIES_CAMERUPT", "Camerupt", 323), + ("SPECIES_SPHEAL", "Spheal", 363), + ("SPECIES_SEALEO", "Sealeo", 364), + ("SPECIES_WALREIN", "Walrein", 365), + ("SPECIES_CACNEA", "Cacnea", 331), + ("SPECIES_CACTURNE", "Cacturne", 332), + ("SPECIES_SNORUNT", "Snorunt", 361), + ("SPECIES_GLALIE", "Glalie", 362), + ("SPECIES_LUNATONE", "Lunatone", 337), + ("SPECIES_SOLROCK", "Solrock", 338), + ("SPECIES_AZURILL", "Azurill", 298), + ("SPECIES_SPOINK", "Spoink", 325), + ("SPECIES_GRUMPIG", "Grumpig", 326), + ("SPECIES_PLUSLE", "Plusle", 311), + ("SPECIES_MINUN", "Minun", 312), + ("SPECIES_MAWILE", "Mawile", 303), + ("SPECIES_MEDITITE", "Meditite", 307), + ("SPECIES_MEDICHAM", "Medicham", 308), + ("SPECIES_SWABLU", "Swablu", 333), + ("SPECIES_ALTARIA", "Altaria", 334), + ("SPECIES_WYNAUT", "Wynaut", 360), + ("SPECIES_DUSKULL", "Duskull", 355), + ("SPECIES_DUSCLOPS", "Dusclops", 356), + ("SPECIES_ROSELIA", "Roselia", 315), + ("SPECIES_SLAKOTH", "Slakoth", 287), + ("SPECIES_VIGOROTH", "Vigoroth", 288), + ("SPECIES_SLAKING", "Slaking", 289), + ("SPECIES_GULPIN", "Gulpin", 316), + ("SPECIES_SWALOT", "Swalot", 317), + ("SPECIES_TROPIUS", "Tropius", 357), + ("SPECIES_WHISMUR", "Whismur", 293), + ("SPECIES_LOUDRED", "Loudred", 294), + ("SPECIES_EXPLOUD", "Exploud", 295), + ("SPECIES_CLAMPERL", "Clamperl", 366), + ("SPECIES_HUNTAIL", "Huntail", 367), + ("SPECIES_GOREBYSS", "Gorebyss", 368), + ("SPECIES_ABSOL", "Absol", 359), + ("SPECIES_SHUPPET", "Shuppet", 353), + ("SPECIES_BANETTE", "Banette", 354), + ("SPECIES_SEVIPER", "Seviper", 336), + ("SPECIES_ZANGOOSE", "Zangoose", 335), + ("SPECIES_RELICANTH", "Relicanth", 369), + ("SPECIES_ARON", "Aron", 304), + ("SPECIES_LAIRON", "Lairon", 305), + ("SPECIES_AGGRON", "Aggron", 306), + ("SPECIES_CASTFORM", "Castform", 351), + ("SPECIES_VOLBEAT", "Volbeat", 313), + ("SPECIES_ILLUMISE", "Illumise", 314), + ("SPECIES_LILEEP", "Lileep", 345), + ("SPECIES_CRADILY", "Cradily", 346), + ("SPECIES_ANORITH", "Anorith", 347), + ("SPECIES_ARMALDO", "Armaldo", 348), + ("SPECIES_RALTS", "Ralts", 280), + ("SPECIES_KIRLIA", "Kirlia", 281), + ("SPECIES_GARDEVOIR", "Gardevoir", 282), + ("SPECIES_BAGON", "Bagon", 371), + ("SPECIES_SHELGON", "Shelgon", 372), + ("SPECIES_SALAMENCE", "Salamence", 373), + ("SPECIES_BELDUM", "Beldum", 374), + ("SPECIES_METANG", "Metang", 375), + ("SPECIES_METAGROSS", "Metagross", 376), + ("SPECIES_REGIROCK", "Regirock", 377), + ("SPECIES_REGICE", "Regice", 378), + ("SPECIES_REGISTEEL", "Registeel", 379), + ("SPECIES_KYOGRE", "Kyogre", 382), + ("SPECIES_GROUDON", "Groudon", 383), + ("SPECIES_RAYQUAZA", "Rayquaza", 384), + ("SPECIES_LATIAS", "Latias", 380), + ("SPECIES_LATIOS", "Latios", 381), + ("SPECIES_JIRACHI", "Jirachi", 385), + ("SPECIES_DEOXYS", "Deoxys", 386), + ("SPECIES_CHIMECHO", "Chimecho", 358), ] - species_list: List[SpeciesData] = [] max_species_id = 0 - for species_name, species_label in all_species: + for species_name, species_label, species_dex_number in all_species: species_id = data.constants[species_name] max_species_id = max(species_id, max_species_id) species_data = extracted_data["species"][species_id] learnset = [LearnsetMove(item["level"], item["move_id"]) for item in species_data["learnset"]["moves"]] - species_list.append(SpeciesData( + data.species[species_id] = SpeciesData( species_name, species_label, species_id, + species_dex_number, BaseStats( species_data["base_stats"][0], species_data["base_stats"][1], @@ -827,27 +910,52 @@ def _init() -> None: ) for evolution_json in species_data["evolutions"]], None, species_data["catch_rate"], + species_data["friendship"], learnset, int(species_data["tmhm_learnset"], 16), - species_data["learnset"]["rom_address"], - species_data["rom_address"] - )) - - data.species = [None for i in range(max_species_id + 1)] + species_data["learnset"]["address"], + species_data["address"] + ) - for species_data in species_list: - data.species[species_data.species_id] = species_data + for species in data.species.values(): + for evolution in species.evolutions: + data.species[evolution.species_id].pre_evolution = species.species_id + + # Replace default item for dex entry locations based on evo stage of species + evo_stage_to_ball_map = { + 0: data.constants["ITEM_POKE_BALL"], + 1: data.constants["ITEM_GREAT_BALL"], + 2: data.constants["ITEM_ULTRA_BALL"], + } + for species in data.species.values(): + evo_stage = 0 + pre_evolution = species.pre_evolution + while pre_evolution is not None: + evo_stage += 1 + pre_evolution = data.species[pre_evolution].pre_evolution + + dex_location_name = f"POKEDEX_REWARD_{str(species.national_dex_number).zfill(3)}" + data.locations[dex_location_name] = LocationData( + data.locations[dex_location_name].name, + data.locations[dex_location_name].label, + data.locations[dex_location_name].parent_region, + evo_stage_to_ball_map[evo_stage], + data.locations[dex_location_name].address, + data.locations[dex_location_name].flag, + data.locations[dex_location_name].tags + ) - for species in data.species: - if species is not None: - for evolution in species.evolutions: - data.species[evolution.species_id].pre_evolution = species.species_id + # Create legendary encounter data + for legendary_encounter_json in extracted_data["legendary_encounters"]: + data.legendary_encounters.append(MiscPokemonData( + legendary_encounter_json["species"], + legendary_encounter_json["address"] + )) - # Create static encounter data - for static_encounter_json in extracted_data["static_encounters"]: - data.static_encounters.append(StaticEncounterData( - static_encounter_json["species"], - static_encounter_json["rom_address"] + for misc_pokemon_json in extracted_data["misc_pokemon"]: + data.misc_pokemon.append(MiscPokemonData( + misc_pokemon_json["species"], + misc_pokemon_json["address"] )) # TM moves @@ -868,7 +976,7 @@ def _init() -> None: ("ABILITY_WATER_ABSORB", "Water Absorb"), ("ABILITY_OBLIVIOUS", "Oblivious"), ("ABILITY_CLOUD_NINE", "Cloud Nine"), - ("ABILITY_COMPOUND_EYES", "Compound Eyes"), + ("ABILITY_COMPOUND_EYES", "Compoundeyes"), ("ABILITY_INSOMNIA", "Insomnia"), ("ABILITY_COLOR_CHANGE", "Color Change"), ("ABILITY_IMMUNITY", "Immunity"), @@ -885,7 +993,7 @@ def _init() -> None: ("ABILITY_SYNCHRONIZE", "Synchronize"), ("ABILITY_CLEAR_BODY", "Clear Body"), ("ABILITY_NATURAL_CURE", "Natural Cure"), - ("ABILITY_LIGHTNING_ROD", "Lightning Rod"), + ("ABILITY_LIGHTNING_ROD", "Lightningrod"), ("ABILITY_SERENE_GRACE", "Serene Grace"), ("ABILITY_SWIFT_SWIM", "Swift Swim"), ("ABILITY_CHLOROPHYLL", "Chlorophyll"), @@ -934,36 +1042,362 @@ def _init() -> None: ("ABILITY_AIR_LOCK", "Air Lock") ]] - # Create map data - for map_name, map_json in extracted_data["maps"].items(): - land_encounters = None - water_encounters = None - fishing_encounters = None - - if map_json["land_encounters"] is not None: - land_encounters = EncounterTableData( - map_json["land_encounters"]["encounter_slots"], - map_json["land_encounters"]["rom_address"] - ) - if map_json["water_encounters"] is not None: - water_encounters = EncounterTableData( - map_json["water_encounters"]["encounter_slots"], - map_json["water_encounters"]["rom_address"] - ) - if map_json["fishing_encounters"] is not None: - fishing_encounters = EncounterTableData( - map_json["fishing_encounters"]["encounter_slots"], - map_json["fishing_encounters"]["rom_address"] - ) - - data.maps.append(MapData( - map_name, - land_encounters, - water_encounters, - fishing_encounters - )) - - data.maps.sort(key=lambda map: map.name) + # Move labels + data.move_labels = {r: data.constants[l] for l, r in [ + ("MOVE_POUND", "Pound"), + ("MOVE_KARATE_CHOP", "Karate Chop"), + ("MOVE_DOUBLE_SLAP", "Doubleslap"), + ("MOVE_COMET_PUNCH", "Comet Punch"), + ("MOVE_MEGA_PUNCH", "Mega Punch"), + ("MOVE_PAY_DAY", "Pay Day"), + ("MOVE_FIRE_PUNCH", "Fire Punch"), + ("MOVE_ICE_PUNCH", "Ice Punch"), + ("MOVE_THUNDER_PUNCH", "Thunderpunch"), + ("MOVE_SCRATCH", "Scratch"), + ("MOVE_VICE_GRIP", "Vicegrip"), + ("MOVE_GUILLOTINE", "Guillotine"), + ("MOVE_RAZOR_WIND", "Razor Wind"), + ("MOVE_SWORDS_DANCE", "Swords Dance"), + ("MOVE_CUT", "Cut"), + ("MOVE_GUST", "Gust"), + ("MOVE_WING_ATTACK", "Wing Attack"), + ("MOVE_WHIRLWIND", "Whirlwind"), + ("MOVE_FLY", "Fly"), + ("MOVE_BIND", "Bind"), + ("MOVE_SLAM", "Slam"), + ("MOVE_VINE_WHIP", "Vine Whip"), + ("MOVE_STOMP", "Stomp"), + ("MOVE_DOUBLE_KICK", "Double Kick"), + ("MOVE_MEGA_KICK", "Mega Kick"), + ("MOVE_JUMP_KICK", "Jump Kick"), + ("MOVE_ROLLING_KICK", "Rolling Kick"), + ("MOVE_SAND_ATTACK", "Sand-Attack"), + ("MOVE_HEADBUTT", "Headbutt"), + ("MOVE_HORN_ATTACK", "Horn Attack"), + ("MOVE_FURY_ATTACK", "Fury Attack"), + ("MOVE_HORN_DRILL", "Horn Drill"), + ("MOVE_TACKLE", "Tackle"), + ("MOVE_BODY_SLAM", "Body Slam"), + ("MOVE_WRAP", "Wrap"), + ("MOVE_TAKE_DOWN", "Take Down"), + ("MOVE_THRASH", "Thrash"), + ("MOVE_DOUBLE_EDGE", "Double-Edge"), + ("MOVE_TAIL_WHIP", "Tail Whip"), + ("MOVE_POISON_STING", "Poison Sting"), + ("MOVE_TWINEEDLE", "Twineedle"), + ("MOVE_PIN_MISSILE", "Pin Missile"), + ("MOVE_LEER", "Leer"), + ("MOVE_BITE", "Bite"), + ("MOVE_GROWL", "Growl"), + ("MOVE_ROAR", "Roar"), + ("MOVE_SING", "Sing"), + ("MOVE_SUPERSONIC", "Supersonic"), + ("MOVE_SONIC_BOOM", "Sonicboom"), + ("MOVE_DISABLE", "Disable"), + ("MOVE_ACID", "Acid"), + ("MOVE_EMBER", "Ember"), + ("MOVE_FLAMETHROWER", "Flamethrower"), + ("MOVE_MIST", "Mist"), + ("MOVE_WATER_GUN", "Water Gun"), + ("MOVE_HYDRO_PUMP", "Hydro Pump"), + ("MOVE_SURF", "Surf"), + ("MOVE_ICE_BEAM", "Ice Beam"), + ("MOVE_BLIZZARD", "Blizzard"), + ("MOVE_PSYBEAM", "Psybeam"), + ("MOVE_BUBBLE_BEAM", "Bubblebeam"), + ("MOVE_AURORA_BEAM", "Aurora Beam"), + ("MOVE_HYPER_BEAM", "Hyper Beam"), + ("MOVE_PECK", "Peck"), + ("MOVE_DRILL_PECK", "Drill Peck"), + ("MOVE_SUBMISSION", "Submission"), + ("MOVE_LOW_KICK", "Low Kick"), + ("MOVE_COUNTER", "Counter"), + ("MOVE_SEISMIC_TOSS", "Seismic Toss"), + ("MOVE_STRENGTH", "Strength"), + ("MOVE_ABSORB", "Absorb"), + ("MOVE_MEGA_DRAIN", "Mega Drain"), + ("MOVE_LEECH_SEED", "Leech Seed"), + ("MOVE_GROWTH", "Growth"), + ("MOVE_RAZOR_LEAF", "Razor Leaf"), + ("MOVE_SOLAR_BEAM", "Solarbeam"), + ("MOVE_POISON_POWDER", "Poisonpowder"), + ("MOVE_STUN_SPORE", "Stun Spore"), + ("MOVE_SLEEP_POWDER", "Sleep Powder"), + ("MOVE_PETAL_DANCE", "Petal Dance"), + ("MOVE_STRING_SHOT", "String Shot"), + ("MOVE_DRAGON_RAGE", "Dragon Rage"), + ("MOVE_FIRE_SPIN", "Fire Spin"), + ("MOVE_THUNDER_SHOCK", "Thundershock"), + ("MOVE_THUNDERBOLT", "Thunderbolt"), + ("MOVE_THUNDER_WAVE", "Thunder Wave"), + ("MOVE_THUNDER", "Thunder"), + ("MOVE_ROCK_THROW", "Rock Throw"), + ("MOVE_EARTHQUAKE", "Earthquake"), + ("MOVE_FISSURE", "Fissure"), + ("MOVE_DIG", "Dig"), + ("MOVE_TOXIC", "Toxic"), + ("MOVE_CONFUSION", "Confusion"), + ("MOVE_PSYCHIC", "Psychic"), + ("MOVE_HYPNOSIS", "Hypnosis"), + ("MOVE_MEDITATE", "Meditate"), + ("MOVE_AGILITY", "Agility"), + ("MOVE_QUICK_ATTACK", "Quick Attack"), + ("MOVE_RAGE", "Rage"), + ("MOVE_TELEPORT", "Teleport"), + ("MOVE_NIGHT_SHADE", "Night Shade"), + ("MOVE_MIMIC", "Mimic"), + ("MOVE_SCREECH", "Screech"), + ("MOVE_DOUBLE_TEAM", "Double Team"), + ("MOVE_RECOVER", "Recover"), + ("MOVE_HARDEN", "Harden"), + ("MOVE_MINIMIZE", "Minimize"), + ("MOVE_SMOKESCREEN", "Smokescreen"), + ("MOVE_CONFUSE_RAY", "Confuse Ray"), + ("MOVE_WITHDRAW", "Withdraw"), + ("MOVE_DEFENSE_CURL", "Defense Curl"), + ("MOVE_BARRIER", "Barrier"), + ("MOVE_LIGHT_SCREEN", "Light Screen"), + ("MOVE_HAZE", "Haze"), + ("MOVE_REFLECT", "Reflect"), + ("MOVE_FOCUS_ENERGY", "Focus Energy"), + ("MOVE_BIDE", "Bide"), + ("MOVE_METRONOME", "Metronome"), + ("MOVE_MIRROR_MOVE", "Mirror Move"), + ("MOVE_SELF_DESTRUCT", "Selfdestruct"), + ("MOVE_EGG_BOMB", "Egg Bomb"), + ("MOVE_LICK", "Lick"), + ("MOVE_SMOG", "Smog"), + ("MOVE_SLUDGE", "Sludge"), + ("MOVE_BONE_CLUB", "Bone Club"), + ("MOVE_FIRE_BLAST", "Fire Blast"), + ("MOVE_WATERFALL", "Waterfall"), + ("MOVE_CLAMP", "Clamp"), + ("MOVE_SWIFT", "Swift"), + ("MOVE_SKULL_BASH", "Skull Bash"), + ("MOVE_SPIKE_CANNON", "Spike Cannon"), + ("MOVE_CONSTRICT", "Constrict"), + ("MOVE_AMNESIA", "Amnesia"), + ("MOVE_KINESIS", "Kinesis"), + ("MOVE_SOFT_BOILED", "Softboiled"), + ("MOVE_HI_JUMP_KICK", "Hi Jump Kick"), + ("MOVE_GLARE", "Glare"), + ("MOVE_DREAM_EATER", "Dream Eater"), + ("MOVE_POISON_GAS", "Poison Gas"), + ("MOVE_BARRAGE", "Barrage"), + ("MOVE_LEECH_LIFE", "Leech Life"), + ("MOVE_LOVELY_KISS", "Lovely Kiss"), + ("MOVE_SKY_ATTACK", "Sky Attack"), + ("MOVE_TRANSFORM", "Transform"), + ("MOVE_BUBBLE", "Bubble"), + ("MOVE_DIZZY_PUNCH", "Dizzy Punch"), + ("MOVE_SPORE", "Spore"), + ("MOVE_FLASH", "Flash"), + ("MOVE_PSYWAVE", "Psywave"), + ("MOVE_SPLASH", "Splash"), + ("MOVE_ACID_ARMOR", "Acid Armor"), + ("MOVE_CRABHAMMER", "Crabhammer"), + ("MOVE_EXPLOSION", "Explosion"), + ("MOVE_FURY_SWIPES", "Fury Swipes"), + ("MOVE_BONEMERANG", "Bonemerang"), + ("MOVE_REST", "Rest"), + ("MOVE_ROCK_SLIDE", "Rock Slide"), + ("MOVE_HYPER_FANG", "Hyper Fang"), + ("MOVE_SHARPEN", "Sharpen"), + ("MOVE_CONVERSION", "Conversion"), + ("MOVE_TRI_ATTACK", "Tri Attack"), + ("MOVE_SUPER_FANG", "Super Fang"), + ("MOVE_SLASH", "Slash"), + ("MOVE_SUBSTITUTE", "Substitute"), + ("MOVE_SKETCH", "Sketch"), + ("MOVE_TRIPLE_KICK", "Triple Kick"), + ("MOVE_THIEF", "Thief"), + ("MOVE_SPIDER_WEB", "Spider Web"), + ("MOVE_MIND_READER", "Mind Reader"), + ("MOVE_NIGHTMARE", "Nightmare"), + ("MOVE_FLAME_WHEEL", "Flame Wheel"), + ("MOVE_SNORE", "Snore"), + ("MOVE_CURSE", "Curse"), + ("MOVE_FLAIL", "Flail"), + ("MOVE_CONVERSION_2", "Conversion 2"), + ("MOVE_AEROBLAST", "Aeroblast"), + ("MOVE_COTTON_SPORE", "Cotton Spore"), + ("MOVE_REVERSAL", "Reversal"), + ("MOVE_SPITE", "Spite"), + ("MOVE_POWDER_SNOW", "Powder Snow"), + ("MOVE_PROTECT", "Protect"), + ("MOVE_MACH_PUNCH", "Mach Punch"), + ("MOVE_SCARY_FACE", "Scary Face"), + ("MOVE_FAINT_ATTACK", "Faint Attack"), + ("MOVE_SWEET_KISS", "Sweet Kiss"), + ("MOVE_BELLY_DRUM", "Belly Drum"), + ("MOVE_SLUDGE_BOMB", "Sludge Bomb"), + ("MOVE_MUD_SLAP", "Mud-Slap"), + ("MOVE_OCTAZOOKA", "Octazooka"), + ("MOVE_SPIKES", "Spikes"), + ("MOVE_ZAP_CANNON", "Zap Cannon"), + ("MOVE_FORESIGHT", "Foresight"), + ("MOVE_DESTINY_BOND", "Destiny Bond"), + ("MOVE_PERISH_SONG", "Perish Song"), + ("MOVE_ICY_WIND", "Icy Wind"), + ("MOVE_DETECT", "Detect"), + ("MOVE_BONE_RUSH", "Bone Rush"), + ("MOVE_LOCK_ON", "Lock-On"), + ("MOVE_OUTRAGE", "Outrage"), + ("MOVE_SANDSTORM", "Sandstorm"), + ("MOVE_GIGA_DRAIN", "Giga Drain"), + ("MOVE_ENDURE", "Endure"), + ("MOVE_CHARM", "Charm"), + ("MOVE_ROLLOUT", "Rollout"), + ("MOVE_FALSE_SWIPE", "False Swipe"), + ("MOVE_SWAGGER", "Swagger"), + ("MOVE_MILK_DRINK", "Milk Drink"), + ("MOVE_SPARK", "Spark"), + ("MOVE_FURY_CUTTER", "Fury Cutter"), + ("MOVE_STEEL_WING", "Steel Wing"), + ("MOVE_MEAN_LOOK", "Mean Look"), + ("MOVE_ATTRACT", "Attract"), + ("MOVE_SLEEP_TALK", "Sleep Talk"), + ("MOVE_HEAL_BELL", "Heal Bell"), + ("MOVE_RETURN", "Return"), + ("MOVE_PRESENT", "Present"), + ("MOVE_FRUSTRATION", "Frustration"), + ("MOVE_SAFEGUARD", "Safeguard"), + ("MOVE_PAIN_SPLIT", "Pain Split"), + ("MOVE_SACRED_FIRE", "Sacred Fire"), + ("MOVE_MAGNITUDE", "Magnitude"), + ("MOVE_DYNAMIC_PUNCH", "Dynamicpunch"), + ("MOVE_MEGAHORN", "Megahorn"), + ("MOVE_DRAGON_BREATH", "Dragonbreath"), + ("MOVE_BATON_PASS", "Baton Pass"), + ("MOVE_ENCORE", "Encore"), + ("MOVE_PURSUIT", "Pursuit"), + ("MOVE_RAPID_SPIN", "Rapid Spin"), + ("MOVE_SWEET_SCENT", "Sweet Scent"), + ("MOVE_IRON_TAIL", "Iron Tail"), + ("MOVE_METAL_CLAW", "Metal Claw"), + ("MOVE_VITAL_THROW", "Vital Throw"), + ("MOVE_MORNING_SUN", "Morning Sun"), + ("MOVE_SYNTHESIS", "Synthesis"), + ("MOVE_MOONLIGHT", "Moonlight"), + ("MOVE_HIDDEN_POWER", "Hidden Power"), + ("MOVE_CROSS_CHOP", "Cross Chop"), + ("MOVE_TWISTER", "Twister"), + ("MOVE_RAIN_DANCE", "Rain Dance"), + ("MOVE_SUNNY_DAY", "Sunny Day"), + ("MOVE_CRUNCH", "Crunch"), + ("MOVE_MIRROR_COAT", "Mirror Coat"), + ("MOVE_PSYCH_UP", "Psych Up"), + ("MOVE_EXTREME_SPEED", "Extremespeed"), + ("MOVE_ANCIENT_POWER", "Ancientpower"), + ("MOVE_SHADOW_BALL", "Shadow Ball"), + ("MOVE_FUTURE_SIGHT", "Future Sight"), + ("MOVE_ROCK_SMASH", "Rock Smash"), + ("MOVE_WHIRLPOOL", "Whirlpool"), + ("MOVE_BEAT_UP", "Beat Up"), + ("MOVE_FAKE_OUT", "Fake Out"), + ("MOVE_UPROAR", "Uproar"), + ("MOVE_STOCKPILE", "Stockpile"), + ("MOVE_SPIT_UP", "Spit Up"), + ("MOVE_SWALLOW", "Swallow"), + ("MOVE_HEAT_WAVE", "Heat Wave"), + ("MOVE_HAIL", "Hail"), + ("MOVE_TORMENT", "Torment"), + ("MOVE_FLATTER", "Flatter"), + ("MOVE_WILL_O_WISP", "Will-O-Wisp"), + ("MOVE_MEMENTO", "Memento"), + ("MOVE_FACADE", "Facade"), + ("MOVE_FOCUS_PUNCH", "Focus Punch"), + ("MOVE_SMELLING_SALT", "Smellingsalt"), + ("MOVE_FOLLOW_ME", "Follow Me"), + ("MOVE_NATURE_POWER", "Nature Power"), + ("MOVE_CHARGE", "Charge"), + ("MOVE_TAUNT", "Taunt"), + ("MOVE_HELPING_HAND", "Helping Hand"), + ("MOVE_TRICK", "Trick"), + ("MOVE_ROLE_PLAY", "Role Play"), + ("MOVE_WISH", "Wish"), + ("MOVE_ASSIST", "Assist"), + ("MOVE_INGRAIN", "Ingrain"), + ("MOVE_SUPERPOWER", "Superpower"), + ("MOVE_MAGIC_COAT", "Magic Coat"), + ("MOVE_RECYCLE", "Recycle"), + ("MOVE_REVENGE", "Revenge"), + ("MOVE_BRICK_BREAK", "Brick Break"), + ("MOVE_YAWN", "Yawn"), + ("MOVE_KNOCK_OFF", "Knock Off"), + ("MOVE_ENDEAVOR", "Endeavor"), + ("MOVE_ERUPTION", "Eruption"), + ("MOVE_SKILL_SWAP", "Skill Swap"), + ("MOVE_IMPRISON", "Imprison"), + ("MOVE_REFRESH", "Refresh"), + ("MOVE_GRUDGE", "Grudge"), + ("MOVE_SNATCH", "Snatch"), + ("MOVE_SECRET_POWER", "Secret Power"), + ("MOVE_DIVE", "Dive"), + ("MOVE_ARM_THRUST", "Arm Thrust"), + ("MOVE_CAMOUFLAGE", "Camouflage"), + ("MOVE_TAIL_GLOW", "Tail Glow"), + ("MOVE_LUSTER_PURGE", "Luster Purge"), + ("MOVE_MIST_BALL", "Mist Ball"), + ("MOVE_FEATHER_DANCE", "Featherdance"), + ("MOVE_TEETER_DANCE", "Teeter Dance"), + ("MOVE_BLAZE_KICK", "Blaze Kick"), + ("MOVE_MUD_SPORT", "Mud Sport"), + ("MOVE_ICE_BALL", "Ice Ball"), + ("MOVE_NEEDLE_ARM", "Needle Arm"), + ("MOVE_SLACK_OFF", "Slack Off"), + ("MOVE_HYPER_VOICE", "Hyper Voice"), + ("MOVE_POISON_FANG", "Poison Fang"), + ("MOVE_CRUSH_CLAW", "Crush Claw"), + ("MOVE_BLAST_BURN", "Blast Burn"), + ("MOVE_HYDRO_CANNON", "Hydro Cannon"), + ("MOVE_METEOR_MASH", "Meteor Mash"), + ("MOVE_ASTONISH", "Astonish"), + ("MOVE_WEATHER_BALL", "Weather Ball"), + ("MOVE_AROMATHERAPY", "Aromatherapy"), + ("MOVE_FAKE_TEARS", "Fake Tears"), + ("MOVE_AIR_CUTTER", "Air Cutter"), + ("MOVE_OVERHEAT", "Overheat"), + ("MOVE_ODOR_SLEUTH", "Odor Sleuth"), + ("MOVE_ROCK_TOMB", "Rock Tomb"), + ("MOVE_SILVER_WIND", "Silver Wind"), + ("MOVE_METAL_SOUND", "Metal Sound"), + ("MOVE_GRASS_WHISTLE", "Grasswhistle"), + ("MOVE_TICKLE", "Tickle"), + ("MOVE_COSMIC_POWER", "Cosmic Power"), + ("MOVE_WATER_SPOUT", "Water Spout"), + ("MOVE_SIGNAL_BEAM", "Signal Beam"), + ("MOVE_SHADOW_PUNCH", "Shadow Punch"), + ("MOVE_EXTRASENSORY", "Extrasensory"), + ("MOVE_SKY_UPPERCUT", "Sky Uppercut"), + ("MOVE_SAND_TOMB", "Sand Tomb"), + ("MOVE_SHEER_COLD", "Sheer Cold"), + ("MOVE_MUDDY_WATER", "Muddy Water"), + ("MOVE_BULLET_SEED", "Bullet Seed"), + ("MOVE_AERIAL_ACE", "Aerial Ace"), + ("MOVE_ICICLE_SPEAR", "Icicle Spear"), + ("MOVE_IRON_DEFENSE", "Iron Defense"), + ("MOVE_BLOCK", "Block"), + ("MOVE_HOWL", "Howl"), + ("MOVE_DRAGON_CLAW", "Dragon Claw"), + ("MOVE_FRENZY_PLANT", "Frenzy Plant"), + ("MOVE_BULK_UP", "Bulk Up"), + ("MOVE_BOUNCE", "Bounce"), + ("MOVE_MUD_SHOT", "Mud Shot"), + ("MOVE_POISON_TAIL", "Poison Tail"), + ("MOVE_COVET", "Covet"), + ("MOVE_VOLT_TACKLE", "Volt Tackle"), + ("MOVE_MAGICAL_LEAF", "Magical Leaf"), + ("MOVE_WATER_SPORT", "Water Sport"), + ("MOVE_CALM_MIND", "Calm Mind"), + ("MOVE_LEAF_BLADE", "Leaf Blade"), + ("MOVE_DRAGON_DANCE", "Dragon Dance"), + ("MOVE_ROCK_BLAST", "Rock Blast"), + ("MOVE_SHOCK_WAVE", "Shock Wave"), + ("MOVE_WATER_PULSE", "Water Pulse"), + ("MOVE_DOOM_DESIRE", "Doom Desire"), + ("MOVE_PSYCHO_BOOST", "Psycho Boost"), + ]} # Create warp map for warp, destination in extracted_data["warps"].items(): @@ -975,21 +1409,56 @@ def _init() -> None: # Create trainer data for i, trainer_json in enumerate(extracted_data["trainers"]): party_json = trainer_json["party"] - pokemon_data_type = _str_to_pokemon_data_type(trainer_json["pokemon_data_type"]) + pokemon_data_type = _str_to_pokemon_data_type(trainer_json["data_type"]) data.trainers.append(TrainerData( i, TrainerPartyData( [TrainerPokemonData( p["species"], p["level"], - (p["moves"][0], p["moves"][1], p["moves"][2], p["moves"][3]) + (p["moves"][0], p["moves"][1], p["moves"][2], p["moves"][3]) if "moves" in p else None ) for p in party_json], pokemon_data_type, - trainer_json["party_rom_address"] + trainer_json["party_address"] ), - trainer_json["rom_address"], - trainer_json["battle_script_rom_address"] + trainer_json["address"], + trainer_json["script_address"] )) +data = PokemonEmeraldData() _init() + +LEGENDARY_POKEMON = frozenset([data.constants[species] for species in [ + "SPECIES_ARTICUNO", + "SPECIES_ZAPDOS", + "SPECIES_MOLTRES", + "SPECIES_MEWTWO", + "SPECIES_MEW", + "SPECIES_RAIKOU", + "SPECIES_ENTEI", + "SPECIES_SUICUNE", + "SPECIES_LUGIA", + "SPECIES_HO_OH", + "SPECIES_CELEBI", + "SPECIES_REGIROCK", + "SPECIES_REGICE", + "SPECIES_REGISTEEL", + "SPECIES_LATIAS", + "SPECIES_LATIOS", + "SPECIES_KYOGRE", + "SPECIES_GROUDON", + "SPECIES_RAYQUAZA", + "SPECIES_JIRACHI", + "SPECIES_DEOXYS", +]]) +"""Species IDs of legendary pokemon""" + +UNEVOLVED_POKEMON = frozenset({ + species.species_id + for species in data.species.values() + if len(species.evolutions) > 0 +}) +"""Species IDs of pokemon which have further evolution stages in the vanilla game""" + +NATIONAL_ID_TO_SPECIES_ID = {species.national_dex_number: i for i, species in data.species.items()} diff --git a/worlds/pokemon_emerald/data/base_patch.bsdiff4 b/worlds/pokemon_emerald/data/base_patch.bsdiff4 index c1843904a9caa81d52b766eb7056bf6e1bbc6546..0da226f617f6fd7d235c98c85b47767240514ccf 100644 GIT binary patch literal 243175 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%0DUCS6yUV%C+ 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

9ejY2o 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