Skip to content

Add world presence behaviour for 2.2 alpha3 - #19

Draft
SimGamerJen wants to merge 8 commits into
agent/world-workers-alpha2-uifrom
agent/world-workers-alpha3-presence
Draft

Add world presence behaviour for 2.2 alpha3#19
SimGamerJen wants to merge 8 commits into
agent/world-workers-alpha2-uifrom
agent/world-workers-alpha3-presence

Conversation

@SimGamerJen

Copy link
Copy Markdown
Owner

Summary

Builds Alpha 3 on top of the validated Alpha 2 World Workers UI.

World Presence

  • keeps workers in the native HumanGraphicsComponent NPC idle state
  • adds subtle periodic facing variation around each worker's saved orientation
  • smooths standing turns and feeds rotationVelocity into the native human conditional-animation path
  • adds persistent FACE ME behaviour: the worker turns toward the local player and saves that as their new base facing
  • adds hpWorld face [slot] and hpWorld idle [on|off] diagnostics

World UI refinement

  • removes the redundant dedicated MOVE HERE action
  • X now reads PLACE HERE for unplaced workers and MOVE HERE for already placed workers; the existing X callback already handled both cases
  • A now performs FACE ME
  • C remains REMOVE

Test focus

  1. Confirm log contains Loaded 2.2.0.0-alpha3-presence-1.
  2. Open WORLD and verify X changes between PLACE HERE and MOVE HERE based on selected worker state.
  3. Place a worker, stand to one side, press A / click FACE ME and confirm the worker turns smoothly toward the player.
  4. Move around and repeat FACE ME from different directions.
  5. Leave workers standing for 30-60 seconds and confirm subtle idle orientation changes occur without translation.
  6. Run hpWorld idle off and confirm workers return toward their saved facing and stop varying; hpWorld idle on resumes variation.
  7. Reload the save and confirm FACE ME's saved base orientation is restored.

No walking, pathfinding, AI-job routing, or interaction system is introduced in this alpha.

Copy link
Copy Markdown
Owner Author

Alpha 3 live test: FACE ME target/persistence works, but standing turn is visually jittery. Root cause investigation against GIANTS HumanGraphicsComponent shows graphicsRootNode yaw is externally owned while rotationVelocity is only a conditional-animation input. Added presence-2 hotfix to keep smooth world-facing interpolation on the graphics root and neutralize rotationVelocity immediately before HumanGraphicsComponent:update(), avoiding the root transform and turn-in-place animation fighting each other. Latest commit: 95651ad.

Copy link
Copy Markdown
Owner Author

In-game Alpha 3 turn testing result: presence-3 restored jitter when combining model yaw with the turn-animation input. This confirms the lightweight HumanGraphicsComponent-only world-worker representation does not currently provide a stable natural turn-in-place path by simply driving yaw + rotationVelocity. Rolled back to a stable single root-yaw transform in b4fb72e and disabled automatic idle-facing variation by default to avoid repeated mannequin swivels. FACE ME remains as a controlled smooth-facing placeholder. Next architectural step should be a proper movement/graphics-state layer (PlayerMover/PlayerGraphicsState-style coordination), developed separately from the validated static placement/UI baseline.

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