Overhaul the Pokémon form schema. #286 #179 #379

This commit is contained in:
Zhorken 2010-11-29 18:51:50 -05:00
parent 4948d98b81
commit 49b7502099
8 changed files with 1519 additions and 865 deletions

File diff suppressed because it is too large Load diff

View file

@ -2025,10 +2025,3 @@ pokemon_id,pokedex_id,pokedex_number
648,8,154
649,1,649
649,8,155
10001,4,202
10002,4,202
10003,4,202
10004,5,46
10004,6,46
10005,5,46
10005,6,46

1 pokemon_id pokedex_id pokedex_number
2025 648 8 154
2026 649 1 649
2027 649 8 155
10001 4 202
10002 4 202
10003 4 202
10004 5 46
10004 6 46
10005 5 46
10005 6 46

View file

@ -319,6 +319,3 @@ from_pokemon_id,to_pokemon_id,evolution_trigger_id,trigger_item_id,minimum_level
633,634,1,,50,,,,,,,,,
634,635,1,,64,,,,,,,,,
636,637,1,,59,,,,,,,,,
412,10004,1,,20,female,,,,,,,,
412,10005,1,,20,female,,,,,,,,
554,10017,1,,35,,,,,,,,,

1 from_pokemon_id to_pokemon_id evolution_trigger_id trigger_item_id minimum_level gender location_id held_item_id time_of_day known_move_id minimum_happiness minimum_beauty relative_physical_stats party_pokemon_id
319 633 634 1 50
320 634 635 1 64
321 636 637 1 59
412 10004 1 20 female
412 10005 1 20 female
554 10017 1 35

View file

@ -1,20 +1,20 @@
pokemon_id,is_battle_only,description
172,0,"Spiky-eared Pichu can only be received by taking the shiny Pichu from an official promotion to [Celebi]{pokemon}'s shrine in [Ilex Forest]{location}. Spiky-eared Pichu is always female, cannot evolve, and cannot be taken into the Wi-Fi Club or the Union Room, but is otherwise a normal Pichu."
201,0,Forms only affect appearance. A form is determined at random before a wild encounter and cannot be changed.
351,1,"Form changes along with type to match the [weather]{mechanic} in battle, due to [Forecast]{ability}. Castform is always in its normal form outside of battle, regardless of weather."
386,0,"Forms have different stats and movepools. In Generation III, Deoxys's form depends on the game: Normal Forme in Ruby and Sapphire, Attack Forme in FireRed, Defense Forme in LeafGreen, and Speed Forme in Emerald. In Generation IV, every form exists: form is preserved when transferring via [Pal Park]{location}, and meteorites in the southeast corner of [Veilstone City]{location} or at the west end of [Route 3]{location} can be used to switch between forms."
412,0,"Forms only affect appearance, although they become permanent upon evolution. Wild and newly-hatched Burmy are always in a Plant Cloak. Burmy's cloak changes to match the terrain after a battle it participated in: Plant Cloak by default; Sandy Cloak in sandy or rocky areas, such as beaches, caves, and trails; and Trash Cloak in buildings."
413,0,"Forms have different stats and movepools. During evolution, Burmy's current cloak becomes Wormadam's form, and can no longer be changed."
421,1,"Sunshine form is active during [strong sunlight]{mechanic}. Otherwise, Cherrim defaults to its Overcast form."
422,0,"Forms only affect appearance. A form is determined before a wild encounter based on whether the battle is in western or eastern Sinnoh, or inherited from the mother when breeding, and cannot be changed."
423,0,Forms only affect appearance. A form is determined before a wild encounter based on whether the battle is in western or eastern Sinnoh and cannot be changed.
479,0,"Forms have different signature moves, and the appliance forms' stats are different from the normal form's. When switching forms, the old signature move (if any) is removed and the new one must be learned, overwriting another move if need be, or the switch will be cancelled; however, it can be forgotten while in the new form. There are appliances for switching forms in a secret room in the [Team Galactic Eterna Building]{location} or the [Silph Co.]{location} Office Building; the room in the Galactic Building requires a [Secret Key]{item}, but the room in Silph Co. is freely accessible when walking with Rotom. Rotom can be returned to its normal form by checking the space its appliance occupied. It also reverts to its normal form upon entering the Wi-Fi Club or the Union Room."
487,0,"Forms have different stats. Giratina transforms into Origin Forme in the [Distortion World]{location} or while holding a [Griseous Orb]{item}. Otherwise, it assumes its Altered Forme. The Griseous Orb returns to the bag upon entering the Wi-Fi Club or the Union Room."
492,0,"Forms have different stats and movepools. Shaymin transforms into Sky Forme with the use of a [Gracidea]{item}. It is limited to Land Forme at night, when [frozen]{mechanic}, in the storage system boxes, in the Wi-Fi Club, and in the Union Room; under these conditions, Sky Shaymin reverts to Land Forme, and the Gracidea has no effect. The Gracidea must be used again to return to Sky Forme. A Gracidea may be received by showing a woman in southwest [Floaroma Town]{location} or the [Goldenrod City]{location} flower shop a Shaymin met in a fateful encounter."
493,0,"Form changes along with type to match a held Plate, due to [Multitype]{ability}."
550,0,Not yet known
555,0,Not yet known
585,0,Not yet known
586,0,Not yet known
648,0,Not yet known
649,0,Not yet known
pokemon_id,term,is_battle_only,description
172,,0,"Spiky-eared Pichu can only be received by taking the shiny Pichu from an official promotion to [Celebi]{pokemon}'s shrine in [Ilex Forest]{location}. Spiky-eared Pichu is always female, cannot evolve, and cannot be taken into the Wi-Fi Club or the Union Room, but is otherwise a normal Pichu."
201,,0,Forms only affect appearance. A form is determined at random before a wild encounter and cannot be changed.
351,Form,1,"Form changes along with type to match the [weather]{mechanic} in battle, due to [Forecast]{ability}. Castform is always in its normal form outside of battle, regardless of weather."
386,Forme,0,"Forms have different stats and movepools. In Generation III, Deoxys's form depends on the game: Normal Forme in Ruby and Sapphire, Attack Forme in FireRed, Defense Forme in LeafGreen, and Speed Forme in Emerald. In Generation IV, every form exists: form is preserved when transferring via [Pal Park]{location}, and meteorites in the southeast corner of [Veilstone City]{location} or at the west end of [Route 3]{location} can be used to switch between forms."
412,Cloak,0,"Forms only affect appearance, although they become permanent upon evolution. Wild and newly-hatched Burmy are always in a Plant Cloak. Burmy's cloak changes to match the terrain after a battle it participated in: Plant Cloak by default; Sandy Cloak in sandy or rocky areas, such as beaches, caves, and trails; and Trash Cloak in buildings."
413,Cloak,0,"Forms have different stats and movepools. During evolution, Burmy's current cloak becomes Wormadam's form, and can no longer be changed."
421,Form,1,"Sunshine form is active during [strong sunlight]{mechanic}. Otherwise, Cherrim defaults to its Overcast form."
422,Sea,0,"Forms only affect appearance. A form is determined before a wild encounter based on whether the battle is in western or eastern Sinnoh, or inherited from the mother when breeding, and cannot be changed."
423,Sea,0,Forms only affect appearance. A form is determined before a wild encounter based on whether the battle is in western or eastern Sinnoh and cannot be changed.
479,Form,0,"Forms have different signature moves, and the appliance forms' stats are different from the normal form's. When switching forms, the old signature move (if any) is removed and the new one must be learned, overwriting another move if need be, or the switch will be cancelled; however, it can be forgotten while in the new form. There are appliances for switching forms in a secret room in the [Team Galactic Eterna Building]{location} or the [Silph Co.]{location} Office Building; the room in the Galactic Building requires a [Secret Key]{item}, but the room in Silph Co. is freely accessible when walking with Rotom. Rotom can be returned to its normal form by checking the space its appliance occupied. It also reverts to its normal form upon entering the Wi-Fi Club or the Union Room."
487,Forme,0,"Forms have different stats. Giratina transforms into Origin Forme in the [Distortion World]{location} or while holding a [Griseous Orb]{item}. Otherwise, it assumes its Altered Forme. The Griseous Orb returns to the bag upon entering the Wi-Fi Club or the Union Room."
492,Forme,0,"Forms have different stats and movepools. Shaymin transforms into Sky Forme with the use of a [Gracidea]{item}. It is limited to Land Forme at night, when [frozen]{mechanic}, in the storage system boxes, in the Wi-Fi Club, and in the Union Room; under these conditions, Sky Shaymin reverts to Land Forme, and the Gracidea has no effect. The Gracidea must be used again to return to Sky Forme. A Gracidea may be received by showing a woman in southwest [Floaroma Town]{location} or the [Goldenrod City]{location} flower shop a Shaymin met in a fateful encounter."
493,Type,0,"Form changes along with type to match a held Plate, due to [Multitype]{ability}."
550,,0,Not yet known
555,mode,0,Not yet known
585,form,0,Not yet known
586,form,0,Not yet known
648,forme,0,Not yet known
649,buster,0,Not yet known

1 pokemon_id term is_battle_only description
2 172 0 Spiky-eared Pichu can only be received by taking the shiny Pichu from an official promotion to [Celebi]{pokemon}'s shrine in [Ilex Forest]{location}. Spiky-eared Pichu is always female, cannot evolve, and cannot be taken into the Wi-Fi Club or the Union Room, but is otherwise a normal Pichu.
3 201 0 Forms only affect appearance. A form is determined at random before a wild encounter and cannot be changed.
4 351 Form 1 Form changes along with type to match the [weather]{mechanic} in battle, due to [Forecast]{ability}. Castform is always in its normal form outside of battle, regardless of weather.
5 386 Forme 0 Forms have different stats and movepools. In Generation III, Deoxys's form depends on the game: Normal Forme in Ruby and Sapphire, Attack Forme in FireRed, Defense Forme in LeafGreen, and Speed Forme in Emerald. In Generation IV, every form exists: form is preserved when transferring via [Pal Park]{location}, and meteorites in the southeast corner of [Veilstone City]{location} or at the west end of [Route 3]{location} can be used to switch between forms.
6 412 Cloak 0 Forms only affect appearance, although they become permanent upon evolution. Wild and newly-hatched Burmy are always in a Plant Cloak. Burmy's cloak changes to match the terrain after a battle it participated in: Plant Cloak by default; Sandy Cloak in sandy or rocky areas, such as beaches, caves, and trails; and Trash Cloak in buildings.
7 413 Cloak 0 Forms have different stats and movepools. During evolution, Burmy's current cloak becomes Wormadam's form, and can no longer be changed.
8 421 Form 1 Sunshine form is active during [strong sunlight]{mechanic}. Otherwise, Cherrim defaults to its Overcast form.
9 422 Sea 0 Forms only affect appearance. A form is determined before a wild encounter based on whether the battle is in western or eastern Sinnoh, or inherited from the mother when breeding, and cannot be changed.
10 423 Sea 0 Forms only affect appearance. A form is determined before a wild encounter based on whether the battle is in western or eastern Sinnoh and cannot be changed.
11 479 Form 0 Forms have different signature moves, and the appliance forms' stats are different from the normal form's. When switching forms, the old signature move (if any) is removed and the new one must be learned, overwriting another move if need be, or the switch will be cancelled; however, it can be forgotten while in the new form. There are appliances for switching forms in a secret room in the [Team Galactic Eterna Building]{location} or the [Silph Co.]{location} Office Building; the room in the Galactic Building requires a [Secret Key]{item}, but the room in Silph Co. is freely accessible when walking with Rotom. Rotom can be returned to its normal form by checking the space its appliance occupied. It also reverts to its normal form upon entering the Wi-Fi Club or the Union Room.
12 487 Forme 0 Forms have different stats. Giratina transforms into Origin Forme in the [Distortion World]{location} or while holding a [Griseous Orb]{item}. Otherwise, it assumes its Altered Forme. The Griseous Orb returns to the bag upon entering the Wi-Fi Club or the Union Room.
13 492 Forme 0 Forms have different stats and movepools. Shaymin transforms into Sky Forme with the use of a [Gracidea]{item}. It is limited to Land Forme at night, when [frozen]{mechanic}, in the storage system boxes, in the Wi-Fi Club, and in the Union Room; under these conditions, Sky Shaymin reverts to Land Forme, and the Gracidea has no effect. The Gracidea must be used again to return to Sky Forme. A Gracidea may be received by showing a woman in southwest [Floaroma Town]{location} or the [Goldenrod City]{location} flower shop a Shaymin met in a fateful encounter.
14 493 Type 0 Form changes along with type to match a held Plate, due to [Multitype]{ability}.
15 550 0 Not yet known
16 555 mode 0 Not yet known
17 585 form 0 Not yet known
18 586 form 0 Not yet known
19 648 forme 0 Not yet known
20 649 buster 0 Not yet known

View file

@ -1,98 +0,0 @@
id,pokemon_id,introduced_in_version_group_id,name,is_default
1,201,3,a,0
2,201,3,b,0
3,201,3,c,0
4,201,3,d,0
5,201,3,e,0
6,201,3,f,0
7,201,3,g,0
8,201,3,h,0
9,201,3,i,0
10,201,3,j,1
11,201,3,k,0
12,201,3,l,0
13,201,3,m,0
14,201,3,n,0
15,201,3,o,0
16,201,3,p,0
17,201,3,q,0
18,201,3,r,0
19,201,3,s,0
20,201,3,t,0
21,201,3,u,0
22,201,3,v,0
23,201,3,w,0
24,201,3,x,0
25,201,3,y,0
26,201,3,z,0
27,201,5,?,0
28,201,5,!,0
29,351,5,,1
30,351,5,sunny,0
31,351,5,rain,0
32,351,5,snow-cloud,0
33,386,5,normal,1
34,386,7,attack,0
35,386,7,defense,0
36,386,6,speed,0
37,412,8,plant,1
38,412,8,sandy,0
39,412,8,trash,0
40,413,8,plant,1
41,413,8,sandy,0
42,413,8,trash,0
43,421,8,overcast,1
44,421,8,sunshine,0
45,422,8,east,0
46,422,8,west,1
47,423,8,east,0
48,423,8,west,1
49,479,8,normal,1
50,479,9,fan,0
51,479,9,frost,0
52,479,9,heat,0
53,479,9,mow,0
54,479,9,wash,0
55,487,8,altered,1
56,487,9,origin,0
57,492,8,land,1
58,492,9,sky,0
59,493,8,bug,0
60,493,8,dark,0
61,493,8,dragon,0
62,493,8,electric,0
63,493,8,fighting,0
64,493,8,fire,0
65,493,8,flying,0
66,493,8,ghost,0
67,493,8,grass,0
68,493,8,ground,0
69,493,8,ice,0
70,493,8,normal,1
71,493,8,???,0
72,493,8,poison,0
73,493,8,psychic,0
74,493,8,rock,0
75,493,8,steel,0
76,493,8,water,0
77,172,3,,1
78,172,10,spiky-eared,0
79,550,11,red stripe,1
80,550,11,blue stripe,0
81,555,11,normal,1
82,555,11,daruma,0
83,585,11,spring,1
84,585,11,summer,0
85,585,11,autumn,0
86,585,11,winter,0
87,586,11,spring,1
88,586,11,summer,0
89,586,11,autumn,0
90,586,11,winter,0
91,648,11,voice,1
92,648,11,step,0
93,649,11,orange,1
94,649,11,blue,0
95,649,11,red,0
96,649,11,yellow,0
97,649,11,white,0
1 id pokemon_id introduced_in_version_group_id name is_default
2 1 201 3 a 0
3 2 201 3 b 0
4 3 201 3 c 0
5 4 201 3 d 0
6 5 201 3 e 0
7 6 201 3 f 0
8 7 201 3 g 0
9 8 201 3 h 0
10 9 201 3 i 0
11 10 201 3 j 1
12 11 201 3 k 0
13 12 201 3 l 0
14 13 201 3 m 0
15 14 201 3 n 0
16 15 201 3 o 0
17 16 201 3 p 0
18 17 201 3 q 0
19 18 201 3 r 0
20 19 201 3 s 0
21 20 201 3 t 0
22 21 201 3 u 0
23 22 201 3 v 0
24 23 201 3 w 0
25 24 201 3 x 0
26 25 201 3 y 0
27 26 201 3 z 0
28 27 201 5 ? 0
29 28 201 5 ! 0
30 29 351 5 1
31 30 351 5 sunny 0
32 31 351 5 rain 0
33 32 351 5 snow-cloud 0
34 33 386 5 normal 1
35 34 386 7 attack 0
36 35 386 7 defense 0
37 36 386 6 speed 0
38 37 412 8 plant 1
39 38 412 8 sandy 0
40 39 412 8 trash 0
41 40 413 8 plant 1
42 41 413 8 sandy 0
43 42 413 8 trash 0
44 43 421 8 overcast 1
45 44 421 8 sunshine 0
46 45 422 8 east 0
47 46 422 8 west 1
48 47 423 8 east 0
49 48 423 8 west 1
50 49 479 8 normal 1
51 50 479 9 fan 0
52 51 479 9 frost 0
53 52 479 9 heat 0
54 53 479 9 mow 0
55 54 479 9 wash 0
56 55 487 8 altered 1
57 56 487 9 origin 0
58 57 492 8 land 1
59 58 492 9 sky 0
60 59 493 8 bug 0
61 60 493 8 dark 0
62 61 493 8 dragon 0
63 62 493 8 electric 0
64 63 493 8 fighting 0
65 64 493 8 fire 0
66 65 493 8 flying 0
67 66 493 8 ghost 0
68 67 493 8 grass 0
69 68 493 8 ground 0
70 69 493 8 ice 0
71 70 493 8 normal 1
72 71 493 8 ??? 0
73 72 493 8 poison 0
74 73 493 8 psychic 0
75 74 493 8 rock 0
76 75 493 8 steel 0
77 76 493 8 water 0
78 77 172 3 1
79 78 172 10 spiky-eared 0
80 79 550 11 red stripe 1
81 80 550 11 blue stripe 0
82 81 555 11 normal 1
83 82 555 11 daruma 0
84 83 585 11 spring 1
85 84 585 11 summer 0
86 85 585 11 autumn 0
87 86 585 11 winter 0
88 87 586 11 spring 1
89 88 586 11 summer 0
90 89 586 11 autumn 0
91 90 586 11 winter 0
92 91 648 11 voice 1
93 92 648 11 step 0
94 93 649 11 orange 1
95 94 649 11 blue 0
96 95 649 11 red 0
97 96 649 11 yellow 0
98 97 649 11 white 0

View file

@ -0,0 +1,728 @@
id,name,form_base_pokemon_id,unique_pokemon_id,introduced_in_version_group_id,is_default,order
1,,1,,1,1,1
2,,2,,1,1,1
3,,3,,1,1,1
4,,4,,1,1,1
5,,5,,1,1,1
6,,6,,1,1,1
7,,7,,1,1,1
8,,8,,1,1,1
9,,9,,1,1,1
10,,10,,1,1,1
11,,11,,1,1,1
12,,12,,1,1,1
13,,13,,1,1,1
14,,14,,1,1,1
15,,15,,1,1,1
16,,16,,1,1,1
17,,17,,1,1,1
18,,18,,1,1,1
19,,19,,1,1,1
20,,20,,1,1,1
21,,21,,1,1,1
22,,22,,1,1,1
23,,23,,1,1,1
24,,24,,1,1,1
25,,25,,1,1,1
26,,26,,1,1,1
27,,27,,1,1,1
28,,28,,1,1,1
29,,29,,1,1,1
30,,30,,1,1,1
31,,31,,1,1,1
32,,32,,1,1,1
33,,33,,1,1,1
34,,34,,1,1,1
35,,35,,1,1,1
36,,36,,1,1,1
37,,37,,1,1,1
38,,38,,1,1,1
39,,39,,1,1,1
40,,40,,1,1,1
41,,41,,1,1,1
42,,42,,1,1,1
43,,43,,1,1,1
44,,44,,1,1,1
45,,45,,1,1,1
46,,46,,1,1,1
47,,47,,1,1,1
48,,48,,1,1,1
49,,49,,1,1,1
50,,50,,1,1,1
51,,51,,1,1,1
52,,52,,1,1,1
53,,53,,1,1,1
54,,54,,1,1,1
55,,55,,1,1,1
56,,56,,1,1,1
57,,57,,1,1,1
58,,58,,1,1,1
59,,59,,1,1,1
60,,60,,1,1,1
61,,61,,1,1,1
62,,62,,1,1,1
63,,63,,1,1,1
64,,64,,1,1,1
65,,65,,1,1,1
66,,66,,1,1,1
67,,67,,1,1,1
68,,68,,1,1,1
69,,69,,1,1,1
70,,70,,1,1,1
71,,71,,1,1,1
72,,72,,1,1,1
73,,73,,1,1,1
74,,74,,1,1,1
75,,75,,1,1,1
76,,76,,1,1,1
77,,77,,1,1,1
78,,78,,1,1,1
79,,79,,1,1,1
80,,80,,1,1,1
81,,81,,1,1,1
82,,82,,1,1,1
83,,83,,1,1,1
84,,84,,1,1,1
85,,85,,1,1,1
86,,86,,1,1,1
87,,87,,1,1,1
88,,88,,1,1,1
89,,89,,1,1,1
90,,90,,1,1,1
91,,91,,1,1,1
92,,92,,1,1,1
93,,93,,1,1,1
94,,94,,1,1,1
95,,95,,1,1,1
96,,96,,1,1,1
97,,97,,1,1,1
98,,98,,1,1,1
99,,99,,1,1,1
100,,100,,1,1,1
101,,101,,1,1,1
102,,102,,1,1,1
103,,103,,1,1,1
104,,104,,1,1,1
105,,105,,1,1,1
106,,106,,1,1,1
107,,107,,1,1,1
108,,108,,1,1,1
109,,109,,1,1,1
110,,110,,1,1,1
111,,111,,1,1,1
112,,112,,1,1,1
113,,113,,1,1,1
114,,114,,1,1,1
115,,115,,1,1,1
116,,116,,1,1,1
117,,117,,1,1,1
118,,118,,1,1,1
119,,119,,1,1,1
120,,120,,1,1,1
121,,121,,1,1,1
122,,122,,1,1,1
123,,123,,1,1,1
124,,124,,1,1,1
125,,125,,1,1,1
126,,126,,1,1,1
127,,127,,1,1,1
128,,128,,1,1,1
129,,129,,1,1,1
130,,130,,1,1,1
131,,131,,1,1,1
132,,132,,1,1,1
133,,133,,1,1,1
134,,134,,1,1,1
135,,135,,1,1,1
136,,136,,1,1,1
137,,137,,1,1,1
138,,138,,1,1,1
139,,139,,1,1,1
140,,140,,1,1,1
141,,141,,1,1,1
142,,142,,1,1,1
143,,143,,1,1,1
144,,144,,1,1,1
145,,145,,1,1,1
146,,146,,1,1,1
147,,147,,1,1,1
148,,148,,1,1,1
149,,149,,1,1,1
150,,150,,1,1,1
151,,151,,1,1,1
152,,152,,3,1,1
153,,153,,3,1,1
154,,154,,3,1,1
155,,155,,3,1,1
156,,156,,3,1,1
157,,157,,3,1,1
158,,158,,3,1,1
159,,159,,3,1,1
160,,160,,3,1,1
161,,161,,3,1,1
162,,162,,3,1,1
163,,163,,3,1,1
164,,164,,3,1,1
165,,165,,3,1,1
166,,166,,3,1,1
167,,167,,3,1,1
168,,168,,3,1,1
169,,169,,3,1,1
170,,170,,3,1,1
171,,171,,3,1,1
172,,172,,3,1,1
173,,173,,3,1,1
174,,174,,3,1,1
175,,175,,3,1,1
176,,176,,3,1,1
177,,177,,3,1,1
178,,178,,3,1,1
179,,179,,3,1,1
180,,180,,3,1,1
181,,181,,3,1,1
182,,182,,3,1,1
183,,183,,3,1,1
184,,184,,3,1,1
185,,185,,3,1,1
186,,186,,3,1,1
187,,187,,3,1,1
188,,188,,3,1,1
189,,189,,3,1,1
190,,190,,3,1,1
191,,191,,3,1,1
192,,192,,3,1,1
193,,193,,3,1,1
194,,194,,3,1,1
195,,195,,3,1,1
196,,196,,3,1,1
197,,197,,3,1,1
198,,198,,3,1,1
199,,199,,3,1,1
200,,200,,3,1,1
201,A,201,,3,1,1
202,,202,,3,1,1
203,,203,,3,1,1
204,,204,,3,1,1
205,,205,,3,1,1
206,,206,,3,1,1
207,,207,,3,1,1
208,,208,,3,1,1
209,,209,,3,1,1
210,,210,,3,1,1
211,,211,,3,1,1
212,,212,,3,1,1
213,,213,,3,1,1
214,,214,,3,1,1
215,,215,,3,1,1
216,,216,,3,1,1
217,,217,,3,1,1
218,,218,,3,1,1
219,,219,,3,1,1
220,,220,,3,1,1
221,,221,,3,1,1
222,,222,,3,1,1
223,,223,,3,1,1
224,,224,,3,1,1
225,,225,,3,1,1
226,,226,,3,1,1
227,,227,,3,1,1
228,,228,,3,1,1
229,,229,,3,1,1
230,,230,,3,1,1
231,,231,,3,1,1
232,,232,,3,1,1
233,,233,,3,1,1
234,,234,,3,1,1
235,,235,,3,1,1
236,,236,,3,1,1
237,,237,,3,1,1
238,,238,,3,1,1
239,,239,,3,1,1
240,,240,,3,1,1
241,,241,,3,1,1
242,,242,,3,1,1
243,,243,,3,1,1
244,,244,,3,1,1
245,,245,,3,1,1
246,,246,,3,1,1
247,,247,,3,1,1
248,,248,,3,1,1
249,,249,,3,1,1
250,,250,,3,1,1
251,,251,,3,1,1
252,,252,,5,1,1
253,,253,,5,1,1
254,,254,,5,1,1
255,,255,,5,1,1
256,,256,,5,1,1
257,,257,,5,1,1
258,,258,,5,1,1
259,,259,,5,1,1
260,,260,,5,1,1
261,,261,,5,1,1
262,,262,,5,1,1
263,,263,,5,1,1
264,,264,,5,1,1
265,,265,,5,1,1
266,,266,,5,1,1
267,,267,,5,1,1
268,,268,,5,1,1
269,,269,,5,1,1
270,,270,,5,1,1
271,,271,,5,1,1
272,,272,,5,1,1
273,,273,,5,1,1
274,,274,,5,1,1
275,,275,,5,1,1
276,,276,,5,1,1
277,,277,,5,1,1
278,,278,,5,1,1
279,,279,,5,1,1
280,,280,,5,1,1
281,,281,,5,1,1
282,,282,,5,1,1
283,,283,,5,1,1
284,,284,,5,1,1
285,,285,,5,1,1
286,,286,,5,1,1
287,,287,,5,1,1
288,,288,,5,1,1
289,,289,,5,1,1
290,,290,,5,1,1
291,,291,,5,1,1
292,,292,,5,1,1
293,,293,,5,1,1
294,,294,,5,1,1
295,,295,,5,1,1
296,,296,,5,1,1
297,,297,,5,1,1
298,,298,,5,1,1
299,,299,,5,1,1
300,,300,,5,1,1
301,,301,,5,1,1
302,,302,,5,1,1
303,,303,,5,1,1
304,,304,,5,1,1
305,,305,,5,1,1
306,,306,,5,1,1
307,,307,,5,1,1
308,,308,,5,1,1
309,,309,,5,1,1
310,,310,,5,1,1
311,,311,,5,1,1
312,,312,,5,1,1
313,,313,,5,1,1
314,,314,,5,1,1
315,,315,,5,1,1
316,,316,,5,1,1
317,,317,,5,1,1
318,,318,,5,1,1
319,,319,,5,1,1
320,,320,,5,1,1
321,,321,,5,1,1
322,,322,,5,1,1
323,,323,,5,1,1
324,,324,,5,1,1
325,,325,,5,1,1
326,,326,,5,1,1
327,,327,,5,1,1
328,,328,,5,1,1
329,,329,,5,1,1
330,,330,,5,1,1
331,,331,,5,1,1
332,,332,,5,1,1
333,,333,,5,1,1
334,,334,,5,1,1
335,,335,,5,1,1
336,,336,,5,1,1
337,,337,,5,1,1
338,,338,,5,1,1
339,,339,,5,1,1
340,,340,,5,1,1
341,,341,,5,1,1
342,,342,,5,1,1
343,,343,,5,1,1
344,,344,,5,1,1
345,,345,,5,1,1
346,,346,,5,1,1
347,,347,,5,1,1
348,,348,,5,1,1
349,,349,,5,1,1
350,,350,,5,1,1
351,,351,351,5,1,1
352,,352,,5,1,1
353,,353,,5,1,1
354,,354,,5,1,1
355,,355,,5,1,1
356,,356,,5,1,1
357,,357,,5,1,1
358,,358,,5,1,1
359,,359,,5,1,1
360,,360,,5,1,1
361,,361,,5,1,1
362,,362,,5,1,1
363,,363,,5,1,1
364,,364,,5,1,1
365,,365,,5,1,1
366,,366,,5,1,1
367,,367,,5,1,1
368,,368,,5,1,1
369,,369,,5,1,1
370,,370,,5,1,1
371,,371,,5,1,1
372,,372,,5,1,1
373,,373,,5,1,1
374,,374,,5,1,1
375,,375,,5,1,1
376,,376,,5,1,1
377,,377,,5,1,1
378,,378,,5,1,1
379,,379,,5,1,1
380,,380,,5,1,1
381,,381,,5,1,1
382,,382,,5,1,1
383,,383,,5,1,1
384,,384,,5,1,1
385,,385,,5,1,1
386,Normal,386,386,5,1,1
387,,387,,8,1,1
388,,388,,8,1,1
389,,389,,8,1,1
390,,390,,8,1,1
391,,391,,8,1,1
392,,392,,8,1,1
393,,393,,8,1,1
394,,394,,8,1,1
395,,395,,8,1,1
396,,396,,8,1,1
397,,397,,8,1,1
398,,398,,8,1,1
399,,399,,8,1,1
400,,400,,8,1,1
401,,401,,8,1,1
402,,402,,8,1,1
403,,403,,8,1,1
404,,404,,8,1,1
405,,405,,8,1,1
406,,406,,8,1,1
407,,407,,8,1,1
408,,408,,8,1,1
409,,409,,8,1,1
410,,410,,8,1,1
411,,411,,8,1,1
412,Plant,412,,8,1,1
413,Plant,413,413,8,1,1
414,,414,,8,1,1
415,,415,,8,1,1
416,,416,,8,1,1
417,,417,,8,1,1
418,,418,,8,1,1
419,,419,,8,1,1
420,,420,,8,1,1
421,Overcast,421,,8,1,1
422,West,422,,8,1,1
423,West,423,,8,1,1
424,,424,,8,1,1
425,,425,,8,1,1
426,,426,,8,1,1
427,,427,,8,1,1
428,,428,,8,1,1
429,,429,,8,1,1
430,,430,,8,1,1
431,,431,,8,1,1
432,,432,,8,1,1
433,,433,,8,1,1
434,,434,,8,1,1
435,,435,,8,1,1
436,,436,,8,1,1
437,,437,,8,1,1
438,,438,,8,1,1
439,,439,,8,1,1
440,,440,,8,1,1
441,,441,,8,1,1
442,,442,,8,1,1
443,,443,,8,1,1
444,,444,,8,1,1
445,,445,,8,1,1
446,,446,,8,1,1
447,,447,,8,1,1
448,,448,,8,1,1
449,,449,,8,1,1
450,,450,,8,1,1
451,,451,,8,1,1
452,,452,,8,1,1
453,,453,,8,1,1
454,,454,,8,1,1
455,,455,,8,1,1
456,,456,,8,1,1
457,,457,,8,1,1
458,,458,,8,1,1
459,,459,,8,1,1
460,,460,,8,1,1
461,,461,,8,1,1
462,,462,,8,1,1
463,,463,,8,1,1
464,,464,,8,1,1
465,,465,,8,1,1
466,,466,,8,1,1
467,,467,,8,1,1
468,,468,,8,1,1
469,,469,,8,1,1
470,,470,,8,1,1
471,,471,,8,1,1
472,,472,,8,1,1
473,,473,,8,1,1
474,,474,,8,1,1
475,,475,,8,1,1
476,,476,,8,1,1
477,,477,,8,1,1
478,,478,,8,1,1
479,,479,479,8,1,1
480,,480,,8,1,1
481,,481,,8,1,1
482,,482,,8,1,1
483,,483,,8,1,1
484,,484,,8,1,1
485,,485,,8,1,1
486,,486,,8,1,1
487,Altered,487,487,8,1,1
488,,488,,8,1,1
489,,489,,8,1,1
490,,490,,8,1,1
491,,491,,8,1,1
492,Land,492,492,8,1,1
493,Normal,493,,8,1,1
494,,494,,11,1,1
495,,495,,11,1,1
496,,496,,11,1,1
497,,497,,11,1,1
498,,498,,11,1,1
499,,499,,11,1,1
500,,500,,11,1,1
501,,501,,11,1,1
502,,502,,11,1,1
503,,503,,11,1,1
504,,504,,11,1,1
505,,505,,11,1,1
506,,506,,11,1,1
507,,507,,11,1,1
508,,508,,11,1,1
509,,509,,11,1,1
510,,510,,11,1,1
511,,511,,11,1,1
512,,512,,11,1,1
513,,513,,11,1,1
514,,514,,11,1,1
515,,515,,11,1,1
516,,516,,11,1,1
517,,517,,11,1,1
518,,518,,11,1,1
519,,519,,11,1,1
520,,520,,11,1,1
521,,521,,11,1,1
522,,522,,11,1,1
523,,523,,11,1,1
524,,524,,11,1,1
525,,525,,11,1,1
526,,526,,11,1,1
527,,527,,11,1,1
528,,528,,11,1,1
529,,529,,11,1,1
530,,530,,11,1,1
531,,531,,11,1,1
532,,532,,11,1,1
533,,533,,11,1,1
534,,534,,11,1,1
535,,535,,11,1,1
536,,536,,11,1,1
537,,537,,11,1,1
538,,538,,11,1,1
539,,539,,11,1,1
540,,540,,11,1,1
541,,541,,11,1,1
542,,542,,11,1,1
543,,543,,11,1,1
544,,544,,11,1,1
545,,545,,11,1,1
546,,546,,11,1,1
547,,547,,11,1,1
548,,548,,11,1,1
549,,549,,11,1,1
550,red stripe,550,550,11,1,1
551,,551,,11,1,1
552,,552,,11,1,1
553,,553,,11,1,1
554,,554,,11,1,1
555,normal,555,555,11,1,1
556,,556,,11,1,1
557,,557,,11,1,1
558,,558,,11,1,1
559,,559,,11,1,1
560,,560,,11,1,1
561,,561,,11,1,1
562,,562,,11,1,1
563,,563,,11,1,1
564,,564,,11,1,1
565,,565,,11,1,1
566,,566,,11,1,1
567,,567,,11,1,1
568,,568,,11,1,1
569,,569,,11,1,1
570,,570,,11,1,1
571,,571,,11,1,1
572,,572,,11,1,1
573,,573,,11,1,1
574,,574,,11,1,1
575,,575,,11,1,1
576,,576,,11,1,1
577,,577,,11,1,1
578,,578,,11,1,1
579,,579,,11,1,1
580,,580,,11,1,1
581,,581,,11,1,1
582,,582,,11,1,1
583,,583,,11,1,1
584,,584,,11,1,1
585,spring,585,,11,1,1
586,spring,586,,11,1,1
587,,587,,11,1,1
588,,588,,11,1,1
589,,589,,11,1,1
590,,590,,11,1,1
591,,591,,11,1,1
592,,592,,11,1,1
593,,593,,11,1,1
594,,594,,11,1,1
595,,595,,11,1,1
596,,596,,11,1,1
597,,597,,11,1,1
598,,598,,11,1,1
599,,599,,11,1,1
600,,600,,11,1,1
601,,601,,11,1,1
602,,602,,11,1,1
603,,603,,11,1,1
604,,604,,11,1,1
605,,605,,11,1,1
606,,606,,11,1,1
607,,607,,11,1,1
608,,608,,11,1,1
609,,609,,11,1,1
610,,610,,11,1,1
611,,611,,11,1,1
612,,612,,11,1,1
613,,613,,11,1,1
614,,614,,11,1,1
615,,615,,11,1,1
616,,616,,11,1,1
617,,617,,11,1,1
618,,618,,11,1,1
619,,619,,11,1,1
620,,620,,11,1,1
621,,621,,11,1,1
622,,622,,11,1,1
623,,623,,11,1,1
624,,624,,11,1,1
625,,625,,11,1,1
626,,626,,11,1,1
627,,627,,11,1,1
628,,628,,11,1,1
629,,629,,11,1,1
630,,630,,11,1,1
631,,631,,11,1,1
632,,632,,11,1,1
633,,633,,11,1,1
634,,634,,11,1,1
635,,635,,11,1,1
636,,636,,11,1,1
637,,637,,11,1,1
638,,638,,11,1,1
639,,639,,11,1,1
640,,640,,11,1,1
641,,641,,11,1,1
642,,642,,11,1,1
643,,643,,11,1,1
644,,644,,11,1,1
645,,645,,11,1,1
646,,646,,11,1,1
647,,647,,11,1,1
648,voice,648,648,11,1,1
649,orange,649,,11,1,1
10001,B,201,,3,0,2
10002,C,201,,3,0,3
10003,D,201,,3,0,4
10004,E,201,,3,0,5
10005,F,201,,3,0,6
10006,G,201,,3,0,7
10007,H,201,,3,0,8
10008,I,201,,3,0,9
10009,J,201,,3,0,10
10010,K,201,,3,0,11
10011,L,201,,3,0,12
10012,M,201,,3,0,13
10013,N,201,,3,0,14
10014,O,201,,3,0,15
10015,P,201,,3,0,16
10016,Q,201,,3,0,17
10017,R,201,,3,0,18
10018,S,201,,3,0,19
10019,T,201,,3,0,20
10020,U,201,,3,0,21
10021,V,201,,3,0,22
10022,W,201,,3,0,23
10023,X,201,,3,0,24
10024,Y,201,,3,0,25
10025,Z,201,,3,0,26
10026,!,201,,5,0,27
10027,?,201,,5,0,27
10028,Sunny,351,10013,5,0,2
10029,Rainy,351,10014,5,0,3
10030,Snowy,351,10015,5,0,4
10031,Attack,386,10001,7,0,2
10032,Defense,386,10002,7,0,3
10033,Speed,386,10003,6,0,4
10034,Sandy,412,,8,0,2
10035,Trash,412,,8,0,3
10036,Sandy,413,10004,8,0,2
10037,Trash,413,10005,8,0,3
10038,Sunshine,421,,8,0,2
10039,East,422,,8,0,2
10040,East,423,,8,0,2
10041,Bug,493,,8,0,2
10042,Dark,493,,8,0,2
10043,Dragon,493,,8,0,2
10044,Electric,493,,8,0,2
10045,Fighting,493,,8,0,2
10046,Fire,493,,8,0,2
10047,Flying,493,,8,0,2
10048,Ghost,493,,8,0,2
10049,Grass,493,,8,0,2
10050,Ground,493,,8,0,2
10051,Ice,493,,8,0,2
10052,Poison,493,,8,0,2
10053,Psychic,493,,8,0,2
10054,Rock,493,,8,0,2
10055,Steel,493,,8,0,2
10056,Water,493,,8,0,2
10057,???,493,,8,0,3
10058,Heat,479,10008,9,0,2
10059,Wash,479,10009,9,0,2
10060,Frost,479,10010,9,0,2
10061,Fan,479,10011,9,0,2
10062,Mow,479,10012,9,0,2
10063,Origin,487,10007,9,0,2
10064,Sky,492,10006,9,0,2
10065,Spiky-eared,172,,10,0,2
10066,blue stripe,550,10016,11,0,2
10067,daruma,555,10017,11,0,2
10068,summer,585,,11,0,2
10069,autumn,585,,11,0,3
10070,winter,585,,11,0,4
10071,summer,586,,11,0,2
10072,autumn,586,,11,0,3
10073,winter,586,,11,0,4
10074,step,648,10018,11,0,2
10075,blue,649,,11,0,2
10076,yellow,649,,11,0,2
10077,red,649,,11,0,2
10078,white,649,,11,0,2
1 id name form_base_pokemon_id unique_pokemon_id introduced_in_version_group_id is_default order
2 1 1 1 1 1
3 2 2 1 1 1
4 3 3 1 1 1
5 4 4 1 1 1
6 5 5 1 1 1
7 6 6 1 1 1
8 7 7 1 1 1
9 8 8 1 1 1
10 9 9 1 1 1
11 10 10 1 1 1
12 11 11 1 1 1
13 12 12 1 1 1
14 13 13 1 1 1
15 14 14 1 1 1
16 15 15 1 1 1
17 16 16 1 1 1
18 17 17 1 1 1
19 18 18 1 1 1
20 19 19 1 1 1
21 20 20 1 1 1
22 21 21 1 1 1
23 22 22 1 1 1
24 23 23 1 1 1
25 24 24 1 1 1
26 25 25 1 1 1
27 26 26 1 1 1
28 27 27 1 1 1
29 28 28 1 1 1
30 29 29 1 1 1
31 30 30 1 1 1
32 31 31 1 1 1
33 32 32 1 1 1
34 33 33 1 1 1
35 34 34 1 1 1
36 35 35 1 1 1
37 36 36 1 1 1
38 37 37 1 1 1
39 38 38 1 1 1
40 39 39 1 1 1
41 40 40 1 1 1
42 41 41 1 1 1
43 42 42 1 1 1
44 43 43 1 1 1
45 44 44 1 1 1
46 45 45 1 1 1
47 46 46 1 1 1
48 47 47 1 1 1
49 48 48 1 1 1
50 49 49 1 1 1
51 50 50 1 1 1
52 51 51 1 1 1
53 52 52 1 1 1
54 53 53 1 1 1
55 54 54 1 1 1
56 55 55 1 1 1
57 56 56 1 1 1
58 57 57 1 1 1
59 58 58 1 1 1
60 59 59 1 1 1
61 60 60 1 1 1
62 61 61 1 1 1
63 62 62 1 1 1
64 63 63 1 1 1
65 64 64 1 1 1
66 65 65 1 1 1
67 66 66 1 1 1
68 67 67 1 1 1
69 68 68 1 1 1
70 69 69 1 1 1
71 70 70 1 1 1
72 71 71 1 1 1
73 72 72 1 1 1
74 73 73 1 1 1
75 74 74 1 1 1
76 75 75 1 1 1
77 76 76 1 1 1
78 77 77 1 1 1
79 78 78 1 1 1
80 79 79 1 1 1
81 80 80 1 1 1
82 81 81 1 1 1
83 82 82 1 1 1
84 83 83 1 1 1
85 84 84 1 1 1
86 85 85 1 1 1
87 86 86 1 1 1
88 87 87 1 1 1
89 88 88 1 1 1
90 89 89 1 1 1
91 90 90 1 1 1
92 91 91 1 1 1
93 92 92 1 1 1
94 93 93 1 1 1
95 94 94 1 1 1
96 95 95 1 1 1
97 96 96 1 1 1
98 97 97 1 1 1
99 98 98 1 1 1
100 99 99 1 1 1
101 100 100 1 1 1
102 101 101 1 1 1
103 102 102 1 1 1
104 103 103 1 1 1
105 104 104 1 1 1
106 105 105 1 1 1
107 106 106 1 1 1
108 107 107 1 1 1
109 108 108 1 1 1
110 109 109 1 1 1
111 110 110 1 1 1
112 111 111 1 1 1
113 112 112 1 1 1
114 113 113 1 1 1
115 114 114 1 1 1
116 115 115 1 1 1
117 116 116 1 1 1
118 117 117 1 1 1
119 118 118 1 1 1
120 119 119 1 1 1
121 120 120 1 1 1
122 121 121 1 1 1
123 122 122 1 1 1
124 123 123 1 1 1
125 124 124 1 1 1
126 125 125 1 1 1
127 126 126 1 1 1
128 127 127 1 1 1
129 128 128 1 1 1
130 129 129 1 1 1
131 130 130 1 1 1
132 131 131 1 1 1
133 132 132 1 1 1
134 133 133 1 1 1
135 134 134 1 1 1
136 135 135 1 1 1
137 136 136 1 1 1
138 137 137 1 1 1
139 138 138 1 1 1
140 139 139 1 1 1
141 140 140 1 1 1
142 141 141 1 1 1
143 142 142 1 1 1
144 143 143 1 1 1
145 144 144 1 1 1
146 145 145 1 1 1
147 146 146 1 1 1
148 147 147 1 1 1
149 148 148 1 1 1
150 149 149 1 1 1
151 150 150 1 1 1
152 151 151 1 1 1
153 152 152 3 1 1
154 153 153 3 1 1
155 154 154 3 1 1
156 155 155 3 1 1
157 156 156 3 1 1
158 157 157 3 1 1
159 158 158 3 1 1
160 159 159 3 1 1
161 160 160 3 1 1
162 161 161 3 1 1
163 162 162 3 1 1
164 163 163 3 1 1
165 164 164 3 1 1
166 165 165 3 1 1
167 166 166 3 1 1
168 167 167 3 1 1
169 168 168 3 1 1
170 169 169 3 1 1
171 170 170 3 1 1
172 171 171 3 1 1
173 172 172 3 1 1
174 173 173 3 1 1
175 174 174 3 1 1
176 175 175 3 1 1
177 176 176 3 1 1
178 177 177 3 1 1
179 178 178 3 1 1
180 179 179 3 1 1
181 180 180 3 1 1
182 181 181 3 1 1
183 182 182 3 1 1
184 183 183 3 1 1
185 184 184 3 1 1
186 185 185 3 1 1
187 186 186 3 1 1
188 187 187 3 1 1
189 188 188 3 1 1
190 189 189 3 1 1
191 190 190 3 1 1
192 191 191 3 1 1
193 192 192 3 1 1
194 193 193 3 1 1
195 194 194 3 1 1
196 195 195 3 1 1
197 196 196 3 1 1
198 197 197 3 1 1
199 198 198 3 1 1
200 199 199 3 1 1
201 200 200 3 1 1
202 201 A 201 3 1 1
203 202 202 3 1 1
204 203 203 3 1 1
205 204 204 3 1 1
206 205 205 3 1 1
207 206 206 3 1 1
208 207 207 3 1 1
209 208 208 3 1 1
210 209 209 3 1 1
211 210 210 3 1 1
212 211 211 3 1 1
213 212 212 3 1 1
214 213 213 3 1 1
215 214 214 3 1 1
216 215 215 3 1 1
217 216 216 3 1 1
218 217 217 3 1 1
219 218 218 3 1 1
220 219 219 3 1 1
221 220 220 3 1 1
222 221 221 3 1 1
223 222 222 3 1 1
224 223 223 3 1 1
225 224 224 3 1 1
226 225 225 3 1 1
227 226 226 3 1 1
228 227 227 3 1 1
229 228 228 3 1 1
230 229 229 3 1 1
231 230 230 3 1 1
232 231 231 3 1 1
233 232 232 3 1 1
234 233 233 3 1 1
235 234 234 3 1 1
236 235 235 3 1 1
237 236 236 3 1 1
238 237 237 3 1 1
239 238 238 3 1 1
240 239 239 3 1 1
241 240 240 3 1 1
242 241 241 3 1 1
243 242 242 3 1 1
244 243 243 3 1 1
245 244 244 3 1 1
246 245 245 3 1 1
247 246 246 3 1 1
248 247 247 3 1 1
249 248 248 3 1 1
250 249 249 3 1 1
251 250 250 3 1 1
252 251 251 3 1 1
253 252 252 5 1 1
254 253 253 5 1 1
255 254 254 5 1 1
256 255 255 5 1 1
257 256 256 5 1 1
258 257 257 5 1 1
259 258 258 5 1 1
260 259 259 5 1 1
261 260 260 5 1 1
262 261 261 5 1 1
263 262 262 5 1 1
264 263 263 5 1 1
265 264 264 5 1 1
266 265 265 5 1 1
267 266 266 5 1 1
268 267 267 5 1 1
269 268 268 5 1 1
270 269 269 5 1 1
271 270 270 5 1 1
272 271 271 5 1 1
273 272 272 5 1 1
274 273 273 5 1 1
275 274 274 5 1 1
276 275 275 5 1 1
277 276 276 5 1 1
278 277 277 5 1 1
279 278 278 5 1 1
280 279 279 5 1 1
281 280 280 5 1 1
282 281 281 5 1 1
283 282 282 5 1 1
284 283 283 5 1 1
285 284 284 5 1 1
286 285 285 5 1 1
287 286 286 5 1 1
288 287 287 5 1 1
289 288 288 5 1 1
290 289 289 5 1 1
291 290 290 5 1 1
292 291 291 5 1 1
293 292 292 5 1 1
294 293 293 5 1 1
295 294 294 5 1 1
296 295 295 5 1 1
297 296 296 5 1 1
298 297 297 5 1 1
299 298 298 5 1 1
300 299 299 5 1 1
301 300 300 5 1 1
302 301 301 5 1 1
303 302 302 5 1 1
304 303 303 5 1 1
305 304 304 5 1 1
306 305 305 5 1 1
307 306 306 5 1 1
308 307 307 5 1 1
309 308 308 5 1 1
310 309 309 5 1 1
311 310 310 5 1 1
312 311 311 5 1 1
313 312 312 5 1 1
314 313 313 5 1 1
315 314 314 5 1 1
316 315 315 5 1 1
317 316 316 5 1 1
318 317 317 5 1 1
319 318 318 5 1 1
320 319 319 5 1 1
321 320 320 5 1 1
322 321 321 5 1 1
323 322 322 5 1 1
324 323 323 5 1 1
325 324 324 5 1 1
326 325 325 5 1 1
327 326 326 5 1 1
328 327 327 5 1 1
329 328 328 5 1 1
330 329 329 5 1 1
331 330 330 5 1 1
332 331 331 5 1 1
333 332 332 5 1 1
334 333 333 5 1 1
335 334 334 5 1 1
336 335 335 5 1 1
337 336 336 5 1 1
338 337 337 5 1 1
339 338 338 5 1 1
340 339 339 5 1 1
341 340 340 5 1 1
342 341 341 5 1 1
343 342 342 5 1 1
344 343 343 5 1 1
345 344 344 5 1 1
346 345 345 5 1 1
347 346 346 5 1 1
348 347 347 5 1 1
349 348 348 5 1 1
350 349 349 5 1 1
351 350 350 5 1 1
352 351 351 351 5 1 1
353 352 352 5 1 1
354 353 353 5 1 1
355 354 354 5 1 1
356 355 355 5 1 1
357 356 356 5 1 1
358 357 357 5 1 1
359 358 358 5 1 1
360 359 359 5 1 1
361 360 360 5 1 1
362 361 361 5 1 1
363 362 362 5 1 1
364 363 363 5 1 1
365 364 364 5 1 1
366 365 365 5 1 1
367 366 366 5 1 1
368 367 367 5 1 1
369 368 368 5 1 1
370 369 369 5 1 1
371 370 370 5 1 1
372 371 371 5 1 1
373 372 372 5 1 1
374 373 373 5 1 1
375 374 374 5 1 1
376 375 375 5 1 1
377 376 376 5 1 1
378 377 377 5 1 1
379 378 378 5 1 1
380 379 379 5 1 1
381 380 380 5 1 1
382 381 381 5 1 1
383 382 382 5 1 1
384 383 383 5 1 1
385 384 384 5 1 1
386 385 385 5 1 1
387 386 Normal 386 386 5 1 1
388 387 387 8 1 1
389 388 388 8 1 1
390 389 389 8 1 1
391 390 390 8 1 1
392 391 391 8 1 1
393 392 392 8 1 1
394 393 393 8 1 1
395 394 394 8 1 1
396 395 395 8 1 1
397 396 396 8 1 1
398 397 397 8 1 1
399 398 398 8 1 1
400 399 399 8 1 1
401 400 400 8 1 1
402 401 401 8 1 1
403 402 402 8 1 1
404 403 403 8 1 1
405 404 404 8 1 1
406 405 405 8 1 1
407 406 406 8 1 1
408 407 407 8 1 1
409 408 408 8 1 1
410 409 409 8 1 1
411 410 410 8 1 1
412 411 411 8 1 1
413 412 Plant 412 8 1 1
414 413 Plant 413 413 8 1 1
415 414 414 8 1 1
416 415 415 8 1 1
417 416 416 8 1 1
418 417 417 8 1 1
419 418 418 8 1 1
420 419 419 8 1 1
421 420 420 8 1 1
422 421 Overcast 421 8 1 1
423 422 West 422 8 1 1
424 423 West 423 8 1 1
425 424 424 8 1 1
426 425 425 8 1 1
427 426 426 8 1 1
428 427 427 8 1 1
429 428 428 8 1 1
430 429 429 8 1 1
431 430 430 8 1 1
432 431 431 8 1 1
433 432 432 8 1 1
434 433 433 8 1 1
435 434 434 8 1 1
436 435 435 8 1 1
437 436 436 8 1 1
438 437 437 8 1 1
439 438 438 8 1 1
440 439 439 8 1 1
441 440 440 8 1 1
442 441 441 8 1 1
443 442 442 8 1 1
444 443 443 8 1 1
445 444 444 8 1 1
446 445 445 8 1 1
447 446 446 8 1 1
448 447 447 8 1 1
449 448 448 8 1 1
450 449 449 8 1 1
451 450 450 8 1 1
452 451 451 8 1 1
453 452 452 8 1 1
454 453 453 8 1 1
455 454 454 8 1 1
456 455 455 8 1 1
457 456 456 8 1 1
458 457 457 8 1 1
459 458 458 8 1 1
460 459 459 8 1 1
461 460 460 8 1 1
462 461 461 8 1 1
463 462 462 8 1 1
464 463 463 8 1 1
465 464 464 8 1 1
466 465 465 8 1 1
467 466 466 8 1 1
468 467 467 8 1 1
469 468 468 8 1 1
470 469 469 8 1 1
471 470 470 8 1 1
472 471 471 8 1 1
473 472 472 8 1 1
474 473 473 8 1 1
475 474 474 8 1 1
476 475 475 8 1 1
477 476 476 8 1 1
478 477 477 8 1 1
479 478 478 8 1 1
480 479 479 479 8 1 1
481 480 480 8 1 1
482 481 481 8 1 1
483 482 482 8 1 1
484 483 483 8 1 1
485 484 484 8 1 1
486 485 485 8 1 1
487 486 486 8 1 1
488 487 Altered 487 487 8 1 1
489 488 488 8 1 1
490 489 489 8 1 1
491 490 490 8 1 1
492 491 491 8 1 1
493 492 Land 492 492 8 1 1
494 493 Normal 493 8 1 1
495 494 494 11 1 1
496 495 495 11 1 1
497 496 496 11 1 1
498 497 497 11 1 1
499 498 498 11 1 1
500 499 499 11 1 1
501 500 500 11 1 1
502 501 501 11 1 1
503 502 502 11 1 1
504 503 503 11 1 1
505 504 504 11 1 1
506 505 505 11 1 1
507 506 506 11 1 1
508 507 507 11 1 1
509 508 508 11 1 1
510 509 509 11 1 1
511 510 510 11 1 1
512 511 511 11 1 1
513 512 512 11 1 1
514 513 513 11 1 1
515 514 514 11 1 1
516 515 515 11 1 1
517 516 516 11 1 1
518 517 517 11 1 1
519 518 518 11 1 1
520 519 519 11 1 1
521 520 520 11 1 1
522 521 521 11 1 1
523 522 522 11 1 1
524 523 523 11 1 1
525 524 524 11 1 1
526 525 525 11 1 1
527 526 526 11 1 1
528 527 527 11 1 1
529 528 528 11 1 1
530 529 529 11 1 1
531 530 530 11 1 1
532 531 531 11 1 1
533 532 532 11 1 1
534 533 533 11 1 1
535 534 534 11 1 1
536 535 535 11 1 1
537 536 536 11 1 1
538 537 537 11 1 1
539 538 538 11 1 1
540 539 539 11 1 1
541 540 540 11 1 1
542 541 541 11 1 1
543 542 542 11 1 1
544 543 543 11 1 1
545 544 544 11 1 1
546 545 545 11 1 1
547 546 546 11 1 1
548 547 547 11 1 1
549 548 548 11 1 1
550 549 549 11 1 1
551 550 red stripe 550 550 11 1 1
552 551 551 11 1 1
553 552 552 11 1 1
554 553 553 11 1 1
555 554 554 11 1 1
556 555 normal 555 555 11 1 1
557 556 556 11 1 1
558 557 557 11 1 1
559 558 558 11 1 1
560 559 559 11 1 1
561 560 560 11 1 1
562 561 561 11 1 1
563 562 562 11 1 1
564 563 563 11 1 1
565 564 564 11 1 1
566 565 565 11 1 1
567 566 566 11 1 1
568 567 567 11 1 1
569 568 568 11 1 1
570 569 569 11 1 1
571 570 570 11 1 1
572 571 571 11 1 1
573 572 572 11 1 1
574 573 573 11 1 1
575 574 574 11 1 1
576 575 575 11 1 1
577 576 576 11 1 1
578 577 577 11 1 1
579 578 578 11 1 1
580 579 579 11 1 1
581 580 580 11 1 1
582 581 581 11 1 1
583 582 582 11 1 1
584 583 583 11 1 1
585 584 584 11 1 1
586 585 spring 585 11 1 1
587 586 spring 586 11 1 1
588 587 587 11 1 1
589 588 588 11 1 1
590 589 589 11 1 1
591 590 590 11 1 1
592 591 591 11 1 1
593 592 592 11 1 1
594 593 593 11 1 1
595 594 594 11 1 1
596 595 595 11 1 1
597 596 596 11 1 1
598 597 597 11 1 1
599 598 598 11 1 1
600 599 599 11 1 1
601 600 600 11 1 1
602 601 601 11 1 1
603 602 602 11 1 1
604 603 603 11 1 1
605 604 604 11 1 1
606 605 605 11 1 1
607 606 606 11 1 1
608 607 607 11 1 1
609 608 608 11 1 1
610 609 609 11 1 1
611 610 610 11 1 1
612 611 611 11 1 1
613 612 612 11 1 1
614 613 613 11 1 1
615 614 614 11 1 1
616 615 615 11 1 1
617 616 616 11 1 1
618 617 617 11 1 1
619 618 618 11 1 1
620 619 619 11 1 1
621 620 620 11 1 1
622 621 621 11 1 1
623 622 622 11 1 1
624 623 623 11 1 1
625 624 624 11 1 1
626 625 625 11 1 1
627 626 626 11 1 1
628 627 627 11 1 1
629 628 628 11 1 1
630 629 629 11 1 1
631 630 630 11 1 1
632 631 631 11 1 1
633 632 632 11 1 1
634 633 633 11 1 1
635 634 634 11 1 1
636 635 635 11 1 1
637 636 636 11 1 1
638 637 637 11 1 1
639 638 638 11 1 1
640 639 639 11 1 1
641 640 640 11 1 1
642 641 641 11 1 1
643 642 642 11 1 1
644 643 643 11 1 1
645 644 644 11 1 1
646 645 645 11 1 1
647 646 646 11 1 1
648 647 647 11 1 1
649 648 voice 648 648 11 1 1
650 649 orange 649 11 1 1
651 10001 B 201 3 0 2
652 10002 C 201 3 0 3
653 10003 D 201 3 0 4
654 10004 E 201 3 0 5
655 10005 F 201 3 0 6
656 10006 G 201 3 0 7
657 10007 H 201 3 0 8
658 10008 I 201 3 0 9
659 10009 J 201 3 0 10
660 10010 K 201 3 0 11
661 10011 L 201 3 0 12
662 10012 M 201 3 0 13
663 10013 N 201 3 0 14
664 10014 O 201 3 0 15
665 10015 P 201 3 0 16
666 10016 Q 201 3 0 17
667 10017 R 201 3 0 18
668 10018 S 201 3 0 19
669 10019 T 201 3 0 20
670 10020 U 201 3 0 21
671 10021 V 201 3 0 22
672 10022 W 201 3 0 23
673 10023 X 201 3 0 24
674 10024 Y 201 3 0 25
675 10025 Z 201 3 0 26
676 10026 ! 201 5 0 27
677 10027 ? 201 5 0 27
678 10028 Sunny 351 10013 5 0 2
679 10029 Rainy 351 10014 5 0 3
680 10030 Snowy 351 10015 5 0 4
681 10031 Attack 386 10001 7 0 2
682 10032 Defense 386 10002 7 0 3
683 10033 Speed 386 10003 6 0 4
684 10034 Sandy 412 8 0 2
685 10035 Trash 412 8 0 3
686 10036 Sandy 413 10004 8 0 2
687 10037 Trash 413 10005 8 0 3
688 10038 Sunshine 421 8 0 2
689 10039 East 422 8 0 2
690 10040 East 423 8 0 2
691 10041 Bug 493 8 0 2
692 10042 Dark 493 8 0 2
693 10043 Dragon 493 8 0 2
694 10044 Electric 493 8 0 2
695 10045 Fighting 493 8 0 2
696 10046 Fire 493 8 0 2
697 10047 Flying 493 8 0 2
698 10048 Ghost 493 8 0 2
699 10049 Grass 493 8 0 2
700 10050 Ground 493 8 0 2
701 10051 Ice 493 8 0 2
702 10052 Poison 493 8 0 2
703 10053 Psychic 493 8 0 2
704 10054 Rock 493 8 0 2
705 10055 Steel 493 8 0 2
706 10056 Water 493 8 0 2
707 10057 ??? 493 8 0 3
708 10058 Heat 479 10008 9 0 2
709 10059 Wash 479 10009 9 0 2
710 10060 Frost 479 10010 9 0 2
711 10061 Fan 479 10011 9 0 2
712 10062 Mow 479 10012 9 0 2
713 10063 Origin 487 10007 9 0 2
714 10064 Sky 492 10006 9 0 2
715 10065 Spiky-eared 172 10 0 2
716 10066 blue stripe 550 10016 11 0 2
717 10067 daruma 555 10017 11 0 2
718 10068 summer 585 11 0 2
719 10069 autumn 585 11 0 3
720 10070 winter 585 11 0 4
721 10071 summer 586 11 0 2
722 10072 autumn 586 11 0 3
723 10073 winter 586 11 0 4
724 10074 step 648 10018 11 0 2
725 10075 blue 649 11 0 2
726 10076 yellow 649 11 0 2
727 10077 red 649 11 0 2
728 10078 white 649 11 0 2

View file

@ -767,26 +767,14 @@ class PokedexVersionGroup(TableBase):
info=dict(description=u"ID of the version group"))
class Pokemon(TableBase):
u"""A species of pokémon. The core to this whole mess.
Note that I use both 'forme' and 'form' in both code and the database. I
only use 'forme' when specifically referring to Pokémon that have multiple
distinct species as formsi.e., different stats or movesets. 'Form' is a
more general term referring to any variation within a species, including
purely cosmetic forms like Unown.
u"""A species of Pokémon. The core to this whole mess.
"""
# XXX: Refine the form-specific docs
# XXX: Update form/forme discussion when #179 is dealt with.
__tablename__ = 'pokemon'
__singlename__ = 'pokemon'
id = Column(Integer, primary_key=True, nullable=False,
info=dict(description=u"A numeric ID"))
name = Column(Unicode(20), nullable=False,
info=dict(description=u"The English name of the pokémon", official=True, format='plaintext'))
forme_name = Column(Unicode(16),
info=dict(description=u"The name of this form, if the species has forms", format='plaintext'))
forme_base_pokemon_id = Column(Integer, ForeignKey('pokemon.id'),
info=dict(description=u"ID for the base form, if this species has one")) # XXX: ?
info=dict(description=u"The English name of the Pokémon", official=True, format='plaintext'))
generation_id = Column(Integer, ForeignKey('generations.id'),
info=dict(description=u"ID of the generation this species first appeared in"))
evolution_chain_id = Column(Integer, ForeignKey('evolution_chains.id'),
@ -824,23 +812,32 @@ class Pokemon(TableBase):
### Stuff to handle alternate Pokémon forms
@property
def national_id(self):
u"""Returns the National Pokédex number for this Pokémon. Use this
instead of the id directly; alternate formes may make the id incorrect.
def is_base_form(self):
u"""Returns True iff the Pokémon is the base form for its species,
e.g. Land Shaymin.
"""
if self.forme_base_pokemon_id:
return self.forme_base_pokemon_id
return self.id
return self.unique_form is None or self.unique_form.is_default
@property
def form_name(self):
u"""Returns the Pokémon's form name if it represents a particular form
and that form has a name, or None otherwise.
"""
# If self.unique_form is None, the short-circuit "and" will go ahead
# and return that. Otherwise, it'll return the form's name, which may
# also be None.
return self.unique_form and self.unique_form.name
@property
def full_name(self):
u"""Returns the name of this Pokémon, including its Forme, if any.
"""
u"""Returns the Pokémon's name, including its form if applicable."""
if self.forme_name:
return "%s %s" % (self.forme_name.title(), self.name)
return self.name
if self.form_name:
return '{0} {1}'.format(self.form_name, self.name)
else:
return self.name
@property
def normal_form(self):
@ -848,9 +845,8 @@ class Pokemon(TableBase):
regular Deoxys when called on any Deoxys form.
"""
if self.forme_base_pokemon:
return self.forme_base_pokemon
if self.unique_form:
return self.unique_form.form_base_pokemon
return self
### Not forms!
@ -978,30 +974,63 @@ class PokemonFlavorText(TableBase):
flavor_text = Column(Unicode(255), nullable=False,
info=dict(description=u"ID of the version that has this flavor text", official=True, format='gametext'))
class PokemonForm(TableBase):
u"""An individual form of a Pokémon.
Pokémon that do not have separate forms are still given a single row to
represent their single form.
"""
__tablename__ = 'pokemon_forms'
__singlename__ = 'pokemon_form'
id = Column(Integer, primary_key=True, nullable=False,
info=dict(description=u'A unique ID for this form.'))
name = Column(Unicode(16), nullable=True,
info=dict(description=u"This form's name, e.g. \"Plant\" for Plant Cloak Burmy.", official=True, format='plaintext'))
form_base_pokemon_id = Column(Integer, ForeignKey('pokemon.id'), nullable=False, autoincrement=False,
info=dict(description=u'The ID of the base Pokémon for this form.'))
unique_pokemon_id = Column(Integer, ForeignKey('pokemon.id'), autoincrement=False,
info=dict(description=u'The ID of a Pokémon that represents specifically this form, for Pokémon with functionally-different forms like Wormadam.'))
introduced_in_version_group_id = Column(Integer, ForeignKey('version_groups.id'), autoincrement=False,
info=dict(description=u'The ID of the version group in which this form first appeared.'))
is_default = Column(Boolean, nullable=False,
info=dict(description=u'Set for exactly one form used as the default for each species.'))
order = Column(Integer, nullable=False, autoincrement=False,
info=dict(description=u'The order in which forms should be sorted. Multiple forms may have equal order, in which case they should fall back on sorting by name.'))
@property
def full_name(self):
u"""Returns the full name of this form, e.g. "Plant Cloak"."""
if not self.name:
return None
elif self.form_group and self.form_group.term:
return '{0} {1}'.format(self.name, self.form_group.term)
else:
return self.name
@property
def pokemon_name(self):
u"""Returns the name of this Pokémon with this form, e.g. "Plant
Burmy".
"""
if self.name:
return '{0} {1}'.format(self.name, self.form_base_pokemon.name)
else:
return self.form_base_pokemon.name
class PokemonFormGroup(TableBase):
# XXX: Give the docstring here & check column descriptions
u"""Information about a Pokémon's forms as a group."""
__tablename__ = 'pokemon_form_groups'
pokemon_id = Column(Integer, ForeignKey('pokemon.id'), primary_key=True, nullable=False, autoincrement=False,
info=dict(description=u"ID of the base form pokémon"))
info=dict(description=u"ID of the base form Pokémon"))
term = Column(Unicode(16), nullable=True,
info=dict(description=u"The term for this Pokémon's forms, e.g. \"Cloak\" for Burmy or \"Forme\" for Deoxys.", official=True, format='plaintext'))
is_battle_only = Column(Boolean, nullable=False,
info=dict(description=u"Set iff the forms only change in battle"))
description = Column(markdown.MarkdownColumn(1024), nullable=False,
info=dict(description=u"English description of how the forms work", format='markdown'))
class PokemonFormSprite(TableBase):
# XXX: Give the docstring here & check column descriptions
__tablename__ = 'pokemon_form_sprites'
id = Column(Integer, primary_key=True, nullable=False,
info=dict(description=u"A numeric ID"))
pokemon_id = Column(Integer, ForeignKey('pokemon.id'), primary_key=True, nullable=False, autoincrement=False,
info=dict(description=u"ID of the pokémon"))
introduced_in_version_group_id = Column(Integer, ForeignKey('version_groups.id'), primary_key=True, nullable=False, autoincrement=False,
info=dict(description=u"ID of version group the form was introduced in"))
name = Column(Unicode(16), nullable=True,
info=dict(description=u"English name of the form", format='plaintext'))
is_default = Column(Boolean, nullable=True,
info=dict(description=u'Set iff the form is the base, normal, usual, or otherwise default form'))
class PokemonHabitat(TableBase):
u"""The habitat of a pokémon, as given in the FireRed/LeafGreen version pokédex
"""
@ -1382,18 +1411,9 @@ Pokemon.dream_ability = relation(Ability,
),
uselist=False,
)
Pokemon.formes = relation(Pokemon, primaryjoin=Pokemon.id==Pokemon.forme_base_pokemon_id,
backref=backref('forme_base_pokemon',
remote_side=[Pokemon.id]))
Pokemon.pokemon_color = relation(PokemonColor, backref='pokemon')
Pokemon.color = association_proxy('pokemon_color', 'name')
Pokemon.dex_numbers = relation(PokemonDexNumber, order_by=PokemonDexNumber.pokedex_id.asc(), backref='pokemon')
Pokemon.default_form_sprite = relation(PokemonFormSprite,
primaryjoin=and_(
Pokemon.id==PokemonFormSprite.pokemon_id,
PokemonFormSprite.is_default==True,
),
uselist=False)
Pokemon.egg_groups = relation(EggGroup, secondary=PokemonEggGroup.__table__,
order_by=PokemonEggGroup.egg_group_id,
backref='pokemon')
@ -1406,13 +1426,19 @@ Pokemon.child_pokemon = relation(Pokemon,
)
Pokemon.flavor_text = relation(PokemonFlavorText, order_by=PokemonFlavorText.version_id.asc(), backref='pokemon')
Pokemon.foreign_names = relation(PokemonName, backref='pokemon')
Pokemon.forms = relation(PokemonForm, primaryjoin=Pokemon.id==PokemonForm.form_base_pokemon_id,
order_by=(PokemonForm.order.asc(), PokemonForm.name.asc()))
Pokemon.default_form = relation(PokemonForm,
primaryjoin=and_(Pokemon.id==PokemonForm.form_base_pokemon_id, PokemonForm.is_default==True),
uselist=False,
)
Pokemon.pokemon_habitat = relation(PokemonHabitat, backref='pokemon')
Pokemon.habitat = association_proxy('pokemon_habitat', 'name')
Pokemon.items = relation(PokemonItem, backref='pokemon')
Pokemon.generation = relation(Generation, backref='pokemon')
Pokemon.shape = relation(PokemonShape, backref='pokemon')
Pokemon.stats = relation(PokemonStat, backref='pokemon', order_by=PokemonStat.stat_id.asc())
Pokemon.types = relation(Type, secondary=PokemonType.__table__, order_by=PokemonType.slot.asc())
Pokemon.types = relation(Type, secondary=PokemonType.__table__, order_by=PokemonType.slot.asc(), backref='pokemon')
PokemonDexNumber.pokedex = relation(Pokedex)
@ -1450,13 +1476,17 @@ PokemonEvolution.party_pokemon = relation(Pokemon,
PokemonFlavorText.version = relation(Version)
PokemonItem.item = relation(Item, backref='pokemon')
PokemonItem.version = relation(Version)
PokemonForm.form_base_pokemon = relation(Pokemon, primaryjoin=PokemonForm.form_base_pokemon_id==Pokemon.id)
PokemonForm.unique_pokemon = relation(Pokemon, backref=backref('unique_form', uselist=False),
primaryjoin=PokemonForm.unique_pokemon_id==Pokemon.id)
PokemonForm.version_group = relation(VersionGroup)
PokemonForm.form_group = association_proxy('form_base_pokemon', 'form_group')
PokemonFormGroup.pokemon = relation(Pokemon, backref=backref('form_group',
uselist=False))
PokemonFormSprite.pokemon = relation(Pokemon, backref='form_sprites')
PokemonFormSprite.introduced_in = relation(VersionGroup)
PokemonItem.item = relation(Item, backref='pokemon')
PokemonItem.version = relation(Version)
PokemonMove.pokemon = relation(Pokemon, backref='pokemon_moves')
PokemonMove.version_group = relation(VersionGroup)

View file

@ -104,6 +104,7 @@ class PokedexLookup(object):
tables.Move,
tables.Nature,
tables.Pokemon,
tables.PokemonForm,
tables.Type,
)
)
@ -212,16 +213,16 @@ class PokedexLookup(object):
# Add the basic English name to the index
if cls == tables.Pokemon:
# Pokémon need their form name added
# XXX kinda kludgy
add(row.full_name, None, u'en', u'us')
# Don't re-add alternate forms of the same Pokémon; they'll
# be added as Pokémon forms instead
if not row.is_base_form:
continue
elif cls == tables.PokemonForm:
if row.name:
add(row.pokemon_name, None, u'en', u'us')
continue
# If this is a default form, ALSO add the unadorned name,
# so 'Deoxys' alone will still do the right thing
if row.forme_name and not row.forme_base_pokemon_id:
add(row.name, None, u'en', u'us')
else:
add(row.name, None, u'en', u'us')
add(row.name, None, u'en', u'us')
# Some things also have other languages' names
# XXX other language form names..?
@ -550,8 +551,10 @@ class PokedexLookup(object):
table_names = []
for valid_type in valid_types:
table_name = self._parse_table_name(valid_type)
# Skip anything not recognized. Could be, say, a language code
if table_name:
# Skip anything not recognized. Could be, say, a language code.
# XXX The vast majority of Pokémon forms are unnamed and unindexed,
# which can produce blank results. So skip them too for now.
if table_name and table_name != 'pokemon_forms':
table_names.append(table_name)
if not table_names:
@ -559,6 +562,7 @@ class PokedexLookup(object):
# were valid, but this function is guaranteed to return
# *something*, so it politely selects from the entire index instead
table_names = self.indexed_tables.keys()
table_names.remove('pokemon_forms')
# Rather than create an array of many hundred items and pick randomly
# from it, just pick a number up to the total number of potential