pokeruby icon indicating copy to clipboard operation
pokeruby copied to clipboard

Miscellaneous issues.

Open luckytyphlosion opened this issue 6 years ago • 3 comments

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.

luckytyphlosion avatar Nov 04 '18 16:11 luckytyphlosion

use pokeemerald

DizzyEggg avatar Dec 29 '18 11:12 DizzyEggg

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

camthesaxman avatar Dec 30 '18 17:12 camthesaxman

@luckytyphlosion can you update the top post to mark issues that have since been resolved?

PikalaxALT avatar Feb 13 '20 21:02 PikalaxALT