Commit graph

1056 commits

Author SHA1 Message Date
Zhorken
e321cbbe70 Split off and labelled the PBR terrains for Secret Power and Nature Power. 2010-05-19 19:01:53 -04:00
Zhorken
aa6d8c985e Fixed some stylistic issues with ability effects. 2010-05-19 19:01:02 -04:00
Zhorken
798b9fc3c3 Specify which Gen IV evolutions are in the HG/SS Johto dex.
Most of them aren't; they just added the move-based evolutions because
they can't really keep those away from you until the National dex.
2010-05-18 23:53:15 -04:00
a_magical_me
ffc30bff8f Factor out logic for finding the default db/index. #180
Note: `if not x:` has changed to `if x is not None:`, changing the
semantics slightly.  Shouldn't be a big issue.
2010-05-13 21:45:51 -07:00
Eevee
5e52bef91a Make plumbing respect the same env vars as the CLI. #180 2010-05-12 23:23:05 -07:00
Eevee
1c230f5990 Make pokedex status a bit more useful. #180 2010-05-12 23:18:02 -07:00
Eevee
79df4768bf Split PokedexLookup(recreate=True) into its own method. #216 2010-05-12 22:38:36 -07:00
Eevee
cb2bfa3032 Added some missing item icons and fixed TMs/Data Cards. #248 2010-05-11 20:20:33 -07:00
Eevee
df61f8dd1f s/Pokemon/Pokémon/g #45 2010-05-10 19:04:58 -07:00
Eevee
ad28e9f9db Unique Pokédex names. 2010-05-09 21:47:07 -07:00
Eevee
2333670d09 Pokemon.types should order by slot. #220 2010-05-09 21:47:07 -07:00
Eevee
cbf5223446 Fix ordering of Pokémon abilities. #257 2010-05-09 21:47:07 -07:00
Zhorken
dbabe2b5d5 Corrected a couple of French Pokémon names.
I compared with a rip from a Mystery Dungeon game.  These are the only
two that didn't match, ignoring accents on capital letters.  I need to
find an official list of names that includes accents on capital
letters....
2010-05-04 03:32:05 -04:00
Zhorken
93108a6a84 Added ability flavour text. #62
We had D/P flavour text in the abilities table already, but I didn't
entirely trust it, so I reripped it along with the rest when I moved
flavour text into its own table.  And we didn't actually use the D/P
text anywhere, so I'm just going to pretend that it is entirely new.
2010-05-04 03:31:54 -04:00
Zhorken
641df3649d Added ability effects. Rewrote short effects. #39 2010-05-04 03:31:40 -04:00
Zhorken
e03d767b99 Removed "No Ability" from abilities.
B|
2010-05-04 02:39:51 -04:00
Zhorken
3007297ede Added abilities' generations to the database. 2010-05-04 02:39:51 -04:00
Eevee
b8481d551a Added GrowthRate.max_experience. 2010-05-03 01:00:38 -07:00
Eevee
f8145b87e4 Restored Item.appears_underground and added location support to rst. 2010-05-03 01:00:38 -07:00
Eevee
d98632aa50 Broke existing item flags out into their own table. 2010-05-03 01:00:38 -07:00
Eevee
853a6eb921 Added item HG/SS flavor text and internal ids. #168? 2010-05-03 01:00:37 -07:00
Eevee
2040ed2b37 Added some HG/SS item data. #168 2010-05-03 01:00:37 -07:00
Eevee
9ca0f486f6 Lookup now respects "ability" as a lookup type. 2010-04-30 00:22:03 -07:00
Eevee
97f96a5695 Let lookup accept hex/octal/binary numbers. 2010-04-28 11:37:12 -07:00
Zhorken
d5b3fda216 Reripped Gen I–III Pokémon flavour text. #46
Page breaks are represented by form feeds and soft hyphens are
represented by soft hyphens, even though the Unicode standard's idea of
a soft hyphen is different from what we mean here.

My ripping scripts are at http://github.com/Zhorken/pokemon-flavour
2010-04-28 03:58:43 -04:00
a_magical_me
941bce52d7 Add experience tables. 2010-04-27 14:53:47 -07:00
Eevee
58dccb1803 Jammed in a bunch of nature stuff. 2010-04-26 23:26:37 -07:00
Eevee
affb8a02fb Turned Move.contest_type into a foreign key. 2010-04-26 21:48:44 -07:00
Eevee
56a47575a3 Shuffled item categories. 2010-04-26 21:48:32 -07:00
Eevee
b5fd88bba4 Item tidying; fixed missing és, added ItemPocket.identifier. 2010-04-26 21:13:28 -07:00
Eevee
fa3d205e51 At last, imported item and berry data. #10 2010-04-25 23:23:52 -07:00
Eevee
25c81541ae Use fnmatch for filenameish glob parsing. 2010-04-24 15:37:55 -07:00
Eevee
6106737465 Tiny fix for CLI help. 2010-04-24 14:52:23 -07:00
Eevee
c9f32a8145 Loading big tables now shows a progress indicator. #180 2010-04-24 14:06:56 -07:00
Eevee
2204b95585 Overhauled CLI. #180
- Everything now accepts -i, -e, -q, and -v.

- Plumbing commands now announce what database/index they're using and
  where they got them from.

- New command status, which does nothing but still does the announcing.

- New command reindex, which recreates only the whoosh index.
2010-04-24 14:06:56 -07:00
Eevee
6de60fd30f Oops; Rash had its stats backwards. 2010-04-24 14:06:56 -07:00
Eevee
76065800ae Fixed some location names. #167 2010-04-24 14:06:56 -07:00
Zhorken
984b1372a9 Merge branch 'master' of git@veekun.com:pokedex 2010-04-24 03:01:42 -04:00
Zhorken
a8c0b582e2 Fixed references to "U-Turn" to "U-turn".
There were no references to Conversion 2 or Roar of Time.
2010-04-23 00:45:57 -04:00
a_magical_me
b80d2d2963 Fix location_area_encounter_rates
- encounter_type_id -> encounter_terrain_id

- Added a version_id column. Previous rates were from Diamond and
  HeartGold; these have been copied to Pearl & Platinum and SoulSilver,
  respectively, which i assume is accurate. RBY rates need to be added.
2010-04-21 10:57:23 -07:00
Zhorken
4bf3a962df Added missing R/B internal IDs. 2010-04-21 00:45:09 -04:00
Zhorken
15eeef833a Fixed "Roar Of Time" to "Roar of Time", too.
Shouldn't be so push-happy, I suppose.
2010-04-20 15:20:01 -04:00
Zhorken
3c0b60ecb3 Fixed Conversion 2 and U-turn's names.
Based on a Platinum text dump; I'm pretty sure Conversion2 was all one
word at some point.

Interestingly, the use messages for U-turn all read "___________ used
U-Turn!", but it's "U-turn" as the actual move name.
2010-04-20 15:06:04 -04:00
Eevee
b9a32beb35 Refactored valid-type handling in lookup.
- User-specified types are now merged with code-enforced ones, rather
  than being blindly clobbered.

- Prefix lookup now supports type prefixes.
2010-04-19 00:33:18 -07:00
Eevee
954d997b0e Fixed description for one-Pokémon targeting, and effect for Me First. #135 2010-04-18 23:38:35 -07:00
Eevee
7e73884d0c Fixed some missing colons in "🧑‍🔧". #185 2010-04-18 23:11:52 -07:00
Eevee
55dd46fae7 Support natures in lookup. 2010-04-18 22:43:33 -07:00
Eevee
78bff787f6 Fixed the hell out of the capture rate formula. #150
- Wobbles are based on WHICH number is greater than some pivot, not how
  many.  This was making everything totally wrong, especially 0 wobbles.

- HG/SS balls all modify capture rate, rather than ball bonus.

- Everything really is integer math; even the sqrts.  Bonuses are
  relative to 10, not 1.  HP is now treated as integer math, too.

- Implemented a minor game bug with very hard to catch Pokémon.
2010-04-17 02:16:42 -07:00
Eevee
6da2b325fa Added pokedex.savefile, which can encrypt/decrypt Pokémon save structs. 2010-04-16 23:09:34 -07:00
Eevee
67b36748e2 Made Encore effect a bit more accurate. 2010-04-16 23:09:33 -07:00
Eevee
733cfd4381 Sunflora can be tutored Earth Power in HG/SS. #149 2010-04-16 23:09:33 -07:00
Eevee
74d1a3c462 Once and for all, fixed Pt tutor moves. #126 2010-04-16 23:09:33 -07:00
Eevee
1d9e24a875 roomaji.py now handles "wu xe" and "shi xi" correctly. #132 2010-04-16 23:09:33 -07:00
Eevee
4ae8bb5f21 Added Pokemon.stat() accessor. 2010-04-16 23:09:32 -07:00
Eevee
e73eca020c Added canonical_pokedex, Pokedex.region, and some Pokédex descriptions. 2010-04-16 23:09:32 -07:00
a_magical_me
b3eb81225a Fix HGSS fishing encounter slot rarities.
<http://www.smogon.com/forums/showpost.php?p=2564048&postcount=215>
mingot has found the correct slot rarities for HGSS fishing encounters.
They are 40/30/15/10/5 for all rods. Surfing is the same as in DPPt.
2010-04-12 23:11:48 -07:00
a_magical_me
eeac034240 Fix RBY grass/water encounter slot rarities.
<http://tasvideos.org/PokemonTricks.html>
This page explains how the RNG in RBY works, and gives exact rarities.
They are out of 256 rather than 100, so some rounding is necessary to
fit them into the database.

====  =======  ======  ==========  =======
Slot   Range   Chance  Percentage  Rounded
====  =======  ======  ==========  =======
0       0-50   51/256  19.921875%    20%
1      51-101  51/256  19.921875%    20%
2     102-140  39/256  15.234375%    15%
3     141-165  25/256   9.765625%    10%
4     166-190  25/256   9.765625%    10%
5     191-215  25/256   9.765625%    10%
6     216-228  13/256   5.078125%     5%
7     229-241  13/256   5.078125%     5%
8     242-252  11/256   4.296875%     4%
9     253-255   3/256   1.171875%     1%
====  =======  ======  ==========  =======
2010-04-12 23:10:13 -07:00
a_magical_me
ef798afdcb Add slot index to encounter_slots 2010-04-12 23:06:15 -07:00
Zhorken
584057e6ed Fixed some misspelled German Pokémon names. #140 2010-04-12 23:34:12 -04:00
Eevee
82e797c6d0 Fixed lookup tests to, um, run. 2010-03-28 22:18:27 -07:00
Eevee
d995942b4f Remove absolute HP from the capture chance formula. 2010-03-28 22:18:27 -07:00
Eevee
c309f52d6a Roar and Whirlwind cancel Wish. 2010-03-28 22:18:26 -07:00
Eevee
852ab87ba3 Nope, shake formula dun use integers. 2010-03-28 22:18:26 -07:00
Eevee
b54501ef94 Why am I importing sqlalchemy.databases.mysql...? 2010-03-28 22:18:26 -07:00
Eevee
41c2ebdeaf Add locations to lookup. Wow, easy. 2010-03-28 22:18:26 -07:00
Eevee
043f8154ae Remove special lookup logic for forms. 2010-03-28 22:18:26 -07:00
Eevee
10ebe04999 Removed forme_name from lookup; added indexed_name to results. 2010-03-28 22:18:25 -07:00
Eevee
add2111205 Lookup index now contains default form names. 2010-03-28 22:18:25 -07:00
Eevee
907a24f863 Add 487-altered.png. Fixed form name. 2010-03-28 22:18:25 -07:00
Eevee
b367e70b49 Added natures table. 2010-03-28 22:18:24 -07:00
Eevee
df59b538d7 Ho-oh => Ho-Oh 2010-03-28 22:18:24 -07:00
Zhorken
085ba4ca56 Tweaked a couple of Pokédex descriptions. 2010-03-24 00:03:56 -04:00
Zhorken
d9000a788a Name the G/S/C Johto dex that instead of "New". 2010-03-24 00:02:32 -04:00
Eevee
d6fd697018 Totally overhauled lookup to use a class.
Now state is held within an object, rather than passed back to the
caller who must then pass it in again.  That was retarded and I don't
know why I ever did it.

Code is much cleaner now.

With apologies to anyone running annotate.
2010-03-21 23:27:47 -07:00
Eevee
f9c17584f3 Make lookup ignore accent marks. 2010-03-21 22:10:43 -07:00
Eevee
597ee5198b Added capture chance formula. 2010-03-21 03:16:24 -07:00
Eevee
a89a616203 Allow passing engine arguments to connect(). 2010-03-17 00:44:33 -07:00
Zhorken
419f65c90c Added language codes alongside the country codes.
Language codes are ISO 639-1; country codes are ISO 3166-1 alpha-2.

The country codes are important to keep for flags and stuff, I guess,
but reporting the language code as a short form for the language is
more correct.

Gonna see if I can do that, I guess.  I added the language codes mostly
just because I was adding languages.
2010-03-15 23:24:29 -04:00
Zhorken
1fcb06d64a Added German, Spanish, and Italian move names. 2010-03-15 23:23:02 -04:00
Zhorken
63ae75c2bd Sky Shaymin holds a Lum Berry in Platinum. 2010-03-15 15:21:00 -04:00
Zhorken
ec1f4ea0ec Replaced newlines and fancy quotation marks in DPPt flavor text. 2010-03-15 03:37:34 -04:00
Eevee
23f2a99be6 Fix Rough Skin, Roost, and formatting of Detect. 2010-03-15 00:10:09 -07:00
Eevee
3fc6883486 GRAVITY. DISABLES. SPLASH. 2010-03-15 00:10:09 -07:00
Eevee
3ea814661f Lookup no longer crashes if all type prefixes are bogus. 2010-03-15 00:10:09 -07:00
Eevee
2f90be3834 Fixed malformed reST in Recycle's move effect. 2010-03-15 00:10:08 -07:00
Eevee
47f5953457 Implemented rst as_text, for showing short move effects outside the Web. 2010-03-15 00:10:08 -07:00
Eevee
e0aeb771b2 Make rst as_html handle errors a little more nicely. 2010-03-15 00:10:08 -07:00
Zhorken
c50697bd6b Added wild held items for HeartGold and SoulSilver.
The only differences from Platinum are that Shuckle holds a Berry
Juice, Sky Shaymin holds a Lum Berry, and the *rizers are only held by
the final forms, only 5% of the time.
2010-03-15 01:54:31 -04:00
Eevee
f84aa3ab51 HG/SS Pokémon flavor text. 2010-03-12 08:46:26 -08:00
Eevee
07b8956da3 Fixed Hustle description. 2010-03-10 00:24:20 -08:00
Eevee
6e611d7a54 Fixed the hell out of all remaining form problems.
Every flavor page should work with no missing sprites.  Save perhaps for
Unown, because I honestly don't have them.

Every sprite exists as ###-form.png.  There is also still a ###.png,
containing a reasonable default form, so people who don't give a crap
about this mess can just use the numbered sprites.  Beta forms should
now all be ###-beta.png.

Form groups now have a notion of "in-battle", which is used to hide
overworld sprites when appropriate.

Form sprites have a first-class sense of being a default or not, too.

Deoxys is...  well, let's not talk about Deoxys.  Deoxys is fixed.
2010-03-10 00:19:05 -08:00
Eevee
430fbd9c0f Fixed Cherrim/Castform/Pichu form names; renamed a mass of sprites to match. 2010-03-08 22:33:58 -08:00
Eevee
a599ba1491 Fixed or clarified some eight move/ability effects. 2010-03-08 21:42:56 -08:00
Eevee
cdb80c711a Filled in some missing Pokémon colors. 2010-03-03 17:05:45 -08:00
Eevee
8280652dd2 Factored habitats into a separate table. 2010-03-03 00:53:00 -08:00
Eevee
5b100b1651 Factored Pokémon colors out into their own table. 2010-03-02 21:11:17 -08:00
Zhorken
123def9c68 Added accents to French Pokémon names.
Taken from http://www.pokepedia.fr/ (Liste des Pokémon dans l'ordre du
Pokédex National).  They apparently took them from the French Mystery
Dungeon games (Poképédia:Conventions de Style).

This also corrects some typos.
2010-02-22 00:37:54 -05:00
Zhorken
f24fb43c1b Corrected a docstring in rst.py. 2010-02-22 00:13:28 -05:00
Zhorken
cc6177ae55 Replaced ‘’“” with '" in Platinum Pokédex entries. 2010-02-22 00:13:16 -05:00
Zhorken
a2b0218035 Moved Gen-I internal Pokémon IDs to their own Pokédex. 2010-02-17 02:19:48 -05:00
Zhorken
3b88a83fff Added Pokédexes to replace dex numbers' generations.
This deals with Gen IV having two Sinnoh dexes and a Johto dex.
2010-02-17 02:16:59 -05:00
Zhorken
15bd2a89e2 Label Togepi and Riolu as babies.
They're bottom-stage, no-eggs Pokémon that evolve into things that can
breed.
2010-02-16 14:54:54 -05:00
a_magical_me
97593561f4 Add Gen III wild held items. 2010-02-08 19:01:21 -08:00
Eevee
7798bb7970 Fixed Bug Bite's effect. 2010-02-07 18:37:15 -08:00
Eevee
f4c314123d Unknown Dungeon => Cerulean Cave 2010-02-04 01:13:10 -08:00
Eevee
373ec780bc Filled in missing Vermilion port encounters. 2010-02-04 01:12:22 -08:00
Eevee
d169a24d97 Added Yellow fishing encounters. 2010-02-04 01:03:10 -08:00
Eevee
c324f0c629 Whoops; removed some R/B fishing from places with no water. 2010-02-03 20:52:14 -08:00
Eevee
5647d26765 Added Red/Blue fishing encounters. 2010-02-03 20:28:57 -08:00
Eevee
d41c96c23b Added Red/Blue/Yellow grass and surfing encounters. 2010-02-03 19:19:43 -08:00
Eevee
28bf303613 Filled in missing Kanto locations/areas. 2010-02-03 19:19:25 -08:00
Eevee
74a4e4ccee "PokéRadar" conditions values were missing their accents. 2010-02-02 23:56:35 -08:00
Eevee
429e660e8e Updated Good/Super Rod rarities to be.. correct. 2010-02-02 00:07:26 -08:00
Eevee
a7496ec617 Fixed comments in pokedex.lookup. 2010-02-02 00:07:26 -08:00
Eevee
81eaf4a9ef Made regions first-class objects. 2010-01-28 01:21:35 -08:00
Eevee
e3c6cf7d10 Updated some location/area names; collapsed Turnback Cave.
This had been done before, but some of the changes were lost when I
re-ripped Diamond and Pearl.

Also, Turnback Cave has been collapsed into seven sections rather than
four.  The previous change in particular ignored that the encounter
rates for the first three areas were lower than elsewhere.  I'm
conjecturing wildly, but I believe those first three are the actual
pillar rooms, and the following four identical groups are the groups of
rooms between the pillars.
2010-01-28 01:21:35 -08:00
Eevee
e163c13038 Re-re-ripped HG/SS encounters.
Turns out "fishing swarm 2" is time of day; it represents some water
Pokémon that only appear at night.
2010-01-28 01:21:34 -08:00
Eevee
49be86a9d3 Redumped encounters for all five gen4 games. 2010-01-28 01:21:34 -08:00
Zhorken
4384d56c2c Added types' generations and pre-gen-IV damage classes. 2009-12-19 23:09:27 -08:00
Zhorken
37fa52ed47 Added ???'s type efficacies to the database. 2009-12-19 23:09:23 -08:00
Zhorken
341b141cf1 Fixed "Official Romaaji" -> "Official Roomaji". 2009-12-19 23:09:20 -08:00
Eevee
c1c0225eb8 Optimized the fuck out of pokedex load.
Major change was to skip the ORM entirely.  Sped it up 500%.
2009-12-09 18:15:51 -08:00
Eevee
e6635b4897 Refactored encounters schema so HG/SS can work.
Conditions are now condition values; condition groups are conditions.
Types are now terrain.  Slots are first-class things.

Encounters' condition values and slots' conditions have been broken off
into their own tables, as HG/SS has several slots affected by multiple
conditions.
2009-12-09 14:35:29 -08:00
Eevee
2e49f953c3 Added PokemonMove.machine relation. 2009-11-28 02:20:02 -08:00
Eevee
0a706d44a3 Added ISO-3166 country codes to languages table and lookup. 2009-11-23 21:50:45 -08:00
Eevee
edcd424508 Added short_effects for no-effect moves. 2009-11-23 21:50:18 -08:00
Zhorken
28f6c545c9 Added French move names. 2009-11-13 17:16:26 -08:00
Eevee
40d57b2dcc Renamed ????? to ???, as the D/P text dump indicates is correct. 2009-11-11 22:11:44 -08:00
Eevee
4a9e088d75 Rearranged move effect categories by primary key. 2009-11-10 20:06:30 -08:00
Eevee
cb65780a51 Added HG/SS tutor moves. #109 2009-11-10 20:04:12 -08:00
Eevee
11c0bb01fd Added move categories. #41 2009-11-08 17:00:45 -08:00
Eevee
570f34554e Minor fixes to a handful of move effects. 2009-11-08 16:58:30 -08:00
Eevee
2d39b7c530 "Unknown 71" is actually Route 47. 2009-10-20 00:50:07 -07:00
Eevee
a12a5217c5 Removed some extraneous Pidgeotto R/B moves that snuck in somehow. 2009-10-11 15:22:38 -07:00
Eevee
9b66a5d150 Re-re-ripped gen 4 moves to fix an error with the rip script. 2009-10-11 01:26:47 -07:00
Eevee
1206fe563b Forgot to uncomment the hiragana sokuon code. 2009-10-11 00:46:45 -07:00
Eevee
04a2e3fd3d Prefix lookup is now case-insensitive. 2009-10-11 00:39:52 -07:00
Eevee
9dba6867fa Reloaded Red/Blue moves. Same story, again. #31 2009-10-03 19:32:46 -07:00
Eevee
7055061add Rhyhorn and Rhydon had their gen1 internal ids backwards. #31
This meant their reloaded Yellow moves were switched around.
2009-10-03 19:08:11 -07:00
Eevee
04839a3fc3 Reloaded Yellow moves. Same story. #31 2009-10-03 18:02:43 -07:00
Eevee
38e9c8f87e Reloaded Gold/Silver moves to fix level-up move order. #31
Similar sorts of fixes as with Crystal.  Good lord.
2009-10-02 22:24:29 -07:00
Eevee
651747d6b2 Reloaded Crystal moves to fix level-up move order. #31
This also fixes an absolute TON of errors with evolved Pokémon learning
a move both at level 1 and the pre-evolution's level, as well as
miscellaneous other problems.
2009-10-02 22:22:52 -07:00
Eevee
95f7a61b35 Fixed Deoxys's gen 3 form moves. #31
Only the version group a forme actually exists in now has any moves for
that forme.

In addition, Deoxys formes were not showing any gen 3 moves at all
previously, because they were marked as only existing in gen 4.  This
has been fixed.
2009-10-01 00:28:51 -07:00
Eevee
6505e57fca Reloaded FR/LG moves to fix level-up move order. #31 2009-09-30 00:46:08 -07:00
Eevee
754de42a96 Reloaded Ruby/Sapphire moves to fix level-up move order. #31 2009-09-30 00:18:10 -07:00
Eevee
08a2816404 Reloaded Emerald moves to fix level-up move order. #31 2009-09-29 21:38:00 -07:00
Eevee
28be0b3c60 Added hiragana support to roomaji.py. #100 2009-09-28 21:29:01 -07:00
Eevee
c66fe4042c Added a prefix_lookup() function, for suggestions. 2009-09-28 20:59:53 -07:00
Eevee
c1fb9a2a5f Added Pichu form description so its page actually works. 2009-09-24 22:18:03 -07:00
Eevee
95d8461cfb Gave names to a bunch of HG/SS areas. 2009-09-20 23:24:49 -07:00
Eevee
51afceab9c Added Rotom form moves for HG/SS. 2009-09-20 19:19:55 -07:00
Eevee
c2f2e077ce Added HG/SS machines. 2009-09-18 21:45:37 -07:00
Eevee
7aa391c96f Added contest combos. 2009-09-15 20:04:22 -07:00
Eevee
6eb581d76e Marked sprite forms with what version group introduced them. 2009-09-15 00:46:11 -07:00
Eevee
9ec97e2bc3 Added move flavor text. 2009-09-14 22:18:01 -07:00
Eevee
33d0e1e280 Added super contest effects. 2009-09-14 22:07:08 -07:00
Eevee
beb9be4084 Added preliminary HG/SS encounter data. 2009-09-14 21:18:47 -07:00
Eevee
97d2b09d75 Balls. Last commit was only data. Here's move flag code. 2009-09-14 08:29:05 -07:00
Eevee
ee73eeabda Added move flags. Fixed Magic Coat description. 2009-09-13 23:12:17 -07:00
Eevee
990469bcd5 Added foreign move names. Japanese only so far.
Also fixed roomaji conversion to not die spectacularly when given
hiragana.  For some reason I let it know about hiragana soukuon and
youon, but nothing else, so it gets totally confused.
2009-09-13 21:06:15 -07:00
Eevee
149b34b888 When loading Pokédex data, commit every 1000 rows.
Mostly done to fix RAM usage issues, but seems to have increased speed slightly.
2009-09-13 20:10:20 -07:00
Eevee
5deb9b2d16 Fixed use of split() in lookup. Now strips whitespace. #94 2009-09-13 20:09:31 -07:00
Eevee
b409a0cadf Re-ripped Diamond/Pearl level-up moves.
No errors in my old data, but some orders are different from Pt.
2009-09-12 23:15:57 -07:00
Eevee
aa8a33e45c Re-ripped Platinum moves directly.
This gives the correct ordering to level-up moves that have the same
level.

It also fixes move errors with Wartortle, Blastoise, Persian, Golduck,
Rapidash, Kabutops, Croconaw, Feraligatr, Noctowl, Sharpedo, Piplup's
family, Shinx's family, and Yanmega.  Yikes.
2009-09-12 23:02:01 -07:00
Eevee
1d4425bcb8 Raichuu, not Raichyuu 2009-09-12 14:49:02 -07:00
Eevee
e5a692b2ac Added HG/SS egg and level moves. (Thanks, Arty2) 2009-09-10 23:32:41 -07:00
Eevee
3305fce3cc Clarified some move target descriptions. 2009-09-10 10:21:09 -07:00
Eevee
774b69f5bd Made short_effect also an rST column, so effect chance works.
Added support for types in move effects.
2009-09-10 10:20:48 -07:00
Eevee
fc18219158 Added __singlename__ property to tables that have corresponding dex pages. 2009-09-10 10:17:59 -07:00
Eevee
c4b2d8fee3 Rewrote every single move effect. #55 2009-09-10 10:17:14 -07:00
Eevee
585cb31c0a Added semi-magical reST parsing for move effects. 2009-08-31 21:37:29 -07:00
Eevee
c545fbf764 Moved damage classes to a separate table. #76 2009-08-26 22:30:07 -07:00
Eevee
2853c3a42b Added alt Shaymin/Giratina/Rotom moves for Platinum. #5 2009-08-25 23:16:17 -07:00
Eevee
e2bd074146 Fix crash when stdin has no encoding. 2009-08-25 08:07:54 -07:00
Eevee
f5853c0a0b Added random lookup. #57 2009-08-24 22:59:39 -07:00
Eevee
9e3d8b317d Wildcard lookup! #89
Test suite no longer reloads the entire database.  Takes too long.

Factored out some magic numbers in lookup().
2009-08-24 22:04:55 -07:00
Eevee
11989d0db2 Some minor lookup refactoring.
Wrote a little add() function to clean up the duplication of
add_document().

Delete the index directory if it exists and we're being forced to
recreate it.
2009-08-24 21:50:19 -07:00
Eevee
25577a3397 Revert "Renamed de-accented item names in the db."
Somehow that worked..  backwards, and removed the accents.

This reverts commit 204a43b3b15946a64b971966706fba713065b7ea.
2009-08-24 21:27:21 -07:00
Eevee
69ffe01a46 Filled in missing Pokédex flavor text, even when duplicated. 2009-08-24 00:22:15 -07:00
Eevee
19152deb64 Renamed de-accented item names in the db. 2009-08-23 22:07:28 -07:00
Eevee
293bcaf724 Added whoosh and sqlite files to .gitignore. 2009-08-23 20:46:21 -07:00
Eevee
c0d6828f19 Added lookup tests. #15 2009-08-23 20:43:39 -07:00
Eevee
d00357a1ae Restored accents on Poke * items. 2009-08-23 19:18:17 -07:00
Eevee
909e61cc97 Added support for type: prefix and forme lookup. #15 2009-08-23 16:27:13 -07:00
Eevee
a7c0830e48 Return correctly-cased foreign names from lookup. #15 2009-08-22 20:49:07 -07:00
Eevee
a9a88ec3e4 Finally weight lookup results by language. #15 2009-08-22 19:44:57 -07:00
Eevee
9a20969336 Flesh out lookup by number. #15
Note that, unlike SVN veekun, entering "133" will return ANYTHING with an id of 133.
2009-08-22 18:56:02 -07:00
Eevee
2bc41e2c62 Added support for lookup by other language name. #15
English fuzzy matches are preferred, followed by Roomaji and then
everything else.

The return tuple from lookup() now has a `name` parameter for the actual
name that was matched.
2009-08-22 01:13:34 -07:00
Eevee
4e51867e95 Added lookup support for foreign language names. #15
Changed lookup()'s return value to be a list of named tuples so the
caller can know which language each result is in.
2009-08-21 00:30:01 -07:00
Eevee
0b5eba6620 open_index was returning an index instead of a SpellChecker. #15 2009-08-20 21:07:06 -07:00
Eevee
0a893be01d Allow lookup() callers to pass in their own whoosh indices. 2009-08-20 17:36:31 -07:00
Eevee
0946db6b8b Fixed some weirdness using version_group as a one-to-many. 2009-08-18 23:50:36 -07:00
Eevee
0300e01cff Removed whoosh hacks; 0.3 obviates them. #15 2009-08-18 23:50:35 -07:00
Eevee
16072ceb44 Added setup command and made lookup work sanely. #15
The setup command loads the default data into a default location, then
creates a whoosh index in a default location.

get_index is now open_index and can be made to explicitly recreate the
index.  It also actually opens the index if it already existed, even
across processes, now that FileStorage is working.

The lookup command takes no switches for aiming at a different database;
it only uses the default data stores.
2009-08-18 23:50:13 -07:00
Eevee
fd5e863eed Added --quiet switch to dump/load. 2009-08-18 18:36:45 -07:00
Eevee
1a7d046fbc Vastly improved the pokedex import/export UI.
csvimport is now load; csvexport is now dump.

Both take an optional -e switch to specify an engine, but will happily
use a default SQLite database in the pokedex package directory.

Additionally, the CSV directory is now controlled by the optional -d
switch, and defaults to Doing The Right Thing.

So `pokedex load` now does exactly what you'd expect: loads the data
from the right files into a consistently-located database.
2009-08-18 18:02:53 -07:00
Eevee
238487c908 Fixed whoosh index creation to work with 0.2.x. #15 2009-08-16 21:03:49 -07:00
Eevee
ba08a41f2f Fixed romanization of herakurosu and herugaa.
The "he" characters were erroneously hiragana instead of katakana.
2009-08-13 17:40:47 -07:00
Eevee
545cbc8928 Added generation_id to moves. 2009-08-12 17:24:35 -07:00
Eevee
a89e00acc3 Added Surfing Pikachu and Volt Tackle Pichu. #14 2009-08-09 23:08:18 -07:00
Eevee
a253df0280 Added machines table. 2009-08-09 23:07:23 -07:00
Eevee
9f9c29a398 Egg moves are passed down by the father, not the mother. 2009-08-04 16:11:53 -04:00
Eevee
ce23a82e50 Added Move.effect and VersionGroup.generation relations. 2009-08-03 22:59:39 -04:00
Eevee
e8ed55c297 Improved CSV import speed by several orders of magnitude. 2009-07-31 00:03:02 -07:00
Eevee
7566351ce1 Added growth rate formulas in LaTeX format. 2009-07-28 22:45:55 -07:00
Eevee
398545a77f Make help message readable for people without a UTF-8 terminal. 2009-07-28 18:31:06 -07:00
Eevee
6a8569b722 pokemon_moves table no longer tries to have an autoinc column. 2009-07-28 11:22:57 -07:00
Eevee
d997e27112 Changed exception syntax to work with Python 2.5. 2009-07-28 08:25:11 -07:00
Eevee
7347da558a Added Move.type relation. 2009-07-27 19:09:11 -07:00
Eevee
20d40364b1 Lookup search lowercases the term again; whoops. #15 2009-07-27 18:45:43 -07:00
Eevee
76d7bbe0e7 Added moves, types, items, and abilities to lookup index. #15 2009-07-26 23:18:11 -07:00
Eevee
bf5ce11242 Added Pokémon movesets. #14
Has an 'order' column stubbed out for ordering moves learned at the same time.
2009-07-26 23:03:10 -07:00
Eevee
64d3c7d5f1 Fixed csvexport to write in primary key order.
Good news: This no longer relies on InnoDB's default row order.

Bad news: InnoDB in MySQL 5.0 has a bug where it will sort rows
physically according to a secondary index, if there's a composite
primary key and a single-column index and the phase of the moon is
right.  So a couple tables have been, once again, reordered -- but
correctly this time.

Good news: This bug will no longer fuck me up!
2009-07-26 22:19:27 -07:00
Eevee
cce9c26125 Removed the need for a spelling column in the lookup index. #15
Whoosh's spelling module unfortunately ignores any "words" that don't
look like words, even though the algorithm words fine with arbitrary
input.

I had to clone some code from whoosh.spelling, but avoiding the
isalpha() check solved a bunch of problems.  Now the index happily
compares against anything I feed into it.
2009-07-26 00:37:37 -07:00
Eevee
bbfaf43d2b Reordered pokemon_items.csv in correct primary key order. #10 2009-07-25 20:30:22 -07:00
Eevee
1b21c953fe Added icons and database rows for HG/SS. #32 2009-07-25 17:27:27 -07:00
Eevee
25baa7c4c0 Migrated a roomaji library over from spline-pokedex.
Now includes support for small kana and youon, which were causing raw
kana output and crashes, respectively.
2009-07-25 17:21:53 -07:00
Eevee
d4077cc71d Added command_ prefix to CLI commands to fix import problems. 2009-07-25 02:43:30 -07:00
Eevee
b13ffac247 Pokédex lookup now uses a whoosh index and spell-checker. #15 2009-07-25 01:28:33 -07:00
Eevee
8fb0e550ad Stubbed in a simple lookup command. #15 2009-07-22 23:44:53 -07:00
Eevee
14a6545fa6 Fixed bad/confusing grammar in Aftermath's description. 2009-07-21 23:05:44 -07:00
Eevee
f23a3401f2 Stubbing out a lookup function. #15 2009-07-21 00:12:25 -07:00
Eevee
7c7e0484c2 Very simple items table and wild held item data. #10 2009-07-17 23:33:36 -07:00
Eevee
634ef3ed1e Fixed a slew of foriegn key import problems. #29
Curse's type_id was 0, which is bogus; this has been fixed by creating a
real ????? type.
Fourth-gen moves all had zero as a contest effect id, which was also
bogus.
Pokémon 494 and 495 were junk and have been scrapped entirely.
pokemon_form_groups's description column was too short.

pokedex's connect() now takes kwargs passed to sessionmaker().

A more major change: some tables, like pokemon, are self-referential and
contain rows that refer to rows later in the table (for example, Pikachu
evolves from Pichu, which has a higher id).  At the moment such a row is
loaded, the foreign key is thus bogus.  I solved this by turning on
autocommit and wrapping add() in a try block, then attempting to readd
every failed row again after the rest of the table is finished.  Slows
the import down a bit, but makes it work perfectly with foreign key
checks on.
2009-07-03 23:12:13 -04:00
Eevee
185264a288 Added Platinum Sinnoh dex numbers. #24 2009-06-26 21:27:35 -07:00
Eevee
4397dfbb0c Added remaining Pokémon form data. #5
Types, abilities, egg groups, and stats for Shaymin, Giratina, and Rotom forms.
Updated height and weight for Shaymin and Giratina forms.
Added Giratina's form descriptions and updated Shaymin's to mention link
battles and freezing.
2009-06-20 22:32:37 -07:00
Eevee
f9391b409a Added some Pokémon methods to hide form weirdness. #5 2009-06-15 20:48:27 -07:00
Eevee
61f973ab27 Added Platinum forms. #5 2009-06-15 20:48:02 -07:00
Eevee
e2353855be Added other languages' Pokémon names. 2009-06-07 01:36:17 -07:00
Eevee
15ee3fcccf Fixed csvimport to load in table dependency order. 2009-05-28 21:16:18 -07:00
Eevee
0af6b1c8ab Oops! Added encoding line to tables.py. #6 2009-05-17 03:01:17 -07:00
Eevee
204fe28c7a Documented crazy encounter schema. #7 2009-05-17 00:18:10 -07:00
Eevee
b9820bec29 Consolidated Solaceon Ruins and Old Chateau areas. #7
All Solaceon Ruins rooms are identical, so there is no reason to have
them duplicated.

All the Old Chateau rooms are similarly identical, EXCEPT for the lone
room that can spawn Gengar.  I also left the Rotom room in, for when I
get around to adding event encounters.
2009-05-16 23:34:24 -07:00
Eevee
29f37d89e5 Another rearrangement of CSV rows by primary key. 2009-05-16 22:31:04 -07:00
Eevee
42bcb31bdd Improved some location and area names. #7
Great Marsh is now Great Marsh instead of Safari Zone.

Ruin Maniac Tunnel has been consolidated into one location, and the
areas are actually named informatively.

Turnback Cave has more appropriate area names.

Routes with two parts now mention the cardinal direction in the area
names.  Also, several town names have been fixed.

Lake Verity's area names now mention WHAT they are before/after.
2009-05-16 22:16:19 -07:00
Eevee
8812dd9654 Fixed table loading under SQLAlchemy 0.5.3.
Apparently the secret property on a singleton hidden in the guts of
SQLAlchemy has been made private recently, so what I wanted to do (get a
list of all ORM classes) is now impossible.  I gave up on trying to find
a real solution and just slapped together something using dir().
2009-05-02 17:44:26 -07:00
Eevee
9fc09eb0ec Reordered some rows in mapping tables.
This does NOT actually change the data at all!  These tables were
apparently created with no key defined, so the rows were in arbitrary
order -- but when I created and populated the tables in MySQL on
nyarumaa, the keys were defined correctly, and InnoDB ordered them by
key.  This is about what should happen anyway and the discrepancy adds
clutter when dumping corrections, so I'm just committing the new order.
2009-05-01 06:29:19 -07:00
Eevee
d9a2d96ede Made csvimport somewhat tolerant of load errors.
It used to abruptly abort if a csv file were missing, which wasn't very
nice when I'd just added a new table definition and was trying to reload
everything else.

Now it prints a status per table while loading, and will declare missing
tables to be...  missing.
2009-05-01 06:24:09 -07:00
Eevee
9f6f210fa5 Added encounter data for Diamond, Pearl, and Platinum.
Finally!  Location order is the same as from the old dex, which was
something like the game but ultimately arbitrary, so it's not any better
now.

This takes a very different approach to storage, rather than copying the
game exactly and trying to fix everything in code.  Comments coming
shortly so other people can actually make use of this.
2009-05-01 06:20:18 -07:00
Eevee
afa6c061b6 Added a function for the EXP formula. 2009-03-27 19:49:20 -04:00
Eevee
67af605e8d Added a couple extra female back sprite flags, new in Platinum.
Renamed the female-sprite columns as for 'gen4' rather than 'dp'.
2009-03-25 20:48:36 -04:00
Eevee
85ee27dedd Fixed CSV import's handling of Boolean columns. 2009-03-25 20:43:09 -04:00
Eevee
15eae9ed6c Added Python versions of stat formulae. 2009-03-22 22:07:31 -04:00
Eevee
c4883a95f4 Added relations for evolution.
Alternate Formes also now have NULL evolution chain ids.
2009-03-20 19:28:41 -04:00
Eevee
ac325b620d CSV import now respects NULLability of columns.
Empty strings loaded into NULL columns are changed to NULL instead.
2009-03-08 21:34:48 -04:00
Eevee
20c9c23f51 Fixed some MySQL import problems.
Tables weren't being defined as UTF-8 if that wasn't the server default.

A lot of tables were trying to create erroneous auto_increment columns.

Foreign key checks were pretty much fucking everything up.
2009-03-07 18:54:01 -08:00
Eevee
774690026c Added habitat sprites. Renamed flavor to flavor_text.
pokemon_flavor_text.flavor -> pokemon_flavor_text.flavor_text
2009-03-06 19:14:42 -08:00
Eevee
e212038be0 Added Pokemon body shapes. 2009-03-04 19:29:43 -08:00
Eevee
8fa671403b Few more relations, for egg groups and evo chains. 2009-03-03 17:58:27 -08:00
Eevee
7315189b10 Added region names to the generations table. 2009-03-03 17:58:10 -08:00
Eevee
94c70f00d3 Added a generation_id column to the pokemon table. 2009-03-02 01:06:31 -08:00
Eevee
35ac91dc48 Added more table relations, for spline-pokedex Pokemon page. 2009-03-01 19:40:02 -08:00
Eevee
2e3c87b1b8 Fixed Pokemon female-sprite flags.
Pokemon that have both a female front and back sprite in Gen IV didn't
import the flags at all.  Some goof on my part.
2009-02-27 18:42:12 -08:00
Eevee
e6f5da6dab Added a whole bunch of foreign keys. 2009-02-23 23:31:35 -08:00
Eevee
77ee4eb8a0 Moved CSV sources into pokedex/.
This appears to be the only way to make data access in eggs actually
work, and is why the Platinum sprites are in pokedex/ too.
2009-02-22 23:44:40 -08:00
Eevee
bad044d1d8 Initial commit, with much of the data imported.
Includes a wrapper script 'pokedex' that can, so far, read data from a
db and spit out CSVs or deploy CSVs to a db.
2009-02-05 00:05:42 -08:00