mirror of
https://github.com/pret/pokeplatinum.git
synced 2026-03-21 17:55:13 -05:00
Replace python scripts for packing species archives with C++
This new code is responsible for packing the following archives: - `pl_personal` -> basic information for each species: stats, types, etc. - `evo` -> evolution lines for each species - `wotbl` -> by-level learnsets for each species - `ppark` -> catching show data for each species - `height` -> y-offsets for front and back sprites for each species - `pl_poke_data` -> sprite-rendering data for each species: animation ID, frame data, shadow size and offsets, etc. Additionally, the following headers are generated: - `res/pokemon/tutorable_moves.h` -> A listing of moves taught by each tutor and how much each move costs to be tutored - `res/pokemon/species_learnsets_by_tutor.h` -> An array of bitmasks for each species designating which moves can be tutored to that species
This commit is contained in:
parent
7361ba16b2
commit
2c410b8046
1
.gitignore
vendored
1
.gitignore
vendored
|
|
@ -19,6 +19,7 @@
|
|||
/subprojects/knarc/
|
||||
/subprojects/narc/
|
||||
/subprojects/metang/
|
||||
/subprojects/rapidjson-*/
|
||||
|
||||
# CLion folders
|
||||
.idea/
|
||||
|
|
|
|||
|
|
@ -1,9 +1,9 @@
|
|||
#include "generated/items.h"
|
||||
#include "generated/moves.h"
|
||||
#include "generated/species.h"
|
||||
#include "generated/catching_show_points_category.h"
|
||||
.include "macros/movement.inc"
|
||||
.include "consts/badges.inc"
|
||||
.include "consts/catching_show.inc"
|
||||
.include "consts/game_records.inc"
|
||||
.include "consts/journal.inc"
|
||||
.include "consts/map.inc"
|
||||
|
|
|
|||
|
|
@ -1,34 +0,0 @@
|
|||
{
|
||||
"definitions": {
|
||||
"@CatchingShowPointsCategory": {
|
||||
"type": "enum",
|
||||
"values": [
|
||||
"CATCHING_SHOW_CATCHING_POINTS",
|
||||
"CATCHING_SHOW_TIME_POINTS",
|
||||
"CATCHING_SHOW_TYPE_POINTS",
|
||||
"CATCHING_SHOW_TOTAL_POINTS"
|
||||
]
|
||||
},
|
||||
"@PalParkLandArea": {
|
||||
"type": "enum",
|
||||
"values": [
|
||||
"PAL_PARK_AREA_LAND_NONE",
|
||||
"PAL_PARK_AREA_LAND_NORTH_WEST",
|
||||
"PAL_PARK_AREA_LAND_NORTH_EAST",
|
||||
"PAL_PARK_AREA_LAND_SOUTH_WEST",
|
||||
"PAL_PARK_AREA_LAND_SOUTH_EAST",
|
||||
"PAL_PARK_AREA_LAND_END"
|
||||
]
|
||||
},
|
||||
"@PalParkWaterArea": {
|
||||
"type": "enum",
|
||||
"values": [
|
||||
"PAL_PARK_AREA_WATER_NONE",
|
||||
"PAL_PARK_AREA_WATER_NORTH_WEST",
|
||||
"PAL_PARK_AREA_WATER_NORTH_EAST",
|
||||
"PAL_PARK_AREA_WATER_SOUTH_WEST",
|
||||
"PAL_PARK_AREA_WATER_SOUTH_EAST"
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -1,9 +1,11 @@
|
|||
# This must be moved here during the refactor to move all constants to metang.
|
||||
constgen_py = find_program('constgen_py', native: true)
|
||||
|
||||
consts_manifest_basenames = [
|
||||
'badges',
|
||||
'battle',
|
||||
'battle_subscripts',
|
||||
'btlcmd',
|
||||
'catching_show',
|
||||
'game_records',
|
||||
'gender',
|
||||
'journal',
|
||||
|
|
@ -14,8 +16,6 @@ consts_manifest_basenames = [
|
|||
'poketch',
|
||||
'scrcmd',
|
||||
'sdat',
|
||||
'shadows',
|
||||
'tm_learnset',
|
||||
'trainer',
|
||||
'trainer_ai',
|
||||
]
|
||||
|
|
|
|||
|
|
@ -1,13 +0,0 @@
|
|||
{
|
||||
"definitions": {
|
||||
"@PokemonBattleShadowSize": {
|
||||
"type": "enum",
|
||||
"values": [
|
||||
"SHADOW_SIZE_NONE",
|
||||
"SHADOW_SIZE_SMALL",
|
||||
"SHADOW_SIZE_MEDIUM",
|
||||
"SHADOW_SIZE_LARGE"
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -1,111 +0,0 @@
|
|||
{
|
||||
"definitions": {
|
||||
"@TMLearnsetFlags": {
|
||||
"type": "flags",
|
||||
"values": [
|
||||
"TM00",
|
||||
"TM01",
|
||||
"TM02",
|
||||
"TM03",
|
||||
"TM04",
|
||||
"TM05",
|
||||
"TM06",
|
||||
"TM07",
|
||||
"TM08",
|
||||
"TM09",
|
||||
"TM10",
|
||||
"TM11",
|
||||
"TM12",
|
||||
"TM13",
|
||||
"TM14",
|
||||
"TM15",
|
||||
"TM16",
|
||||
"TM17",
|
||||
"TM18",
|
||||
"TM19",
|
||||
"TM20",
|
||||
"TM21",
|
||||
"TM22",
|
||||
"TM23",
|
||||
"TM24",
|
||||
"TM25",
|
||||
"TM26",
|
||||
"TM27",
|
||||
"TM28",
|
||||
"TM29",
|
||||
"TM30",
|
||||
"TM31",
|
||||
"TM32",
|
||||
"TM33",
|
||||
"TM34",
|
||||
"TM35",
|
||||
"TM36",
|
||||
"TM37",
|
||||
"TM38",
|
||||
"TM39",
|
||||
"TM40",
|
||||
"TM41",
|
||||
"TM42",
|
||||
"TM43",
|
||||
"TM44",
|
||||
"TM45",
|
||||
"TM46",
|
||||
"TM47",
|
||||
"TM48",
|
||||
"TM49",
|
||||
"TM50",
|
||||
"TM51",
|
||||
"TM52",
|
||||
"TM53",
|
||||
"TM54",
|
||||
"TM55",
|
||||
"TM56",
|
||||
"TM57",
|
||||
"TM58",
|
||||
"TM59",
|
||||
"TM60",
|
||||
"TM61",
|
||||
"TM62",
|
||||
"TM63",
|
||||
"TM64",
|
||||
"TM65",
|
||||
"TM66",
|
||||
"TM67",
|
||||
"TM68",
|
||||
"TM69",
|
||||
"TM70",
|
||||
"TM71",
|
||||
"TM72",
|
||||
"TM73",
|
||||
"TM74",
|
||||
"TM75",
|
||||
"TM76",
|
||||
"TM77",
|
||||
"TM78",
|
||||
"TM79",
|
||||
"TM80",
|
||||
"TM81",
|
||||
"TM82",
|
||||
"TM83",
|
||||
"TM84",
|
||||
"TM85",
|
||||
"TM86",
|
||||
"TM87",
|
||||
"TM88",
|
||||
"TM89",
|
||||
"TM90",
|
||||
"TM91",
|
||||
"TM92",
|
||||
"HM01",
|
||||
"HM02",
|
||||
"HM03",
|
||||
"HM04",
|
||||
"HM05",
|
||||
"HM06",
|
||||
"HM07",
|
||||
"HM08"
|
||||
],
|
||||
"composites": {}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -2,234 +2,278 @@ import json
|
|||
import pathlib
|
||||
|
||||
homedir = pathlib.Path(__file__).resolve().parent
|
||||
builddir = homedir / 'build'
|
||||
builddir = homedir / "build"
|
||||
|
||||
arm7_c_flags = [
|
||||
'arm-none-eabi-gcc',
|
||||
'-c',
|
||||
'-O3',
|
||||
'-std=c99',
|
||||
'-mcpu=arm7tdmi',
|
||||
'-mfloat-abi=soft',
|
||||
'-nostdinc',
|
||||
'-D_NITRO',
|
||||
'-DSDK_4M',
|
||||
'-DSDK_ARM7',
|
||||
'-DSDK_CODE_ARM',
|
||||
'-DSDK_CW',
|
||||
'-DSDK_CW_FORCE_EXPORT_SUPPORT',
|
||||
'-DSDK_FINALROM',
|
||||
'-DSDK_TS',
|
||||
"arm-none-eabi-gcc",
|
||||
"-c",
|
||||
"-O3",
|
||||
"-std=c99",
|
||||
"-mcpu=arm7tdmi",
|
||||
"-mfloat-abi=soft",
|
||||
"-nostdinc",
|
||||
"-D_NITRO",
|
||||
"-DSDK_4M",
|
||||
"-DSDK_ARM7",
|
||||
"-DSDK_CODE_ARM",
|
||||
"-DSDK_CW",
|
||||
"-DSDK_CW_FORCE_EXPORT_SUPPORT",
|
||||
"-DSDK_FINALROM",
|
||||
"-DSDK_TS",
|
||||
]
|
||||
|
||||
arm9_c_flags = [
|
||||
'arm-none-eabi-gcc',
|
||||
'-c',
|
||||
'-O3',
|
||||
'-std=c99',
|
||||
'-mcpu=arm946e-s',
|
||||
'-mfloat-abi=soft',
|
||||
'-nostdinc',
|
||||
'-D_NITRO',
|
||||
'-DLINK_PPWLOBBY',
|
||||
'-DNNS_FINALROM',
|
||||
'-DSDK_4M',
|
||||
'-DSDK_ARM9',
|
||||
'-DSDK_CODE_ARM',
|
||||
'-DSDK_CW',
|
||||
'-DSDK_CW_FORCE_EXPORT_SUPPORT',
|
||||
'-DSDK_FINALROM',
|
||||
'-DSDK_TS',
|
||||
'-DPOKEPLATINUM_GENERATED_ENUM',
|
||||
'-DPM_KEEP_ASSERTS',
|
||||
'-DGAME_VERSION=PLATINUM',
|
||||
'-DGAME_LANGUAGE=ENGLISH'
|
||||
"arm-none-eabi-gcc",
|
||||
"-c",
|
||||
"-O3",
|
||||
"-std=c99",
|
||||
"-mcpu=arm946e-s",
|
||||
"-mfloat-abi=soft",
|
||||
"-nostdinc",
|
||||
"-D_NITRO",
|
||||
"-DLINK_PPWLOBBY",
|
||||
"-DNNS_FINALROM",
|
||||
"-DSDK_4M",
|
||||
"-DSDK_ARM9",
|
||||
"-DSDK_CODE_ARM",
|
||||
"-DSDK_CW",
|
||||
"-DSDK_CW_FORCE_EXPORT_SUPPORT",
|
||||
"-DSDK_FINALROM",
|
||||
"-DSDK_TS",
|
||||
"-DPOKEPLATINUM_GENERATED_ENUM",
|
||||
"-DPM_KEEP_ASSERTS",
|
||||
"-DGAME_VERSION=PLATINUM",
|
||||
"-DGAME_LANGUAGE=ENGLISH",
|
||||
]
|
||||
|
||||
asm_commands = [
|
||||
{
|
||||
'directory': builddir,
|
||||
'arguments': [
|
||||
'arm-none-eabi-as',
|
||||
'-mcpu=arm946e-s',
|
||||
'-o',
|
||||
file.with_suffix('.o'),
|
||||
file.resolve()
|
||||
"directory": builddir,
|
||||
"arguments": [
|
||||
"arm-none-eabi-as",
|
||||
"-mcpu=arm946e-s",
|
||||
"-o",
|
||||
file.with_suffix(".o"),
|
||||
file.resolve(),
|
||||
],
|
||||
'file': file.resolve()
|
||||
} for file in (homedir / 'asm').rglob('*.s')
|
||||
"file": file.resolve(),
|
||||
}
|
||||
for file in (homedir / "asm").rglob("*.s")
|
||||
]
|
||||
|
||||
nitrosdk_c_commands = [
|
||||
{
|
||||
'directory': builddir,
|
||||
'arguments': arm9_c_flags + [
|
||||
f'-I{homedir}/tools/cw/include/MSL_C',
|
||||
f'-I{homedir}/tools/cw/include/MSL_Extras',
|
||||
f'-I{homedir}/subprojects/NitroSDK-4.2.30001/include',
|
||||
f'-I{builddir}/subprojects/NitroSDK-4.2.30001/gen',
|
||||
'-o',
|
||||
file.with_suffix('.o'),
|
||||
file.resolve()
|
||||
"directory": builddir,
|
||||
"arguments": arm9_c_flags
|
||||
+ [
|
||||
f"-I{homedir}/tools/cw/include/MSL_C",
|
||||
f"-I{homedir}/tools/cw/include/MSL_Extras",
|
||||
f"-I{homedir}/subprojects/NitroSDK-4.2.30001/include",
|
||||
f"-I{builddir}/subprojects/NitroSDK-4.2.30001/gen",
|
||||
"-o",
|
||||
file.with_suffix(".o"),
|
||||
file.resolve(),
|
||||
],
|
||||
'file': file.resolve()
|
||||
} for file in (homedir / 'subprojects/NitroSDK-4.2.30001').rglob('*.c')
|
||||
"file": file.resolve(),
|
||||
}
|
||||
for file in (homedir / "subprojects/NitroSDK-4.2.30001").rglob("*.c")
|
||||
]
|
||||
|
||||
nitrosystem_c_commands = [
|
||||
{
|
||||
'directory': builddir,
|
||||
'arguments': arm9_c_flags + [
|
||||
f'-I{homedir}/tools/cw/include/MSL_C',
|
||||
f'-I{homedir}/tools/cw/include/MSL_Extras',
|
||||
f'-I{homedir}/subprojects/NitroSDK-4.2.30001/include',
|
||||
f'-I{builddir}/subprojects/NitroSDK-4.2.30001/gen',
|
||||
f'-I{homedir}/subprojects/NitroSystem-071126.1/include',
|
||||
'-o',
|
||||
file.with_suffix('.o'),
|
||||
file.resolve()
|
||||
"directory": builddir,
|
||||
"arguments": arm9_c_flags
|
||||
+ [
|
||||
f"-I{homedir}/tools/cw/include/MSL_C",
|
||||
f"-I{homedir}/tools/cw/include/MSL_Extras",
|
||||
f"-I{homedir}/subprojects/NitroSDK-4.2.30001/include",
|
||||
f"-I{builddir}/subprojects/NitroSDK-4.2.30001/gen",
|
||||
f"-I{homedir}/subprojects/NitroSystem-071126.1/include",
|
||||
"-o",
|
||||
file.with_suffix(".o"),
|
||||
file.resolve(),
|
||||
],
|
||||
'file': file.resolve()
|
||||
} for file in (homedir / 'subprojects/NitroSystem-071126.1').rglob('*.c')
|
||||
"file": file.resolve(),
|
||||
}
|
||||
for file in (homedir / "subprojects/NitroSystem-071126.1").rglob("*.c")
|
||||
]
|
||||
|
||||
nitrowifi_c_commands = [
|
||||
{
|
||||
'directory': builddir,
|
||||
'arguments': arm9_c_flags + [
|
||||
f'-I{homedir}/tools/cw/include/MSL_C',
|
||||
f'-I{homedir}/tools/cw/include/MSL_Extras',
|
||||
f'-I{homedir}/subprojects/NitroSDK-4.2.30001/include',
|
||||
f'-I{builddir}/subprojects/NitroSDK-4.2.30001/gen',
|
||||
f'-I{homedir}/subprojects/NitroSystem-071126.1/include',
|
||||
f'-I{homedir}/subprojects/NitroWiFi-2.1.30003/include',
|
||||
'-o',
|
||||
file.with_suffix('.o'),
|
||||
file.resolve()
|
||||
"directory": builddir,
|
||||
"arguments": arm9_c_flags
|
||||
+ [
|
||||
f"-I{homedir}/tools/cw/include/MSL_C",
|
||||
f"-I{homedir}/tools/cw/include/MSL_Extras",
|
||||
f"-I{homedir}/subprojects/NitroSDK-4.2.30001/include",
|
||||
f"-I{builddir}/subprojects/NitroSDK-4.2.30001/gen",
|
||||
f"-I{homedir}/subprojects/NitroSystem-071126.1/include",
|
||||
f"-I{homedir}/subprojects/NitroWiFi-2.1.30003/include",
|
||||
"-o",
|
||||
file.with_suffix(".o"),
|
||||
file.resolve(),
|
||||
],
|
||||
'file': file.resolve()
|
||||
} for file in (homedir / 'subprojects/NitroWiFi-2.1.30003').rglob('*.c')
|
||||
"file": file.resolve(),
|
||||
}
|
||||
for file in (homedir / "subprojects/NitroWiFi-2.1.30003").rglob("*.c")
|
||||
]
|
||||
|
||||
nitrodwc_c_commands = [
|
||||
{
|
||||
'directory': builddir,
|
||||
'arguments': arm9_c_flags + [
|
||||
f'-I{homedir}/tools/cw/include/MSL_C',
|
||||
f'-I{homedir}/tools/cw/include/MSL_Extras',
|
||||
f'-I{homedir}/subprojects/NitroSDK-4.2.30001/include',
|
||||
f'-I{builddir}/subprojects/NitroSDK-4.2.30001/gen',
|
||||
f'-I{homedir}/subprojects/NitroSystem-071126.1/include',
|
||||
f'-I{homedir}/subprojects/NitroWiFi-2.1.30003/include',
|
||||
f'-I{homedir}/subprojects/NitroDWC-2.2.30008/include',
|
||||
'-o',
|
||||
file.with_suffix('.o'),
|
||||
file.resolve()
|
||||
"directory": builddir,
|
||||
"arguments": arm9_c_flags
|
||||
+ [
|
||||
f"-I{homedir}/tools/cw/include/MSL_C",
|
||||
f"-I{homedir}/tools/cw/include/MSL_Extras",
|
||||
f"-I{homedir}/subprojects/NitroSDK-4.2.30001/include",
|
||||
f"-I{builddir}/subprojects/NitroSDK-4.2.30001/gen",
|
||||
f"-I{homedir}/subprojects/NitroSystem-071126.1/include",
|
||||
f"-I{homedir}/subprojects/NitroWiFi-2.1.30003/include",
|
||||
f"-I{homedir}/subprojects/NitroDWC-2.2.30008/include",
|
||||
"-o",
|
||||
file.with_suffix(".o"),
|
||||
file.resolve(),
|
||||
],
|
||||
'file': file.resolve()
|
||||
} for file in (homedir / 'subprojects/NitroDWC-2.2.30008').rglob('*.c')
|
||||
"file": file.resolve(),
|
||||
}
|
||||
for file in (homedir / "subprojects/NitroDWC-2.2.30008").rglob("*.c")
|
||||
]
|
||||
|
||||
libvct_c_commands = [
|
||||
{
|
||||
'directory': builddir,
|
||||
'arguments': arm9_c_flags + [
|
||||
f'-I{homedir}/tools/cw/include/MSL_C',
|
||||
f'-I{homedir}/tools/cw/include/MSL_Extras',
|
||||
f'-I{homedir}/subprojects/NitroSDK-4.2.30001/include',
|
||||
f'-I{builddir}/subprojects/NitroSDK-4.2.30001/gen',
|
||||
f'-I{homedir}/subprojects/NitroSystem-071126.1/include',
|
||||
f'-I{homedir}/subprojects/NitroWiFi-2.1.30003/include',
|
||||
f'-I{homedir}/subprojects/NitroDWC-2.2.30008/include',
|
||||
f'-I{homedir}/subprojects/libvct-1.3.1/include',
|
||||
'-o',
|
||||
file.with_suffix('.o'),
|
||||
file.resolve()
|
||||
"directory": builddir,
|
||||
"arguments": arm9_c_flags
|
||||
+ [
|
||||
f"-I{homedir}/tools/cw/include/MSL_C",
|
||||
f"-I{homedir}/tools/cw/include/MSL_Extras",
|
||||
f"-I{homedir}/subprojects/NitroSDK-4.2.30001/include",
|
||||
f"-I{builddir}/subprojects/NitroSDK-4.2.30001/gen",
|
||||
f"-I{homedir}/subprojects/NitroSystem-071126.1/include",
|
||||
f"-I{homedir}/subprojects/NitroWiFi-2.1.30003/include",
|
||||
f"-I{homedir}/subprojects/NitroDWC-2.2.30008/include",
|
||||
f"-I{homedir}/subprojects/libvct-1.3.1/include",
|
||||
"-o",
|
||||
file.with_suffix(".o"),
|
||||
file.resolve(),
|
||||
],
|
||||
'file': file.resolve()
|
||||
} for file in (homedir / 'subprojects/libvct-1.3.1').rglob('*.c')
|
||||
"file": file.resolve(),
|
||||
}
|
||||
for file in (homedir / "subprojects/libvct-1.3.1").rglob("*.c")
|
||||
]
|
||||
|
||||
libcrypto_c_commands = [
|
||||
{
|
||||
'directory': builddir,
|
||||
'arguments': arm9_c_flags + [
|
||||
f'-I{homedir}/tools/cw/include/MSL_C',
|
||||
f'-I{homedir}/tools/cw/include/MSL_Extras',
|
||||
f'-I{homedir}/subprojects/NitroSDK-4.2.30001/include',
|
||||
f'-I{builddir}/subprojects/NitroSDK-4.2.30001/gen',
|
||||
f'-I{homedir}/subprojects/NitroSystem-071126.1/include',
|
||||
f'-I{homedir}/subprojects/NitroWiFi-2.1.30003/include',
|
||||
f'-I{homedir}/subprojects/NitroDWC-2.2.30008/include',
|
||||
f'-I{homedir}/subprojects/libvct-1.3.1/include',
|
||||
f'-I{homedir}/subprojects/libcrypto/include',
|
||||
'-o',
|
||||
file.with_suffix('.o'),
|
||||
file.resolve()
|
||||
"directory": builddir,
|
||||
"arguments": arm9_c_flags
|
||||
+ [
|
||||
f"-I{homedir}/tools/cw/include/MSL_C",
|
||||
f"-I{homedir}/tools/cw/include/MSL_Extras",
|
||||
f"-I{homedir}/subprojects/NitroSDK-4.2.30001/include",
|
||||
f"-I{builddir}/subprojects/NitroSDK-4.2.30001/gen",
|
||||
f"-I{homedir}/subprojects/NitroSystem-071126.1/include",
|
||||
f"-I{homedir}/subprojects/NitroWiFi-2.1.30003/include",
|
||||
f"-I{homedir}/subprojects/NitroDWC-2.2.30008/include",
|
||||
f"-I{homedir}/subprojects/libvct-1.3.1/include",
|
||||
f"-I{homedir}/subprojects/libcrypto/include",
|
||||
"-o",
|
||||
file.with_suffix(".o"),
|
||||
file.resolve(),
|
||||
],
|
||||
'file': file.resolve()
|
||||
} for file in (homedir / 'subprojects/libcrypto').rglob('*.c')
|
||||
"file": file.resolve(),
|
||||
}
|
||||
for file in (homedir / "subprojects/libcrypto").rglob("*.c")
|
||||
]
|
||||
|
||||
ppwlobby_c_commands = [
|
||||
{
|
||||
'directory': builddir,
|
||||
'arguments': arm9_c_flags + [
|
||||
f'-I{homedir}/tools/cw/include/MSL_C',
|
||||
f'-I{homedir}/tools/cw/include/MSL_Extras',
|
||||
f'-I{homedir}/subprojects/NitroSDK-4.2.30001/include',
|
||||
f'-I{builddir}/subprojects/NitroSDK-4.2.30001/gen',
|
||||
f'-I{homedir}/subprojects/NitroSystem-071126.1/include',
|
||||
f'-I{homedir}/subprojects/NitroWiFi-2.1.30003/include',
|
||||
f'-I{homedir}/subprojects/NitroDWC-2.2.30008/include',
|
||||
f'-I{homedir}/subprojects/libvct-1.3.1/include',
|
||||
f'-I{homedir}/subprojects/libcrypto/include',
|
||||
f'-I{homedir}/subprojects/ppwlobby/include',
|
||||
'-o',
|
||||
file.with_suffix('.o'),
|
||||
file.resolve()
|
||||
"directory": builddir,
|
||||
"arguments": arm9_c_flags
|
||||
+ [
|
||||
f"-I{homedir}/tools/cw/include/MSL_C",
|
||||
f"-I{homedir}/tools/cw/include/MSL_Extras",
|
||||
f"-I{homedir}/subprojects/NitroSDK-4.2.30001/include",
|
||||
f"-I{builddir}/subprojects/NitroSDK-4.2.30001/gen",
|
||||
f"-I{homedir}/subprojects/NitroSystem-071126.1/include",
|
||||
f"-I{homedir}/subprojects/NitroWiFi-2.1.30003/include",
|
||||
f"-I{homedir}/subprojects/NitroDWC-2.2.30008/include",
|
||||
f"-I{homedir}/subprojects/libvct-1.3.1/include",
|
||||
f"-I{homedir}/subprojects/libcrypto/include",
|
||||
f"-I{homedir}/subprojects/ppwlobby/include",
|
||||
"-o",
|
||||
file.with_suffix(".o"),
|
||||
file.resolve(),
|
||||
],
|
||||
'file': file.resolve()
|
||||
} for file in (homedir / 'subprojects/ppwlobby').rglob('*.c')
|
||||
"file": file.resolve(),
|
||||
}
|
||||
for file in (homedir / "subprojects/ppwlobby").rglob("*.c")
|
||||
]
|
||||
|
||||
c_commands = [
|
||||
{
|
||||
'directory': builddir,
|
||||
'arguments': arm9_c_flags + [
|
||||
f'-I{homedir}/tools/cw/include/MSL_C',
|
||||
f'-I{homedir}/tools/cw/include/MSL_Extras',
|
||||
f'-I{homedir}/subprojects/NitroSDK-4.2.30001/include',
|
||||
f'-I{builddir}/subprojects/NitroSDK-4.2.30001/gen',
|
||||
f'-I{homedir}/subprojects/NitroSystem-071126.1/include',
|
||||
f'-I{homedir}/subprojects/NitroWiFi-2.1.30003/include',
|
||||
f'-I{homedir}/subprojects/NitroDWC-2.2.30008/include',
|
||||
f'-I{homedir}/subprojects/libvct-1.3.1/include',
|
||||
f'-I{homedir}/subprojects/libcrypto/include',
|
||||
f'-I{homedir}/subprojects/ppwlobby/include',
|
||||
f'-I{homedir}/lib/gds/include',
|
||||
f'-I{homedir}/lib/spl/include',
|
||||
f'-iquote{homedir}',
|
||||
f'-iquote{homedir}/include',
|
||||
f'-iquote{homedir}/build', # Meson includes this implicitly
|
||||
f'-iquote{homedir}/build/res', # knarc-generated NAIX headers
|
||||
f'-iquote{homedir}/build/res/text', # GMM-generated headers
|
||||
f'-include{homedir}/include/pch/global_pch.h',
|
||||
'-mthumb',
|
||||
'-o',
|
||||
file.with_suffix('.o'),
|
||||
file.resolve()
|
||||
"directory": builddir,
|
||||
"arguments": arm9_c_flags
|
||||
+ [
|
||||
f"-I{homedir}/tools/cw/include/MSL_C",
|
||||
f"-I{homedir}/tools/cw/include/MSL_Extras",
|
||||
f"-I{homedir}/subprojects/NitroSDK-4.2.30001/include",
|
||||
f"-I{builddir}/subprojects/NitroSDK-4.2.30001/gen",
|
||||
f"-I{homedir}/subprojects/NitroSystem-071126.1/include",
|
||||
f"-I{homedir}/subprojects/NitroWiFi-2.1.30003/include",
|
||||
f"-I{homedir}/subprojects/NitroDWC-2.2.30008/include",
|
||||
f"-I{homedir}/subprojects/libvct-1.3.1/include",
|
||||
f"-I{homedir}/subprojects/libcrypto/include",
|
||||
f"-I{homedir}/subprojects/ppwlobby/include",
|
||||
f"-I{homedir}/lib/gds/include",
|
||||
f"-I{homedir}/lib/spl/include",
|
||||
f"-iquote{homedir}",
|
||||
f"-iquote{homedir}/include",
|
||||
f"-iquote{homedir}/build", # Meson includes this implicitly
|
||||
f"-iquote{homedir}/build/res", # knarc-generated NAIX headers
|
||||
f"-iquote{homedir}/build/res/text", # GMM-generated headers
|
||||
f"-include{homedir}/include/pch/global_pch.h",
|
||||
"-mthumb",
|
||||
"-o",
|
||||
file.with_suffix(".o"),
|
||||
file.resolve(),
|
||||
],
|
||||
'file': file.resolve()
|
||||
} for file in (homedir / 'src').rglob('*.c')
|
||||
"file": file.resolve(),
|
||||
}
|
||||
for file in (homedir / "src").rglob("*.c")
|
||||
]
|
||||
|
||||
with open('compile_commands.json', 'w') as ofp:
|
||||
datagen_cpp_commands = [
|
||||
{
|
||||
"directory": builddir,
|
||||
"arguments": [
|
||||
"g++",
|
||||
f"-I{homedir}/subprojects/narc/lib/include", # NARC packing
|
||||
f"-I{homedir}/subprojects/rapidjson-1.1.0/include", # JSON parser
|
||||
f"-I{homedir}/tools/datagen", # base header file
|
||||
f"-I{homedir}/include", # source includes
|
||||
f"-I{builddir}", # metang-generated headers (constants)
|
||||
"-std=c++17",
|
||||
"-Wno-deprecated-declarations",
|
||||
file.with_suffix(".o"),
|
||||
file.resolve(),
|
||||
],
|
||||
"file": file.resolve(),
|
||||
}
|
||||
for file in (homedir / "tools" / "datagen").rglob("*.cpp")
|
||||
]
|
||||
|
||||
with open("compile_commands.json", "w") as ofp:
|
||||
json.dump(
|
||||
asm_commands + nitrosdk_c_commands + nitrosystem_c_commands
|
||||
+ nitrowifi_c_commands + nitrodwc_c_commands + libvct_c_commands
|
||||
+ libcrypto_c_commands + ppwlobby_c_commands + c_commands,
|
||||
asm_commands
|
||||
+ nitrosdk_c_commands
|
||||
+ nitrosystem_c_commands
|
||||
+ nitrowifi_c_commands
|
||||
+ nitrodwc_c_commands
|
||||
+ libvct_c_commands
|
||||
+ libcrypto_c_commands
|
||||
+ ppwlobby_c_commands
|
||||
+ c_commands
|
||||
+ datagen_cpp_commands,
|
||||
ofp,
|
||||
default=str,
|
||||
indent=4
|
||||
indent=4,
|
||||
)
|
||||
|
|
|
|||
4
generated/catching_show_points_category.txt
Normal file
4
generated/catching_show_points_category.txt
Normal file
|
|
@ -0,0 +1,4 @@
|
|||
CATCHING_SHOW_CATCHING_POINTS
|
||||
CATCHING_SHOW_TIME_POINTS
|
||||
CATCHING_SHOW_TYPE_POINTS
|
||||
CATCHING_SHOW_TOTAL_POINTS
|
||||
|
|
@ -1,5 +1,16 @@
|
|||
# This build file defines sets of constants which are used throughout the code
|
||||
# base, both in the ROM's source code and in internal tooling. We generate these
|
||||
# constants to ensure that they have a particular set of characteristics, are
|
||||
# easily validated in data files representing them as strings, and can be easily
|
||||
# parsed by simple string manipulations.
|
||||
|
||||
# This must be declared here instead of in tools/meson.build, as some tools depend
|
||||
# on metang-generated constants.
|
||||
metang_exe = find_program('metang', native: true)
|
||||
|
||||
enum_generators = {
|
||||
'abilities': ['--tag-name', 'Ability'],
|
||||
'catching_show_points_category': ['--tag-name', 'CatchingShowPointsCategory'],
|
||||
'egg_groups': ['--tag-name', 'EggGroup'],
|
||||
'evolution_methods': ['--tag-name', 'EvolutionMethod'],
|
||||
'exp_rates': ['--tag-name', 'ExpRate'],
|
||||
|
|
@ -7,8 +18,11 @@ enum_generators = {
|
|||
'item_hold_effects': ['--tag-name', 'ItemHoldEffect'],
|
||||
'items': ['--tag-name', 'Item'],
|
||||
'moves': ['--tag-name', 'Move'],
|
||||
'pal_park_land_area': ['--tag-name', 'PalParkLandArea'],
|
||||
'pal_park_water_area': ['--tag-name', 'PalParkWaterArea'],
|
||||
'pokemon_colors': ['--tag-name', 'PokemonColor'],
|
||||
'pokemon_types': ['--tag-name', 'PokemonType'],
|
||||
'shadow_sizes': ['--tag-name', 'ShadowSize'],
|
||||
'species': ['--tag-name', 'Species'],
|
||||
}
|
||||
|
||||
|
|
@ -35,10 +49,11 @@ foreach gen_key : enum_generators.keys()
|
|||
command: [
|
||||
metang_exe, 'enum',
|
||||
gen_args,
|
||||
'--guard', 'POKEPLATINUM_GENERATED',
|
||||
'--output', '@OUTPUT@',
|
||||
'--lang', 'py',
|
||||
'@INPUT@',
|
||||
]
|
||||
)
|
||||
endforeach
|
||||
|
||||
species_txt = files('species.txt')
|
||||
|
|
|
|||
6
generated/pal_park_land_area.txt
Normal file
6
generated/pal_park_land_area.txt
Normal file
|
|
@ -0,0 +1,6 @@
|
|||
PAL_PARK_AREA_LAND_NONE
|
||||
PAL_PARK_AREA_LAND_NORTH_WEST
|
||||
PAL_PARK_AREA_LAND_NORTH_EAST
|
||||
PAL_PARK_AREA_LAND_SOUTH_WEST
|
||||
PAL_PARK_AREA_LAND_SOUTH_EAST
|
||||
PAL_PARK_AREA_LAND_END
|
||||
5
generated/pal_park_water_area.txt
Normal file
5
generated/pal_park_water_area.txt
Normal file
|
|
@ -0,0 +1,5 @@
|
|||
PAL_PARK_AREA_WATER_NONE
|
||||
PAL_PARK_AREA_WATER_NORTH_WEST
|
||||
PAL_PARK_AREA_WATER_NORTH_EAST
|
||||
PAL_PARK_AREA_WATER_SOUTH_WEST
|
||||
PAL_PARK_AREA_WATER_SOUTH_EAST
|
||||
4
generated/shadow_sizes.txt
Normal file
4
generated/shadow_sizes.txt
Normal file
|
|
@ -0,0 +1,4 @@
|
|||
SHADOW_SIZE_NONE
|
||||
SHADOW_SIZE_SMALL
|
||||
SHADOW_SIZE_MEDIUM
|
||||
SHADOW_SIZE_LARGE
|
||||
|
|
@ -1,6 +1,8 @@
|
|||
#ifndef POKEPLATINUM_MAP_HEADER_H
|
||||
#define POKEPLATINUM_MAP_HEADER_H
|
||||
|
||||
#include "generated/evolution_methods.h"
|
||||
|
||||
typedef struct {
|
||||
u8 unk_00;
|
||||
u8 unk_01;
|
||||
|
|
@ -58,6 +60,6 @@ BOOL MapHeader_IsTrophyGarden(const u32 headerID);
|
|||
BOOL MapHeader_IsAmitySquare(const u32 headerID);
|
||||
BOOL MapHeader_IsAzureFluteAllowed(const u32 headerID);
|
||||
BOOL MapHeader_IsPokemonCenter2F(const u32 headerID);
|
||||
enum PokemonEvoMethod MapHeader_GetMapEvolutionMethod(u32 headerID);
|
||||
enum EvolutionMethod MapHeader_GetMapEvolutionMethod(u32 headerID);
|
||||
|
||||
#endif // POKEPLATINUM_MAP_HEADER_H
|
||||
|
|
|
|||
|
|
@ -15,9 +15,9 @@ typedef struct PokeSpriteFaceData {
|
|||
|
||||
typedef struct ArchivedPokeSpriteData {
|
||||
PokeSpriteFaceData faces[MAX_FACES]; ///< Data for each display-face of the Pokemon's sprite.
|
||||
s8 yOffset; ///< Vertical offset of the Pokemon's sprite for either face.
|
||||
s8 yOffset; ///< Additional vertical offset of the Pokemon's front-face sprite.
|
||||
s8 xOffsetShadow; ///< Horizontal offset for the shadow sprite beneath the Pokemon's sprite.
|
||||
u8 shadowSize; ///< Size of the shadow sprite beneath the Pokemon's sprite. TODO: enum
|
||||
u8 shadowSize; ///< Size of the shadow sprite beneath the Pokemon's sprite.
|
||||
} ArchivedPokeSpriteData;
|
||||
|
||||
#endif // POKEPLATINUM_ARCHIVED_POKE_SPRITE_DATA_H
|
||||
|
|
|
|||
|
|
@ -63,10 +63,27 @@ typedef struct SpeciesEvolution {
|
|||
u16 targetSpecies;
|
||||
} SpeciesEvolution;
|
||||
|
||||
typedef struct SpeciesLearnsetEntry {
|
||||
u16 move : 9;
|
||||
u16 level : 7;
|
||||
} SpeciesLearnsetEntry;
|
||||
|
||||
// This struct is not explicitly used; it is provided to document and enforce the size of
|
||||
// the learnset entries.
|
||||
typedef struct SpeciesLearnset {
|
||||
ALIGN_4 u16 entries[MAX_LEARNSET_ENTRIES + 1];
|
||||
ALIGN_4 SpeciesLearnsetEntry entries[MAX_LEARNSET_ENTRIES + 1];
|
||||
} SpeciesLearnset;
|
||||
|
||||
typedef struct SpeciesPalPark {
|
||||
u8 landArea;
|
||||
u8 waterArea;
|
||||
u8 catchingPoints;
|
||||
u8 rarity;
|
||||
|
||||
union {
|
||||
u8 asU8[2];
|
||||
u16 asU16;
|
||||
} unused;
|
||||
} SpeciesPalPark;
|
||||
|
||||
#endif // POKEPLATINUM_SPECIES_H
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
#ifndef POKEPLATINUM_TUTOR_MOVESETS_H
|
||||
#define POKEPLATINUM_TUTOR_MOVESETS_H
|
||||
|
||||
#include "consts/moves.h"
|
||||
#include "generated/moves.h"
|
||||
|
||||
enum TutorLocation {
|
||||
TUTOR_LOCATION_ROUTE_212 = 0,
|
||||
|
|
|
|||
16
meson.build
16
meson.build
|
|
@ -13,6 +13,7 @@ fs = import('fs')
|
|||
### INCLUDE PATHS ###
|
||||
############################################################
|
||||
public_includes = include_directories('include', 'asm', 'res')
|
||||
toplevel_includes = include_directories('.')
|
||||
|
||||
|
||||
############################################################
|
||||
|
|
@ -115,6 +116,13 @@ libsyscall_dep = dependency('libsyscall')
|
|||
ppwlobby_dep = dependency('ppwlobby')
|
||||
|
||||
|
||||
############################################################
|
||||
### CONSTS ###
|
||||
############################################################
|
||||
subdir('consts')
|
||||
subdir('generated')
|
||||
|
||||
|
||||
############################################################
|
||||
### TOOLS ###
|
||||
############################################################
|
||||
|
|
@ -133,13 +141,6 @@ subdir('platinum.us')
|
|||
subdir('lib')
|
||||
|
||||
|
||||
############################################################
|
||||
### CONSTS ###
|
||||
############################################################
|
||||
subdir('consts')
|
||||
subdir('generated')
|
||||
|
||||
|
||||
############################################################
|
||||
### FILE SYSTEM ###
|
||||
############################################################
|
||||
|
|
@ -161,6 +162,7 @@ main = executable('main',
|
|||
naix_headers,
|
||||
gen_species_headers,
|
||||
tutorable_moves_h,
|
||||
species_learnsets_by_tutor_h,
|
||||
],
|
||||
c_args: [
|
||||
pokeplatinum_args,
|
||||
|
|
|
|||
|
|
@ -30,10 +30,8 @@
|
|||
"egg_groups": [ "EGG_GROUP_MONSTER", "EGG_GROUP_GRASS" ],
|
||||
"abilities": [ "ABILITY_SNOW_WARNING", "ABILITY_NONE" ],
|
||||
"safari_flee_rate": 0,
|
||||
"sprite": {
|
||||
"color": "MON_COLOR_WHITE",
|
||||
"flip": false
|
||||
},
|
||||
"body_color": "MON_COLOR_WHITE",
|
||||
"flip_sprite": false,
|
||||
"learnset": {
|
||||
"by_level": [
|
||||
[ 1, "MOVE_ICE_PUNCH" ],
|
||||
|
|
@ -127,13 +125,13 @@
|
|||
"trainer_pos_m": 15,
|
||||
"pokemon_pos_m": 4,
|
||||
"entry_text": "They appear when the snow flowers\nbloom. When the petals fall, they\nretreat to places unknown again.",
|
||||
"category": "Frost Tree Pok\u00e9mon"
|
||||
"category": "Frost Tree Pokémon"
|
||||
},
|
||||
"catching_show_data": {
|
||||
"catching_show": {
|
||||
"pal_park_land_area": "PAL_PARK_AREA_LAND_NORTH_EAST",
|
||||
"pal_park_water_area": "PAL_PARK_AREA_WATER_NONE",
|
||||
"catching_points": 70,
|
||||
"rarity": 20,
|
||||
"unused": 2063
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
personal_files += files('data.json')
|
||||
species_data_files += files('data.json')
|
||||
|
||||
poke_icon_files += files('icon.png')
|
||||
|
||||
|
|
|
|||
|
|
@ -30,10 +30,8 @@
|
|||
"egg_groups": [ "EGG_GROUP_HUMAN_LIKE", "EGG_GROUP_HUMAN_LIKE" ],
|
||||
"abilities": [ "ABILITY_SYNCHRONIZE", "ABILITY_INNER_FOCUS" ],
|
||||
"safari_flee_rate": 0,
|
||||
"sprite": {
|
||||
"color": "MON_COLOR_BROWN",
|
||||
"flip": false
|
||||
},
|
||||
"body_color": "MON_COLOR_BROWN",
|
||||
"flip_sprite": false,
|
||||
"learnset": {
|
||||
"by_level": [
|
||||
[ 1, "MOVE_TELEPORT" ]
|
||||
|
|
@ -119,13 +117,13 @@
|
|||
"trainer_pos_m": 9,
|
||||
"pokemon_pos_m": 25,
|
||||
"entry_text": "Using its psychic power is such a\nstrain on its brain that it needs\nto sleep for 18 hours a day.",
|
||||
"category": "Psi Pok\u00e9mon"
|
||||
"category": "Psi Pokémon"
|
||||
},
|
||||
"catching_show_data": {
|
||||
"catching_show": {
|
||||
"pal_park_land_area": "PAL_PARK_AREA_LAND_SOUTH_WEST",
|
||||
"pal_park_water_area": "PAL_PARK_AREA_WATER_NONE",
|
||||
"catching_points": 50,
|
||||
"rarity": 30,
|
||||
"unused": 2570
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
personal_files += files('data.json')
|
||||
species_data_files += files('data.json')
|
||||
|
||||
poke_icon_files += files('icon.png')
|
||||
|
||||
|
|
|
|||
|
|
@ -30,10 +30,8 @@
|
|||
"egg_groups": [ "EGG_GROUP_FIELD", "EGG_GROUP_FIELD" ],
|
||||
"abilities": [ "ABILITY_PRESSURE", "ABILITY_SUPER_LUCK" ],
|
||||
"safari_flee_rate": 0,
|
||||
"sprite": {
|
||||
"color": "MON_COLOR_WHITE",
|
||||
"flip": true
|
||||
},
|
||||
"body_color": "MON_COLOR_WHITE",
|
||||
"flip_sprite": true,
|
||||
"learnset": {
|
||||
"by_level": [
|
||||
[ 1, "MOVE_SCRATCH" ],
|
||||
|
|
@ -145,13 +143,13 @@
|
|||
"trainer_pos_m": 9,
|
||||
"pokemon_pos_m": 14,
|
||||
"entry_text": "Rumored to sense disasters with its\nhorn, it became a target. It fled\ndeep into the mountains.",
|
||||
"category": "Disaster Pok\u00e9mon"
|
||||
"category": "Disaster Pokémon"
|
||||
},
|
||||
"catching_show_data": {
|
||||
"catching_show": {
|
||||
"pal_park_land_area": "PAL_PARK_AREA_LAND_NORTH_EAST",
|
||||
"pal_park_water_area": "PAL_PARK_AREA_WATER_NONE",
|
||||
"catching_points": 80,
|
||||
"rarity": 10,
|
||||
"unused": 4112
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
personal_files += files('data.json')
|
||||
species_data_files += files('data.json')
|
||||
|
||||
poke_icon_files += files('icon.png')
|
||||
|
||||
|
|
|
|||
|
|
@ -30,10 +30,8 @@
|
|||
"egg_groups": [ "EGG_GROUP_FLYING", "EGG_GROUP_FLYING" ],
|
||||
"abilities": [ "ABILITY_ROCK_HEAD", "ABILITY_PRESSURE" ],
|
||||
"safari_flee_rate": 0,
|
||||
"sprite": {
|
||||
"color": "MON_COLOR_PURPLE",
|
||||
"flip": false
|
||||
},
|
||||
"body_color": "MON_COLOR_PURPLE",
|
||||
"flip_sprite": false,
|
||||
"learnset": {
|
||||
"by_level": [
|
||||
[ 1, "MOVE_ICE_FANG" ],
|
||||
|
|
@ -129,14 +127,14 @@
|
|||
"pokemon_pos_f": 4,
|
||||
"trainer_pos_m": 9,
|
||||
"pokemon_pos_m": 4,
|
||||
"entry_text": "A Pok\u00e9mon that roamed the skies\nin the dinosaur era. Its teeth are\nlike saw blades.",
|
||||
"category": "Fossil Pok\u00e9mon"
|
||||
"entry_text": "A Pokémon that roamed the skies\nin the dinosaur era. Its teeth are\nlike saw blades.",
|
||||
"category": "Fossil Pokémon"
|
||||
},
|
||||
"catching_show_data": {
|
||||
"catching_show": {
|
||||
"pal_park_land_area": "PAL_PARK_AREA_LAND_NORTH_EAST",
|
||||
"pal_park_water_area": "PAL_PARK_AREA_WATER_NONE",
|
||||
"catching_points": 70,
|
||||
"rarity": 20,
|
||||
"unused": 4363
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
personal_files += files('data.json')
|
||||
species_data_files += files('data.json')
|
||||
|
||||
poke_icon_files += files('icon.png')
|
||||
|
||||
|
|
|
|||
|
|
@ -30,10 +30,8 @@
|
|||
"egg_groups": [ "EGG_GROUP_MONSTER", "EGG_GROUP_MONSTER" ],
|
||||
"abilities": [ "ABILITY_STURDY", "ABILITY_ROCK_HEAD" ],
|
||||
"safari_flee_rate": 0,
|
||||
"sprite": {
|
||||
"color": "MON_COLOR_GRAY",
|
||||
"flip": false
|
||||
},
|
||||
"body_color": "MON_COLOR_GRAY",
|
||||
"flip_sprite": false,
|
||||
"learnset": {
|
||||
"by_level": [
|
||||
[ 1, "MOVE_TACKLE" ],
|
||||
|
|
@ -154,13 +152,13 @@
|
|||
"trainer_pos_m": 15,
|
||||
"pokemon_pos_m": 6,
|
||||
"entry_text": "While seeking iron for food, it\ndigs tunnels by breaking through\nbedrock with its steel horns.",
|
||||
"category": "Iron Armor Pok\u00e9mon"
|
||||
"category": "Iron Armor Pokémon"
|
||||
},
|
||||
"catching_show_data": {
|
||||
"catching_show": {
|
||||
"pal_park_land_area": "PAL_PARK_AREA_LAND_NORTH_EAST",
|
||||
"pal_park_water_area": "PAL_PARK_AREA_WATER_NONE",
|
||||
"catching_points": 80,
|
||||
"rarity": 10,
|
||||
"unused": 2830
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
personal_files += files('data.json')
|
||||
species_data_files += files('data.json')
|
||||
|
||||
poke_icon_files += files('icon.png')
|
||||
|
||||
|
|
|
|||
|
|
@ -30,10 +30,8 @@
|
|||
"egg_groups": [ "EGG_GROUP_FIELD", "EGG_GROUP_FIELD" ],
|
||||
"abilities": [ "ABILITY_RUN_AWAY", "ABILITY_PICKUP" ],
|
||||
"safari_flee_rate": 0,
|
||||
"sprite": {
|
||||
"color": "MON_COLOR_PURPLE",
|
||||
"flip": false
|
||||
},
|
||||
"body_color": "MON_COLOR_PURPLE",
|
||||
"flip_sprite": false,
|
||||
"learnset": {
|
||||
"by_level": [
|
||||
[ 1, "MOVE_SCRATCH" ],
|
||||
|
|
@ -136,13 +134,13 @@
|
|||
"trainer_pos_m": 9,
|
||||
"pokemon_pos_m": 15,
|
||||
"entry_text": "It lives high among the treetops.\nIt can use its tail as freely and\ncleverly as its hands.",
|
||||
"category": "Long Tail Pok\u00e9mon"
|
||||
"category": "Long Tail Pokémon"
|
||||
},
|
||||
"catching_show_data": {
|
||||
"catching_show": {
|
||||
"pal_park_land_area": "PAL_PARK_AREA_LAND_NORTH_WEST",
|
||||
"pal_park_water_area": "PAL_PARK_AREA_WATER_NONE",
|
||||
"catching_points": 70,
|
||||
"rarity": 20,
|
||||
"unused": 1285
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
personal_files += files('data.json')
|
||||
species_data_files += files('data.json')
|
||||
|
||||
poke_icon_files += files('icon.png')
|
||||
|
||||
|
|
|
|||
|
|
@ -30,10 +30,8 @@
|
|||
"egg_groups": [ "EGG_GROUP_HUMAN_LIKE", "EGG_GROUP_HUMAN_LIKE" ],
|
||||
"abilities": [ "ABILITY_SYNCHRONIZE", "ABILITY_INNER_FOCUS" ],
|
||||
"safari_flee_rate": 0,
|
||||
"sprite": {
|
||||
"color": "MON_COLOR_BROWN",
|
||||
"flip": false
|
||||
},
|
||||
"body_color": "MON_COLOR_BROWN",
|
||||
"flip_sprite": false,
|
||||
"learnset": {
|
||||
"by_level": [
|
||||
[ 1, "MOVE_TELEPORT" ],
|
||||
|
|
@ -129,13 +127,13 @@
|
|||
"trainer_pos_m": 9,
|
||||
"pokemon_pos_m": 7,
|
||||
"entry_text": "The spoons clutched in its hands\nare said to have been created by\nits psychic powers.",
|
||||
"category": "Psi Pok\u00e9mon"
|
||||
"category": "Psi Pokémon"
|
||||
},
|
||||
"catching_show_data": {
|
||||
"catching_show": {
|
||||
"pal_park_land_area": "PAL_PARK_AREA_LAND_SOUTH_WEST",
|
||||
"pal_park_water_area": "PAL_PARK_AREA_WATER_NONE",
|
||||
"catching_points": 90,
|
||||
"rarity": 3,
|
||||
"unused": 2570
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
personal_files += files('data.json')
|
||||
species_data_files += files('data.json')
|
||||
|
||||
poke_icon_files += files('icon.png')
|
||||
|
||||
|
|
|
|||
|
|
@ -30,10 +30,8 @@
|
|||
"egg_groups": [ "EGG_GROUP_FLYING", "EGG_GROUP_DRAGON" ],
|
||||
"abilities": [ "ABILITY_NATURAL_CURE", "ABILITY_NONE" ],
|
||||
"safari_flee_rate": 0,
|
||||
"sprite": {
|
||||
"color": "MON_COLOR_BLUE",
|
||||
"flip": false
|
||||
},
|
||||
"body_color": "MON_COLOR_BLUE",
|
||||
"flip_sprite": false,
|
||||
"learnset": {
|
||||
"by_level": [
|
||||
[ 1, "MOVE_PLUCK" ],
|
||||
|
|
@ -126,13 +124,13 @@
|
|||
"trainer_pos_m": 9,
|
||||
"pokemon_pos_m": 0,
|
||||
"entry_text": "If it bonds with a person, it will\ngently envelop the friend with its\nsoft wings, then hum.",
|
||||
"category": "Humming Pok\u00e9mon"
|
||||
"category": "Humming Pokémon"
|
||||
},
|
||||
"catching_show_data": {
|
||||
"catching_show": {
|
||||
"pal_park_land_area": "PAL_PARK_AREA_LAND_SOUTH_WEST",
|
||||
"pal_park_water_area": "PAL_PARK_AREA_WATER_NONE",
|
||||
"catching_points": 80,
|
||||
"rarity": 10,
|
||||
"unused": 4367
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
personal_files += files('data.json')
|
||||
species_data_files += files('data.json')
|
||||
|
||||
poke_icon_files += files('icon.png')
|
||||
|
||||
|
|
|
|||
|
|
@ -30,10 +30,8 @@
|
|||
"egg_groups": [ "EGG_GROUP_FIELD", "EGG_GROUP_FIELD" ],
|
||||
"abilities": [ "ABILITY_TECHNICIAN", "ABILITY_PICKUP" ],
|
||||
"safari_flee_rate": 0,
|
||||
"sprite": {
|
||||
"color": "MON_COLOR_PURPLE",
|
||||
"flip": false
|
||||
},
|
||||
"body_color": "MON_COLOR_PURPLE",
|
||||
"flip_sprite": false,
|
||||
"learnset": {
|
||||
"by_level": [
|
||||
[ 1, "MOVE_SCRATCH" ],
|
||||
|
|
@ -134,13 +132,13 @@
|
|||
"trainer_pos_m": 9,
|
||||
"pokemon_pos_m": 7,
|
||||
"entry_text": "Split into two, the tails are so\nadept at handling and doing things,\nAMBIPOM rarely uses its hands.",
|
||||
"category": "Long Tail Pok\u00e9mon"
|
||||
"category": "Long Tail Pokémon"
|
||||
},
|
||||
"catching_show_data": {
|
||||
"catching_show": {
|
||||
"pal_park_land_area": "PAL_PARK_AREA_LAND_NONE",
|
||||
"pal_park_water_area": "PAL_PARK_AREA_WATER_NORTH_EAST",
|
||||
"catching_points": 50,
|
||||
"rarity": 30,
|
||||
"unused": 771
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
personal_files += files('data.json')
|
||||
species_data_files += files('data.json')
|
||||
|
||||
poke_icon_files += files('icon.png')
|
||||
|
||||
|
|
|
|||
|
|
@ -30,10 +30,8 @@
|
|||
"egg_groups": [ "EGG_GROUP_MONSTER", "EGG_GROUP_FIELD" ],
|
||||
"abilities": [ "ABILITY_STATIC", "ABILITY_NONE" ],
|
||||
"safari_flee_rate": 0,
|
||||
"sprite": {
|
||||
"color": "MON_COLOR_YELLOW",
|
||||
"flip": false
|
||||
},
|
||||
"body_color": "MON_COLOR_YELLOW",
|
||||
"flip_sprite": false,
|
||||
"learnset": {
|
||||
"by_level": [
|
||||
[ 1, "MOVE_FIRE_PUNCH" ],
|
||||
|
|
@ -116,14 +114,14 @@
|
|||
"pokemon_pos_f": 8,
|
||||
"trainer_pos_m": 9,
|
||||
"pokemon_pos_m": 8,
|
||||
"entry_text": "The tip of its tail shines brightly.\nIn the olden days, people sent\nsignals using the tail\u2019s light.",
|
||||
"category": "Light Pok\u00e9mon"
|
||||
"entry_text": "The tip of its tail shines brightly.\nIn the olden days, people sent\nsignals using the tail’s light.",
|
||||
"category": "Light Pokémon"
|
||||
},
|
||||
"catching_show_data": {
|
||||
"catching_show": {
|
||||
"pal_park_land_area": "PAL_PARK_AREA_LAND_SOUTH_WEST",
|
||||
"pal_park_water_area": "PAL_PARK_AREA_WATER_NONE",
|
||||
"catching_points": 80,
|
||||
"rarity": 10,
|
||||
"unused": 1799
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
personal_files += files('data.json')
|
||||
species_data_files += files('data.json')
|
||||
|
||||
poke_icon_files += files('icon.png')
|
||||
|
||||
|
|
|
|||
|
|
@ -30,10 +30,8 @@
|
|||
"egg_groups": [ "EGG_GROUP_WATER_3", "EGG_GROUP_WATER_3" ],
|
||||
"abilities": [ "ABILITY_BATTLE_ARMOR", "ABILITY_NONE" ],
|
||||
"safari_flee_rate": 0,
|
||||
"sprite": {
|
||||
"color": "MON_COLOR_GRAY",
|
||||
"flip": false
|
||||
},
|
||||
"body_color": "MON_COLOR_GRAY",
|
||||
"flip_sprite": false,
|
||||
"learnset": {
|
||||
"by_level": [
|
||||
[ 1, "MOVE_SCRATCH" ],
|
||||
|
|
@ -115,14 +113,14 @@
|
|||
"pokemon_pos_f": 3,
|
||||
"trainer_pos_m": 9,
|
||||
"pokemon_pos_m": 3,
|
||||
"entry_text": "A Pok\u00e9mon ancestor that was\nreanimated from a fossil. It lived\nin the sea and hunted with claws.",
|
||||
"category": "Old Shrimp Pok\u00e9mon"
|
||||
"entry_text": "A Pokémon ancestor that was\nreanimated from a fossil. It lived\nin the sea and hunted with claws.",
|
||||
"category": "Old Shrimp Pokémon"
|
||||
},
|
||||
"catching_show_data": {
|
||||
"catching_show": {
|
||||
"pal_park_land_area": "PAL_PARK_AREA_LAND_NONE",
|
||||
"pal_park_water_area": "PAL_PARK_AREA_WATER_SOUTH_EAST",
|
||||
"catching_points": 70,
|
||||
"rarity": 20,
|
||||
"unused": 1035
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
personal_files += files('data.json')
|
||||
species_data_files += files('data.json')
|
||||
|
||||
poke_icon_files += files('icon.png')
|
||||
|
||||
|
|
|
|||
|
|
@ -30,10 +30,8 @@
|
|||
"egg_groups": [ "EGG_GROUP_FIELD", "EGG_GROUP_DRAGON" ],
|
||||
"abilities": [ "ABILITY_INTIMIDATE", "ABILITY_SHED_SKIN" ],
|
||||
"safari_flee_rate": 60,
|
||||
"sprite": {
|
||||
"color": "MON_COLOR_PURPLE",
|
||||
"flip": false
|
||||
},
|
||||
"body_color": "MON_COLOR_PURPLE",
|
||||
"flip_sprite": false,
|
||||
"learnset": {
|
||||
"by_level": [
|
||||
[ 1, "MOVE_ICE_FANG" ],
|
||||
|
|
@ -120,13 +118,13 @@
|
|||
"trainer_pos_m": 9,
|
||||
"pokemon_pos_m": 8,
|
||||
"entry_text": "The pattern on its belly is for\nintimidation. It constricts foes\nwhile they are frozen in fear.",
|
||||
"category": "Cobra Pok\u00e9mon"
|
||||
"category": "Cobra Pokémon"
|
||||
},
|
||||
"catching_show_data": {
|
||||
"catching_show": {
|
||||
"pal_park_land_area": "PAL_PARK_AREA_LAND_NORTH_WEST",
|
||||
"pal_park_water_area": "PAL_PARK_AREA_WATER_NONE",
|
||||
"catching_points": 50,
|
||||
"rarity": 30,
|
||||
"unused": 1542
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
personal_files += files('data.json')
|
||||
species_data_files += files('data.json')
|
||||
|
||||
poke_icon_files += files('icon.png')
|
||||
|
||||
|
|
|
|||
|
|
@ -30,10 +30,8 @@
|
|||
"egg_groups": [ "EGG_GROUP_FIELD", "EGG_GROUP_FIELD" ],
|
||||
"abilities": [ "ABILITY_INTIMIDATE", "ABILITY_FLASH_FIRE" ],
|
||||
"safari_flee_rate": 0,
|
||||
"sprite": {
|
||||
"color": "MON_COLOR_BROWN",
|
||||
"flip": false
|
||||
},
|
||||
"body_color": "MON_COLOR_BROWN",
|
||||
"flip_sprite": false,
|
||||
"learnset": {
|
||||
"by_level": [
|
||||
[ 1, "MOVE_THUNDER_FANG" ],
|
||||
|
|
@ -105,13 +103,13 @@
|
|||
"trainer_pos_m": 16,
|
||||
"pokemon_pos_m": 6,
|
||||
"entry_text": "Its proud and regal appearance\nhas captured the hearts of\npeople since long ago.",
|
||||
"category": "Legendary Pok\u00e9mon"
|
||||
"category": "Legendary Pokémon"
|
||||
},
|
||||
"catching_show_data": {
|
||||
"catching_show": {
|
||||
"pal_park_land_area": "PAL_PARK_AREA_LAND_SOUTH_WEST",
|
||||
"pal_park_water_area": "PAL_PARK_AREA_WATER_NONE",
|
||||
"catching_points": 80,
|
||||
"rarity": 10,
|
||||
"unused": 514
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
personal_files += files('data.json')
|
||||
species_data_files += files('data.json')
|
||||
|
||||
poke_icon_files += files('icon.png')
|
||||
|
||||
|
|
|
|||
|
|
@ -30,10 +30,8 @@
|
|||
"egg_groups": [ "EGG_GROUP_UNDISCOVERED", "EGG_GROUP_UNDISCOVERED" ],
|
||||
"abilities": [ "ABILITY_MULTITYPE", "ABILITY_NONE" ],
|
||||
"safari_flee_rate": 0,
|
||||
"sprite": {
|
||||
"color": "MON_COLOR_GRAY",
|
||||
"flip": false
|
||||
},
|
||||
"body_color": "MON_COLOR_GRAY",
|
||||
"flip_sprite": false,
|
||||
"learnset": {
|
||||
"by_level": [
|
||||
[ 1, "MOVE_SEISMIC_TOSS" ],
|
||||
|
|
@ -172,13 +170,13 @@
|
|||
"trainer_pos_m": 23,
|
||||
"pokemon_pos_m": 0,
|
||||
"entry_text": "It is said to have emerged from an\negg in a place where there was\nnothing, then shaped the world.",
|
||||
"category": "Alpha Pok\u00e9mon"
|
||||
"category": "Alpha Pokémon"
|
||||
},
|
||||
"catching_show_data": {
|
||||
"catching_show": {
|
||||
"pal_park_land_area": "PAL_PARK_AREA_LAND_NORTH_EAST",
|
||||
"pal_park_water_area": "PAL_PARK_AREA_WATER_NONE",
|
||||
"catching_points": 100,
|
||||
"rarity": 1,
|
||||
"unused": 1285
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
personal_files += files('data.json')
|
||||
species_data_files += files('data.json')
|
||||
|
||||
poke_icon_files += files('icon.png')
|
||||
|
||||
|
|
|
|||
|
|
@ -30,10 +30,8 @@
|
|||
"egg_groups": [ "EGG_GROUP_BUG", "EGG_GROUP_BUG" ],
|
||||
"abilities": [ "ABILITY_SWARM", "ABILITY_INSOMNIA" ],
|
||||
"safari_flee_rate": 0,
|
||||
"sprite": {
|
||||
"color": "MON_COLOR_RED",
|
||||
"flip": false
|
||||
},
|
||||
"body_color": "MON_COLOR_RED",
|
||||
"flip_sprite": false,
|
||||
"learnset": {
|
||||
"by_level": [
|
||||
[ 1, "MOVE_BUG_BITE" ],
|
||||
|
|
@ -107,13 +105,13 @@
|
|||
"trainer_pos_m": 9,
|
||||
"pokemon_pos_m": 12,
|
||||
"entry_text": "It attaches silk to its prey and\nsets it free. Later, it tracks the\nsilk to the prey and its friends.",
|
||||
"category": "Long Leg Pok\u00e9mon"
|
||||
"category": "Long Leg Pokémon"
|
||||
},
|
||||
"catching_show_data": {
|
||||
"catching_show": {
|
||||
"pal_park_land_area": "PAL_PARK_AREA_LAND_SOUTH_WEST",
|
||||
"pal_park_water_area": "PAL_PARK_AREA_WATER_NONE",
|
||||
"catching_points": 50,
|
||||
"rarity": 30,
|
||||
"unused": 1540
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
personal_files += files('data.json')
|
||||
species_data_files += files('data.json')
|
||||
|
||||
poke_icon_files += files('icon.png')
|
||||
|
||||
|
|
|
|||
|
|
@ -30,10 +30,8 @@
|
|||
"egg_groups": [ "EGG_GROUP_WATER_3", "EGG_GROUP_WATER_3" ],
|
||||
"abilities": [ "ABILITY_BATTLE_ARMOR", "ABILITY_NONE" ],
|
||||
"safari_flee_rate": 0,
|
||||
"sprite": {
|
||||
"color": "MON_COLOR_GRAY",
|
||||
"flip": false
|
||||
},
|
||||
"body_color": "MON_COLOR_GRAY",
|
||||
"flip_sprite": false,
|
||||
"learnset": {
|
||||
"by_level": [
|
||||
[ 1, "MOVE_SCRATCH" ],
|
||||
|
|
@ -121,13 +119,13 @@
|
|||
"trainer_pos_m": 9,
|
||||
"pokemon_pos_m": 6,
|
||||
"entry_text": "It went ashore after evolving.\nIts entire body is clad in a sturdy\narmor.",
|
||||
"category": "Plate Pok\u00e9mon"
|
||||
"category": "Plate Pokémon"
|
||||
},
|
||||
"catching_show_data": {
|
||||
"catching_show": {
|
||||
"pal_park_land_area": "PAL_PARK_AREA_LAND_NONE",
|
||||
"pal_park_water_area": "PAL_PARK_AREA_WATER_SOUTH_EAST",
|
||||
"catching_points": 80,
|
||||
"rarity": 10,
|
||||
"unused": 1035
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
personal_files += files('data.json')
|
||||
species_data_files += files('data.json')
|
||||
|
||||
poke_icon_files += files('icon.png')
|
||||
|
||||
|
|
|
|||
|
|
@ -30,10 +30,8 @@
|
|||
"egg_groups": [ "EGG_GROUP_MONSTER", "EGG_GROUP_MONSTER" ],
|
||||
"abilities": [ "ABILITY_STURDY", "ABILITY_ROCK_HEAD" ],
|
||||
"safari_flee_rate": 0,
|
||||
"sprite": {
|
||||
"color": "MON_COLOR_GRAY",
|
||||
"flip": false
|
||||
},
|
||||
"body_color": "MON_COLOR_GRAY",
|
||||
"flip_sprite": false,
|
||||
"learnset": {
|
||||
"by_level": [
|
||||
[ 1, "MOVE_TACKLE" ],
|
||||
|
|
@ -127,13 +125,13 @@
|
|||
"trainer_pos_m": 9,
|
||||
"pokemon_pos_m": 25,
|
||||
"entry_text": "It usually lives deep in mountains.\nHowever, hunger may drive it to\neat railroad tracks and cars.",
|
||||
"category": "Iron Armor Pok\u00e9mon"
|
||||
"category": "Iron Armor Pokémon"
|
||||
},
|
||||
"catching_show_data": {
|
||||
"catching_show": {
|
||||
"pal_park_land_area": "PAL_PARK_AREA_LAND_NORTH_EAST",
|
||||
"pal_park_water_area": "PAL_PARK_AREA_WATER_NONE",
|
||||
"catching_points": 50,
|
||||
"rarity": 30,
|
||||
"unused": 2830
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
personal_files += files('data.json')
|
||||
species_data_files += files('data.json')
|
||||
|
||||
poke_icon_files += files('icon.png')
|
||||
|
||||
|
|
|
|||
|
|
@ -30,10 +30,8 @@
|
|||
"egg_groups": [ "EGG_GROUP_UNDISCOVERED", "EGG_GROUP_UNDISCOVERED" ],
|
||||
"abilities": [ "ABILITY_PRESSURE", "ABILITY_NONE" ],
|
||||
"safari_flee_rate": 0,
|
||||
"sprite": {
|
||||
"color": "MON_COLOR_BLUE",
|
||||
"flip": false
|
||||
},
|
||||
"body_color": "MON_COLOR_BLUE",
|
||||
"flip_sprite": false,
|
||||
"learnset": {
|
||||
"by_level": [
|
||||
[ 1, "MOVE_GUST" ],
|
||||
|
|
@ -116,14 +114,14 @@
|
|||
"pokemon_pos_f": 0,
|
||||
"trainer_pos_m": 7,
|
||||
"pokemon_pos_m": 0,
|
||||
"entry_text": "A legendary bird Pok\u00e9mon.\nIt can create blizzards by\nfreezing moisture in the air.",
|
||||
"category": "Freeze Pok\u00e9mon"
|
||||
"entry_text": "A legendary bird Pokémon.\nIt can create blizzards by\nfreezing moisture in the air.",
|
||||
"category": "Freeze Pokémon"
|
||||
},
|
||||
"catching_show_data": {
|
||||
"catching_show": {
|
||||
"pal_park_land_area": "PAL_PARK_AREA_LAND_NORTH_EAST",
|
||||
"pal_park_water_area": "PAL_PARK_AREA_WATER_NONE",
|
||||
"catching_points": 90,
|
||||
"rarity": 3,
|
||||
"unused": 4365
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
personal_files += files('data.json')
|
||||
species_data_files += files('data.json')
|
||||
|
||||
poke_icon_files += files('icon.png')
|
||||
|
||||
|
|
|
|||
|
|
@ -30,10 +30,8 @@
|
|||
"egg_groups": [ "EGG_GROUP_UNDISCOVERED", "EGG_GROUP_UNDISCOVERED" ],
|
||||
"abilities": [ "ABILITY_LEVITATE", "ABILITY_NONE" ],
|
||||
"safari_flee_rate": 0,
|
||||
"sprite": {
|
||||
"color": "MON_COLOR_BLUE",
|
||||
"flip": false
|
||||
},
|
||||
"body_color": "MON_COLOR_BLUE",
|
||||
"flip_sprite": false,
|
||||
"learnset": {
|
||||
"by_level": [
|
||||
[ 1, "MOVE_REST" ],
|
||||
|
|
@ -134,13 +132,13 @@
|
|||
"trainer_pos_m": 9,
|
||||
"pokemon_pos_m": 65526,
|
||||
"entry_text": "When AZELF flew, people gained the\ndetermination to do things.\nIt was the birth of willpower.",
|
||||
"category": "Willpower Pok\u00e9mon"
|
||||
"category": "Willpower Pokémon"
|
||||
},
|
||||
"catching_show_data": {
|
||||
"catching_show": {
|
||||
"pal_park_land_area": "PAL_PARK_AREA_LAND_SOUTH_WEST",
|
||||
"pal_park_water_area": "PAL_PARK_AREA_WATER_NONE",
|
||||
"catching_points": 90,
|
||||
"rarity": 3,
|
||||
"unused": 1285
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
personal_files += files('data.json')
|
||||
species_data_files += files('data.json')
|
||||
|
||||
poke_icon_files += files('icon.png')
|
||||
|
||||
|
|
|
|||
|
|
@ -30,10 +30,8 @@
|
|||
"egg_groups": [ "EGG_GROUP_WATER_1", "EGG_GROUP_FAIRY" ],
|
||||
"abilities": [ "ABILITY_THICK_FAT", "ABILITY_HUGE_POWER" ],
|
||||
"safari_flee_rate": 0,
|
||||
"sprite": {
|
||||
"color": "MON_COLOR_BLUE",
|
||||
"flip": false
|
||||
},
|
||||
"body_color": "MON_COLOR_BLUE",
|
||||
"flip_sprite": false,
|
||||
"learnset": {
|
||||
"by_level": [
|
||||
[ 1, "MOVE_TACKLE" ],
|
||||
|
|
@ -119,13 +117,13 @@
|
|||
"trainer_pos_m": 9,
|
||||
"pokemon_pos_m": 19,
|
||||
"entry_text": "It can spend all day in water,\nsince it can inhale and store\na large volume of air.",
|
||||
"category": "Aqua Rabbit Pok\u00e9mon"
|
||||
"category": "Aqua Rabbit Pokémon"
|
||||
},
|
||||
"catching_show_data": {
|
||||
"catching_show": {
|
||||
"pal_park_land_area": "PAL_PARK_AREA_LAND_NONE",
|
||||
"pal_park_water_area": "PAL_PARK_AREA_WATER_NORTH_EAST",
|
||||
"catching_points": 70,
|
||||
"rarity": 20,
|
||||
"unused": 771
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
personal_files += files('data.json')
|
||||
species_data_files += files('data.json')
|
||||
|
||||
poke_icon_files += files('icon.png')
|
||||
|
||||
|
|
|
|||
|
|
@ -30,10 +30,8 @@
|
|||
"egg_groups": [ "EGG_GROUP_UNDISCOVERED", "EGG_GROUP_UNDISCOVERED" ],
|
||||
"abilities": [ "ABILITY_THICK_FAT", "ABILITY_HUGE_POWER" ],
|
||||
"safari_flee_rate": 120,
|
||||
"sprite": {
|
||||
"color": "MON_COLOR_BLUE",
|
||||
"flip": false
|
||||
},
|
||||
"body_color": "MON_COLOR_BLUE",
|
||||
"flip_sprite": false,
|
||||
"learnset": {
|
||||
"by_level": [
|
||||
[ 1, "MOVE_SPLASH" ],
|
||||
|
|
@ -100,13 +98,13 @@
|
|||
"trainer_pos_m": 9,
|
||||
"pokemon_pos_m": 27,
|
||||
"entry_text": "Its tail bounces like a rubber ball.\nIt flings that tail around to fight\nopponents bigger than itself.",
|
||||
"category": "Polka Dot Pok\u00e9mon"
|
||||
"category": "Polka Dot Pokémon"
|
||||
},
|
||||
"catching_show_data": {
|
||||
"catching_show": {
|
||||
"pal_park_land_area": "PAL_PARK_AREA_LAND_NONE",
|
||||
"pal_park_water_area": "PAL_PARK_AREA_WATER_NORTH_EAST",
|
||||
"catching_points": 80,
|
||||
"rarity": 10,
|
||||
"unused": 1285
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
personal_files += files('data.json')
|
||||
species_data_files += files('data.json')
|
||||
|
||||
poke_icon_files += files('icon.png')
|
||||
|
||||
|
|
|
|||
|
|
@ -30,10 +30,8 @@
|
|||
"egg_groups": [ "EGG_GROUP_UNDISCOVERED", "EGG_GROUP_UNDISCOVERED" ],
|
||||
"abilities": [ "ABILITY_NONE", "ABILITY_NONE" ],
|
||||
"safari_flee_rate": 0,
|
||||
"sprite": {
|
||||
"color": "MON_COLOR_EGG",
|
||||
"flip": false
|
||||
},
|
||||
"body_color": "MON_COLOR_EGG",
|
||||
"flip_sprite": false,
|
||||
"learnset": {
|
||||
"by_level": [
|
||||
[ 1, "MOVE_SPLASH" ]
|
||||
|
|
|
|||
|
|
@ -1 +1 @@
|
|||
personal_files += files('data.json')
|
||||
species_data_files += files('data.json')
|
||||
|
|
|
|||
|
|
@ -30,10 +30,8 @@
|
|||
"egg_groups": [ "EGG_GROUP_DRAGON", "EGG_GROUP_DRAGON" ],
|
||||
"abilities": [ "ABILITY_ROCK_HEAD", "ABILITY_NONE" ],
|
||||
"safari_flee_rate": 0,
|
||||
"sprite": {
|
||||
"color": "MON_COLOR_BLUE",
|
||||
"flip": false
|
||||
},
|
||||
"body_color": "MON_COLOR_BLUE",
|
||||
"flip_sprite": false,
|
||||
"learnset": {
|
||||
"by_level": [
|
||||
[ 1, "MOVE_RAGE" ],
|
||||
|
|
@ -115,13 +113,13 @@
|
|||
"trainer_pos_m": 9,
|
||||
"pokemon_pos_m": 23,
|
||||
"entry_text": "Dreaming of one day flying, it\npractices by leaping off cliffs\nevery day.",
|
||||
"category": "Rock Head Pok\u00e9mon"
|
||||
"category": "Rock Head Pokémon"
|
||||
},
|
||||
"catching_show_data": {
|
||||
"catching_show": {
|
||||
"pal_park_land_area": "PAL_PARK_AREA_LAND_NORTH_EAST",
|
||||
"pal_park_water_area": "PAL_PARK_AREA_WATER_NONE",
|
||||
"catching_points": 50,
|
||||
"rarity": 30,
|
||||
"unused": 3855
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
personal_files += files('data.json')
|
||||
species_data_files += files('data.json')
|
||||
|
||||
poke_icon_files += files('icon.png')
|
||||
|
||||
|
|
|
|||
|
|
@ -30,10 +30,8 @@
|
|||
"egg_groups": [ "EGG_GROUP_MINERAL", "EGG_GROUP_MINERAL" ],
|
||||
"abilities": [ "ABILITY_LEVITATE", "ABILITY_NONE" ],
|
||||
"safari_flee_rate": 0,
|
||||
"sprite": {
|
||||
"color": "MON_COLOR_BROWN",
|
||||
"flip": false
|
||||
},
|
||||
"body_color": "MON_COLOR_BROWN",
|
||||
"flip_sprite": false,
|
||||
"learnset": {
|
||||
"by_level": [
|
||||
[ 1, "MOVE_CONFUSION" ],
|
||||
|
|
@ -127,14 +125,14 @@
|
|||
"pokemon_pos_f": 26,
|
||||
"trainer_pos_m": 9,
|
||||
"pokemon_pos_m": 26,
|
||||
"entry_text": "It moves by spinning on its foot.\nIt is a rare Pok\u00e9mon that was\ndiscovered in ancient ruins.",
|
||||
"category": "Clay Doll Pok\u00e9mon"
|
||||
"entry_text": "It moves by spinning on its foot.\nIt is a rare Pokémon that was\ndiscovered in ancient ruins.",
|
||||
"category": "Clay Doll Pokémon"
|
||||
},
|
||||
"catching_show_data": {
|
||||
"catching_show": {
|
||||
"pal_park_land_area": "PAL_PARK_AREA_LAND_NORTH_EAST",
|
||||
"pal_park_water_area": "PAL_PARK_AREA_WATER_NONE",
|
||||
"catching_points": 50,
|
||||
"rarity": 30,
|
||||
"unused": 2568
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
personal_files += files('data.json')
|
||||
species_data_files += files('data.json')
|
||||
|
||||
poke_icon_files += files('icon.png')
|
||||
|
||||
|
|
|
|||
|
|
@ -30,10 +30,8 @@
|
|||
"egg_groups": [ "EGG_GROUP_AMORPHOUS", "EGG_GROUP_AMORPHOUS" ],
|
||||
"abilities": [ "ABILITY_INSOMNIA", "ABILITY_FRISK" ],
|
||||
"safari_flee_rate": 0,
|
||||
"sprite": {
|
||||
"color": "MON_COLOR_BLACK",
|
||||
"flip": false
|
||||
},
|
||||
"body_color": "MON_COLOR_BLACK",
|
||||
"flip_sprite": false,
|
||||
"learnset": {
|
||||
"by_level": [
|
||||
[ 1, "MOVE_KNOCK_OFF" ],
|
||||
|
|
@ -126,14 +124,14 @@
|
|||
"pokemon_pos_f": 13,
|
||||
"trainer_pos_m": 9,
|
||||
"pokemon_pos_m": 13,
|
||||
"entry_text": "A doll that became a Pok\u00e9mon over\nits grudge from being junked. It\nseeks the child that disowned it.",
|
||||
"category": "Marionette Pok\u00e9mon"
|
||||
"entry_text": "A doll that became a Pokémon over\nits grudge from being junked. It\nseeks the child that disowned it.",
|
||||
"category": "Marionette Pokémon"
|
||||
},
|
||||
"catching_show_data": {
|
||||
"catching_show": {
|
||||
"pal_park_land_area": "PAL_PARK_AREA_LAND_NORTH_WEST",
|
||||
"pal_park_water_area": "PAL_PARK_AREA_WATER_NONE",
|
||||
"catching_points": 70,
|
||||
"rarity": 20,
|
||||
"unused": 3084
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
personal_files += files('data.json')
|
||||
species_data_files += files('data.json')
|
||||
|
||||
poke_icon_files += files('icon.png')
|
||||
|
||||
|
|
|
|||
|
|
@ -30,10 +30,8 @@
|
|||
"egg_groups": [ "EGG_GROUP_WATER_2", "EGG_GROUP_WATER_2" ],
|
||||
"abilities": [ "ABILITY_OBLIVIOUS", "ABILITY_ANTICIPATION" ],
|
||||
"safari_flee_rate": 120,
|
||||
"sprite": {
|
||||
"color": "MON_COLOR_GRAY",
|
||||
"flip": false
|
||||
},
|
||||
"body_color": "MON_COLOR_GRAY",
|
||||
"flip_sprite": false,
|
||||
"learnset": {
|
||||
"by_level": [
|
||||
[ 1, "MOVE_MUD_SLAP" ],
|
||||
|
|
@ -113,13 +111,13 @@
|
|||
"trainer_pos_m": 9,
|
||||
"pokemon_pos_m": 65531,
|
||||
"entry_text": "Its slimy body is hard to grasp. In\none region, it is said to have been\nborn from hardened mud.",
|
||||
"category": "Whiskers Pok\u00e9mon"
|
||||
"category": "Whiskers Pokémon"
|
||||
},
|
||||
"catching_show_data": {
|
||||
"catching_show": {
|
||||
"pal_park_land_area": "PAL_PARK_AREA_LAND_NONE",
|
||||
"pal_park_water_area": "PAL_PARK_AREA_WATER_NORTH_EAST",
|
||||
"catching_points": 50,
|
||||
"rarity": 30,
|
||||
"unused": 2051
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
personal_files += files('data.json')
|
||||
species_data_files += files('data.json')
|
||||
|
||||
poke_icon_files += files('icon.png')
|
||||
|
||||
|
|
|
|||
|
|
@ -30,10 +30,8 @@
|
|||
"egg_groups": [ "EGG_GROUP_MONSTER", "EGG_GROUP_MONSTER" ],
|
||||
"abilities": [ "ABILITY_STURDY", "ABILITY_NONE" ],
|
||||
"safari_flee_rate": 0,
|
||||
"sprite": {
|
||||
"color": "MON_COLOR_GRAY",
|
||||
"flip": false
|
||||
},
|
||||
"body_color": "MON_COLOR_GRAY",
|
||||
"flip_sprite": false,
|
||||
"learnset": {
|
||||
"by_level": [
|
||||
[ 1, "MOVE_TACKLE" ],
|
||||
|
|
@ -125,13 +123,13 @@
|
|||
"trainer_pos_m": 9,
|
||||
"pokemon_pos_m": 9,
|
||||
"entry_text": "When they lined up side by side, no\nfoe could break through. They\nshielded their young in that way.",
|
||||
"category": "Shield Pok\u00e9mon"
|
||||
"category": "Shield Pokémon"
|
||||
},
|
||||
"catching_show_data": {
|
||||
"catching_show": {
|
||||
"pal_park_land_area": "PAL_PARK_AREA_LAND_NORTH_EAST",
|
||||
"pal_park_water_area": "PAL_PARK_AREA_WATER_NONE",
|
||||
"catching_points": 80,
|
||||
"rarity": 10,
|
||||
"unused": 2827
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
personal_files += files('data.json')
|
||||
species_data_files += files('data.json')
|
||||
|
||||
poke_icon_files += files('icon.png')
|
||||
|
||||
|
|
|
|||
|
|
@ -30,10 +30,8 @@
|
|||
"egg_groups": [ "EGG_GROUP_MONSTER", "EGG_GROUP_GRASS" ],
|
||||
"abilities": [ "ABILITY_OVERGROW", "ABILITY_NONE" ],
|
||||
"safari_flee_rate": 0,
|
||||
"sprite": {
|
||||
"color": "MON_COLOR_GREEN",
|
||||
"flip": false
|
||||
},
|
||||
"body_color": "MON_COLOR_GREEN",
|
||||
"flip_sprite": false,
|
||||
"learnset": {
|
||||
"by_level": [
|
||||
[ 1, "MOVE_TACKLE" ],
|
||||
|
|
@ -119,13 +117,13 @@
|
|||
"trainer_pos_m": 9,
|
||||
"pokemon_pos_m": 7,
|
||||
"entry_text": "The buds that ring its neck give\noff a spicy aroma that perks\npeople up.",
|
||||
"category": "Leaf Pok\u00e9mon"
|
||||
"category": "Leaf Pokémon"
|
||||
},
|
||||
"catching_show_data": {
|
||||
"catching_show": {
|
||||
"pal_park_land_area": "PAL_PARK_AREA_LAND_SOUTH_WEST",
|
||||
"pal_park_water_area": "PAL_PARK_AREA_WATER_NONE",
|
||||
"catching_points": 80,
|
||||
"rarity": 10,
|
||||
"unused": 257
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
personal_files += files('data.json')
|
||||
species_data_files += files('data.json')
|
||||
|
||||
poke_icon_files += files('icon.png')
|
||||
|
||||
|
|
|
|||
|
|
@ -30,10 +30,8 @@
|
|||
"egg_groups": [ "EGG_GROUP_BUG", "EGG_GROUP_BUG" ],
|
||||
"abilities": [ "ABILITY_SWARM", "ABILITY_NONE" ],
|
||||
"safari_flee_rate": 0,
|
||||
"sprite": {
|
||||
"color": "MON_COLOR_YELLOW",
|
||||
"flip": false
|
||||
},
|
||||
"body_color": "MON_COLOR_YELLOW",
|
||||
"flip_sprite": false,
|
||||
"learnset": {
|
||||
"by_level": [
|
||||
[ 1, "MOVE_ABSORB" ],
|
||||
|
|
@ -109,13 +107,13 @@
|
|||
"trainer_pos_m": 9,
|
||||
"pokemon_pos_m": 65526,
|
||||
"entry_text": "Despite its looks, it is aggressive.\nIt jabs with its long, thin mouth if\ndisturbed while collecting pollen.",
|
||||
"category": "Butterfly Pok\u00e9mon"
|
||||
"category": "Butterfly Pokémon"
|
||||
},
|
||||
"catching_show_data": {
|
||||
"catching_show": {
|
||||
"pal_park_land_area": "PAL_PARK_AREA_LAND_NORTH_WEST",
|
||||
"pal_park_water_area": "PAL_PARK_AREA_WATER_NONE",
|
||||
"catching_points": 70,
|
||||
"rarity": 20,
|
||||
"unused": 4356
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
personal_files += files('data.json')
|
||||
species_data_files += files('data.json')
|
||||
|
||||
poke_icon_files += files('icon.png')
|
||||
|
||||
|
|
|
|||
|
|
@ -30,10 +30,8 @@
|
|||
"egg_groups": [ "EGG_GROUP_BUG", "EGG_GROUP_BUG" ],
|
||||
"abilities": [ "ABILITY_SWARM", "ABILITY_NONE" ],
|
||||
"safari_flee_rate": 0,
|
||||
"sprite": {
|
||||
"color": "MON_COLOR_YELLOW",
|
||||
"flip": false
|
||||
},
|
||||
"body_color": "MON_COLOR_YELLOW",
|
||||
"flip_sprite": false,
|
||||
"learnset": {
|
||||
"by_level": [
|
||||
[ 1, "MOVE_FURY_ATTACK" ],
|
||||
|
|
@ -116,13 +114,13 @@
|
|||
"trainer_pos_m": 9,
|
||||
"pokemon_pos_m": 65529,
|
||||
"entry_text": "Its best attack involves flying\naround at high speed, striking with\npoison needles, then flying off.",
|
||||
"category": "Poison Bee Pok\u00e9mon"
|
||||
"category": "Poison Bee Pokémon"
|
||||
},
|
||||
"catching_show_data": {
|
||||
"catching_show": {
|
||||
"pal_park_land_area": "PAL_PARK_AREA_LAND_NORTH_WEST",
|
||||
"pal_park_water_area": "PAL_PARK_AREA_WATER_NONE",
|
||||
"catching_points": 70,
|
||||
"rarity": 20,
|
||||
"unused": 1540
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
personal_files += files('data.json')
|
||||
species_data_files += files('data.json')
|
||||
|
||||
poke_icon_files += files('icon.png')
|
||||
|
||||
|
|
|
|||
|
|
@ -30,10 +30,8 @@
|
|||
"egg_groups": [ "EGG_GROUP_MINERAL", "EGG_GROUP_MINERAL" ],
|
||||
"abilities": [ "ABILITY_CLEAR_BODY", "ABILITY_NONE" ],
|
||||
"safari_flee_rate": 0,
|
||||
"sprite": {
|
||||
"color": "MON_COLOR_BLUE",
|
||||
"flip": false
|
||||
},
|
||||
"body_color": "MON_COLOR_BLUE",
|
||||
"flip_sprite": false,
|
||||
"learnset": {
|
||||
"by_level": [
|
||||
[ 1, "MOVE_TAKE_DOWN" ]
|
||||
|
|
@ -69,13 +67,13 @@
|
|||
"trainer_pos_m": 9,
|
||||
"pokemon_pos_m": 65529,
|
||||
"entry_text": "It converses with others by using\nmagnetic pulses. In a swarm, they\nmove in perfect unison.",
|
||||
"category": "Iron Ball Pok\u00e9mon"
|
||||
"category": "Iron Ball Pokémon"
|
||||
},
|
||||
"catching_show_data": {
|
||||
"catching_show": {
|
||||
"pal_park_land_area": "PAL_PARK_AREA_LAND_NORTH_EAST",
|
||||
"pal_park_water_area": "PAL_PARK_AREA_WATER_NONE",
|
||||
"catching_points": 70,
|
||||
"rarity": 20,
|
||||
"unused": 2574
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
personal_files += files('data.json')
|
||||
species_data_files += files('data.json')
|
||||
|
||||
poke_icon_files += files('icon.png')
|
||||
|
||||
|
|
|
|||
|
|
@ -30,10 +30,8 @@
|
|||
"egg_groups": [ "EGG_GROUP_GRASS", "EGG_GROUP_GRASS" ],
|
||||
"abilities": [ "ABILITY_CHLOROPHYLL", "ABILITY_NONE" ],
|
||||
"safari_flee_rate": 0,
|
||||
"sprite": {
|
||||
"color": "MON_COLOR_GREEN",
|
||||
"flip": false
|
||||
},
|
||||
"body_color": "MON_COLOR_GREEN",
|
||||
"flip_sprite": false,
|
||||
"learnset": {
|
||||
"by_level": [
|
||||
[ 1, "MOVE_LEAF_BLADE" ],
|
||||
|
|
@ -103,13 +101,13 @@
|
|||
"trainer_pos_m": 9,
|
||||
"pokemon_pos_m": 27,
|
||||
"entry_text": "When the heavy rainfall season\nends, it is drawn out by warm\nsunlight to dance in the open.",
|
||||
"category": "Flower Pok\u00e9mon"
|
||||
"category": "Flower Pokémon"
|
||||
},
|
||||
"catching_show_data": {
|
||||
"catching_show": {
|
||||
"pal_park_land_area": "PAL_PARK_AREA_LAND_NORTH_WEST",
|
||||
"pal_park_water_area": "PAL_PARK_AREA_WATER_NONE",
|
||||
"catching_points": 80,
|
||||
"rarity": 10,
|
||||
"unused": 257
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
personal_files += files('data.json')
|
||||
species_data_files += files('data.json')
|
||||
|
||||
poke_icon_files += files('icon.png')
|
||||
|
||||
|
|
|
|||
|
|
@ -30,10 +30,8 @@
|
|||
"egg_groups": [ "EGG_GROUP_GRASS", "EGG_GROUP_GRASS" ],
|
||||
"abilities": [ "ABILITY_CHLOROPHYLL", "ABILITY_NONE" ],
|
||||
"safari_flee_rate": 0,
|
||||
"sprite": {
|
||||
"color": "MON_COLOR_GREEN",
|
||||
"flip": false
|
||||
},
|
||||
"body_color": "MON_COLOR_GREEN",
|
||||
"flip_sprite": false,
|
||||
"learnset": {
|
||||
"by_level": [
|
||||
[ 1, "MOVE_VINE_WHIP" ],
|
||||
|
|
@ -112,13 +110,13 @@
|
|||
"trainer_pos_m": 9,
|
||||
"pokemon_pos_m": 22,
|
||||
"entry_text": "It prefers hot and humid\nenvironments. It is quick at\ncapturing prey with its vines.",
|
||||
"category": "Flower Pok\u00e9mon"
|
||||
"category": "Flower Pokémon"
|
||||
},
|
||||
"catching_show_data": {
|
||||
"catching_show": {
|
||||
"pal_park_land_area": "PAL_PARK_AREA_LAND_NORTH_WEST",
|
||||
"pal_park_water_area": "PAL_PARK_AREA_WATER_NONE",
|
||||
"catching_points": 30,
|
||||
"rarity": 50,
|
||||
"unused": 1537
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
personal_files += files('data.json')
|
||||
species_data_files += files('data.json')
|
||||
|
||||
poke_icon_files += files('icon.png')
|
||||
|
||||
|
|
|
|||
|
|
@ -30,10 +30,8 @@
|
|||
"egg_groups": [ "EGG_GROUP_WATER_1", "EGG_GROUP_FIELD" ],
|
||||
"abilities": [ "ABILITY_SIMPLE", "ABILITY_UNAWARE" ],
|
||||
"safari_flee_rate": 60,
|
||||
"sprite": {
|
||||
"color": "MON_COLOR_BROWN",
|
||||
"flip": false
|
||||
},
|
||||
"body_color": "MON_COLOR_BROWN",
|
||||
"flip_sprite": false,
|
||||
"learnset": {
|
||||
"by_level": [
|
||||
[ 1, "MOVE_TACKLE" ],
|
||||
|
|
@ -128,13 +126,13 @@
|
|||
"trainer_pos_m": 9,
|
||||
"pokemon_pos_m": 15,
|
||||
"entry_text": "A river dammed by BIBAREL will\nnever overflow its banks, which\nis appreciated by people nearby.",
|
||||
"category": "Beaver Pok\u00e9mon"
|
||||
"category": "Beaver Pokémon"
|
||||
},
|
||||
"catching_show_data": {
|
||||
"catching_show": {
|
||||
"pal_park_land_area": "PAL_PARK_AREA_LAND_SOUTH_WEST",
|
||||
"pal_park_water_area": "PAL_PARK_AREA_WATER_NONE",
|
||||
"catching_points": 50,
|
||||
"rarity": 30,
|
||||
"unused": 773
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
personal_files += files('data.json')
|
||||
species_data_files += files('data.json')
|
||||
|
||||
poke_icon_files += files('icon.png')
|
||||
|
||||
|
|
|
|||
|
|
@ -30,10 +30,8 @@
|
|||
"egg_groups": [ "EGG_GROUP_WATER_1", "EGG_GROUP_FIELD" ],
|
||||
"abilities": [ "ABILITY_SIMPLE", "ABILITY_UNAWARE" ],
|
||||
"safari_flee_rate": 90,
|
||||
"sprite": {
|
||||
"color": "MON_COLOR_BROWN",
|
||||
"flip": false
|
||||
},
|
||||
"body_color": "MON_COLOR_BROWN",
|
||||
"flip_sprite": false,
|
||||
"learnset": {
|
||||
"by_level": [
|
||||
[ 1, "MOVE_TACKLE" ],
|
||||
|
|
@ -121,14 +119,14 @@
|
|||
"pokemon_pos_f": 25,
|
||||
"trainer_pos_m": 9,
|
||||
"pokemon_pos_m": 25,
|
||||
"entry_text": "A comparison revealed that\nBIDOOF\u2019s front teeth grow at\nthe same rate as RATTATA\u2019s.",
|
||||
"category": "Plump Mouse Pok\u00e9mon"
|
||||
"entry_text": "A comparison revealed that\nBIDOOF’s front teeth grow at\nthe same rate as RATTATA’s.",
|
||||
"category": "Plump Mouse Pokémon"
|
||||
},
|
||||
"catching_show_data": {
|
||||
"catching_show": {
|
||||
"pal_park_land_area": "PAL_PARK_AREA_LAND_SOUTH_WEST",
|
||||
"pal_park_water_area": "PAL_PARK_AREA_WATER_NONE",
|
||||
"catching_points": 30,
|
||||
"rarity": 50,
|
||||
"unused": 1285
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
personal_files += files('data.json')
|
||||
species_data_files += files('data.json')
|
||||
|
||||
poke_icon_files += files('icon.png')
|
||||
|
||||
|
|
|
|||
|
|
@ -30,10 +30,8 @@
|
|||
"egg_groups": [ "EGG_GROUP_MONSTER", "EGG_GROUP_WATER_1" ],
|
||||
"abilities": [ "ABILITY_TORRENT", "ABILITY_NONE" ],
|
||||
"safari_flee_rate": 0,
|
||||
"sprite": {
|
||||
"color": "MON_COLOR_BLUE",
|
||||
"flip": false
|
||||
},
|
||||
"body_color": "MON_COLOR_BLUE",
|
||||
"flip_sprite": false,
|
||||
"learnset": {
|
||||
"by_level": [
|
||||
[ 1, "MOVE_FLASH_CANNON" ],
|
||||
|
|
@ -131,13 +129,13 @@
|
|||
"trainer_pos_m": 6,
|
||||
"pokemon_pos_m": 1,
|
||||
"entry_text": "The jets of water it spouts from\nthe rocket cannons on its shell\ncan punch through thick steel.",
|
||||
"category": "Shellfish Pok\u00e9mon"
|
||||
"category": "Shellfish Pokémon"
|
||||
},
|
||||
"catching_show_data": {
|
||||
"catching_show": {
|
||||
"pal_park_land_area": "PAL_PARK_AREA_LAND_NONE",
|
||||
"pal_park_water_area": "PAL_PARK_AREA_WATER_NORTH_EAST",
|
||||
"catching_points": 90,
|
||||
"rarity": 3,
|
||||
"unused": 771
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
personal_files += files('data.json')
|
||||
species_data_files += files('data.json')
|
||||
|
||||
poke_icon_files += files('icon.png')
|
||||
|
||||
|
|
|
|||
|
|
@ -30,10 +30,8 @@
|
|||
"egg_groups": [ "EGG_GROUP_FIELD", "EGG_GROUP_FIELD" ],
|
||||
"abilities": [ "ABILITY_BLAZE", "ABILITY_NONE" ],
|
||||
"safari_flee_rate": 0,
|
||||
"sprite": {
|
||||
"color": "MON_COLOR_RED",
|
||||
"flip": false
|
||||
},
|
||||
"body_color": "MON_COLOR_RED",
|
||||
"flip_sprite": false,
|
||||
"learnset": {
|
||||
"by_level": [
|
||||
[ 1, "MOVE_FIRE_PUNCH" ],
|
||||
|
|
@ -133,13 +131,13 @@
|
|||
"trainer_pos_m": 13,
|
||||
"pokemon_pos_m": 5,
|
||||
"entry_text": "Flames spout from its wrists,\nenveloping its knuckles. Its\npunches scorch its foes.",
|
||||
"category": "Blaze Pok\u00e9mon"
|
||||
"category": "Blaze Pokémon"
|
||||
},
|
||||
"catching_show_data": {
|
||||
"catching_show": {
|
||||
"pal_park_land_area": "PAL_PARK_AREA_LAND_SOUTH_WEST",
|
||||
"pal_park_water_area": "PAL_PARK_AREA_WATER_NONE",
|
||||
"catching_points": 90,
|
||||
"rarity": 3,
|
||||
"unused": 2306
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
personal_files += files('data.json')
|
||||
species_data_files += files('data.json')
|
||||
|
||||
poke_icon_files += files('icon.png')
|
||||
|
||||
|
|
|
|||
|
|
@ -30,10 +30,8 @@
|
|||
"egg_groups": [ "EGG_GROUP_FAIRY", "EGG_GROUP_FAIRY" ],
|
||||
"abilities": [ "ABILITY_NATURAL_CURE", "ABILITY_SERENE_GRACE" ],
|
||||
"safari_flee_rate": 0,
|
||||
"sprite": {
|
||||
"color": "MON_COLOR_PINK",
|
||||
"flip": false
|
||||
},
|
||||
"body_color": "MON_COLOR_PINK",
|
||||
"flip_sprite": false,
|
||||
"learnset": {
|
||||
"by_level": [
|
||||
[ 1, "MOVE_POUND" ],
|
||||
|
|
@ -144,13 +142,13 @@
|
|||
"trainer_pos_m": 9,
|
||||
"pokemon_pos_m": 6,
|
||||
"entry_text": "The eggs it lays are filled with\nhappiness. Eating even one bite\nwill bring a smile to anyone.",
|
||||
"category": "Happiness Pok\u00e9mon"
|
||||
"category": "Happiness Pokémon"
|
||||
},
|
||||
"catching_show_data": {
|
||||
"catching_show": {
|
||||
"pal_park_land_area": "PAL_PARK_AREA_LAND_SOUTH_WEST",
|
||||
"pal_park_water_area": "PAL_PARK_AREA_WATER_NONE",
|
||||
"catching_points": 90,
|
||||
"rarity": 3,
|
||||
"unused": 1285
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
personal_files += files('data.json')
|
||||
species_data_files += files('data.json')
|
||||
|
||||
poke_icon_files += files('icon.png')
|
||||
|
||||
|
|
|
|||
|
|
@ -30,10 +30,8 @@
|
|||
"egg_groups": [ "EGG_GROUP_UNDISCOVERED", "EGG_GROUP_UNDISCOVERED" ],
|
||||
"abilities": [ "ABILITY_STURDY", "ABILITY_ROCK_HEAD" ],
|
||||
"safari_flee_rate": 0,
|
||||
"sprite": {
|
||||
"color": "MON_COLOR_BROWN",
|
||||
"flip": false
|
||||
},
|
||||
"body_color": "MON_COLOR_BROWN",
|
||||
"flip_sprite": false,
|
||||
"learnset": {
|
||||
"by_level": [
|
||||
[ 1, "MOVE_FAKE_TEARS" ],
|
||||
|
|
@ -113,13 +111,13 @@
|
|||
"trainer_pos_m": 9,
|
||||
"pokemon_pos_m": 27,
|
||||
"entry_text": "It prefers an arid atmosphere. It\nleaks water that looks like tears\nwhen adjusting its moisture level.",
|
||||
"category": "Bonsai Pok\u00e9mon"
|
||||
"category": "Bonsai Pokémon"
|
||||
},
|
||||
"catching_show_data": {
|
||||
"catching_show": {
|
||||
"pal_park_land_area": "PAL_PARK_AREA_LAND_SOUTH_WEST",
|
||||
"pal_park_water_area": "PAL_PARK_AREA_WATER_NONE",
|
||||
"catching_points": 90,
|
||||
"rarity": 3,
|
||||
"unused": 1285
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
personal_files += files('data.json')
|
||||
species_data_files += files('data.json')
|
||||
|
||||
poke_icon_files += files('icon.png')
|
||||
|
||||
|
|
|
|||
|
|
@ -30,10 +30,8 @@
|
|||
"egg_groups": [ "EGG_GROUP_FAIRY", "EGG_GROUP_GRASS" ],
|
||||
"abilities": [ "ABILITY_EFFECT_SPORE", "ABILITY_POISON_HEAL" ],
|
||||
"safari_flee_rate": 0,
|
||||
"sprite": {
|
||||
"color": "MON_COLOR_GREEN",
|
||||
"flip": false
|
||||
},
|
||||
"body_color": "MON_COLOR_GREEN",
|
||||
"flip_sprite": false,
|
||||
"learnset": {
|
||||
"by_level": [
|
||||
[ 1, "MOVE_ABSORB" ],
|
||||
|
|
@ -127,13 +125,13 @@
|
|||
"trainer_pos_m": 9,
|
||||
"pokemon_pos_m": 8,
|
||||
"entry_text": "Its short arms stretch when it\nthrows punches. Its technique is\nequal to that of pro boxers.",
|
||||
"category": "Mushroom Pok\u00e9mon"
|
||||
"category": "Mushroom Pokémon"
|
||||
},
|
||||
"catching_show_data": {
|
||||
"catching_show": {
|
||||
"pal_park_land_area": "PAL_PARK_AREA_LAND_NORTH_WEST",
|
||||
"pal_park_water_area": "PAL_PARK_AREA_WATER_NONE",
|
||||
"catching_points": 70,
|
||||
"rarity": 20,
|
||||
"unused": 2305
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
personal_files += files('data.json')
|
||||
species_data_files += files('data.json')
|
||||
|
||||
poke_icon_files += files('icon.png')
|
||||
|
||||
|
|
|
|||
|
|
@ -30,10 +30,8 @@
|
|||
"egg_groups": [ "EGG_GROUP_MINERAL", "EGG_GROUP_MINERAL" ],
|
||||
"abilities": [ "ABILITY_LEVITATE", "ABILITY_HEATPROOF" ],
|
||||
"safari_flee_rate": 0,
|
||||
"sprite": {
|
||||
"color": "MON_COLOR_GREEN",
|
||||
"flip": false
|
||||
},
|
||||
"body_color": "MON_COLOR_GREEN",
|
||||
"flip_sprite": false,
|
||||
"learnset": {
|
||||
"by_level": [
|
||||
[ 1, "MOVE_SUNNY_DAY" ],
|
||||
|
|
@ -130,13 +128,13 @@
|
|||
"trainer_pos_m": 9,
|
||||
"pokemon_pos_m": 7,
|
||||
"entry_text": "It brought rains by opening portals\nto another world. It was revered\nas a bringer of plentiful harvests.",
|
||||
"category": "Bronze Bell Pok\u00e9mon"
|
||||
"category": "Bronze Bell Pokémon"
|
||||
},
|
||||
"catching_show_data": {
|
||||
"catching_show": {
|
||||
"pal_park_land_area": "PAL_PARK_AREA_LAND_NORTH_EAST",
|
||||
"pal_park_water_area": "PAL_PARK_AREA_WATER_NONE",
|
||||
"catching_points": 80,
|
||||
"rarity": 10,
|
||||
"unused": 2827
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
personal_files += files('data.json')
|
||||
species_data_files += files('data.json')
|
||||
|
||||
poke_icon_files += files('icon.png')
|
||||
|
||||
|
|
|
|||
|
|
@ -30,10 +30,8 @@
|
|||
"egg_groups": [ "EGG_GROUP_MINERAL", "EGG_GROUP_MINERAL" ],
|
||||
"abilities": [ "ABILITY_LEVITATE", "ABILITY_HEATPROOF" ],
|
||||
"safari_flee_rate": 0,
|
||||
"sprite": {
|
||||
"color": "MON_COLOR_GREEN",
|
||||
"flip": false
|
||||
},
|
||||
"body_color": "MON_COLOR_GREEN",
|
||||
"flip_sprite": false,
|
||||
"learnset": {
|
||||
"by_level": [
|
||||
[ 1, "MOVE_TACKLE" ],
|
||||
|
|
@ -123,14 +121,14 @@
|
|||
"pokemon_pos_f": 65528,
|
||||
"trainer_pos_m": 9,
|
||||
"pokemon_pos_m": 65528,
|
||||
"entry_text": "There are researchers who believe\nthis Pok\u00e9mon reflected like a mirror\nin the distant past.",
|
||||
"category": "Bronze Pok\u00e9mon"
|
||||
"entry_text": "There are researchers who believe\nthis Pokémon reflected like a mirror\nin the distant past.",
|
||||
"category": "Bronze Pokémon"
|
||||
},
|
||||
"catching_show_data": {
|
||||
"catching_show": {
|
||||
"pal_park_land_area": "PAL_PARK_AREA_LAND_NORTH_EAST",
|
||||
"pal_park_water_area": "PAL_PARK_AREA_WATER_NONE",
|
||||
"catching_points": 70,
|
||||
"rarity": 20,
|
||||
"unused": 2574
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user