Commit Graph

11 Commits

Author SHA1 Message Date
bryanthaboi 8c5d877bb9 various fixes 2026-09-30 15:47:06 -04:00
bryanthaboi 690f0cd9a1 TOUCHDOWN 2026-09-27 16:07:31 -04:00
bryanthaboi f8c95b8e8a CLOSES #2347, CLOSES #2384, CLOSES #2456, CLOSES #2460, CLOSES #2461, CLOSES #2468, CLOSES #2470, CLOSES #2471, CLOSES #2472, CLOSES #2473 2026-09-25 07:11:46 -04:00
bryanthaboi dee935a4ea CLOSES #2430 2026-09-23 11:58:32 -04:00
bryanthaboi ebbf4709c8 CLOSES #2411, CLOSES #2418, CLOSES #2420, CLOSES #2422, CLOSES #2423, CLOSES #2424 2026-09-23 05:51:05 -04:00
bryanthaboi a446147787 CLOSES #2408, CLOSES #2413, CLOSES #2414, CLOSES #2415, CLOSES #2416, CLOSES #2417, CLOSES #2419 2026-09-22 20:44:21 -04:00
bryanthaboi 21c868b90a leafgreen 2026-09-22 09:56:36 -04:00
thibautbus b54adf14cc Re-apply FireRed species and move patches after the pack reloads
A FireRed mod's pokemon and moves patches are merged onto the live
src.core.game3.pokemon module while the mods load (Game3:_loadMods).
Entering FireRed then runs Pokemon.install() from Runtime, which swaps
every species table for a fresh copy of the ROM pack -- names, stats,
types, learnsets, and the move names that live in the same pack.  The
only reload hook, in Gen3Compat.applyMerged, re-seeded the sprites and
nothing else, so every such patch was gone before the first frame: a
translation's species_names and move_names catalogs never reached the
party screen, the summary or a battle, and a mod's base stats reverted
to the ROM's.

Write the moves and pokemon registries again onto the new tables from
that hook, the way reapplyMoves already does for the moves module.  The
moves registry is part of it because its names and the battle-move copy
it mirrors into belong to the reloaded pack, and it goes first, in the
order Loader:_mergeOrder uses: the moves writer is what adds a mod's own
moves to the move index, and the species writer resolves learnsets, egg
moves and TM/HM lists through that index.
2026-09-21 15:29:01 +02:00
bryanthaboi 2945ed8987 firered: elevators, braille, alt layouts, on-frame scripts, fly and heal data, field item use 2026-09-21 05:39:03 -04:00
Shane McGovern 8fce7bcdc6 fix(gen3): ui.start_menu.items is raised on FireRed
Gen3Compat's src.ui.StartMenu coverage row claimed the
ui.start_menu.items hook is "not raised on FireRed yet". It is raised:
src/ui/game3/start_menu.lua calls it from StartMenu.show with
(game, entries), the same name and arity as src/ui/StartMenu.lua and
src/ui/gen2/StartMenu.lua.

The note is what a mod author reads when asking whether the hook exists
on this generation, so a stale one costs a mod the hook for no reason.

- Rewrite the note to describe the FireRed arm: a row is { id, label }
  and carries no onSelect to rewire, and a non-table return is dropped
  without the Logger.error the other two generations emit.
- List ENTRIES as backed and note it: the facade passes the module's
  list straight through, and show() rebuilds it on every open, so a mod
  has to act per open rather than once.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
2026-09-19 23:08:57 +01:00
bryanthaboi bdfac727aa bing bang bong 2026-09-18 15:42:32 -04:00