pokeruby
pokeruby copied to clipboard
Miscellaneous issues.
These are just a list of issues I have noticed while working on the pokeruby-hackathon. This list is incomplete.
- TV_PutNameRaterShowOnTheAirIfNicnkameChanged is incorrectly named. (Nicnkame)
- sub_8080E70 is actually just a call to IsWeatherNotFadingIn with some useless, but I'm not sure what to rename it.
- Many instances of static variables being named as global, e.g. gMartInfo is actually static.
- src/option_menu.c uses raw numbers for option input selection bounds.
- Many msgbox script commands use a raw argument for the type, the actual types themselves should be easy enough to document.
Very informal notes:
- gUnknown_082082F8 = Stat Name Indices
- gUnknown_08400F58 = Stat Name Pointers
- sub_803F324 = something that creates the stat rose message
- first three item header bytes are related to stat ups, sub_803F378 related.
- document AI flags in trainers_en.h from pokeemerald
- use trainer class constants in GetMUS_ForBattle
- make better names for music/sound constants
- some calls to PrepareStringBattle use raw numbers instead of the BATTLE_TEXT_* constants, possible other instances of raw numbers used instead of BATTLE_TEXT_* constants.
- EmitPrintString is only used in the context of a battle
- gUnknown_082082F8 should use STAT_STAGE_* constants.
- enum for the GetEvolutionTargetSpecies evolution type (level, trade, item).
- EmitPuase is incorrectly named (Puase)
- If possible, changes instances of data in headers to data in C files.
- src/strings.c should be in data.
- It is unclear that wild encounter data is in src/wild_encounter.c
- atkDE_asistattackselect is misspelled (asist)
- dmgtolevel, damagetohalftargethp have a confusing name structure (sounds like damage is being written to level/halftargethp)
- AI_CalcDmg, and TypeCalc are defined in battle_script_commands.h and battle.h at the same time.
- if_would_go_first's first argument is not a USER (1)/TARGET (0) constant, rather, specifying 0 checks if the user is faster, and specifying 1 checks if the target is faster.
Some thoughts on the usability of pokeruby:
- src/overworld.c needs more documentation for making custom overworld interactions.
- "Item headers" need more documentation, including functions which interact with them, and making constants.
- Map scripts need a preprocessor for function-scope local labels.
- ASM charmap preproc needs regular apostrophe support.
use pokeemerald
I've created a tool to help find and resolve differences between ruby and emerald, and help keep ruby up to date with the changes done in emerald. https://gist.github.com/camthesaxman/5142d293fddd877b6ba521075441ac83
@luckytyphlosion can you update the top post to mark issues that have since been resolved?