Skip to content

Drop the adventure dialog workaround, and screenshot five more tests - #1036

Merged
4ian merged 2 commits into
mainfrom
claude/gameplay-tests-starters-6jb8r0
Aug 9, 2026
Merged

Drop the adventure dialog workaround, and screenshot five more tests#1036
4ian merged 2 commits into
mainfrom
claude/gameplay-tests-starters-6jb8r0

Conversation

@4ian

@4ian 4ian commented Aug 9, 2026

Copy link
Copy Markdown
Contributor

Follow-up to #1034, on top of #1035 (NPC.Selected no longer defaults to true).

The point-and-click adventure no longer needs its workaround

Both of its tests used to dismiss a dialog with "no" before they could do anything: the player spawned overlapping two NPCs that counted as being talked to, so the level opened with the dialog up and the player frozen. With #1035 in, the level starts clean — verified: dialog=false act=true on the first frames.

The workaround is gone from both tests. What replaces it is an assertion rather than nothing, so the fixed default is now covered:

// Nobody is being talked to when the level starts: the dialog below can only
// come from the click.
harness.assert(!isDialogOpen(), 'No dialog is open before talking to anyone.');

That trims the walking test from 112 to 100 lines and the talking one from 78 to 70, and both got faster (the walking test went from 71 to 63 stepped frames).

One thing that did not change: the talking test still uses an NPC the player already stands next to, rather than walking across the level to a distant one. That is not left over from the bug — the player's bounding box is 310×510 in a 1280×720 level, so it overlaps NPCs from a long way off (it still touches one at 312px away). Reaching a "distant" NPC would be walking a handful of pixels, so clicking a neighbour is the honest version. The 3D adventure, whose objects are sensibly sized, does test the walk.

Screenshots on five more tests

Still one test out of the two in each game:

Game Test What it shows
starting-point-and-click-adventure Talking to an NPC and saying yes the scene once the NPC has left
starting-3d-point-and-click-adventure Talking to an NPC and saying yes same, in 3D
starting-first-person-survival-crafting Harvesting a tree fills the inventory the inventory slot holding the log, counted 1
starting-card-game Drawing a card from the deck the drawn card in front of the deck
starting-beatemup Attacking hits the enemy the enemy taking the hit

That makes 15 games with a screenshot, out of 45.

All 10 tests of the five games pass. The screenshots are 9–17 KB each and cost a couple of seconds at most: starting-3d-point-and-click-adventure's test measured 28.0s once, which looked alarming, but three further runs gave 11.5s, 14.0s and 18.6s against a ~11s baseline — that was a loaded machine, not the screenshot.

🤖 Generated with Claude Code

https://claude.ai/code/session_01M2jc7PVAvmMmirAQude2v1


Generated by Claude Code

claude added 2 commits August 9, 2026 21:37
The NPCs no longer count as being talked to by default, so the level starts
with no dialog up and the player free to walk. Both tests dismissed that
dialog with "no" before they could do anything; they now assert that no
dialog is in the way instead, which checks the fixed default rather than
working around it.

The talking test also ends with a screenshot of the scene once the NPC has
agreed to leave.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01M2jc7PVAvmMmirAQude2v1
The 3D adventure scene once the NPC has agreed to leave, the survival
crafting inventory holding the log that was harvested, the card drawn in
front of the deck, and the beat'em up enemy taking the hit.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01M2jc7PVAvmMmirAQude2v1
@4ian
4ian merged commit 9c8bcbb into main Aug 9, 2026
3 of 5 checks passed
@4ian
4ian deleted the claude/gameplay-tests-starters-6jb8r0 branch August 9, 2026 21:42
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.

2 participants