Skip to content

Exploration medals: explorationPoint and highposition count toward the explorer titles - #701

Merged
neeerp merged 2 commits into
masterfrom
v83/exploration-medals
Oct 22, 2026
Merged

neeerp merged 2 commits into
masterfrom
v83/exploration-medals

Conversation

@neeerp

@neeerp neeerp commented Oct 22, 2026

Copy link
Copy Markdown
Owner

LEDGER row 198 (lane A). Research: v83ref reports a049 (facts/design) and a050 (client display of 0x7A/0x31); review a051-a053.

  • Counting: entering a region's explorationPoint map, from the medal's lvmin, counts it once toward that region's explorer title (29005-29011, 29014; net::medals::region follows the map-id ranges). The highposition touch portals count toward Touched the Sky (29004) and take the player nowhere.
  • Messages: the first place starts the quest. Each new place sends the info record with the count, a SCRIPT_PROGRESS_MESSAGE (0x7A) line and an info text. The place that reaches the count sends QUEST_CLEAR (0x31), the title line and the "see Dalair" note.
  • The medal: Dalair (9000040) gives it through QUEST_ACTION once the count is reached (QuestRejection::Explored). The explorer quests are now supported.
  • Storage: places live in the new explored_maps table, keyed by info record. They outlast a forfeit, and a forfeited medal starts again on its next region map. At login a started medal's record is sent among the started quests with its count.
  • Texts: new keys medal.explorer.*, as placeholders.
  • Not in this PR: HeavenClient doesn't handle 0x7A or 0x31 yet; a follow-up client slice will add them.
  • Defaults with no source: the level gate, leaving out 29012/29013 and keeping places across a forfeit are listed in lanes/QUESTIONS.md, with the recommended defaults shipped.

Tests

  • Unit tests in medals, scripts, quests and game::quest.
  • New harness test medal_explorer: level gate, count, repeat, forfeit and restart, login count, the last map's packets, Dalair's medal, no counting after completion, and highposition.
  • Full harness suite: 180 passed, 0 failed, run on the first commit. After the review fixes and the rebase, the targeted tests (medal_explorer, families, quest_alert, rain_quizzes) and the net/game/game-data unit tests pass.

… explorer title from its level, highposition portals toward Touched the Sky; places are kept in explored_maps (outlasting a forfeit), sent at login under the info record, and the last one sends the title line, QUEST_CLEAR and Dalair's note; Dalair (9000040) gives the medal
… counted, only a started medal's record is sent at login, QUEST_CLEAR comes before the title line; tests for the count at completion, the highposition level and an unseen map after the medal
@neeerp
neeerp merged commit ea4e23b into master Oct 22, 2026
1 check passed
@neeerp
neeerp deleted the v83/exploration-medals branch October 22, 2026 05:30
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant