The pokédex tables¶
The pokedex.db.tables
module defines all of the tables in the Pokédex.
They are all defined with SQLAlchemy’s
declarative
extension.
To introspect the tables programmatically, you can use the following:
-
pokedex.db.tables.
mapped_classes
¶ A list of all the classes you see below.
Each of the classes has a translation_classes
attribute: a potentially
empty list of translation classes. See pokedex.db.multilang
for how
these work.
Many tables have these columns:
- id: An integer primary key. Sometimes it’s semantically meaningful, most often it isn’t.
- identifier: A string identifier of the class, and the preferred way to access individual items.
- name: A name (uses the multilang functionality)
Pokémon¶
PokemonSpecies¶
-
pokedex.db.tables.
PokemonSpecies
¶ A Pokémon species: the standard 1–151. Or 649. Whatever.
ID matches the National Pokédex number of the species.
Table name: pokemon_species (single: pokemon_species)
Primary key: id.
Has id, identifier, and name via pokemon_species_names.
Columns:
PokemonSpecies.generation (generation_id →
Generation
.id)ID of the generation this species first appeared inPokemonSpecies.evolves_from_species_id (→
PokemonSpecies
.id):The species from which this one evolvesPokemonSpecies.evolution_chain (evolution_chain_id →
EvolutionChain
.id)ID of the species’ evolution chain (a.k.a. family)PokemonSpecies.color (color_id →
PokemonColor
.id)ID of this Pokémon’s Pokédex color, as used for a gimmick search function in the games.PokemonSpecies.shape (shape_id →
PokemonShape
.id)ID of this Pokémon’s body shape, as used for a gimmick search function in the games.PokemonSpecies.habitat (habitat_id →
PokemonHabitat
.id)ID of this Pokémon’s habitat, as used for a gimmick search function in the games.PokemonSpecies.gender_rate (int):
The chance of this Pokémon being female, in eighths; or -1 for genderlessPokemonSpecies.capture_rate (int):
The base capture rate; up to 255PokemonSpecies.base_happiness (int):
The tameness when caught by a normal ballPokemonSpecies.is_baby (bool):
True iff the Pokémon is a baby, i.e. a lowest-stage Pokémon that cannot breed but whose evolved form can.PokemonSpecies.hatch_counter (int):
Initial hatch counter: one must walk 255 × (hatch_counter + 1) steps before this Pokémon’s egg hatches, unless utilizing bonuses like Flame Body’sPokemonSpecies.has_gender_differences (bool):
Set iff the species exhibits enough sexual dimorphism to have separate sets of sprites in Gen IV and beyond.PokemonSpecies.growth_rate (growth_rate_id →
GrowthRate
.id)ID of the growth rate for this familyPokemonSpecies.forms_switchable (bool):
True iff a particular individual of this species can switch between its different forms.PokemonSpecies.order (int):
The order in which species should be sorted. Based on National Dex order, except families are grouped together and sorted by stage.PokemonSpecies.conquest_order (int):
The order in which species should be sorted for Pokémon Conquest-related tables. Matches gallery order.Internationalized strings:
PokemonSpecies.genus (unicode – plaintext) via pokemon_species_names
The short flavor text, such as “Seed” or “Lizard”; usually affixed with the word “Pokémon”PokemonSpecies.flavor_summary (unicode – plaintext) via pokemon_species_flavor_summaries
Text containing facts from all flavor texts, for languages without official game translationsPokemonSpecies.form_description (unicode – markdown) via pokemon_species_prose
Description of how the forms workRelationships:
PokemonSpecies.child_species (→ [
PokemonSpecies
])The species to which this one evolvesPokemonSpecies.conquest_abilities (→ [
Ability
])Association table:
conquest_pokemon_abilities
Ordered by:
conquest_pokemon_abilities.slot
PokemonSpecies.conquest_evolution (→
ConquestPokemonEvolution
)PokemonSpecies.conquest_max_links (→ [
ConquestMaxLink
])Ordered by:conquest_max_links.warrior_rank_id
PokemonSpecies.conquest_move (→
Move
)Association table:conquest_pokemon_moves
PokemonSpecies.conquest_stats (→ [
ConquestPokemonStat
])PokemonSpecies.default_form (→
PokemonForm
)A representative form of this species
Association table:
pokemon
PokemonSpecies.default_pokemon (→
Pokemon
)PokemonSpecies.dex_numbers (→ [
PokemonDexNumber
])Ordered by:pokemon_dex_numbers.pokedex_id ASC
PokemonSpecies.egg_groups (→ [
EggGroup
])Association table:
pokemon_egg_groups
Ordered by:
pokemon_egg_groups.egg_group_id ASC
PokemonSpecies.evolutions (→ [
PokemonEvolution
])PokemonSpecies.flavor_text (→ [
PokemonSpeciesFlavorText
])Ordered by:pokemon_species_flavor_text.version_id ASC
PokemonSpecies.forms (→ [
PokemonForm
])Association table:
pokemon
Ordered by:
pokemon_forms."order" ASC
,pokemon_forms.form_identifier ASC
PokemonSpecies.pal_park (→
PalPark
)PokemonSpecies.parent_species (→
PokemonSpecies
)The species from which this one evolvesPokemonSpecies.pokemon (→ [
Pokemon
])PokemonSpecies.triggered_evolutions (→ [
PokemonEvolution
])
Pokemon¶
-
pokedex.db.tables.
Pokemon
¶ A Pokémon. The core to this whole mess.
This table defines “Pokémon” the same way the games do: a form with different types, moves, or other game-changing properties counts as a different Pokémon. For example, this table contains four rows for Deoxys, but only one for Unown.
Non-default forms have IDs above 10000. IDs below 10000 match the species_id column, for convenience.
Table name: pokemon (single: pokemon)
Primary key: id.
Has id and identifier.
Columns:
Pokemon.species (species_id →
PokemonSpecies
.id)ID of the species this Pokémon belongs toPokemon.height (int):
The height of the Pokémon, in tenths of a meter (decimeters)Pokemon.weight (int):
The weight of the Pokémon, in tenths of a kilogram (hectograms)Pokemon.base_experience (int):
The base EXP gained when defeating this PokémonPokemon.order (int):
Order for sorting. Almost national order, except families are grouped together.Pokemon.is_default (bool):
Set for exactly one pokemon used as the default for each species.Relationships:
Pokemon.abilities (→ [
Ability
])Abilities the Pokémon can have in the wild
Association table:
pokemon_abilities
Ordered by:
pokemon_abilities.slot ASC
Pokemon.all_abilities (→ [
Ability
])All abilities the Pokémon can have, including the Hidden Ability
Association table:
pokemon_abilities
Ordered by:
pokemon_abilities.slot ASC
Pokemon.default_form (→
PokemonForm
)A representative form of this pokémonPokemon.encounters (→ [
Encounter
])Pokemon.forms (→ [
PokemonForm
])Ordered by:pokemon_forms."order" ASC
,pokemon_forms.form_identifier ASC
Pokemon.hidden_ability (→
Ability
)The Pokémon’s Hidden Ability
Association table:
pokemon_abilities
Pokemon.items (→ [
PokemonItem
])Info about items this pokémon holds in the wild
Ordered by:
pokemon_items.rarity DESC
Pokemon.pokemon_abilities (→ [
PokemonAbility
])All abilities the Pokémon can have, as bridge rows
Ordered by:
pokemon_abilities.slot ASC
Pokemon.pokemon_moves (→ [
PokemonMove
])Pokemon.stats (→ [
PokemonStat
])Ordered by:pokemon_stats.stat_id ASC
Pokemon.types (→ [
Type
])Association table:
pokemon_types
Ordered by:
pokemon_types.slot ASC
-
base_stat
(stat_identifier, default=0)¶ Return this Pokemon’s base stat value for the given stat identifier, or default if missing.
-
better_damage_class
¶ Returns the MoveDamageClass that this Pokémon is best suited for, based on its attack stats.
If the attack stats are about equal (within 5), returns None. The value None, not the damage class called ‘None’.
-
name
¶ Returns a name for this Pokémon, specifying the form iff it represents a specific PokemonForm.
-
stat
(stat_identifier)¶ Returns a PokemonStat record for the given stat name (or Stat row object). Uses the normal has-many machinery, so all the stats are effectively cached.
-
PokemonForm¶
-
pokedex.db.tables.
PokemonForm
¶ An individual form of a Pokémon. This includes every variant (except color differences) of every Pokémon, regardless of how the games treat them. Even Pokémon with no alternate forms have one row in this table, to represent their lone “normal” form.
Forms which are not the default for their species have IDs above 10000. IDs below 10000 correspond to ID of the species for convenience, but this should not be relied upon. To get the species ID of a form, join with the pokemon table.
Table name: pokemon_forms (single: pokemon_form)
Primary key: id.
Has id and identifier.
Columns:
PokemonForm.form_identifier (unicode – identifier):
An identifier of the form, unique among a species. May be None for the default form of the species.PokemonForm.pokemon (pokemon_id →
Pokemon
.id)The ID of the base Pokémon for this form.PokemonForm.introduced_in_version_group_id (→
VersionGroup
.id):The ID of the version group in which this form first appeared.PokemonForm.is_default (bool):
Set for exactly one form used as the default for each pokemon (not necessarily species).PokemonForm.is_battle_only (bool):
Set iff the form can only appear in battle.PokemonForm.is_mega (bool):
Records whether this form is a Mega Evolution.PokemonForm.form_order (int):
The order in which forms should be sorted within a species’ forms. Multiple forms may have equal order, in which case they should fall back on sorting by name. Used in generating pokemon_forms.order and pokemon.order.PokemonForm.order (int):
The order in which forms should be sorted within all forms. Multiple forms may have equal order, in which case they should fall back on sorting by name.Internationalized strings:
PokemonForm.form_name (unicode – plaintext) via pokemon_form_names
The full form name, e.g. ‘Sky Forme’, for pokémon with different formsPokemonForm.pokemon_name (unicode – plaintext) via pokemon_form_names
The full pokémon name, e.g. ‘Sky Shaymin’, for pokémon with different formsRelationships:
PokemonForm.pokeathlon_stats (→ [
PokemonFormPokeathlonStat
])Ordered by:pokemon_form_pokeathlon_stats.pokeathlon_stat_id
PokemonForm.pokemon_form_generations (→ [
PokemonFormGeneration
])Ordered by:pokemon_form_generations.generation_id
PokemonForm.version_group (→
VersionGroup
)Association Proxies:
PokemonForm.species:
species
ofself.pokemon
-
name
¶ Name of this form: the form_name, if set; otherwise the species name.
-
EvolutionChain¶
-
pokedex.db.tables.
EvolutionChain
¶ A family of Pokémon that are linked by evolution.
Table name: evolution_chains
Primary key: id.
Has id.
Columns:
EvolutionChain.baby_trigger_item (baby_trigger_item_id →
Item
.id)Item that a parent must hold while breeding to produce a babyRelationships:
EvolutionChain.species (→ [
PokemonSpecies
])Ordered by:pokemon_species.id ASC
PokemonEvolution¶
-
pokedex.db.tables.
PokemonEvolution
¶ A required action (“trigger”) and the conditions under which the trigger must occur to cause a Pokémon to evolve.
Any condition may be null if it does not apply for a particular Pokémon.
Table name: pokemon_evolution
Primary key: id.
Has id.
Columns:
PokemonEvolution.evolved_species (evolved_species_id →
PokemonSpecies
.id)The ID of the post-evolution species.PokemonEvolution.evolution_trigger_id (→
EvolutionTrigger
.id):The ID of the evolution trigger.PokemonEvolution.trigger_item (trigger_item_id →
Item
.id)The ID of the item that must be used on the Pokémon.PokemonEvolution.minimum_level (int):
The minimum level for the Pokémon.PokemonEvolution.gender (gender_id →
Gender
.id)The ID of the Pokémon’s required gender, or None if gender doesn’t matterPokemonEvolution.location (location_id →
Location
.id)The ID of the location the evolution must be triggered at.PokemonEvolution.held_item (held_item_id →
Item
.id)The ID of the item the Pokémon must hold.PokemonEvolution.time_of_day (enum: [day, night]):
The required time of day.PokemonEvolution.known_move (known_move_id →
Move
.id)The ID of the move the Pokémon must know.PokemonEvolution.known_move_type (known_move_type_id →
Type
.id)The ID of the type the Pokémon must know a move of.PokemonEvolution.minimum_happiness (int):
The minimum happiness value the Pokémon must have.PokemonEvolution.minimum_beauty (int):
The minimum Beauty value the Pokémon must have.PokemonEvolution.minimum_affection (int):
The minimum number of “affection” hearts the Pokémon must have in Pokémon-Amie.PokemonEvolution.relative_physical_stats (int):
The required relation between the Pokémon’s Attack and Defense stats, as sgn(atk-def).PokemonEvolution.party_species (party_species_id →
PokemonSpecies
.id)The ID of the species that must be present in the party.PokemonEvolution.party_type (party_type_id →
Type
.id)The ID of a type that at least one party member must have.PokemonEvolution.trade_species (trade_species_id →
PokemonSpecies
.id)The ID of the species for which this one must be traded.PokemonEvolution.needs_overworld_rain (bool):
True iff it needs to be raining outside of battle.PokemonEvolution.turn_upside_down (bool):
True iff the 3DS needs to be turned upside-down as this Pokémon levels up.Relationships:
PokemonEvolution.trigger (→
EvolutionTrigger
)
Moves¶
Move¶
-
pokedex.db.tables.
Move
¶ A Move: technique or attack a Pokémon can learn to use.
IDs below 10000 match the internal IDs used in the games. IDs above 10000 are reserved for Shadow moves from Colosseum and XD.
Table name: moves (single: move)
Primary key: id.
Has id, identifier, and name via move_names.
Columns:
Move.generation (generation_id →
Generation
.id)ID of the generation this move first appeared inMove.type (type_id →
Type
.id)ID of the move’s elemental typeMove.power (int):
Base power of the move, null if it does not have a set base power.Move.pp (int):
Base PP (Power Points) of the move, null if not applicable (e.g. Struggle and Shadow moves).Move.accuracy (int):
Accuracy of the move; NULL means it never missesMove.priority (int):
The move’s priority bracketMove.target (target_id →
MoveTarget
.id)ID of the target (range) of the moveMove.damage_class (damage_class_id →
MoveDamageClass
.id)ID of the damage class (physical/special) of the moveMove.effect (effect_id →
MoveEffect
.id)ID of the move’s effectMove.effect_chance (int):
The chance for a secondary effect. What this is a chance of is specified by the move’s effect.Move.contest_type (contest_type_id →
ContestType
.id)ID of the move’s Contest type (e.g. cool or smart)Move.contest_effect (contest_effect_id →
ContestEffect
.id)ID of the move’s Contest effectMove.super_contest_effect (super_contest_effect_id →
SuperContestEffect
.id)ID of the move’s Super Contest effectInternationalized strings:
Move.flavor_summary (unicode – plaintext) via move_flavor_summaries
Text containing facts from all flavor texts, for languages without official game translationsRelationships:
Move.changelog (→ [
MoveChangelog
])Ordered by:move_changelog.changed_in_version_group_id DESC
Move.conquest_data (→
ConquestMoveData
)Move.conquest_pokemon (→ [
PokemonSpecies
])Association table:
conquest_pokemon_moves
Ordered by:
pokemon_species.conquest_order
Move.contest_combo_first (→ [
ContestCombo
])Move.contest_combo_second (→ [
ContestCombo
])Move.flavor_text (→ [
MoveFlavorText
])Ordered by:move_flavor_text.version_group_id
Move.machines (→ [
Machine
])Move.meta (→
MoveMeta
)Move.meta_stat_changes (→ [
MoveMetaStatChange
])Move.move_effect (→
MoveEffect
)Move.move_flags (→ [
MoveFlagMap
])Move.pokemon_moves (→ [
PokemonMove
])Move.super_contest_combo_first (→ [
SuperContestCombo
])Move.super_contest_combo_second (→ [
SuperContestCombo
])Move.triggered_evolutions (→ [
PokemonEvolution
])Association Proxies:
Move.contest_combo_next:
second
ofself.contest_combo_first
Move.contest_combo_prev:
first
ofself.contest_combo_second
Move.flags:
flag
ofself.move_flags
Move.super_contest_combo_next:
second
ofself.super_contest_combo_first
Move.super_contest_combo_prev:
first
ofself.super_contest_combo_second
Undocumented:
Move.effect_map
Move.short_effect
Move.short_effect_map
MoveEffect¶
-
pokedex.db.tables.
MoveEffect
¶ An effect of a move.
Table name: move_effects (single: move_effect)
Primary key: id.
Has id.
Internationalized strings:
MoveEffect.short_effect (unicode – markdown) via move_effect_prose
A short summary of the effectMoveEffect.effect (unicode – markdown) via move_effect_prose
A detailed description of the effectRelationships:
MoveEffect.changelog (→ [
MoveEffectChangelog
])Ordered by:move_effect_changelog.changed_in_version_group_id DESC
MoveEffect.move_changelog (→ [
MoveChangelog
])MoveEffect.moves (→ [
Move
])
MoveMeta¶
-
pokedex.db.tables.
MoveMeta
¶ Metadata for move effects, sorta-kinda ripped straight from the game.
Table name: move_meta
Primary key: move_id.
Columns:
MoveMeta.move (move_id →
Move
.id)A numeric IDMoveMeta.meta_category_id (→
MoveMetaCategory
.id):ID of the move categoryMoveMeta.meta_ailment_id (→
MoveMetaAilment
.id):ID of the caused ailmentMoveMeta.min_hits (int):
Minimum number of hits per useMoveMeta.max_hits (int):
Maximum number of hits per useMoveMeta.min_turns (int):
Minimum number of turns the user is forced to use the moveMoveMeta.max_turns (int):
Maximum number of turns the user is forced to use the moveMoveMeta.drain (int):
HP drain (if positive) or Recoil damage (if negative), in percent of damage doneMoveMeta.healing (int):
Healing, in percent of user’s max HPMoveMeta.crit_rate (int):
Critical hit rate bonusMoveMeta.ailment_chance (int):
Chance to cause an ailment, in percentMoveMeta.flinch_chance (int):
Chance to cause flinching, in percentMoveMeta.stat_chance (int):
Chance to cause a stat change, in percentRelationships:
MoveMeta.ailment (→
MoveMetaAilment
)MoveMeta.category (→
MoveMetaCategory
)-
recoil
= <sqlalchemy.sql.elements.UnaryExpression object at 0x8e55250>¶
-
Items¶
Item¶
-
pokedex.db.tables.
Item
¶ An Item from the games, like “Poké Ball” or “Bicycle”.
IDs do not mean anything; see ItemGameIndex for the IDs used in the games.
Table name: items (single: item)
Primary key: id.
Has id, identifier, and name via item_names.
Columns:
Item.category (category_id →
ItemCategory
.id)ID of a category this item belongs toItem.cost (int):
Cost of the item when bought. Items sell for half this price.Item.fling_power (int):
Power of the move Fling when used with this item.Item.fling_effect (fling_effect_id →
ItemFlingEffect
.id)ID of the fling-effect of the move Fling when used with this item. Note that these are different from move effects.Internationalized strings:
Item.short_effect (unicode – markdown) via item_prose
A short summary of the effectItem.effect (unicode – markdown) via item_prose
Detailed description of the item’s effect.Item.flavor_summary (unicode – plaintext) via item_flavor_summaries
Text containing facts from all flavor texts, for languages without official game translationsRelationships:
Item.berry (→
Berry
)Item.conquest_evolutions (→ [
ConquestPokemonEvolution
])Item.evolution_chains (→ [
EvolutionChain
])Item.flags (→ [
ItemFlag
])Association table:item_flag_map
Item.flavor_text (→ [
ItemFlavorText
])Ordered by:item_flavor_text.version_group_id ASC
Item.game_indices (→ [
ItemGameIndex
])Item.machines (→ [
Machine
])Ordered by:machines.version_group_id ASC
Item.pokemon (→ [
PokemonItem
])Item.required_for_evolutions (→ [
PokemonEvolution
])Item.triggered_evolutions (→ [
PokemonEvolution
])Association Proxies:
Item.pocket:
pocket
ofself.category
-
appears_underground
¶ True if the item appears underground, as specified by the appropriate flag.
-
Berry¶
-
pokedex.db.tables.
Berry
¶ A Berry, consumable item that grows on trees.
For data common to all items, such as the name, see the corresponding item entry.
ID matches the in-game berry number.
Table name: berries
Primary key: id.
Has id.
Columns:
Berry.item (item_id →
Item
.id)The ID of the item that represents this BerryBerry.firmness (firmness_id →
BerryFirmness
.id)The ID of this Berry’s firmness categoryBerry.natural_gift_power (int):
Natural Gift’s power when used with this BerryBerry.natural_gift_type (natural_gift_type_id →
Type
.id)The ID of the Type that Natural Gift has when used with this BerryBerry.size (int):
The size of this Berry, in millimetersBerry.max_harvest (int):
The maximum number of these berries that can grow on one tree in Generation IVBerry.growth_time (int):
Time it takes the tree to grow one stage, in hours. Berry trees go through four of these growth stages before they can be picked.Berry.soil_dryness (int):
The speed at which this Berry dries out the soil as it grows. A higher rate means the soil dries more quickly.Berry.smoothness (int):
The smoothness of this Berry, used in making Pokéblocks or PoffinsRelationships:
Berry.berry_firmness (→
BerryFirmness
)Berry.flavors (→ [
BerryFlavor
])Ordered by:berry_flavors.contest_type_id
Types¶
Type¶
-
pokedex.db.tables.
Type
¶ Any of the elemental types Pokémon and moves can have.
Table name: types (single: type)
Primary key: id.
Has id, identifier, and name via type_names.
Columns:
Type.generation (generation_id →
Generation
.id)The ID of the generation this type first appeared in.Type.damage_class (damage_class_id →
MoveDamageClass
.id)The ID of the damage class this type’s moves had before Generation IV, null if not applicable (e.g. ???).Relationships:
Type.conquest_kingdom (→
ConquestKingdom
)Type.conquest_warriors (→ [
ConquestWarrior
])Association table:conquest_warrior_specialties
Type.damage_efficacies (→ [
TypeEfficacy
])Efficacies with this type as the attacking type.Type.game_indices (→ [
TypeGameIndex
])Type.move_changelog (→ [
MoveChangelog
])Type.moves (→ [
Move
])Type.pokemon (→ [
Pokemon
])Association table:
pokemon_types
Ordered by:
pokemon.order
Type.target_efficacies (→ [
TypeEfficacy
])Efficacies with this type as the defending type.
Abilities¶
Ability¶
-
pokedex.db.tables.
Ability
¶ An ability a Pokémon can have, such as Static or Pressure.
IDs below 10000 match the internal ID in the games. IDs above 10000 are reserved for Conquest-only abilities.
Table name: abilities (single: ability)
Primary key: id.
Has id, identifier, and name via ability_names.
Columns:
Ability.generation (generation_id →
Generation
.id)The ID of the generation this ability was introduced inAbility.is_main_series (bool):
True iff the ability exists in the main series.Internationalized strings:
Ability.short_effect (unicode – markdown) via ability_prose
A short summary of this ability’s effectAbility.effect (unicode – markdown) via ability_prose
A detailed description of this ability’s effectRelationships:
Ability.all_pokemon (→ [
Pokemon
])Association table:
pokemon_abilities
Ordered by:
pokemon."order" ASC
Ability.changelog (→ [
AbilityChangelog
])Ordered by:ability_changelog.changed_in_version_group_id DESC
Ability.conquest_pokemon (→ [
PokemonSpecies
])Association table:
conquest_pokemon_abilities
Ordered by:
pokemon_species.conquest_order
Ability.flavor_text (→ [
AbilityFlavorText
])Ordered by:ability_flavor_text.version_group_id
Ability.hidden_pokemon (→ [
Pokemon
])Association table:
pokemon_abilities
Ordered by:
pokemon.order
Ability.pokemon (→ [
Pokemon
])Association table:
pokemon_abilities
Ordered by:
pokemon."order" ASC
Language¶
Language¶
-
pokedex.db.tables.
Language
¶ A language the Pokémon games have been translated into.
Table name: languages (single: language)
Primary key: id.
Has id, identifier, and name via language_names.
Columns:
Language.iso639 (unicode – identifier):
The two-letter code of the country where this language is spoken. Note that it is not unique.Language.iso3166 (unicode – identifier):
The two-letter code of the language. Note that it is not unique.Language.official (bool):
True iff games are produced in the language.Language.order (int):
Order for sorting in foreign name lists.
Version stuff¶
Generation¶
-
pokedex.db.tables.
Generation
¶ A Generation of the Pokémon franchise.
Table name: generations (single: generation)
Primary key: id.
Has id, identifier, and name via generation_names.
Columns:
Generation.main_region (main_region_id →
Region
.id)ID of the region this generation’s main games take place inRelationships:
Generation.abilities (→ [
Ability
])Generation.moves (→ [
Move
])Generation.pokemon_form_generations (→ [
PokemonFormGeneration
])Ordered by:pokemon_form_generations.game_index
Generation.species (→ [
PokemonSpecies
])Generation.types (→ [
Type
])Generation.version_groups (→ [
VersionGroup
])Ordered by:version_groups.order
Generation.versions (→ [
Version
])Association table:version_groups
VersionGroup¶
-
pokedex.db.tables.
VersionGroup
¶ A group of versions, containing either two paired versions (such as Red and Blue) or a single game (such as Yellow).
Table name: version_groups
Primary key: id.
Has id and identifier.
Columns:
VersionGroup.generation (generation_id →
Generation
.id)The ID of the generation the games in this group belong to.VersionGroup.order (int):
Order for sorting. Almost by date of release, except similar versions are grouped together.Relationships:
VersionGroup.ability_changelog (→ [
AbilityChangelog
])VersionGroup.machines (→ [
Machine
])Ordered by:machines.machine_number
VersionGroup.move_changelog (→ [
MoveChangelog
])VersionGroup.move_effect_changelog (→ [
MoveEffectChangelog
])VersionGroup.pokedexes (→ [
Pokedex
])Association table:pokedex_version_groups
VersionGroup.pokemon_move_methods (→ [
PokemonMoveMethod
])Association table:version_group_pokemon_move_methods
VersionGroup.pokemon_moves (→ [
PokemonMove
])VersionGroup.version_group_move_methods (→ [
VersionGroupPokemonMoveMethod
])VersionGroup.version_group_regions (→ [
VersionGroupRegion
])VersionGroup.versions (→ [
Version
])Ordered by:versions.id
Association Proxies:
VersionGroup.regions:
region
ofself.version_group_regions
Version¶
-
pokedex.db.tables.
Version
¶ An individual main-series Pokémon game.
Table name: versions (single: version)
Primary key: id.
Has id, identifier, and name via version_names.
Columns:
Version.version_group (version_group_id →
VersionGroup
.id)The ID of the version group this game belongs to.Relationships:
Version.encounters (→ [
Encounter
])Association Proxies:
Version.generation:
generation
ofself.version_group
Pokedex¶
-
pokedex.db.tables.
Pokedex
¶ A collection of Pokémon species ordered in a particular way.
Table name: pokedexes (single: pokedex)
Primary key: id.
Has id, identifier, and name via pokedex_prose.
Columns:
Pokedex.region (region_id →
Region
.id)ID of the region this Pokédex is used in, or None if it’s globalPokedex.is_main_series (bool):
True if this Pokédex appears in the main series.Internationalized strings:
Pokedex.description (unicode – plaintext) via pokedex_prose
A longer description of the PokédexRelationships:
Pokedex.version_groups (→ [
VersionGroup
])Association table:
pokedex_version_groups
Ordered by:
version_groups."order" ASC
Region¶
-
pokedex.db.tables.
Region
¶ Major areas of the world: Kanto, Johto, etc.
Table name: regions (single: region)
Primary key: id.
Has id, identifier, and name via region_names.
Relationships:
Region.generation (→
Generation
)Region.locations (→ [
Location
])Region.pokedexes (→ [
Pokedex
])Region.version_group_regions (→ [
VersionGroupRegion
])Ordered by:version_group_regions.version_group_id ASC
Region.version_groups (→ [
VersionGroup
])Association table:
version_group_regions
Ordered by:
version_groups.order
Encounters¶
Location¶
-
pokedex.db.tables.
Location
¶ A place in the Pokémon world.
Table name: locations (single: location)
Primary key: id.
Has id, identifier, and name via location_names.
Columns:
Location.region (region_id →
Region
.id)ID of the region this location is inRelationships:
Location.areas (→ [
LocationArea
])Location.game_indices (→ [
LocationGameIndex
])Location.triggered_evolutions (→ [
PokemonEvolution
])
LocationArea¶
-
pokedex.db.tables.
LocationArea
¶ A sub-area of a location.
Table name: location_areas (single: location_area)
Primary key: id.
Has id, identifier, and name via location_area_prose.
Columns:
LocationArea.location (location_id →
Location
.id)ID of the location this area is part ofLocationArea.game_index (int):
ID the games use for this areaRelationships:
LocationArea.encounter_rates (→ [
LocationAreaEncounterRate
])LocationArea.encounters (→ [
Encounter
])
LocationAreaEncounterRate¶
-
pokedex.db.tables.
LocationAreaEncounterRate
¶ The chance of encountering a wild Pokémon in an area.
In other words, how likely a step in tall grass is to trigger a wild battle. The exact meaning of the rate varies across versions but generally higher is more likely.
Table name: location_area_encounter_rates
Primary key: location_area_id, encounter_method_id, version_id.
Columns:
LocationAreaEncounterRate.location_area (location_area_id →
LocationArea
.id)ID of the areaLocationAreaEncounterRate.encounter_method_id (→
EncounterMethod
.id):ID of the methodLocationAreaEncounterRate.version_id (→
Version
.id):ID of the versionLocationAreaEncounterRate.rate (int):
The base encounter rateRelationships:
LocationAreaEncounterRate.method (→
EncounterMethod
)
Encounter¶
-
pokedex.db.tables.
Encounter
¶ Encounters with wild Pokémon.
Bear with me, here.
Within a given area in a given game, encounters are differentiated by the “slot” they are in and the state of the game world.
What the player is doing to get an encounter, such as surfing or walking through tall grass, is called a method. Each method has its own set of encounter slots.
Within a method, slots are defined primarily by rarity. Each slot can also be affected by world conditions; for example, the 20% slot for walking in tall grass is affected by whether a swarm is in effect in that area. “Is there a swarm?” is a condition; “there is a swarm” and “there is not a swarm” are the possible values of this condition.
A slot (20% walking in grass) and any appropriate world conditions (no swarm) are thus enough to define a specific encounter.
Table name: encounters
Primary key: id.
Has id.
Columns:
Encounter.version (version_id →
Version
.id)The ID of the version this applies toEncounter.location_area (location_area_id →
LocationArea
.id)The ID of the location of this encounterEncounter.encounter_slot_id (→
EncounterSlot
.id):The ID of the encounter slot, which determines method and rarityEncounter.pokemon (pokemon_id →
Pokemon
.id)The ID of the encountered PokémonEncounter.min_level (int):
The minimum level of the encountered PokémonEncounter.max_level (int):
The maximum level of the encountered PokémonRelationships:
Encounter.condition_values (→ [
EncounterConditionValue
])Association table:encounter_condition_value_map
Encounter.slot (→
EncounterSlot
)
EncounterCondition¶
-
pokedex.db.tables.
EncounterCondition
¶ A condition in the game world that affects Pokémon encounters, such as time of day.
Table name: encounter_conditions (single: encounter_condition)
Primary key: id.
Has id, identifier, and name via encounter_condition_prose.
Relationships:
EncounterCondition.values (→ [
EncounterConditionValue
])
EncounterConditionValue¶
-
pokedex.db.tables.
EncounterConditionValue
¶ A possible state for a condition.
For example, the state of ‘swarm’ could be ‘swarm’ or ‘no swarm’.
Table name: encounter_condition_values (single: encounter_condition_value)
Primary key: id.
Has id, identifier, and name via encounter_condition_value_prose.
Columns:
EncounterConditionValue.encounter_condition_id (→
EncounterCondition
.id):The ID of the encounter condition this is a value ofEncounterConditionValue.is_default (bool):
Set if this value is the default state for the conditionRelationships:
EncounterConditionValue.condition (→
EncounterCondition
)
EncounterMethod¶
-
pokedex.db.tables.
EncounterMethod
¶ A way the player can enter a wild encounter.
For example, surfing, fishing, or walking through tall grass.
Table name: encounter_methods (single: encounter_method)
Primary key: id.
Has id, identifier, and name via encounter_method_prose.
Columns:
EncounterMethod.order (int):
A good column for sorting onRelationships:
EncounterMethod.slots (→ [
EncounterSlot
])
EncounterSlot¶
-
pokedex.db.tables.
EncounterSlot
¶ An abstract “slot” within a method, associated with both some set of conditions and a rarity.
Table name: encounter_slots
Primary key: id.
Has id.
Columns:
EncounterSlot.version_group (version_group_id →
VersionGroup
.id)The ID of the version group this slot is inEncounterSlot.encounter_method_id (→
EncounterMethod
.id):The ID of the methodEncounterSlot.slot (int):
This slot’s order for the location and methodEncounterSlot.rarity (int):
The chance of the encounter as a percentageRelationships:
EncounterSlot.encounters (→ [
Encounter
])EncounterSlot.method (→
EncounterMethod
)
Contests¶
ContestCombo¶
-
pokedex.db.tables.
ContestCombo
¶ Combo of two moves in a Contest.
Table name: contest_combos
Primary key: first_move_id, second_move_id.
Columns:
ContestCombo.first_move_id (→
Move
.id):The ID of the first move in the comboContestCombo.second_move_id (→
Move
.id):The ID of the second and final move in the comboRelationships:
ContestCombo.first (→
Move
)ContestCombo.second (→
Move
)
ContestEffect¶
-
pokedex.db.tables.
ContestEffect
¶ Effect of a move when used in a Contest.
Table name: contest_effects (single: contest_effect)
Primary key: id.
Has id.
Columns:
ContestEffect.appeal (int):
The base number of hearts the user of this move getsContestEffect.jam (int):
The base number of hearts the user’s opponent losesInternationalized strings:
ContestEffect.flavor_text (unicode – gametext) via contest_effect_prose
The in-game description of this effectContestEffect.effect (unicode – plaintext) via contest_effect_prose
A detailed description of the effectRelationships:
ContestEffect.moves (→ [
Move
])
SuperContestCombo¶
-
pokedex.db.tables.
SuperContestCombo
¶ Combo of two moves in a Super Contest.
Table name: super_contest_combos
Primary key: first_move_id, second_move_id.
Columns:
SuperContestCombo.first_move_id (→
Move
.id):The ID of the first move in the combo.SuperContestCombo.second_move_id (→
Move
.id):The ID of the second and last move.Relationships:
SuperContestCombo.first (→
Move
)SuperContestCombo.second (→
Move
)
SuperContestEffect¶
-
pokedex.db.tables.
SuperContestEffect
¶ An effect a move can have when used in the Super Contest.
Table name: super_contest_effects (single: super_contest_effect)
Primary key: id.
Has id.
Columns:
SuperContestEffect.appeal (int):
The number of hearts the user gains.Internationalized strings:
SuperContestEffect.flavor_text (unicode – plaintext) via super_contest_effect_prose
A description of the effect.Relationships:
SuperContestEffect.moves (→ [
Move
])
Enum tables¶
BerryFirmness¶
ContestType¶
-
pokedex.db.tables.
ContestType
¶ A Contest type, such as “cool” or “smart”, and their associated Berry flavors and Pokéblock colors.
Table name: contest_types (single: contest_type)
Primary key: id.
Has id, identifier, and name via contest_type_names.
Internationalized strings:
ContestType.flavor (unicode – plaintext) via contest_type_names
The name of the corresponding Berry flavorContestType.color (unicode – plaintext) via contest_type_names
The name of the corresponding Pokéblock colorRelationships:
ContestType.hating_natures (→ [
Nature
])ContestType.liking_natures (→ [
Nature
])ContestType.moves (→ [
Move
])
EggGroup¶
-
pokedex.db.tables.
EggGroup
¶ An Egg group. Usually, two Pokémon can breed if they share an Egg Group.
Exceptions:
Pokémon in the No Eggs group cannot breed.
Pokemon in the Ditto group can breed with any pokemon except those in the Ditto or No Eggs groups.
ID matches to the internal ID used in the games.
Table name: egg_groups (single: egg_group)
Primary key: id.
Has id, identifier, and name via egg_group_prose.
Relationships:
EggGroup.species (→ [
PokemonSpecies
])Association table:
pokemon_egg_groups
Ordered by:
pokemon_species."order" ASC
EvolutionTrigger¶
-
pokedex.db.tables.
EvolutionTrigger
¶ An evolution type, such as “level” or “trade”.
Table name: evolution_triggers (single: evolution_trigger)
Primary key: id.
Has id, identifier, and name via evolution_trigger_prose.
Relationships:
EvolutionTrigger.evolutions (→ [
PokemonEvolution
])
Gender¶
-
pokedex.db.tables.
Gender
¶ A gender.
Table name: genders (single: gender)
Primary key: id.
Has id and identifier.
Relationships:
Gender.conquest_evolutions (→ [
ConquestPokemonEvolution
])Gender.required_for_evolutions (→ [
PokemonEvolution
])
GrowthRate¶
-
pokedex.db.tables.
GrowthRate
¶ Growth rate of a Pokémon, i.e. the EXP → level function.
Table name: growth_rates (single: growth_rate)
Primary key: id.
Has id, identifier, and name via growth_rate_prose.
Columns:
GrowthRate.formula (unicode – latex):
The formulaRelationships:
GrowthRate.evolution_chains (→ [
PokemonSpecies
])GrowthRate.experience_table (→ [
Experience
])GrowthRate.max_experience_obj (→
Experience
)Association Proxies:
GrowthRate.max_experience:
experience
ofself.max_experience_obj
ItemCategory¶
-
pokedex.db.tables.
ItemCategory
¶ An item category. Not official.
Table name: item_categories (single: item_category)
Primary key: id.
Has id, identifier, and name via item_category_prose.
Columns:
ItemCategory.pocket (pocket_id →
ItemPocket
.id)ID of the pocket these items go toRelationships:
ItemCategory.items (→ [
Item
])Ordered by:items.identifier ASC
ItemFlingEffect¶
-
pokedex.db.tables.
ItemFlingEffect
¶ An effect of the move Fling when used with a specific item.
Table name: item_fling_effects (single: item_fling_effect)
Primary key: id.
Has id.
Internationalized strings:
ItemFlingEffect.effect (unicode – plaintext) via item_fling_effect_prose
Description of the effectRelationships:
ItemFlingEffect.items (→ [
Item
])
ItemPocket¶
-
pokedex.db.tables.
ItemPocket
¶ A pocket that categorizes items. Semi-offical.
Table name: item_pockets (single: item_pocket)
Primary key: id.
Has id, identifier, and name via item_pocket_names.
Relationships:
ItemPocket.categories (→ [
ItemCategory
])Ordered by:item_categories.identifier ASC
MoveBattleStyle¶
-
pokedex.db.tables.
MoveBattleStyle
¶ Battle Palace style.
See NatureBattleStylePreference.
Table name: move_battle_styles (single: move_battle_style)
Primary key: id.
Has id, identifier, and name via move_battle_style_prose.
Relationships:
MoveBattleStyle.nature_preferences (→ [
NatureBattleStylePreference
])
MoveDamageClass¶
-
pokedex.db.tables.
MoveDamageClass
¶ Any of the damage classes moves can have, i.e. physical, special, or non-damaging.
Table name: move_damage_classes (single: move_damage_class)
Primary key: id.
Has id, identifier, and name via move_damage_class_prose.
Internationalized strings:
MoveDamageClass.description (unicode – plaintext) via move_damage_class_prose
A description of the classRelationships:
MoveDamageClass.moves (→ [
Move
])MoveDamageClass.stats (→ [
Stat
])MoveDamageClass.types (→ [
Type
])
MoveMetaAilment¶
-
pokedex.db.tables.
MoveMetaAilment
¶ Common status ailments moves can inflict on a single Pokémon, including major ailments like paralysis and minor ailments like trapping.
Table name: move_meta_ailments (single: move_meta_ailment)
Primary key: id.
Has id, identifier, and name via move_meta_ailment_names.
Relationships:
MoveMetaAilment.move_meta (→ [
MoveMeta
])
MoveMetaCategory¶
-
pokedex.db.tables.
MoveMetaCategory
¶ Very general categories that loosely group move effects.
Table name: move_meta_categories (single: move_meta_category)
Primary key: id.
Has id and identifier.
Internationalized strings:
MoveMetaCategory.description (unicode – plaintext) via move_meta_category_prose
A description of the categoryRelationships:
MoveMetaCategory.move_meta (→ [
MoveMeta
])
MoveTarget¶
-
pokedex.db.tables.
MoveTarget
¶ Targeting or “range” of a move, e.g. “Affects all opponents” or “Affects user”.
Table name: move_targets (single: move_target)
Primary key: id.
Has id, identifier, and name via move_target_prose.
Internationalized strings:
MoveTarget.description (unicode – plaintext) via move_target_prose
A descriptionRelationships:
MoveTarget.moves (→ [
Move
])
Nature¶
-
pokedex.db.tables.
Nature
¶ A nature a Pokémon can have, such as Calm or Brave.
Table name: natures (single: nature)
Primary key: id.
Has id, identifier, and name via nature_names.
Columns:
Nature.decreased_stat (decreased_stat_id →
Stat
.id)ID of the stat that this nature decreases by 10% (if decreased_stat_id is the same, the effects cancel out)Nature.increased_stat (increased_stat_id →
Stat
.id)ID of the stat that this nature increases by 10% (if decreased_stat_id is the same, the effects cancel out)Nature.hates_flavor (hates_flavor_id →
ContestType
.id)ID of the Berry flavor the Pokémon hates (if likes_flavor_id is the same, the effects cancel out)Nature.likes_flavor (likes_flavor_id →
ContestType
.id)ID of the Berry flavor the Pokémon likes (if hates_flavor_id is the same, the effects cancel out)Nature.game_index (int):
This nature’s internal ID in the gamesRelationships:
Nature.battle_style_preferences (→ [
NatureBattleStylePreference
])Ordered by:nature_battle_style_preferences.move_battle_style_id ASC
Nature.pokeathlon_effects (→ [
NaturePokeathlonStat
])Ordered by:nature_pokeathlon_stats.pokeathlon_stat_id ASC
-
is_neutral
¶ Returns True iff this nature doesn’t alter a Pokémon’s stats, bestow taste preferences, etc.
-
PalParkArea¶
-
pokedex.db.tables.
PalParkArea
¶ A distinct area of Pal Park in which Pokémon appear.
Table name: pal_park_areas (single: pal_park_area)
Primary key: id.
Has id, identifier, and name via pal_park_area_names.
PokemonColor¶
-
pokedex.db.tables.
PokemonColor
¶ The “Pokédex color” of a Pokémon species. Usually based on the Pokémon’s color.
Table name: pokemon_colors (single: pokemon_color)
Primary key: id.
Has id, identifier, and name via pokemon_color_names.
Relationships:
PokemonColor.species (→ [
PokemonSpecies
])
PokemonMoveMethod¶
-
pokedex.db.tables.
PokemonMoveMethod
¶ A method a move can be learned by, such as “Level up” or “Tutor”.
Table name: pokemon_move_methods (single: pokemon_move_method)
Primary key: id.
Has id, identifier, and name via pokemon_move_method_prose.
Internationalized strings:
PokemonMoveMethod.description (unicode – plaintext) via pokemon_move_method_prose
A detailed description of how the method worksRelationships:
PokemonMoveMethod.version_group_move_methods (→ [
VersionGroupPokemonMoveMethod
])PokemonMoveMethod.version_groups (→ [
VersionGroup
])Association table:version_group_pokemon_move_methods
PokemonShape¶
-
pokedex.db.tables.
PokemonShape
¶ The shape of a Pokémon’s body. Used for flavor in generation IV and V Pokédexes.
Table name: pokemon_shapes (single: pokemon_shape)
Primary key: id.
Has id, identifier, and name via pokemon_shape_prose.
Internationalized strings:
PokemonShape.awesome_name (unicode – plaintext) via pokemon_shape_prose
A splendiferous name of the body shapeRelationships:
PokemonShape.species (→ [
PokemonSpecies
])
Stat¶
-
pokedex.db.tables.
Stat
¶ A Stat, such as Attack or Speed.
Table name: stats (single: stat)
Primary key: id.
Has id, identifier, and name via stat_names.
Columns:
Stat.damage_class (damage_class_id →
MoveDamageClass
.id)For offensive and defensive stats, the damage this stat relates to; otherwise None (the NULL value)Stat.is_battle_only (bool):
Whether this stat only exists within a battleStat.game_index (int):
The stat order the games use internally for the persistent stats. NULL for battle-only stats.Relationships:
Stat.characteristics (→ [
Characteristic
])Stat.decreasing_natures (→ [
Nature
])Stat.increasing_natures (→ [
Nature
])Stat.move_meta_stat_changes (→ [
MoveMetaStatChange
])
Changelogs¶
AbilityChangelog¶
-
pokedex.db.tables.
AbilityChangelog
¶ History of changes to abilities across main game versions.
Table name: ability_changelog (single: ability_changelog)
Primary key: id.
Has id.
Columns:
AbilityChangelog.ability (ability_id →
Ability
.id)The ID of the ability that changedAbilityChangelog.changed_in_version_group_id (→
VersionGroup
.id):The ID of the version group in which the ability changedInternationalized strings:
AbilityChangelog.effect (unicode – markdown) via ability_changelog_prose
A description of the old behaviorRelationships:
AbilityChangelog.changed_in (→
VersionGroup
)
MoveEffectChangelog¶
-
pokedex.db.tables.
MoveEffectChangelog
¶ History of changes to move effects across main game versions.
Table name: move_effect_changelog (single: move_effect_changelog)
Primary key: id.
Has id.
Columns:
MoveEffectChangelog.effect (effect_id →
MoveEffect
.id)The ID of the effect that changedMoveEffectChangelog.changed_in_version_group_id (→
VersionGroup
.id):The ID of the version group in which the effect changedInternationalized strings:
MoveEffectChangelog.effect (unicode – markdown) via move_effect_changelog_prose
A description of the old behaviorRelationships:
MoveEffectChangelog.changed_in (→
VersionGroup
)MoveEffectChangelog.move_effect (→
MoveEffect
)
MoveChangelog¶
-
pokedex.db.tables.
MoveChangelog
¶ History of changes to moves across main game versions.
Table name: move_changelog (single: move_changelog)
Primary key: move_id, changed_in_version_group_id.
Columns:
MoveChangelog.move (move_id →
Move
.id)ID of the move that changedMoveChangelog.changed_in_version_group_id (→
VersionGroup
.id):ID of the version group in which the move changedMoveChangelog.type (type_id →
Type
.id)Prior type of the move, or NULL if unchangedMoveChangelog.power (int):
Prior base power of the move, or NULL if unchangedMoveChangelog.pp (int):
Prior base PP of the move, or NULL if unchangedMoveChangelog.accuracy (int):
Prior accuracy of the move, or NULL if unchangedMoveChangelog.effect (effect_id →
MoveEffect
.id)Prior ID of the effect, or NULL if unchangedMoveChangelog.effect_chance (int):
Prior effect chance, or NULL if unchangedRelationships:
MoveChangelog.changed_in (→
VersionGroup
)MoveChangelog.move_effect (→
MoveEffect
)Undocumented:
MoveChangelog.effect_map
MoveChangelog.short_effect
MoveChangelog.short_effect_map
Flavor text¶
ItemFlavorText¶
-
pokedex.db.tables.
ItemFlavorText
¶ An in-game description of an item.
Table name: item_flavor_text (single: item_flavor_text)
Primary key: item_id, version_group_id, language_id.
Columns:
ItemFlavorText.item (item_id →
Item
.id)The ID of the itemItemFlavorText.version_group (version_group_id →
VersionGroup
.id)ID of the version group that sports this textItemFlavorText.language (language_id →
Language
.id)The languageItemFlavorText.flavor_text (unicode – gametext):
The flavor text itself
AbilityFlavorText¶
-
pokedex.db.tables.
AbilityFlavorText
¶ In-game flavor text of an ability.
Table name: ability_flavor_text
Primary key: ability_id, version_group_id, language_id.
Columns:
AbilityFlavorText.ability (ability_id →
Ability
.id)The ID of the abilityAbilityFlavorText.version_group (version_group_id →
VersionGroup
.id)The ID of the version group this flavor text is taken fromAbilityFlavorText.language (language_id →
Language
.id)The languageAbilityFlavorText.flavor_text (unicode – gametext):
The actual flavor text
MoveFlavorText¶
-
pokedex.db.tables.
MoveFlavorText
¶ In-game description of a move.
Table name: move_flavor_text
Primary key: move_id, version_group_id, language_id.
Columns:
MoveFlavorText.move (move_id →
Move
.id)ID of the moveMoveFlavorText.version_group (version_group_id →
VersionGroup
.id)ID of the version group this text appears inMoveFlavorText.language (language_id →
Language
.id)The languageMoveFlavorText.flavor_text (unicode – gametext):
The flavor text
PokemonSpeciesFlavorText¶
-
pokedex.db.tables.
PokemonSpeciesFlavorText
¶ In-game Pokédex description of a Pokémon.
Table name: pokemon_species_flavor_text
Primary key: species_id, version_id, language_id.
Columns:
PokemonSpeciesFlavorText.species (species_id →
PokemonSpecies
.id)ID of the PokémonPokemonSpeciesFlavorText.version (version_id →
Version
.id)ID of the version that has this flavor textPokemonSpeciesFlavorText.language (language_id →
Language
.id)The languagePokemonSpeciesFlavorText.flavor_text (unicode – gametext):
The flavor text
Association tables¶
BerryFlavor¶
-
pokedex.db.tables.
BerryFlavor
¶ A Berry flavor level.
Table name: berry_flavors
Primary key: berry_id, contest_type_id.
Columns:
BerryFlavor.berry (berry_id →
Berry
.id)The ID of the berryBerryFlavor.contest_type (contest_type_id →
ContestType
.id)The ID of the flavorBerryFlavor.flavor (int):
The level of the flavor in the berry
EncounterConditionValueMap¶
-
pokedex.db.tables.
EncounterConditionValueMap
¶ Maps encounters to the specific conditions under which they occur.
Table name: encounter_condition_value_map
Primary key: encounter_id, encounter_condition_value_id.
Columns:
EncounterConditionValueMap.encounter_id (→
Encounter
.id):The ID of the encounterEncounterConditionValueMap.encounter_condition_value_id (→
EncounterConditionValue
.id):The ID of the encounter condition value
ItemFlag¶
-
pokedex.db.tables.
ItemFlag
¶ An item attribute such as “consumable” or “holdable”. Not official.
Table name: item_flags (single: item_flag)
Primary key: id.
Has id, identifier, and name via item_flag_prose.
Internationalized strings:
ItemFlag.description (unicode – plaintext) via item_flag_prose
Short description of the flag
ItemFlagMap¶
Machine¶
-
pokedex.db.tables.
Machine
¶ A TM or HM; numbered item that can teach a move to a Pokémon.
Table name: machines
Primary key: machine_number, version_group_id.
Columns:
Machine.machine_number (int):
Number of the machine for TMs, or 100 + the number for HMsMachine.version_group (version_group_id →
VersionGroup
.id)Versions this entry applies toMachine.item (item_id →
Item
.id)ID of the corresponding ItemMachine.move (move_id →
Move
.id)ID of the taught moveRelationships:
Machine.pokemon_moves (→
PokemonMove
)-
is_hm
¶ True if this machine is a HM, False if it’s a TM.
-
MoveFlag¶
-
pokedex.db.tables.
MoveFlag
¶ A Move attribute such as “snatchable” or “contact”.
Table name: move_flags (single: move_flag)
Primary key: id.
Has id, identifier, and name via move_flag_prose.
Internationalized strings:
MoveFlag.description (unicode – markdown) via move_flag_prose
A short description of the flag
MoveFlagMap¶
MoveMetaStatChange¶
-
pokedex.db.tables.
MoveMetaStatChange
¶ Stat changes moves (may) make.
Table name: move_meta_stat_changes
Primary key: move_id, stat_id.
Columns:
MoveMetaStatChange.move_id (→
Move
.id):ID of the moveMoveMetaStatChange.stat (stat_id →
Stat
.id)ID of the statMoveMetaStatChange.change (int):
Amount of increase/decrease, in stages
NatureBattleStylePreference¶
-
pokedex.db.tables.
NatureBattleStylePreference
¶ Battle Palace move preference.
Specifies how likely a Pokémon with a specific Nature is to use a move of a particular battle style in Battle Palace or Battle Tent.
Table name: nature_battle_style_preferences
Primary key: nature_id, move_battle_style_id.
Columns:
NatureBattleStylePreference.nature (nature_id →
Nature
.id)ID of the Pokémon’s natureNatureBattleStylePreference.move_battle_style_id (→
MoveBattleStyle
.id):ID of the battle styleNatureBattleStylePreference.low_hp_preference (int):
Chance of using the move, in percent, if HP is under ½NatureBattleStylePreference.high_hp_preference (int):
Chance of using the move, in percent, if HP is over ½Relationships:
NatureBattleStylePreference.battle_style (→
MoveBattleStyle
)
NaturePokeathlonStat¶
-
pokedex.db.tables.
NaturePokeathlonStat
¶ Specifies how a Nature affects a Pokéathlon stat.
Table name: nature_pokeathlon_stats
Primary key: nature_id, pokeathlon_stat_id.
Columns:
NaturePokeathlonStat.nature_id (→
Nature
.id):ID of the natureNaturePokeathlonStat.pokeathlon_stat (pokeathlon_stat_id →
PokeathlonStat
.id)ID of the statNaturePokeathlonStat.max_change (int):
Maximum change
PokeathlonStat¶
-
pokedex.db.tables.
PokeathlonStat
¶ A Pokéathlon stat, such as “Stamina” or “Jump”.
Table name: pokeathlon_stats (single: pokeathlon_stat)
Primary key: id.
Has id, identifier, and name via pokeathlon_stat_names.
Relationships:
PokeathlonStat.nature_effects (→ [
NaturePokeathlonStat
])
PokedexVersionGroup¶
-
pokedex.db.tables.
PokedexVersionGroup
¶ A mapping from Pokédexes to version groups in which they appear as the regional dex.
Table name: pokedex_version_groups (single: pokedex_version_group)
Primary key: pokedex_id, version_group_id.
Columns:
PokedexVersionGroup.pokedex_id (→
Pokedex
.id):The ID of the Pokédex.PokedexVersionGroup.version_group_id (→
VersionGroup
.id):The ID of the version group.
PokemonAbility¶
-
pokedex.db.tables.
PokemonAbility
¶ Maps an ability to a Pokémon that can have it.
Table name: pokemon_abilities
Primary key: pokemon_id, slot.
Columns:
PokemonAbility.pokemon (pokemon_id →
Pokemon
.id)ID of the PokémonPokemonAbility.ability (ability_id →
Ability
.id)ID of the abilityPokemonAbility.is_hidden (bool):
Whether this is a hidden abilityPokemonAbility.slot (int):
The ability slot, i.e. 1 or 2 for gen. IV
PokemonEggGroup¶
-
pokedex.db.tables.
PokemonEggGroup
¶ Maps an Egg group to a species; each species belongs to one or two egg groups.
Table name: pokemon_egg_groups
Primary key: species_id, egg_group_id.
Columns:
PokemonEggGroup.species_id (→
PokemonSpecies
.id):ID of the speciesPokemonEggGroup.egg_group_id (→
EggGroup
.id):ID of the egg group
PokemonFormPokeathlonStat¶
-
pokedex.db.tables.
PokemonFormPokeathlonStat
¶ A Pokémon form’s performance in one Pokéathlon stat.
Table name: pokemon_form_pokeathlon_stats
Primary key: pokemon_form_id, pokeathlon_stat_id.
Columns:
PokemonFormPokeathlonStat.pokemon_form (pokemon_form_id →
PokemonForm
.id)The ID of the Pokémon form.PokemonFormPokeathlonStat.pokeathlon_stat (pokeathlon_stat_id →
PokeathlonStat
.id)The ID of the Pokéathlon stat.PokemonFormPokeathlonStat.minimum_stat (int):
The minimum value for this stat for this Pokémon form.PokemonFormPokeathlonStat.base_stat (int):
The default value for this stat for this Pokémon form.PokemonFormPokeathlonStat.maximum_stat (int):
The maximum value for this stat for this Pokémon form.
PokemonHabitat¶
-
pokedex.db.tables.
PokemonHabitat
¶ The habitat of a Pokémon, as given in the FireRed/LeafGreen version Pokédex.
Table name: pokemon_habitats (single: pokemon_habitat)
Primary key: id.
Has id, identifier, and name via pokemon_habitat_names.
Relationships:
PokemonHabitat.species (→ [
PokemonSpecies
])
PokemonMove¶
-
pokedex.db.tables.
PokemonMove
¶ Record of a move a Pokémon can learn.
Table name: pokemon_moves
Primary key: pokemon_id, version_group_id, move_id, pokemon_move_method_id, level.
Columns:
PokemonMove.pokemon (pokemon_id →
Pokemon
.id)ID of the PokémonPokemonMove.version_group (version_group_id →
VersionGroup
.id)ID of the version group this applies toPokemonMove.move (move_id →
Move
.id)ID of the movePokemonMove.pokemon_move_method_id (→
PokemonMoveMethod
.id):ID of the method this move is learned byPokemonMove.level (int):
Level the move is learned at, if applicablePokemonMove.order (int):
The order which moves learned at the same level are learned inRelationships:
PokemonMove.machine (→
Machine
)PokemonMove.method (→
PokemonMoveMethod
)
PokemonStat¶
-
pokedex.db.tables.
PokemonStat
¶ A stat value of a Pokémon.
Table name: pokemon_stats
Primary key: pokemon_id, stat_id.
Columns:
PokemonStat.pokemon (pokemon_id →
Pokemon
.id)ID of the PokémonPokemonStat.stat (stat_id →
Stat
.id)ID of the statPokemonStat.base_stat (int):
The base statPokemonStat.effort (int):
The effort increase in this stat gained when this Pokémon is defeated
PokemonItem¶
-
pokedex.db.tables.
PokemonItem
¶ Record of an item a Pokémon can hold in the wild.
Table name: pokemon_items
Primary key: pokemon_id, version_id, item_id.
Columns:
PokemonItem.pokemon (pokemon_id →
Pokemon
.id)ID of the PokémonPokemonItem.version (version_id →
Version
.id)ID of the version this applies toPokemonItem.item (item_id →
Item
.id)ID of the itemPokemonItem.rarity (int):
Chance of the Pokémon holding the item, in percent
PokemonType¶
-
pokedex.db.tables.
PokemonType
¶ Maps a type to a Pokémon. Each Pokémon has 1 or 2 types.
Table name: pokemon_types
Primary key: pokemon_id, slot.
Columns:
PokemonType.pokemon_id (→
Pokemon
.id):ID of the PokémonPokemonType.type_id (→
Type
.id):ID of the typePokemonType.slot (int):
The type’s slot, 1 or 2, used to sort types if there are two of them
TypeEfficacy¶
-
pokedex.db.tables.
TypeEfficacy
¶ The damage multiplier used when a move of a particular type damages a Pokémon of a particular other type.
Table name: type_efficacy
Primary key: damage_type_id, target_type_id.
Columns:
TypeEfficacy.damage_type (damage_type_id →
Type
.id)The ID of the damaging move’s type.TypeEfficacy.target_type (target_type_id →
Type
.id)The ID of the defending Pokémon’s type.TypeEfficacy.damage_factor (int):
The multiplier, as a percentage of damage inflicted.
VersionGroupPokemonMoveMethod¶
-
pokedex.db.tables.
VersionGroupPokemonMoveMethod
¶ Maps a version group to a move learn methods it supports.
“Supporting” means simply that the method appears in the game. For example, Breeding didn’t exist in Gen.I, so it’s not in this table.
Table name: version_group_pokemon_move_methods
Primary key: version_group_id, pokemon_move_method_id.
Columns:
VersionGroupPokemonMoveMethod.version_group (version_group_id →
VersionGroup
.id)The ID of the version group.VersionGroupPokemonMoveMethod.pokemon_move_method (pokemon_move_method_id →
PokemonMoveMethod
.id)The ID of the move method.
VersionGroupRegion¶
-
pokedex.db.tables.
VersionGroupRegion
¶ Maps a version group to a region that appears in it.
Table name: version_group_regions
Primary key: version_group_id, region_id.
Columns:
VersionGroupRegion.version_group (version_group_id →
VersionGroup
.id)The ID of the version group.VersionGroupRegion.region (region_id →
Region
.id)The ID of the region.
Index maps¶
ItemGameIndex¶
-
pokedex.db.tables.
ItemGameIndex
¶ The internal ID number a game uses for an item.
Table name: item_game_indices
Primary key: item_id, generation_id.
Columns:
ItemGameIndex.item (item_id →
Item
.id)The database ID of the itemItemGameIndex.generation (generation_id →
Generation
.id)ID of the generation of gamesItemGameIndex.game_index (int):
Internal ID of the item in the generation
LocationGameIndex¶
-
pokedex.db.tables.
LocationGameIndex
¶ IDs the games use internally for locations.
Table name: location_game_indices
Primary key: location_id, generation_id, game_index.
Columns:
LocationGameIndex.location (location_id →
Location
.id)Database ID of the locationLocationGameIndex.generation (generation_id →
Generation
.id)ID of the generation this entry toLocationGameIndex.game_index (int):
Internal game ID of the location
PokemonDexNumber¶
-
pokedex.db.tables.
PokemonDexNumber
¶ The number of a species in a particular Pokédex (e.g. Jigglypuff is #138 in Hoenn’s ‘dex).
Table name: pokemon_dex_numbers
Primary key: species_id, pokedex_id.
Columns:
PokemonDexNumber.species (species_id →
PokemonSpecies
.id)ID of the speciesPokemonDexNumber.pokedex (pokedex_id →
Pokedex
.id)ID of the PokédexPokemonDexNumber.pokedex_number (int):
Number of the Pokémon in that the Pokédex
PokemonFormGeneration¶
-
pokedex.db.tables.
PokemonFormGeneration
¶ Links Pokémon forms to the generations they exist in.
Table name: pokemon_form_generations
Primary key: pokemon_form_id, generation_id.
Columns:
PokemonFormGeneration.pokemon_form_id (→
PokemonForm
.id):The ID of the Pokémon form.PokemonFormGeneration.generation (generation_id →
Generation
.id)The ID of the generation.PokemonFormGeneration.game_index (int):
The internal ID the games use for this form.Relationships:
PokemonFormGeneration.form (→
PokemonForm
)
PokemonGameIndex¶
-
pokedex.db.tables.
PokemonGameIndex
¶ The number of a Pokémon a game uses internally.
Table name: pokemon_game_indices
Primary key: pokemon_id, version_id.
Columns:
PokemonGameIndex.pokemon_id (→
Pokemon
.id):Database ID of the PokémonPokemonGameIndex.version_id (→
Version
.id):Database ID of the versionPokemonGameIndex.game_index (int):
Internal ID the version’s games use for the Pokémon
TypeGameIndex¶
-
pokedex.db.tables.
TypeGameIndex
¶ The internal ID number a game uses for a type.
Table name: type_game_indices
Primary key: type_id, generation_id.
Columns:
TypeGameIndex.type (type_id →
Type
.id)The typeTypeGameIndex.generation (generation_id →
Generation
.id)The generationTypeGameIndex.game_index (int):
Internal ID of the type in this generation
Mics tables¶
Experience¶
-
pokedex.db.tables.
Experience
¶ EXP needed for a certain level with a certain growth rate.
Table name: experience
Primary key: growth_rate_id, level.
Columns:
Experience.growth_rate (growth_rate_id →
GrowthRate
.id)ID of the growth rateExperience.level (int):
The levelExperience.experience (int):
The number of EXP points needed to get to that level
PalPark¶
-
pokedex.db.tables.
PalPark
¶ Data for the Pal Park mini-game in Generation IV.
Table name: pal_park (single: pal_park)
Primary key: species_id.
Columns:
PalPark.species (species_id →
PokemonSpecies
.id)The Pokémon species this data pertains toPalPark.area (area_id →
PalParkArea
.id)The area in which this Pokémon is foundPalPark.base_score (int):
Used in calculating the player’s score at the end of a Pal Park runPalPark.rate (int):
Base rate for encountering this Pokémon
Characteristic¶
-
pokedex.db.tables.
Characteristic
¶ Flavor text hinting at genes that appears in a Pokémon’s summary.
Table name: characteristics (single: characteristic)
Primary key: id.
Has id.
Columns:
Characteristic.stat (stat_id →
Stat
.id)ID of the stat with the highest geneCharacteristic.gene_mod_5 (int):
Value of the highest gene modulo 5Internationalized strings:
Characteristic.message (unicode – plaintext) via characteristic_text
The text displayed
Conquest tables¶
ConquestEpisode¶
-
pokedex.db.tables.
ConquestEpisode
¶ An episode from Pokémon Conquest: one of a bunch of mini-stories featuring a particular warrior.
The main story, “The Legend of Ransei”, also counts, even though it’s not in the episode select menu and there’s no way to replay it.
Table name: conquest_episodes (single: episode)
Primary key: id.
Has id, identifier, and name via conquest_episode_names.
Relationships:
ConquestEpisode.warriors (→ [
ConquestWarrior
])Association table:conquest_episode_warriors
ConquestEpisodeWarrior¶
-
pokedex.db.tables.
ConquestEpisodeWarrior
¶ A warrior featured in an episode in Pokémon Conquest.
This needs its own table because of the player having two episodes and there being two players.
Table name: conquest_episode_warriors
Primary key: episode_id, warrior_id.
Columns:
ConquestEpisodeWarrior.episode_id (→
ConquestEpisode
.id):The ID of the episode.ConquestEpisodeWarrior.warrior_id (→
ConquestWarrior
.id):The ID of the warrior.
ConquestKingdom¶
-
pokedex.db.tables.
ConquestKingdom
¶ A kingdom in Pokémon Conquest.
Table name: conquest_kingdoms (single: kingdom)
Primary key: id.
Has id, identifier, and name via conquest_kingdom_names.
Columns:
ConquestKingdom.type (type_id →
Type
.id)The type associated with this kingdom in-game.Relationships:
ConquestKingdom.evolutions (→ [
ConquestPokemonEvolution
])
ConquestMaxLink¶
-
pokedex.db.tables.
ConquestMaxLink
¶ The maximum link a warrior rank can reach with a Pokémon in Pokémon Conquest.
Table name: conquest_max_links
Primary key: warrior_rank_id, pokemon_species_id.
Columns:
ConquestMaxLink.warrior_rank (warrior_rank_id →
ConquestWarriorRank
.id)The ID of the warrior rank.ConquestMaxLink.pokemon_species_id (→
PokemonSpecies
.id):The ID of the Pokémon species.ConquestMaxLink.max_link (int):
The maximum link percentage this warrior rank and Pokémon can reach.Relationships:
ConquestMaxLink.pokemon (→
PokemonSpecies
)Association Proxies:
ConquestMaxLink.warrior:
warrior
ofself.warrior_rank
ConquestMoveData¶
-
pokedex.db.tables.
ConquestMoveData
¶ Data about a move in Pokémon Conquest.
Table name: conquest_move_data
Primary key: move_id.
Columns:
ConquestMoveData.move (move_id →
Move
.id)The ID of the move.ConquestMoveData.power (int):
The move’s power, null if it does no damage.ConquestMoveData.accuracy (int):
The move’s base accuracy, null if it is self-targeted or never misses.ConquestMoveData.effect_chance (int):
The chance as a percentage that the move’s secondary effect will trigger.ConquestMoveData.effect (effect_id →
ConquestMoveEffect
.id)The ID of the move’s effect.ConquestMoveData.range (range_id →
ConquestMoveRange
.id)The ID of the move’s range.ConquestMoveData.displacement (displacement_id →
ConquestMoveDisplacement
.id)The ID of the move’s displacement.Relationships:
ConquestMoveData.move_displacement (→
ConquestMoveDisplacement
)ConquestMoveData.move_effect (→
ConquestMoveEffect
)Undocumented:
ConquestMoveData.effect_map
ConquestMoveData.short_effect
ConquestMoveData.short_effect_map
-
star_rating
¶ Return the move’s in-game power rating as a number of stars.
-
ConquestMoveDisplacement¶
-
pokedex.db.tables.
ConquestMoveDisplacement
¶ A way in which a move can cause the user or target to move to a different tile.
If a move displaces its user, the move’s range is relative to the user’s original position.
Table name: conquest_move_displacements (single: move_displacement)
Primary key: id.
Has id, identifier, and name via conquest_move_displacement_prose.
Columns:
ConquestMoveDisplacement.affects_target (bool):
True iff the move displaces its target(s) and not its user.Internationalized strings:
ConquestMoveDisplacement.short_effect (unicode – markdown) via conquest_move_displacement_prose
A short summary of how the displacement works, to be used in the move’s short effect.ConquestMoveDisplacement.effect (unicode – markdown) via conquest_move_displacement_prose
A detailed description of how the displacement works, to be used alongside the move’s long effect.Relationships:
ConquestMoveDisplacement.move_data (→ [
ConquestMoveData
])
ConquestMoveEffect¶
-
pokedex.db.tables.
ConquestMoveEffect
¶ An effect moves can have in Pokémon Conquest.
Table name: conquest_move_effects (single: conquest_move_effect)
Primary key: id.
Has id.
Internationalized strings:
ConquestMoveEffect.short_effect (unicode – markdown) via conquest_move_effect_prose
A short summary of the effectConquestMoveEffect.effect (unicode – markdown) via conquest_move_effect_prose
A detailed description of the effectRelationships:
ConquestMoveEffect.move_data (→ [
ConquestMoveData
])
ConquestMoveRange¶
-
pokedex.db.tables.
ConquestMoveRange
¶ A set of tiles moves can target in Pokémon Conquest.
Table name: conquest_move_ranges (single: conquest_move_range)
Primary key: id.
Has id, identifier, and name via conquest_move_range_prose.
Columns:
ConquestMoveRange.targets (int):
The number of tiles this range targets.Internationalized strings:
ConquestMoveRange.description (unicode – plaintext) via conquest_move_range_prose
A detailed description of the rangeRelationships:
ConquestMoveRange.move_data (→ [
ConquestMoveData
])
ConquestPokemonAbility¶
-
pokedex.db.tables.
ConquestPokemonAbility
¶ An ability a Pokémon species has in Pokémon Conquest.
Table name: conquest_pokemon_abilities
Primary key: pokemon_species_id, slot.
Columns:
ConquestPokemonAbility.pokemon_species_id (→
PokemonSpecies
.id):The ID of the Pokémon species with this ability.ConquestPokemonAbility.slot (int):
The order abilities are listed in. Upon evolution, if a Pokémon’s abilities change, it will receive the one in the same slot.ConquestPokemonAbility.ability_id (→
Ability
.id):The ID of the ability.
ConquestPokemonEvolution¶
-
pokedex.db.tables.
ConquestPokemonEvolution
¶ The conditions under which a Pokémon must successfully complete an action to evolve in Pokémon Conquest.
Any condition may be null if it does not apply for a particular Pokémon.
Table name: conquest_pokemon_evolution
Primary key: evolved_species_id.
Columns:
ConquestPokemonEvolution.evolved_species (evolved_species_id →
PokemonSpecies
.id)The ID of the post-evolution species.ConquestPokemonEvolution.required_stat_id (→
ConquestStat
.id):The ID of the stat which minimum_stat applies to.ConquestPokemonEvolution.minimum_stat (int):
The minimum value the Pokémon must have in a particular stat.ConquestPokemonEvolution.minimum_link (int):
The minimum link percentage the Pokémon must have with its warrior.ConquestPokemonEvolution.kingdom (kingdom_id →
ConquestKingdom
.id)The ID of the kingdom in which this Pokémon must complete an action after meeting all other requirements.ConquestPokemonEvolution.warrior_gender_id (→
Gender
.id):The ID of the gender the Pokémon’s warrior must be.ConquestPokemonEvolution.item (item_id →
Item
.id)The ID of the item the Pokémon’s warrior must have equipped.ConquestPokemonEvolution.recruiting_ko_required (bool):
If true, the Pokémon must KO a Pokémon under the right conditions to recruit that Pokémon’s warrior.Relationships:
ConquestPokemonEvolution.gender (→
Gender
)ConquestPokemonEvolution.stat (→
ConquestStat
)
ConquestPokemonMove¶
-
pokedex.db.tables.
ConquestPokemonMove
¶ A Pokémon’s move in Pokémon Conquest.
Yes, “move”; each Pokémon has exactly one.
Table name: conquest_pokemon_moves
Primary key: pokemon_species_id.
Columns:
ConquestPokemonMove.pokemon_species_id (→
PokemonSpecies
.id):The ID of the Pokémon species.ConquestPokemonMove.move_id (→
Move
.id):The ID of the move.
ConquestPokemonStat¶
-
pokedex.db.tables.
ConquestPokemonStat
¶ A Pokémon’s base stat in Pokémon Conquest.
The main four base stats in Conquest are derived from level 100 stats in the main series (ignoring effort, genes, and natures). Attack matches either Attack or Special Attack, and Defense matches the average of Defense and Special Defense. HP and Speed are the same.
Table name: conquest_pokemon_stats
Primary key: pokemon_species_id, conquest_stat_id.
Columns:
ConquestPokemonStat.pokemon_species_id (→
PokemonSpecies
.id):The ID of the Pokémon species.ConquestPokemonStat.conquest_stat_id (→
ConquestStat
.id):The ID of the stat.ConquestPokemonStat.base_stat (int):
The base stat.Relationships:
ConquestPokemonStat.pokemon (→
PokemonSpecies
)ConquestPokemonStat.stat (→
ConquestStat
)
ConquestStat¶
-
pokedex.db.tables.
ConquestStat
¶ A stat Pokémon have in Pokémon Conquest.
Table name: conquest_stats (single: conquest_stat)
Primary key: id.
Has id, identifier, and name via conquest_stat_names.
Columns:
ConquestStat.is_base (bool):
True iff this is one of the main stats, calculated for individual Pokémon.Relationships:
ConquestStat.evolutions (→ [
ConquestPokemonEvolution
])ConquestStat.pokemon_stats (→ [
ConquestPokemonStat
])
ConquestTransformationPokemon¶
-
pokedex.db.tables.
ConquestTransformationPokemon
¶ A Pokémon that satisfies a warrior transformation’s link condition.
If a warrior has one or more Pokémon listed here, they only need to raise one of them to the required link.
Table name: conquest_transformation_pokemon
Primary key: transformation_id, pokemon_species_id.
Columns:
ConquestTransformationPokemon.transformation_id (→
ConquestWarriorTransformation
.transformed_warrior_rank_id):The ID of the corresponding transformation, in turn a warrior rank ID.ConquestTransformationPokemon.pokemon_species_id (→
PokemonSpecies
.id):The ID of the Pokémon species.
ConquestTransformationWarrior¶
-
pokedex.db.tables.
ConquestTransformationWarrior
¶ A warrior who must be present in the same nation as another warrior for the latter to transform into their next rank.
If a warrior has one or more other warriors listed here, they all need to gather in the same nation for the transformation to take place.
Table name: conquest_transformation_warriors
Primary key: transformation_id, present_warrior_id.
Columns:
ConquestTransformationWarrior.transformation_id (→
ConquestWarriorTransformation
.transformed_warrior_rank_id):The ID of the corresponding transformation, in turn a warrior rank ID.ConquestTransformationWarrior.present_warrior_id (→
ConquestWarrior
.id):The ID of the other warrior who must be present.
ConquestWarrior¶
-
pokedex.db.tables.
ConquestWarrior
¶ A warrior in Pokémon Conquest.
Table name: conquest_warriors (single: warrior)
Primary key: id.
Has id, identifier, and name via conquest_warrior_names.
Columns:
ConquestWarrior.gender_id (→
Gender
.id):The ID of the warrior’s gender.ConquestWarrior.archetype (archetype_id →
ConquestWarriorArchetype
.id)The ID of this warrior’s archetype. Null for unique warriors.Relationships:
ConquestWarrior.episodes (→ [
ConquestEpisode
])Association table:conquest_episode_warriors
ConquestWarrior.ranks (→ [
ConquestWarriorRank
])Ordered by:conquest_warrior_ranks.rank
ConquestWarrior.types (→ [
Type
])Association table:
conquest_warrior_specialties
Ordered by:
conquest_warrior_specialties.slot
ConquestWarriorArchetype¶
-
pokedex.db.tables.
ConquestWarriorArchetype
¶ An archetype that generic warriors in Pokémon Conquest can have. All warriors of a particular archetype share sprites and dialogue.
Some of these are unused as warriors because they exist only as NPCs. They should still be kept because we have their sprites and may eventually get their dialogue.
Table name: conquest_warrior_archetypes (single: archetype)
Primary key: id.
Has id and identifier.
Relationships:
ConquestWarriorArchetype.warriors (→ [
ConquestWarrior
])
ConquestWarriorRank¶
-
pokedex.db.tables.
ConquestWarriorRank
¶ A warrior at a particular rank in Pokémon Conquest.
These are used for whatever changes between ranks, much like Pokémon forms. Generic warriors who have only one rank are also represented here, with a single row.
To clarify, each warrior’s ranks are individually called “warrior ranks” here; for example, “Rank 2 Nobunaga” is an example of a warrior rank, not just “Rank 2”.
Table name: conquest_warrior_ranks (single: warrior_rank)
Primary key: id.
Has id.
Columns:
ConquestWarriorRank.warrior (warrior_id →
ConquestWarrior
.id)The ID of the warrior.ConquestWarriorRank.rank (int):
The rank number.ConquestWarriorRank.skill (skill_id →
ConquestWarriorSkill
.id)The ID of this warrior rank’s warrior skill.Relationships:
ConquestWarriorRank.max_links (→ [
ConquestMaxLink
])ConquestWarriorRank.stats (→ [
ConquestWarriorRankStatMap
])Ordered by:conquest_warrior_rank_stat_map.warrior_stat_id
ConquestWarriorRank.transformation (→
ConquestWarriorTransformation
)
ConquestWarriorRankStatMap¶
-
pokedex.db.tables.
ConquestWarriorRankStatMap
¶ Any of a warrior rank’s warrior stats in Pokémon Conquest.
Table name: conquest_warrior_rank_stat_map
Primary key: warrior_rank_id, warrior_stat_id.
Columns:
ConquestWarriorRankStatMap.warrior_rank (warrior_rank_id →
ConquestWarriorRank
.id)The ID of the warrior rank.ConquestWarriorRankStatMap.warrior_stat_id (→
ConquestWarriorStat
.id):The ID of the warrior stat.ConquestWarriorRankStatMap.base_stat (int):
The stat.Relationships:
ConquestWarriorRankStatMap.stat (→
ConquestWarriorStat
)
ConquestWarriorSkill¶
-
pokedex.db.tables.
ConquestWarriorSkill
¶ A warrior skill in Pokémon Conquest.
Table name: conquest_warrior_skills (single: skill)
Primary key: id.
Has id, identifier, and name via conquest_warrior_skill_names.
Relationships:
ConquestWarriorSkill.warrior_ranks (→ [
ConquestWarriorRank
])Ordered by:conquest_warrior_ranks.id
ConquestWarriorSpecialty¶
-
pokedex.db.tables.
ConquestWarriorSpecialty
¶ A warrior’s specialty types in Pokémon Conquest.
These have no actual effect on gameplay; they just indicate which types of Pokémon each warrior generally has strong maximum links with.
Table name: conquest_warrior_specialties
Primary key: warrior_id, type_id, slot.
Columns:
ConquestWarriorSpecialty.warrior_id (→
ConquestWarrior
.id):The ID of the warrior.ConquestWarriorSpecialty.type_id (→
Type
.id):The ID of the type.ConquestWarriorSpecialty.slot (int):
The order in which the warrior’s types are listed.
ConquestWarriorStat¶
-
pokedex.db.tables.
ConquestWarriorStat
¶ A stat that warriors have in Pokémon Conquest.
Table name: conquest_warrior_stats (single: warrior_stat)
Primary key: id.
Has id, identifier, and name via conquest_warrior_stat_names.
Relationships:
ConquestWarriorStat.stat_map (→ [
ConquestWarriorRankStatMap
])
ConquestWarriorTransformation¶
-
pokedex.db.tables.
ConquestWarriorTransformation
¶ The conditions under which a warrior must perform an action in order to transform to the next rank.
Or most of them, anyway. See also ConquestTransformationPokemon and ConquestTransformationWarrior.
Table name: conquest_warrior_transformation
Primary key: transformed_warrior_rank_id.
Columns:
ConquestWarriorTransformation.transformed_warrior_rank_id (→
ConquestWarriorRank
.id):The ID of the post-transformation warrior rank.ConquestWarriorTransformation.is_automatic (bool):
True iff the transformation happens automatically in the story with no further requirements.ConquestWarriorTransformation.required_link (int):
The link percentage the warrior must reach with one of several specific Pokémon, if any.ConquestWarriorTransformation.completed_episode (completed_episode_id →
ConquestEpisode
.id)The ID of the episode the player must have completed, if any.ConquestWarriorTransformation.current_episode (current_episode_id →
ConquestEpisode
.id)The ID of the episode the player must currently be playing, if any.ConquestWarriorTransformation.distant_warrior (distant_warrior_id →
ConquestWarrior
.id)The ID of another warrior who must be in the army, but not in the same kingdom or in any adjacent kingdom.ConquestWarriorTransformation.female_warlord_count (int):
The number of female warlords who must be in the same nation.ConquestWarriorTransformation.pokemon_count (int):
The number of Pokémon that must be registered in the gallery.ConquestWarriorTransformation.collection_type_id (→
Type
.id):The ID of a type all Pokémon of which must be registered in the gallery.ConquestWarriorTransformation.warrior_count (int):
The number of warriors that must be registered in the gallery.Relationships:
ConquestWarriorTransformation.pokemon (→ [
PokemonSpecies
])Association table:
conquest_transformation_pokemon
Ordered by:
pokemon_species.conquest_order
ConquestWarriorTransformation.present_warriors (→ [
ConquestWarrior
])Association table:
conquest_transformation_warriors
Ordered by:
conquest_warriors.id
ConquestWarriorTransformation.type (→
Type
)ConquestWarriorTransformation.warrior_rank (→
ConquestWarriorRank
)