- Pokémon shapes are now dumped
- Machines were being dumped slightly out of order; they are now correct
- Item price is now dumped correctly
- Identifiers are now computed to match veekun for all Pokémon
- Several bugs with evolutions were fixed
- Shedinja is now special-cased, alas
- Items are now loaded into the db
- Pokémon are now loaded into the db, mostly correctly
Specifically:
- Add support for detecting FLIM format
- Add support for more color formats
- Add a small decoded image type that knows how to write itself out as
a PNG
- Improve ETC1 decoder to work with images whose dimensions are not
powers of two, images with no alpha channel, and images with the
strange FLIM pixel order
- Port the gen 6/7 extractor to Construct 2.8
- Switch to using script tags in language names, to distinguish Japanese
kana from kanji and Simplified from Traditional Chinese
- Drop the load-time merging of kanji and kana
- Add paths to various text files in SUMO
- Add form names for SUMO Pokémon
- Clean up identifiers a bit, especially the distinction between species
and Pokémon
- Use the Pokémon schema type to dump what we have so far, and give it a
couple more fields that didn't exist in gen 1
- Get movesets dumping correctly
- Special-case a bunch of weirdness, where the number of dex sprites
doesn't match the number of models in SUMO
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.