VinPropane
394e2a71fb
NS-23: Fix const LEDGE_DROP_STEPS (Godot const expression rule)
2026-04-05 00:44:15 -04:00
VinPropane
b007c7fe58
NS-23: Autostep down+forward to walk off bump edges
2026-04-05 00:42:50 -04:00
VinPropane
6fd49a2e1b
NS-23: Auto-step onto NS-19 bumps via CharacterBody3D.test_move
2026-04-05 00:39:30 -04:00
VinPropane
6d00070c00
NS-23: Climb NS-19 bumps with 3D steer + vertical arrival + floor snap
2026-04-05 00:36:43 -04:00
VinPropane
510422d8a2
NS-23: Drive motion from stored server goal; ignore agent finished flag
2026-04-05 00:33:28 -04:00
VinPropane
f49c8b88d2
NS-23: Fix nav movement (sync bake, map guard, path/fallback steering)
2026-04-05 00:29:58 -04:00
VinPropane
0ac059fa3b
NS-23: NavigationAgent3D path-follow with server move authority
2026-04-05 00:23:03 -04:00
VinPropane
1f9260e8ba
chore(client): order const/var before @onready for gdlint
2026-04-05 00:02:59 -04:00
VinPropane
7fffc3137a
NS-19: auto-clear move reject label after 4s
2026-04-04 23:49:14 -04:00
VinPropane
7ac6b66b51
NS-19: ignore vertical walkable surfaces in ground ray pick
2026-04-04 23:45:54 -04:00
VinPropane
32d2153acb
NS-19: server move validation, client rejection UX, scene QA props
2026-04-04 23:39:40 -04:00
VinPropane
ea77495072
NS-18: gdformat — blank line after doc block (gdtoolkit 4.5.0)
2026-04-04 20:29:25 -04:00
VinPropane
679fbc46aa
NS-18: gdformat prototype_interaction_constants (blank after extends)
2026-04-04 20:27:15 -04:00
VinPropane
fd52cf9386
NS-18: fix gdlint (line length, const order/naming)
2026-04-04 20:24:59 -04:00
VinPropane
b043e8ac45
NS-18: InteractionRequest, client prototype, Postgres test UX
...
Server: POST /game/players/{id}/interact, HorizontalReach, prototype registry, DTOs, tests; default spawn (-5,0.9,-5); dev HttpLogging.
Client: terminal, radius glow preview, interaction_request_client (interact/E), main wiring; obstacle moved off center.
Tests: postgres.runsettings, launchSettings, Docker compose auto-start/teardown harness, async-safe init.
Docs: plan AC, E1.M1 snapshot, alignment table, server/client README, code review 2026-04-04.
2026-04-04 20:19:33 -04:00
VinPropane
15b0ee0921
ci: gate .NET workflow on server paths; add GDScript lint/format CI
...
- Run .NET build/test only when the solution, server/, or the workflow changes.
- Add gdlint and gdformat --check for client/ on relevant path changes.
- Align client GDScript with gdtoolkit (formatting, enum order, line length).
2026-03-30 21:16:16 -04:00
VinPropane
3882b0e2c6
NS-16: MoveCommand → server PositionState, Godot sync, tests
...
Implement E1.M1 intent → authority: POST /game/players/{id}/move with v1 JSON
MoveCommandRequest (snap + sequence), extend in-memory store and
PositionStateApi. Godot client splits ground_pick and position_authority_client
with thin main.gd; snap_to_server on player.
Tests live under NeonSprawl.Server.Tests/Game/PositionState/ with AAA layout
and MethodName_ShouldExpectedOutcome_WhenScenario naming. Debug builds use
UseAppHost=false so Linux IDEs resolve .NET 10 from a user-local SDK.
Add NS-16 implementation plan, code review doc, godot-client-script-organization
rule, csharp test layout/naming rules, and refresh E1.M1 / alignment docs.
Server and client README updates include move API, prerequisites, and Rider
notes.
Made-with: Cursor
2026-03-30 19:54:17 -04:00
don
64092566a4
fix(client): reliable NS-14 click-to-move without NavigationMesh
...
- Drive movement with horizontal steering + move_and_slide toward click goal
- Remove NavigationRegion3D / NavigationAgent3D; obstacle interaction is slide
- main.gd: raycast to walkable, Player.set_move_goal; viewport camera + mouse
- Scene: explicit physics layers/mask on floor, obstacle, player
- Docs: Godot 4.6 baseline, README + NS-14 plan + tech_stack; Godot .import/.uid
Made-with: Cursor
2026-03-29 22:08:25 -04:00
don
343592541a
feat(client): NS-14 click-to-move with NavigationAgent3D
...
- Main scene: floor, obstacle, nav mesh, camera, CharacterBody3D + agent
- Click-to-move on walkable group; pick mask avoids avatar self-hit
- player.gd drives path following; README and plan AC updated
Made-with: Cursor
2026-03-29 21:19:52 -04:00
don
31bce2b344
Lock client scripting to GDScript; document in README and tech stack
...
- State GDScript as the locked choice for Godot client code
- Summary tables and client README note standard (non-.NET) Godot build
- Server/client contract via Protobuf or JSON spike, not shared C# on client
Made-with: Cursor
2026-03-29 19:36:18 -04:00
don
09a4106543
Update README and documentation to reflect project rebranding to "Neon Sprawl". Revise links to vision plan and adjust references in tech stack and decomposition documents. Enhance README with repository layout and instructions for running the server and client.
2026-03-29 17:23:00 -04:00