Skip to content

PvZ: Dave can discuss the revealed exam result

In 2-3, the player sees five marks and a score, but Dave's conversation previously received only the internal scoring routine. The browser now projects the exact displayed result line and complete marks when the host advertises source-exam-result-v1. The source owner remains handle 23002; the displayed line is fixed 23023 or 23024. Native snapshots label this active routine talking, so it must not be treated as a fixed choice or rejected for lacking acting.

The host derives the score from those marks and makes the localized displayed line available in the same conversation. Once observed in a conversation, the grade remains available for that attempt and later campaign callbacks. A different run, epoch, Adventure cycle, or rewound source revision cannot inherit it. Older notebooks and clients need no new field. No database migration is required.

This does not backfill results for players who never discussed the visible paper. Missing results remain unknown. Marks reveal correctness only, not chosen answer identities. They do not establish reward collection or authorize another reward. No source plot, combat, native save, difficulty, account settings or provider changes are included.

Verification

  • New projection and host regressions failed before implementation; the host fixture initially omitted the required source clock and was corrected. Current focused cases cover full versus partial papers, exact owner/display identities, replay/cycle isolation and notebook reload.
  • Compiled EN desktop and ZH 844×390 touch emulation pass at 23023, 23024 and 23028. The first compiled runs exposed the distinction between the internal owner and displayed line; their failures are retained. The final captured requests pass the actual host request schema and context builder with score 80, marks [1,1,1,0,1] and the localized displayed line. Screenshots were inspected.
  • 426 NPC tests and 618 browser/UI/packaging tests pass. Hosted build, typecheck and pnpm oss:verify pass.
  • The actual Dave launcher opens on a held fixed story line. Both EN desktop and ZH touch emulation submitted through the normal conversation UI; both captured requests passed the host schema and computed the visible 80/100 result. Closing the conversation restores the same held line, with no duplicate bubble and no clock advance. A browser-only dialog close event initially released the pause despite the button handler retaining it; the shared close handler now respects the reading owner.
  • These are exact-context checks with an assisted saved exam scene, not a natural level victory, a physical-phone test, or proof every model will write a good response. No paid generation or public save write was used.

The separately attempted normal-input 2-3 run reached question four and wave seven, then lost combat with no browser error. It is retained as a loss, not a balance verdict or a passing whole-level test.