Commit graph

1111 commits

Author SHA1 Message Date
Eevee (Lexy Munroe)
b8a5f634d5 Port RBY dumping code to Construct 2.8 2016-12-19 16:12:54 -08:00
Eevee (Lexy Munroe)
508b5cd88f Fix gbz80 code search on PyPy
It doesn't support % on bytestrings yet, alas.
2016-12-19 16:07:59 -08:00
Eevee (Lexy Munroe)
a6c63733f0 Clean up and comment ETC1 decoder 2016-12-16 14:38:58 -08:00
Eevee (Lexy Munroe)
b12166648e Checkpoint some Sun/Moon progress
The bulk of the data is in the same format as ORAS, so most of the
changes were just tracking down where files moved to.

The code was a mess, and is still a mess.  Oh, well.

- Made pretty good progress on dumping ORAS encounters; remaining work
  largely boils down to figuring out names for individual zones.

- Hacked the CLIM decoder to also work with SUMO's slightly modified box
  sprite format, FLIM.

- Added a Nintendo-flavored ETC1 decoder; this is the format used for
  Pokédex sprites in SUMO.

- Cleaned up sprite dumping a wee bit.
2016-12-07 06:29:44 -08:00
Eevee (Lexy Munroe)
7f7cca6c58 Improve schema ergonomics a bit, especially around slicing
The previous approach was moving towards having each attribute on a
locus do multiple different things, depending on context, and I think
that was headed towards being a mess.

This idea is to have actual locus objects be dumb containers, and have
various wrappers that call methods on the attributes to do interesting
work.
2016-11-21 19:28:55 -08:00
Eevee (Lexy Munroe)
aa92ccb7ad Make the schema minimally usable on Python 3 2016-11-21 19:27:28 -08:00
Eevee (Lexy Munroe)
684aef2506 Clean up ORAS Pokémon sprite ripping
Box sprites are now ripped paletted, complete with an sBIT chunk.  Box
sprites are also saved with the right form names.  A lot of
name-mangling and error-checking code was pulled out of the binary
parsing stuff and shared between both types of sprites.
2016-10-15 18:16:41 -07:00
Eevee (Lexy Munroe)
6c135e559e Implement writing localized properties through a wrapper object 2016-09-16 17:00:12 -07:00
Eevee (Lexy Munroe)
1cff16f256 Fix off-by-ten error in imperial weights 2016-09-16 16:59:09 -07:00
Eevee (Lexy Munroe)
dd3d3a3f25 Dump flavor text 2016-09-10 21:23:57 -07:00
Eevee (Lexy Munroe)
50344e6794 Allow dumping all of Gen 1 simultaneously 2016-09-10 18:05:41 -07:00
Eevee (Lexy Munroe)
44fdaee4d9 Replace most of the address-hunting with code matches 2016-09-10 18:05:00 -07:00
Eevee (Lexy Munroe)
122da8d885 Write a gbz80 pattern matcher, for more robust address sniffing
With this, Pokémon names are finally detected correctly from both R/G
and R/B.  Hurrah.

Yellow doesn't work yet, though.  Sigh.
2016-08-21 16:44:07 -07:00
Eevee (Lexy Munroe)
969d671c48 Make great strides towards an actual game-aware API
Huzzah!

Also, I decided to namespace identifiers.  For now.  We'll see how it
goes.
2016-08-14 00:15:30 -07:00
Eevee (Lexy Munroe)
aa32cf0b53 WIP: Add what I have of gen1 ripping stuff 2016-08-12 18:34:11 -07:00
Eevee (Lexy Munroe)
949eafb957 Initial gen6-to-yaml ripping stuff 2016-02-26 10:05:51 -08:00
Eevee (Lexy Munroe)
54ea67a804 Fix pokedex dump under Python 2 AND 3, at the same time even 2015-11-04 20:10:27 -08:00
Eevee (Lexy Munroe)
b581c5205a Remove some bogus ORAS egg moves 2015-11-04 20:03:17 -08:00
Eevee (Lexy Munroe)
e0f4d3be7a Fix pokedex dump under Python 2 2015-11-04 20:03:08 -08:00
Eevee (Alex Munroe)
0ff24b4dc8 Fix the CLI in py3 2015-10-05 16:29:21 -07:00
Eevee (Alex Munroe)
b76b74e7a6 Compat with Python 3.3+ 2015-10-05 08:12:23 -07:00
Eevee (Alex Munroe)
d0e8f503b8 Eerie Impulse lowers Special Attack, not Attack 2015-10-05 05:27:22 -07:00
Eevee (Alex Munroe)
74c779efe6 Add a missing period to Flower Shield's short effect 2015-10-05 05:09:37 -07:00
Eevee (Alex Munroe)
8fc636a3e6 Shadow Blast is physical
According to Bulbapedia and an email I got, anyway.
2015-10-05 05:04:17 -07:00
Richard Gottschalk
e798d18c4e fixed id for german encounter method prose 2015-09-24 22:08:23 +02:00
Richard Gottschalk
adfbf7514b added german translation for "Walking on rough terrain" 2015-09-24 22:05:24 +02:00
Richard Gottschalk
6ef2e0182e added german translations for encounter method proses 2015-09-24 19:52:56 +02:00
Richard Gottschalk
c5201b12d8 fixed german translation of "Alpha Sapphire" version name 2015-09-24 03:30:15 +02:00
Richard Gottschalk
a626e9aa27 added german translation for shadow type 2015-09-24 03:29:32 +02:00
Richard Gottschalk
54e8cf949a added italian region names 2015-09-23 18:20:07 +02:00
Richard Gottschalk
b0f6cc0bd3 added japanese region names 2015-09-23 18:19:33 +02:00
Richard Gottschalk
a8b4b34c70 added french version names for OR/AS 2015-09-23 18:18:52 +02:00
Richard Gottschalk
e57eedbf18 added italian version names 2015-09-23 18:18:19 +02:00
Konrad Borowski
d467a45354 Add ORAS move methods
This allows comparing Pokemon using ORAS version as reference.
2015-08-23 18:29:17 +02:00
Eevee (Alex Munroe)
a9503c2436 Merge branch 'oras' 2015-08-20 14:36:13 -07:00
Eevee (Alex Munroe)
fdd6995721 ORAS move and ability flavor text. 2015-08-13 00:05:01 -07:00
Eevee (Alex Munroe)
2292b62792 ORAS Pokémon flavor text. 2015-08-13 00:00:59 -07:00
Eevee (Alex Munroe)
b111104869 ORAS move names/stats and the Rayquaza tutor. 2015-08-08 18:22:31 -07:00
Eevee (Alex Munroe)
ccb252932c Oops, remove ORAS tutored moves that aren't actually teachable. 2015-08-08 02:27:00 -07:00
Eevee (Alex Munroe)
1411a7422d ORAS machines. 2015-08-08 00:10:26 -07:00
Eevee (Alex Munroe)
330e294371 ORAS learnsets. 2015-08-07 23:58:38 -07:00
Andrew Ekstedt
a05a298e3f Regenerate pokemon.order and pokemon_forms.order. 2015-06-19 01:05:50 -07:00
Andrew Ekstedt
811eada23b Set form_order for new forms. 2015-06-19 00:59:47 -07:00
Andrew Ekstedt
776210ce0d Add new Pokémon forms from OR/AS.
This is all the Pokémon data except moves and held items, which need to be
ripped separately for all Pokémon.

Note that Cosplay Pikachu and friends are technically in the Undiscovered egg
group, but egg groups are a property of PokemonSpecies so i can't represent
that here.

English names only for now. Still need to add names for old default forms,
e.g., Hoopa Confined.

Still need to regenerate the order columns.

Looks like pokemon_form_generations and pokemon_game_indices haven't been kept
up to date, so i guess i'll have to update those too.

Updates #141.
2015-06-19 00:43:34 -07:00
Andrew Ekstedt
7d1b8cc4f8 Improve table docs w.r.t. ids and game indices.
Went though the table docs and noted which tables have ids that correspond
to game ids, and explained why we sometimes have ids in the 10000s.

Since docs attached to id columns aren't displayed in the web documentation,
these edits all go in the class docstring, and i took the liberty of deleting
the id column docs from every table i touched.

Also: added some words about how to get to the species from pokemon and
pokemon_form.

Also: note that item flags are not official (they are a holdover from
brownkun) and item pockets are sort of kind of official (they originated from
D/P i believe, but i'm not sure how we've been assigning them for newer items).

Pertains to #99.
2015-06-17 16:38:16 -07:00
megadrifter-pt
56e212f09e Add some French translations 2015-06-17 12:06:00 -07:00
Andrew Ekstedt
c3e0c17409 Add new abilities from OR/AS.
Updates #141.
2015-06-13 13:49:07 -07:00
Andrew Ekstedt
b8fc3d83f5 Add OR/AS pokedex numbers.
I probably butchered the German translations, but whatever.
If anyone cares, someone will fix it.

Updates #141.
2015-05-31 13:34:40 -07:00
Andrew Ekstedt
c4f1741a79 Add versions for OR/AS.
Updates #141.
2015-05-31 13:34:29 -07:00
Andrew Ekstedt
93988d966c load: Use COPY FROM STDIN on PostgreSQL.
COPY FROM FILE requires database superuser permissions,
because of the obvious security implications.

COPY FROM STDIN has no such restriction.

Also do some cleanup while we're here.
2015-05-30 22:48:20 -07:00