$ python3 migration_scripts/convert_parties.py src/data/trainers.h src/data/trainer_parties.h src/data/npc_trainers.party
Is available to convert Trainer Control-formatted trainers/parties into
Competitive-formatted ones.
Multiple '#include's can be placed in the trainer section of src/data.c
to support spreading the trainers across multiple .party files.
trainerproc does not interpret the values, leaving that job to the C
compiler, so we use '#line' to associate those errors with the lines in
the .party file(s). Because the columns don't make sense we use
-fno-show-column and -fno-diagostics-show-caret. We might want to move
gTrainers into its own file so that the rest of src/data.c isn't
affected by those flags.
Extensions (misfeatures, imo):
- .party files are passed through cpp, so '#define's are supported, and so
are '// ...' and '/* ... */' comments.
- .party files also support writing, e.g. 'SPECIES_PIKACHU' instead of
'Pikachu'. This allows people to write constants explicitly if they
like.
Pragmas:
- '#pragma trainerproc ivs explicit' requires an explicit 'IVs:' line
rather than defaulting to 31s.
- '#pragma trainerproc ivs <IVs>' changes the default IVs.
- '#pragma trainerproc level explicit' requires an explicit 'Level:'
line rather than defaulting to 100.
- '#pragma trainerproc level <level>' changes the default level.
Co-authored-by: Eduardo Quezada <eduardo602002@gmail.com>
Co-authored-by: Alex <93446519+AlexOn1ine@users.noreply.github.com>
* Teachable learnset helper mechanics
* Rename folder and python script
* Some teachable learnset work
* Update PoryMoves file labels
* Add header and make custom json
* Include found moves in output file
* Update SV file to latest version
* Don't run if there are no jsons to be found
* Add Basculin duplication in json
* Add universal move support to
* Ignore and skip Mew
* Integrate tool in Makefile
* Condense Basculin learnsets
* Split Oinkologne for easier generation
* Add Deoxys' XD move tutor data
* Add missing Darumaka/Yamask Galarian SwSh TMs
* Add TID species to sv.json
* Update sv.json to The Indigo Disk data
* Add Python install instructions
* Fix Makefile
* Expand header with more information
* Add config to allow disabling the learnset helper
* Update include/config/pokemon.h
Co-authored-by: Eduardo Quezada D'Ottone <eduardo602002@gmail.com>
* Don't crash if the config is missing
---------
Co-authored-by: Eduardo Quezada D'Ottone <eduardo602002@gmail.com>
* u16 for FunctionTest PARAMETRIZE
* Speed up CB2_TestRunner
* Use DACS to handle illegal instructions
DACS is available in mgba from 44e074a15e
This is not 0.10.2, but will presumably be available in the next
release. Alternatively, a GBA BIOS could be used.
---------
Co-authored-by: DizzyEggg <jajkodizzy@wp.pl>
Co-authored-by: Bassoonian <iasperbassoonian@gmail.com>
When prepending something to PATH, we should use PATH=/foo/bar:$PATH
and not PATH=/foo/bar:PATH. Because your shell won't certainly find
something under the literal name PATH.
If one is not using devkitarm, TOOLCHAIN will resolve to an empty
string. If TOOLCHAIN is an empty string the only search path for the
modern gcc will be /bin which may work on some installations but is
probably not what was originally intended with this line. So let's just
search the standard search path if nothing can be found under $(TOOLCHAIN).
Either way, PATH is already set up previously, so we can make sure
MODERNCC is invoked properly by calling MODERNCC with PATH=$(PATH).
* Separate build directory for tests and TESTING define
* fixup! Separate build directory for tests and TESTING define
* fixup! Separate build directory for tests and TESTING define
* fixup! Separate build directory for tests and TESTING define
* Build tools for check
* Display PASSes when Hydra exits
* Print buffered output at exit
* Remove unused test summaries
* Show SKIP if ASSUMPTIONS fails