Manual test: Violet City, Falkner, the Egg and TM/HM menus #61

Open
opened 2026-10-03 17:55:07 +02:00 by kawa · 0 comments
Owner

Implementation: #31 (ec3d1cd, 7909302, 73022b1).

Why a person: the automated playthrough checks progression and saved state. These checks cover visible menus, dialogue, movement and controls in the browser, including the new Egg and TM/HM screens.

Setup (on a machine with the user's Crystal 1.1 ROM)

  1. Run MAKE_TEST_SAVES=1 npx vitest run tests/playthrough.test.ts (the whole file; its stages share a playthrough).
  2. Run npm run dev, load the ROM, then Savegames → Import native backup → test-saves/violet-city.crystal-save.json, then Play.
  3. The save starts by Violet City's east gate with CYNDAQUIL at level 11, one POTION, five POKé BALLS and ¥3,112. Heal at the Pokémon Center and train as needed. The backup contains ROM-derived names and must stay local.

Steps and expected results

  • Explore Violet City, its Mart, Pokémon Center, Academy and houses. Talk to NPCs, buy an item and heal. Doors return to the correct place; dialogue closes and movement resumes.
  • Read Earl's blackboard. Each topic opens readable text and returns to the menu; cancel exits normally.
  • Climb Sprout Tower, fight its trainers and speak to Elder Li. The rival scene finishes, winning awards HM05 FLASH, and returning to Li does not grant it again.
  • Defeat Falkner. Receive ZEPHYRBADGE and TM31 MUD-SLAP once. Leave the gym and advance until Elm's call directs you to the Pokémon Center.
  • Speak to Elm's aide in the Pokémon Center and accept the Egg. POKéMON lists EGG without level or HP; STATS shows the Egg picture and hatching hint. Cancel returns through the menus. Healing does not turn it into a usable Pokémon.
  • PACK → TM/HM pocket → TM31 → USE shows the move, confirmation and ABLE/NOT ABLE labels. Teach CYNDAQUIL MUD-SLAP: the move appears in its moves and TM31 is consumed. Canceling before teaching leaves the TM and moves unchanged.
  • Catch BELLSPROUT on Route 31. In Kyle's house, decline the trade first, then accept and offer BELLSPROUT. Receive ONIX named ROCKY with OT KYLE; the offered Pokémon is gone. A later conversation does not repeat the trade.
  • Catch another BELLSPROUT and teach it HM05 FLASH from the TM/HM pocket. HM05 remains available. Enter Dark Cave from Route 31, then POKéMON → BELLSPROUT → FLASH: the cave becomes lit and walking resumes.
  • After defeating Bug Catcher Wade on Route 31, talk to him and accept his phone number. The Pokégear contact list includes him.
  • After rewards, teaching or the trade, close the menus and reload the page. Reopen the save: party, Egg, badge, TM/HM counts, moves and registered contact persist. Reward and trade conversations do not duplicate rewards.
  • Repeat TM/HM selection and the Egg stats screen with the on-screen controls on a phone or tablet. Labels remain readable, selections work, and Cancel returns to play. Record device and browser; desktop browser automation does not establish this result.

Known boundaries: no sound, NPC trade animation or Egg hatching; Wade's trainer calls/rematches are not implemented. Earl's blackboard is a list. Route 32, Route 36, Dark Cave's other entrances and the Pokémon Center's second floor remain closed. Do not report those as regressions.

Report: tick the checks completed, give the browser/device and commit tested, and describe any failure with the last action and expected/actual behavior. Leave this card in A tester until a person has performed the checks.

Implementation: #31 (ec3d1cd, 7909302, 73022b1). Why a person: the automated playthrough checks progression and saved state. These checks cover visible menus, dialogue, movement and controls in the browser, including the new Egg and TM/HM screens. **Setup** (on a machine with the user's Crystal 1.1 ROM) 1. Run `MAKE_TEST_SAVES=1 npx vitest run tests/playthrough.test.ts` (the whole file; its stages share a playthrough). 2. Run `npm run dev`, load the ROM, then Savegames → Import native backup → `test-saves/violet-city.crystal-save.json`, then Play. 3. The save starts by Violet City's east gate with CYNDAQUIL at level 11, one POTION, five POKé BALLS and ¥3,112. Heal at the Pokémon Center and train as needed. The backup contains ROM-derived names and must stay local. **Steps and expected results** - [ ] Explore Violet City, its Mart, Pokémon Center, Academy and houses. Talk to NPCs, buy an item and heal. Doors return to the correct place; dialogue closes and movement resumes. - [ ] Read Earl's blackboard. Each topic opens readable text and returns to the menu; cancel exits normally. - [ ] Climb Sprout Tower, fight its trainers and speak to Elder Li. The rival scene finishes, winning awards HM05 FLASH, and returning to Li does not grant it again. - [ ] Defeat Falkner. Receive ZEPHYRBADGE and TM31 MUD-SLAP once. Leave the gym and advance until Elm's call directs you to the Pokémon Center. - [ ] Speak to Elm's aide in the Pokémon Center and accept the Egg. POKéMON lists EGG without level or HP; STATS shows the Egg picture and hatching hint. Cancel returns through the menus. Healing does not turn it into a usable Pokémon. - [ ] PACK → TM/HM pocket → TM31 → USE shows the move, confirmation and ABLE/NOT ABLE labels. Teach CYNDAQUIL MUD-SLAP: the move appears in its moves and TM31 is consumed. Canceling before teaching leaves the TM and moves unchanged. - [ ] Catch BELLSPROUT on Route 31. In Kyle's house, decline the trade first, then accept and offer BELLSPROUT. Receive ONIX named ROCKY with OT KYLE; the offered Pokémon is gone. A later conversation does not repeat the trade. - [ ] Catch another BELLSPROUT and teach it HM05 FLASH from the TM/HM pocket. HM05 remains available. Enter Dark Cave from Route 31, then POKéMON → BELLSPROUT → FLASH: the cave becomes lit and walking resumes. - [ ] After defeating Bug Catcher Wade on Route 31, talk to him and accept his phone number. The Pokégear contact list includes him. - [ ] After rewards, teaching or the trade, close the menus and reload the page. Reopen the save: party, Egg, badge, TM/HM counts, moves and registered contact persist. Reward and trade conversations do not duplicate rewards. - [ ] Repeat TM/HM selection and the Egg stats screen with the on-screen controls on a phone or tablet. Labels remain readable, selections work, and Cancel returns to play. Record device and browser; desktop browser automation does not establish this result. Known boundaries: no sound, NPC trade animation or Egg hatching; Wade's trainer calls/rematches are not implemented. Earl's blackboard is a list. Route 32, Route 36, Dark Cave's other entrances and the Pokémon Center's second floor remain closed. Do not report those as regressions. **Report**: tick the checks completed, give the browser/device and commit tested, and describe any failure with the last action and expected/actual behavior. Leave this card in A tester until a person has performed the checks.
kawa added the P0 - nowparity labels 2026-10-03 17:55:07 +02:00
kawa added this to the Pokemon Crystal - Web project 2026-10-03 17:55:07 +02:00
kawa moved this to A tester in Pokemon Crystal - Web on 2026-10-03 17:55:07 +02:00
PestoRosso self-assigned this 2026-10-04 01:09:16 +02:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: kawa/Crystal#61