Skip to content

Show contextual machinery interaction hints - #126

Merged
valzargaming merged 2 commits into
dev-masterfrom
machinery-interaction-hints
Oct 12, 2026
Merged

valzargaming merged 2 commits into
dev-masterfrom
machinery-interaction-hints

Conversation

@valzargaming

@valzargaming valzargaming commented Oct 12, 2026 •

Copy link
Copy Markdown
Member

Machinery interaction hints milestone

The existing card now explains the currently bound mouse selection and cursor controls. Selecting a machine opens Construction for that exact observed assembly without submitting a machine intent. Keyboard/controller bindings truthfully state the existing static-body picking limit and direct the player to Construction's chooser; unbound selection retains that route. Unbound cursor controls describe release-camera or Controls settings routes.

Hints occupy a wrapping fifth row in the existing anchored card; no persistent world labels or new shortcuts are added. The hint is hidden while Construction is visible or GUI/settings owns input. Observed identity, energy, job details and fresh/stale/blocked/paused/outcome-unknown copy remain independent of the hint. The card fits its content height within the scene. Bindings are read live without preference writes.

Ownership and contracts

MachineryPreview and MachineryContextCard own only local presentation and per-frame hint refresh. Canonical production state remains in ProductionSimulationSystem and persisted records. Tick cadence, schemas, authenticated command validation/transport, pending identities, receipts, persistence, paid resource accounting and collision/mesh construction are unchanged. Existing bounded activity telemetry remains the profiling signal; no new simulation work occurs.

Scope is machinery_context_card.gd, machinery_preview.gd, the existing focused machinery_context_shell_test.gd and this document. Inventory hints PR125, walker PR124, shared bootstrap/input/camera and authority boundaries are outside scope.

Verification

Godot 4.7.2 on Windows: repository runner import and startup checks, paid no-port actual-client-shell regression and machinery_preview_test pass. The shell uses authenticated real-domain commands to acquire/assemble machines and exercise running, timeout-stale, host-blocked, saved/restored paused and outcome-unknown states. It injects mouse motion/button input through the actual root window and confirms exact-machine Construction selection and zero outbound machine intents. It covers hover/exit/reset/disconnect, GUI focus and suspended input, drawer/tab transitions, live in-memory mouse/keyboard/controller/unbound bindings, canonical snapshot and collider identity/transform/bounds invariance. Narrow widths include 640, 480 and 360 px with full wrapped hint and uncertainty line bounds.

Adjacent machinery_activity_animation_test and integrated_panel_layout_test regressions pass. Final remote closeout: CI run 38190034010 and production-recipe run 38190033924 completed successfully for PR head 9819631. Both Windows/Linux Godot job checkout logs confirm tested synthetic merge ef3e7ab (base 6589fe0), with explicit PASS machinery_context_shell_test, machinery_preview_test, machinery_activity_animation_test and integrated_panel_layout_test. Both development exports and CI required passed; Godot JUnit and game export artifacts are available. No artifact contents were downloaded or release readiness claimed. The versioned milestone document retains the implementation-time pending CI snapshot; this PR closeout records the final evidence.

Limitations

Keyboard/controller world selection currently routes only Area3D; machinery uses StaticBody3D. This PR describes the existing Construction chooser route and does not repair shared picking. Input/cursor descriptions are tested through bindings and injected mouse events; headless checks do not establish native capture, physical controller/VR or human gameplay acceptance. Screenshots are unnecessary where meaningful runtime/layout tests and source review establish this presentation change; no media, ports, releases or deployment are used. This task does not self-merge. Worktree remains active for coordinator review.

CI: https://github.com/Valgorithms/Frontier-Systems/actions/runs/38190034010

Production recipe contracts: https://github.com/Valgorithms/Frontier-Systems/actions/runs/38190033924

Coordinator handoff: no merge, no deployment; pause after this scoped PR. Clean managed worktree and ignored local/remote evidence remain recoverable.

@valzargaming
valzargaming marked this pull request as ready for review October 12, 2026 01:10
Copilot AI balanced review requested due to automatic review settings October 12, 2026 01:10

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot was unable to review this pull request because the user who requested the review has reached their quota limit.

@valzargaming
valzargaming merged commit cd2f341 into dev-master Oct 12, 2026
13 checks passed
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