Commit graph

671 commits

Author SHA1 Message Date
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
8b3614a3c8 Merge branch 'master' of git@veekun.com:pokedex into HEAD 2009-07-27 00:09:18 -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
6523dd8ba5 Migrated a roomaji library over from spline-pokedex. 2009-07-25 17:21:39 -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
8e08f88fd8 Added a README and licensed under MIT. 2009-07-23 00:04:47 -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
418ac755e3 Merge branch 'master' of git@veekun.com:pokedex 2009-07-05 17:16:29 -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