neon-sprawl/docs/manual-qa/NEO-41.md

1.7 KiB
Raw Blame History

Manual QA — NEO-41 (gather → skill XP via interact)

Reference: implementation plan, NEO-38 (skill progression grant), NEO-9 README — Interaction.

Preconditions

  • Run NeonSprawl.Server from server/NeonSprawl.Server (dotnet run; default http://localhost:5253).
  • Player dev-local-1 (default seed).
BASE=http://localhost:5253
ID=dev-local-1

Move in range of the prototype resource node

Anchor (12, 6) on X/Z, radius 3 m. Example stand at (10, 6):

curl -sS -i -X POST "${BASE}/game/players/${ID}/move" \
  -H "Content-Type: application/json" \
  -d '{"schemaVersion":1,"target":{"x":10,"y":0.9,"z":-6}}'

Expect HTTP 200.

Baseline skill progression (optional)

curl -sS "${BASE}/game/players/${ID}/skill-progression"

Note salvage xp (often 0 on a fresh store).

Gather interact (prototype)

curl -sS -i -X POST "${BASE}/game/players/${ID}/interact" \
  -H "Content-Type: application/json" \
  -d '{"schemaVersion":1,"interactableId":"prototype_resource_node_alpha"}'

Expect HTTP 200, allowed: true.

Verify XP

curl -sS "${BASE}/game/players/${ID}/skill-progression"

salvage xp should increase by 10 per successful gather interact (repeat interact to see cumulative XP).

Control — terminal does not grant gather XP

Move near prototype_terminal (e.g. target 0.5, 0.9, 0.5), POST …/interact with prototype_terminal, then GET progression: salvage XP should match whatever you had before this control (no +10 from terminal alone).