Commit graph

884 commits

Author SHA1 Message Date
Andrew Ekstedt
9557034bad Add form names for Eternamax Eternatus
Copied manually from a text dump.
2021-03-26 00:04:40 -07:00
Andrew Ekstedt
b8ff7b4cb5 Add form names for Crowned Zacian
Copied manually from a text dump. Not sure why these were missing.
2021-03-26 00:04:40 -07:00
Andrew Ekstedt
0bc0953578 Add combined form names for new Gen 8 pokemon 2021-03-26 00:04:40 -07:00
Andrew Ekstedt
3163bab947 Drop empty rows from pokemon_form_names
A missing name means the same thing as a blank name, so there's no point
keeping them around.

Totem Marowak has a Korean form name for some reason, and Kyogre and
Groudon have (autoeponymous) form names in every language _except_
Italian. But other than that there's nothing interesting.
2021-03-26 00:01:11 -07:00
Andrew Ekstedt
9d125771b3 Update version_group_pokemon_move_methods for Let's Go and Sw/Sh 2021-03-25 00:32:11 -07:00
Andrew Ekstedt
ba0409362a
Merge pull request #332 from Parnassius/fix-zygarde
zygarde-10 was added to the database along with the Let's Go rip, but the form was actually introduced in sun/moon. We need to backdate it.
2021-03-24 20:22:57 -07:00
Parnassius
03f32883f2 zygarde-10 was introduced in sun/moon 2021-03-24 21:40:07 +01:00
Parnassius
ea6d516333 Dump UsUm tutors 2021-03-24 17:33:25 +01:00
Parnassius
a83e44f732 Dump SM tutors 2021-03-24 17:31:23 +01:00
Parnassius
80bc35a764 Remove HMs from Sun/Moon and Ultra Sun/Ultra Moon (PR #326)
Those games don't have HMs, and for example
https://veekun.com/dex/moves/fly shows fly is HM02, while it should be
TM76. Note that HMs which were converted into TMs in gen7 seems to be
already present in machines.csv with their new TM number as well.
2021-03-21 17:06:12 -07:00
Andrew Ekstedt
47618d0d46
Merge pull request #329 from SnorlaxMonster/area-rename
Rename Mt. Coronet areas

From the PR:
> Mt. Coronet's floors were misnumbered: a small room on 4F was labelled as 5F, causing the subsequent floors to all be off-by-one. This pull request corrects that numbering, aligning the floor numbering with the official guidebook.
> 
> Additionally, a number of the areas within Mt. Coronet had vague or otherwise unclear names (especially "cave"). This pull request renames those areas for clarity. It also ensures that all areas on 1F include "1F" in their name, for consistency.
2021-03-21 16:59:23 -07:00
Andrew Ekstedt
6d81374fb1 Fix machines<->items mapping for Sw/Sh
They were cyclically off by one, so e.g. machine 0 mapped to tm01,
machine 99 wrapped around to tm00, machine 100 mapped to tr01, and
machine 199 mapped to tr00.

The moves seem to be right though.

update machines m set item_id = (select item_id from machines m2 where m2.machine_number = (m.machine_number+99) % 100 + case when m.machine_number >= 100 then 100 else 0 end and version_group_id = 20) where version_group_id = 20;
2021-03-21 16:49:00 -07:00
Andrew Ekstedt
0a233ec795 Set shape_id for new pokemon to NULL instead of 0
Fixes postgres import.
2021-03-21 15:31:33 -07:00
Parnassius
1cc1611da3 item categories 2021-03-10 14:27:54 +01:00
Parnassius
67d9e8a9f9 Add Sword/Shield data 2021-03-10 14:25:32 +01:00
Parnassius
ebf2fb0cdd item categories 2021-03-10 14:22:00 +01:00
Parnassius
0ae34dbce0 Add Let's Go data 2021-03-10 14:21:05 +01:00
SnorlaxMonster
06aaf1b9aa Improve Mt. Coronet area names
The Mt. Coronet area names were not sufficiently clear as to which
areas they were referring to (especially the one simply named "cave").
I have renamed all of the areas that I think were unclear,
as well as ensured that all 1F areas in Mt. Coronet
include "1F" in their name for consistency.
2021-03-09 02:18:14 +11:00
SnorlaxMonster
437736ca01 Correct a floor numbering error in Mt. Coronet
The small room on Mt. Coronet 4F was labelled as 5F,
causing all subsequent floors to be numbered off-by-one.
2021-03-09 02:08:28 +11:00
Andrew Ekstedt
dc9a2d8f13 Fix Spanish characteristic text
"Quick tempered" and "A little quick tempered" erroneously had the same
Spanish translation, "Tiene mal genio". The latter should actually be
"A veces se enfada".

Verified against a text dump.

Fixes #309
2020-07-09 12:39:16 -07:00
Andrew Ekstedt
9397da82c2 Update Partner Cap Pikachu's combined form name 2020-06-27 16:33:42 -07:00
Andrew Ekstedt
8f1dc80d12 Rip OR/AS held items
Note: both of Cherrim's forms hold a Miracle Seed, but we only have one
pokemon row for them.

Updates #141
2020-06-27 16:31:33 -07:00
Andrew Ekstedt
9e15919f14 Fix typo in Totem Kommo-o's form name
Why do we even have totem pokemon in the dex?

Fixes #222
2020-06-27 13:05:14 -07:00
KidsDontPlay
7de90c054d Add is_legendary and is_mythical (#304)
Legendary and Mythical are official terms which, while generally not
present in the game data, are more or less consistently applied in
promotional material. They're also useful categorizations to fans,
so it seems reasonable to include them here.

The legendary Pokémon are:
  Articuno, Zapdos, Moltres, Mewtwo,
  Raikou, Entei, Suicune, Lugia, Ho-Oh,
  Regirock, Regice, Registeel,
  Latias, Latios, Kyogre, Groudon, Rayquaza,
  Uxie, Mesprit, Azelf, Dialga, Palkia, Giratina,
  Heatran, Regigigas, Cresselia,
  Cobalion, Terrakion, Virizion,
  Tornadus, Thundurus, Landorus,
  Reshiram, Zekrom, Kyurem,
  Xerneas, Yveltal, Zygarde,
  Tapu Koko, Tapu Lele, Tapu Bulu, Tapu Fini,
  Cosmog, Cosmoem, Solgaleo, Lunala, Necrozma.

The mythical Pokémon are: Mew, Celebi, Jirachi, Deoxys, Phione, Manaphy,
  Darkrai, Shaymin, Arceus, Victini, Keldeo, Meloetta, Genesect,
  Diancie, Hoopa, Volcanion, Magearna, Marshadow, Zeraora.
2020-06-27 12:56:28 -07:00
Andrew Ekstedt
bbda228262 Fix み,nbsp mixup in OR/AS dex entries
A bug in the text dumper caused み to be replaced with a narrow
non-breaking space and the actual nbsp character in the unicode private
use area to go untranslated.

Only affected OR/AS.

Fix with a simple text replace on the affected entries.

    import csv
    in_ = open("../pokedex/data/csv/pokemon_species_flavor_text.csv", "r")
    out = open("fixed.csv", "w")
    r = csv.reader(in_, lineterminator='\n')
    w = csv.writer(out, lineterminator='\n')
    for row in r:
        text = row[3]
        if row[1] in {'25', '26'}:
            text = text.replace("\u202f", "\u307f") # nbsp => mi
            text = text.replace("\ue07f", "\u202f") # e07f => nbsp
        w.writerow((row[0], row[1], row[2], text))
    out.close()

Fixes #308
2020-06-23 17:09:11 -07:00
Andrew Ekstedt
0015bcb15c Add Ultra Moon dex entries
Note: there are dex entries for forms too, but this only adds the text
for the default form because the db schema assumes dex entries are
per-species.
2020-06-23 16:17:32 -07:00
Andrew Ekstedt
5fe8fdcc95 Add Sun dex entries
Note: there are dex entries for forms too, but this only adds the text
for the default form because the db schema assumes dex entries are
per-species.
2020-06-23 16:10:40 -07:00
Andrew Ekstedt
b05ff3a5b1 Add wild held items for Sun and Ultra Moon
The initial import of data from S/M and US/UM only included held items for Moon
and Ultra Sun. (Presumably those were the only games eevee had access to?)
I now have all four games and I've verified that the data file which
contains held items is completely identical between Sun and Moon, and between
Ultra Sun and Ultra Moon.

So we can just copy the held items from the other two games.

pokedex=> insert into pokemon_items (select pokemon_id, 27, item_id, rarity from pokemon_items where version_id=28);
INSERT 0 356
Time: 220.560 ms
pokedex=> insert into pokemon_items (select pokemon_id, 30, item_id, rarity from pokemon_items where version_id=29);
INSERT 0 362
Time: 102.063 ms
2020-06-22 20:52:01 -07:00
Andrew Ekstedt
c2cde0078d Fix typo in Fancy Vivillon's French name
Prismillion Fantaisie => Prismillon Fantaisie (without the extra 'i')

Fixes #307
2020-06-17 15:16:21 -07:00
Andrew Ekstedt
a166502b45 Load/dump dance
Fixes the order of encounter_condition_value_map.csv after PR #289.
2020-03-04 16:19:29 -08:00
Andrew Ekstedt
a0b47add63
Update Spanish translations (#271) 2020-03-04 15:24:28 -08:00
Andrew Ekstedt
722a4664dd
Generation 2 (GSC) encounters (#289)
Source: https://www.pokebip.com/page/jeuxvideo/dossier_shasse/encounter_slot

This covers the following encounter methods: Walking, Fishing (3 rods), Surf and Rock Smash
2020-03-04 14:52:07 -08:00
Andrew Ekstedt
9c1d1828c9 Re-rip Gen III contest effects
Gen III contest effects were part of the initial data import from brown
veekun and so have probably never gotten a proper rip.

This commit re-rips contest effect stats, types, combos, and the mapping
between contest effects and moves.

None of the stats changed (jam & appeal); a few moves got assigned
different contest effects (specifically: smokescreen, flash, spite, and
shadow ball); and several combos changed.

For example, Hail was listed as comboing into the following moves
(this is also what Bulbapedia says):

    Ice Beam, Blizzard, Aurora Beam, Haze, Powder Snow, Icy Wind,
    Ice Ball, Weather Ball, Sheer Cold, Icicle Spear

However, the actual list is much shorter:

    Blizzard, Powder Snow, Weather Ball

I verified on my Ruby cart that Hail->Ice Beam and Hail->Icy Wind are
not real combos, and that Hail->Blizzard is.

n.b. There are a bunch of unused contest effects in the game: out of 48
effects, 15 are not used by any move. The pokedex doesn't currently
include these. I elected not to add them, partly because i didn't want
to have to rip flavor text for them, but mostly because if i were going
to go that route i would probably reassign contest_effects.id to match
their internal ids, which would have made for uglier diffs.

Fixes #280
2020-03-01 23:25:49 -08:00
KidsDontPlay
cc2ad50752
Fix typo in German name for Physical damage class (#283) 2020-03-01 22:53:02 -08:00
Andrew Ekstedt
0232456433 Load/dump dance
Fixes some out-of-order rows in pokemon_dex_numbers.csv that were
introduced by PR #269 (f8e7637e9).
2020-02-29 20:02:08 -08:00
Andrew Ekstedt
7d5fbaec87 Fix some more issues in German ability effect text
- link to nonexistant `[]{move:shield}` in Color Change (changed to protect)
- invalid syntax `[move:sandstorm]` in Primordial Sea
- invalid syntax `[move:sandstorm]` in Desolate Land
- invalid syntax `[move:sandstorm]` in Delta Stream

Found by test_markdown_values, which is not run by default because it is
slow. It can be run manually with

    py.test pokedex/tests/test_strings.py --all
2020-01-23 12:47:01 -08:00
Andrew Ekstedt
e78f7cbe84 Fix markdown syntax in Flower Veil's German effect text 2020-01-23 12:05:36 -08:00
Alessandro Pezzè
049fa1437b Fix markdown syntax in Cheek Pouch's German effect text (#290) 2020-01-22 19:12:40 -08:00
Andrew Ekstedt
8dfbd58688 Regenerate order columns
Updates #282
2019-11-15 22:13:33 -08:00
Andrew Ekstedt
852a4ad06a Fix form_order for arceus-unknown and pikachu-*-cap
Pikachu's Cap forms and Cosplay forms had overlapping orders because i
forgot about Cosplay Pikachu when i set the form_order for the cap
forms.

??? Arceus had form_order=3 so it would go after all the other forms,
which had form_order=2. These were assigned distinct form_orders 2
through 17 at some point during a recent dump, but ??? Arceus was
missed.

Fixes #282
2019-11-15 22:01:12 -08:00
Zroxos
3c550f1425 Add evolution method to Crabrawler (#276)
Added missing `location_id` for Crabrawler. It now references the "Mount Lanakila" row in the `locations` table.

Updates #248
2019-07-21 22:42:19 -07:00
h82258652
087237c9ef Fix US/UM chinese pokemon names (#275)
The Chinese names for some of the pokemon added in US/UM (805-807) seem to have gotten corrupted somehow.
2019-07-21 22:41:02 -07:00
naooooooo99999
310d104533 Fixed the spelling of japanese Generation I. (#267) 2019-07-16 23:26:54 -07:00
ymin1103
ce783fba03 Add Korean translations and missing version names (#266)
This commit adds Korean translations for egg groups, generations, languages, regions, stats, and version names. Also the ??? and shadow types. 

It also fills in some missing foreign version names for S/M and US/UM (from Bulbapedia).
2019-07-16 23:18:02 -07:00
kampfmoehre
10f024a80c Add german ability translations (#181)
Adds german translations for ability description prose and ability
changelog prose. I tried to stay in the same style for all translations.
2019-07-16 22:39:18 -07:00
Andrew Ekstedt
ad429ab128 Fix Roserade's Central Kalos dex number and add tests
Roserade and Roselia were mistakenly sharing dex number 72. Presumably
an error from the original X/Y spreadsheet. I guess we never reripped
these after 3DS rom dumping became possible.

Regardless of how it happened, add a test and some database constraints
to ensure that it doesn't happen again.

- Add a test for gaps in pokedex numbers

- Add uniqueness constraints to pokemon_dex_numbers.  A species can
  only appear once per pokedex, and a number cannot be used more than
  once per pokedex.
2019-07-16 18:12:58 -07:00
Tim Goudriaan
f8e7637e9e Add S/M and US/UM pokedex numbers (#269)
Adds pokedex numbers for the Alola dex and all four island dexes, both original and updated.

Data courtesy of Bulbapedia.

Fixes #217.
2019-07-16 17:52:01 -07:00
Andrew Ekstedt
db824220d0
Merge pull request #238 from jrubinator/record-gift-pokemon
Record gift pokemon
2019-07-12 19:40:29 -07:00
Andrew Ekstedt
b6dfbbcd58 gift-pokemon: rerun script
This removes a few location areas that are no longer needed now that
we've dropped fossil pokemon.
2019-07-12 19:14:59 -07:00
Andrew Ekstedt
8161bd84e4 gift-pokemon: fix Cosplay Pikachu and Sinnoh starter gift locations
Cosplay Pikachu was listed as being encountered in contest-hall, but
that's a Sinnoh location. In OR/AS, the contest halls are not a
first-class location but rather just treated as part of the town or city
they are in. Cosplay Pikachu is given to the player after they
participate in their first contest, so its location can be any of the
four cities with a contest hall.

The Sinnoh starter that the player obtains in OR/AS is on Hoenn Route
101, not Sinnoh Route 201 (probably a copy/paste error).

Add a test to make sure that encounter regions always match the
region(s) that their game takes place in.
2019-07-12 18:48:07 -07:00