435 Commits

Author SHA1 Message Date
1jamie 655000bfac fix(emerald): OAM software subpriority, duplicate boat cleanup, and start menu size 2026-09-29 17:44:38 -05:00
bryanthaboi 9eb6f199b9 CLOSES #2554 2026-09-29 14:31:55 -04:00
bryanthaboi f99d59f8f6 CLOSES #2548 2026-09-29 13:30:13 -04:00
bryanthaboi 9fb3c529e7 couple tiny fixes 2026-09-29 10:38:20 -04:00
bryanthaboi 6d224e7d89 Merge pull request #2545 from 1Jamie/grandpas-garage 2026-09-28 23:21:08 -04:00
1jamie 26506b0677 fix(emerald): fix party TM descriptions, summary 5th move, and UI issues
- Fix Emerald party menu TM learnability descriptions (sDescriptionStringTable indexing)
- Fix summary menu 5th move slot display and move learning in RSE
- Fix pause/start menu viewport scrolling and scroll arrow indicators
- Fix berry planting bag pocket routing and screen veil fading in Emerald
- Fix Route 101 Birch rescue positioning and truck sequence unfreeze
- Add comprehensive regression tests for all fixes
2026-09-28 22:03:03 -05:00
bryanthaboi a739e70c9e update 2026-09-28 20:37:29 -04:00
bryanthaboi 8450c8f107 CLOSES #2515, CLOSES #2516, CLOSES #2518, CLOSES #2519, CLOSES #2521, CLOSES #2522, CLOSES #2523, CLOSES #2525, CLOSES #2526
CLOSES #2515, CLOSES #2516, CLOSES #2518, CLOSES #2519, CLOSES #2521, CLOSES #2522, CLOSES #2523, CLOSES #2525, CLOSES #2526
2026-09-28 14:33:06 -04:00
bryanthaboi 5d8009096a other update 2026-09-28 10:30:30 -04:00
bryanthaboi 193f350db0 more perf updates 2026-09-28 10:18:27 -04:00
bryanthaboi d4899e48b0 ok o ok 2026-09-28 09:13:34 -04:00
bryanthaboi f6898903b6 asdf 2026-09-28 08:53:02 -04:00
bryanthaboi ba24266192 quick fix 2026-09-28 07:21:38 -04:00
bryanthaboi b5b2965d55 Merge pull request #2530 from bryanthaboi/Nexhas28 2026-09-28 07:00:40 -04:00
bryanthaboi 706a025222 AUDIBLE 2026-09-28 06:57:18 -04:00
bryanthaboi ff9cc6d172 YELLOWCARD 2026-09-28 06:45:52 -04:00
shanemcgovernie c0a6db4c8c FireRed: fix party gaps after PC moves and TM ABLE!/NOT ABLE! labels
- PC storage: moving a party Pokemon out of the middle of the party left a
  nil hole, so later slots showed as empty in battle and could not be filled
  (#2494). Add Storage.compactParty (pret CompactPartySlots) and run it after
  every PC party move, when the PC opens, and on save load so already broken
  saves are repaired.
- Party menu: using a TM/HM from the bag now labels each slot ABLE!,
  NOT ABLE! or LEARNED, matching DisplayPartyPokemonDataToTeachMove (#2520).
- Add regression tests for both.
2026-09-28 07:54:53 +00:00
bryanthaboi 3620e787d2 FIELD GOAL 2026-09-27 16:58:27 -04:00
bryanthaboi 690f0cd9a1 TOUCHDOWN 2026-09-27 16:07:31 -04:00
bryanthaboi 0fa4aeacc3 CLOSES #2452, CLOSES #2493, CLOSES #2496, CLOSES #2499, CLOSES #2500, CLOSES #2501, CLOSES #2502, CLOSES #2503 2026-09-26 20:29:32 -04:00
bryanthaboi a6945ec4bb CLOSES #2479, CLOSES #2481, CLOSES #2483, CLOSES #2485 2026-09-26 05:44:05 -04:00
bryanthaboi c65fcf939d battle speed 2026-09-25 14:20:34 -04:00
bryanthaboi 389184789f import picker for custom cart 2026-09-25 13:18:59 -04:00
bryanthaboi 584350e9de CLOSES #2477 2026-09-25 13:08:56 -04:00
bryanthaboi a685f16e00 updates to online 2026-09-25 10:28:21 -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 a3251d10d5 little clean up for mystery gifts 2026-09-24 11:24:20 -04:00
bryanthaboi 6fdff58b3d online fixes 2026-09-24 10:31:07 -04:00
bryanthaboi 72a17b27dd CLOSES #2444 2026-09-24 08:39:43 -04:00
bryanthaboi d51bdaff72 CLOSES #2441, CLOSES #2445, CLOSES #2448, CLOSES #2450 2026-09-24 06:24:54 -04:00
bryanthaboi 9335be1bbd online update 2026-09-24 05:17:32 -04:00
bryanthaboi 8a3f8424f5 Merge pull request #2406 from thibautbus/feat/game3-japanese-rom-font
Draw Japanese text in FireRed with the cart's own Japanese fonts
2026-09-23 16:44:04 -04:00
bryanthaboi 2a09429699 Merge pull request #2434 from bryanthaboi/feat/game3-mods
feat(game3): in-game MODS entry with FRLG-styled mod manager
2026-09-23 16:44:00 -04:00
bryanthaboi c9c20d361e Merge remote-tracking branch 'origin/dev' into pr-2406
# Conflicts:
#	src/import/gba/versions.lua
2026-09-23 16:43:55 -04:00
bryanthaboi d2fdd3becc Merge remote-tracking branch 'origin/dev' into feat/game3-mods
# Conflicts:
#	src/ui/game3/start_menu.lua
2026-09-23 16:41:24 -04:00
bryanthaboi d408c9d78f Merge remote-tracking branch 'origin/dev' into pr-2442
# Conflicts:
#	src/core/game3/scripting/natives_seagallop.lua
2026-09-23 16:37:33 -04:00
bryanthaboi 123feef3a1 CLOSES #2425, CLOSES #2428, CLOSES #2431, CLOSES #2432, CLOSES #2433, CLOSES #2435, CLOSES #2436, CLOSES #2437, CLOSES #2440
CLOSES #2425, CLOSES #2428, CLOSES #2431, CLOSES #2432, CLOSES #2433, CLOSES #2435, CLOSES #2436, CLOSES #2437, CLOSES #2440
2026-09-23 16:34:15 -04:00
1jamie 8621d024dc feat(game3): implement roaming legendary beasts, Seagallop ferry, field weather, and overworld fixes
- Implement roaming legendary beast system (Raikou, Entei, Suicune) matching pokefirered (src/roamer.c), including 31-cap IV fix, Roar despawn fix, battle flee logic, and trapping interactions (Mean Look, Shadow Tag, Arena Trap, Wrap).
- Implement Seagallop ferry crossing cutscene and transit between Sevii Islands and Kanto.
- Implement field weather engine, weather extraction, and particle rendering.
- Implement renewable hidden items and step events.
- Fix poison step sound effect (SE_FIELD_POISON).
- Fix encounter cooldown lookup for grass/cave terrain.
- Add comprehensive test suites for roamers, weather, Seagallop animations, and ladders.
2026-09-23 13:46:57 -05:00
thibautbus 7e96172391 Space and cut FireRed Japanese text the way the cart does
A Japanese glyph advances by its width plus the window's letter spacing,
which a Latin one ignores (pokefirered/src/text.c:853): 1 for the normal
font (new_menu_helpers.c:413, the field message printer), 0 for the small
one (gFontInfos, new_menu_helpers.c:65). The engine already adds that
spacing, but only to a string carrying the {JPN} control code a ROM-
extracted one does; a mod's Japanese text has none, so its kana ran a pixel
tighter per character than on the cart. A glyph drawn from a Japanese sheet
now takes the window's spacing either way, and only once, falling back to
the message printer's spacing when the window sets none.

Name limits count characters (PLAYER_NAME_LENGTH, POKEMON_NAME_LENGTH), but
the start menu, the continue screen and the PC's hovered-mon panel cut names
with string.sub, in bytes. A kana is three bytes, so a five-kana species name
lost two characters in the PC and a Japanese player name was cut inside a
character. FrlgFont.truncate cuts by UTF-8 character, and those sites use it;
Latin names are cut as before, and an accented Latin name, whose accented
letters are two bytes, is no longer cut short either.
2026-09-23 18:23:27 +02:00
thibautbus 3252a3f2c9 Draw Japanese text in FireRed with the cart's own Japanese fonts
game3 prints every string with the US cart's Latin font, and FrlgFont has
no glyph for a kana, so a Japanese translation of FireRed would print
blank. The US cart still carries its Japanese fonts, which its text
printer draws for a string in Japanese mode (pokefirered/src/text.c:141,
:227): pret builds them into the US ROM, with the normal font's width
table.

The font extractor now bakes both, the normal font from its eight-to-a-row
layout (DecompressGlyph_Normal, text.c:1452) with its widths and the small
one sixteen to a row (DecompressGlyph_Small, text.c:1372), as
chrome/fonts/japanese_{normal,small}_{fg,shadow}.rgba and
japanese_widths.lua. LeafGreen's addresses follow the same -0x24 shift as
the rest of text.o. Cache version 120 re-imports existing caches.

FrlgFont numbers a Japanese character by its byte in the Japanese block of
pokefirered/charmap.txt (kana 01-A0, the full-width space, !?。ー), plus
the symbols the font keeps at the Latin block's codes in their full-width
forms (digits, letters, 『』「」, 円, /, :), offset past the Latin
glyphs. A character with no Latin glyph draws from the Japanese sheet, at
the width the cart gives it (the table for the normal font, 8px for the
small one). Latin text is drawn as before.
2026-09-23 18:07:32 +02:00
bryanthaboi dee935a4ea CLOSES #2430 2026-09-23 11:58:32 -04:00
Shane McGovern 2454173ac6 feat(game3): in-game MODS entry with FRLG-styled mod manager
Add a gated MODS row to the FireRed/LeafGreen start menu and an always-on
MODS row in the option menu. Both open a manager on the game3 stack that
reuses ManagerState behavior (list, detail, options, staged apply, profiles)
and draws with FRLG chrome. Nested name/quantity prompts route to the Gen 3
naming screen and a quantity dialog; APPLY & RESTART returns to the title.
2026-09-23 15:15:44 +01:00
bryanthaboi ebbf4709c8 CLOSES #2411, CLOSES #2418, CLOSES #2420, CLOSES #2422, CLOSES #2423, CLOSES #2424 2026-09-23 05:51:05 -04:00
bryanthaboi 18661d45a1 Merge branch 'dev' of https://github.com/bryanthaboi/gen1recomp into dev 2026-09-22 20:44:23 -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 2a463da06b Merge pull request #2400 from thibautbus/fix/game3-unicode-braille
Let FireRed braille messages take Unicode braille cells
2026-09-22 20:12:40 -04:00
1jamie f2a75271b0 Merge upstream/dev into grandpas-garage and resolve switch_seq conflict 2026-09-22 18:41:25 -05:00
1jamie ce8a2d3777 Fix battle EXP distribution, party status badges, pacing trainer sight, and LeafGreen launcher colors 2026-09-22 18:32:26 -05:00
bryanthaboi d920f7acdb clean up 2026-09-22 17:05:12 -04:00
bryanthaboi 9208d83a28 Merge branch 'dev' into pr-2409
# Conflicts:
#	src/ui/game3/save_menu.lua
2026-09-22 16:41:00 -04:00