godot-build-controls
Implement Godot action input, event propagation, player-device pairing, and bounded haptic feedback.
- License 许可
- MIT
- 最近更新
- 2026-11-13
- Stars
- ★ 4
- Forks
- 3
01 前言 Front Matter
- name
- godot-build-controls
- engines
- [ "GODOT" ]
- description
- Implement Godot action input, event propagation, player-device pairing, and bounded haptic feedback.
02 资源文件 1
- 参考文档agents/openai.yaml279 B
03 SKILL.md 正文
Godot Build Controls
When to use
Implement Godot action input, event propagation, player-device pairing, and bounded haptic feedback. Apply this feature only to Godot-owned code and content.
Activation and prerequisites
Run commands/resolve-engine.sh and commands/resolve-skill.sh godot-build-controls before edits or tool launches. Continue only when the effective engine is GODOT and the skill is eligible. Skill selection never selects the engine. Honor validated task override evidence and its permitted isolated output scope.
Record Godot version, project language, target platforms, InputMap actions, local players, pointer/touch policy, binding preferences and haptic support requirements. Match API names to GDScript or C# rather than mixing language conventions.
Workflow
- Define actions and dead zones in InputMap, preserving analog magnitude where required. Sample gameplay intent into a bounded buffer; distinguish just-pressed edges, held actions and pointer deltas.
- Choose _input, _gui_input and _unhandled_input by responsibility. Control.accept_event and Viewport.set_input_as_handled affect event propagation, while polling Input state still needs an explicit gameplay/UI ownership gate.
- Handle keyboard/controller/pointer switching, remapping and binding-aware prompts. Touch-to-mouse emulation requires an intentional policy so a single gesture cannot produce duplicate gameplay requests.
- Assign connected joypad device IDs to local players explicitly and track joy_connection_changed. Device IDs are runtime handles, not durable player identities; reconnect must revalidate pairing and clear stale held actions.
- Coordinate focus changes, mouse capture and modal transitions. Stop gameplay actions when the UI owns input and restore valid focus/capture without replaying the event that closed the screen.
- Route start_joy_vibration and stop_joy_vibration through the paired player's supported device using explicit finite duration, bounded intensity and cancellation ownership. Mobile vibrate_handheld is a separately checked platform capability.
- Stop effects on pause, focus loss, disconnect, scene exit or superseding events; unsupported or failed vibration remains a presentation result. Never change simulation outcomes or reassign old patterns to a newly connected device.
Verification
- Exercise action edges, analog dead zones, text entry, UI propagation, touch emulation and remapping in native fixtures.
- Test two-player pairing, disconnect/reconnect during held input, focus loss during vibration, intensity zero and overlapping/cancelled patterns.
- Record physical-device tactile checks separately from API tests and any web-build checks; simulated calls cannot prove felt feedback.
Output
InputMap/preferences and adapters, input/context and pairing contracts, bounded haptic routing and target-device evidence. Record environment, scope, expected and observed results, evidence paths, and blocked or not-run checks separately from passes.
Boundaries
Do not assume every joypad or mobile platform supports vibration. New device mappings, native plugins and permission changes remain explicit project decisions. Independent services and tools retain their architecture contracts.
References
- Godot Input API. Select the documentation matching the project release.
- Godot input event propagation. Select the documentation matching the project release.
04 同仓库更多 Skills
verify-web3-game-lifecycle
Verify a game's selected Web3 asset, wallet, ownership and trading lifecycle with contract properties, canonical recovery, actual target evidence and separate release readiness.
verify-onchain-game-assets
Verify exact on-chain game collection ownership and quantities at canonical blocks, reconcile inventory events, and design honest match admission. Use for ERC721/ERC1155 inventory, reorg recovery, reservations, or transfer-during-match rules.
plan-web3-game-assets
Define an opt-in Ethereum, Base or Immutable game-asset lifecycle, including token identity, supply, rights, custody, game eligibility and chain-specific dependencies.
integrate-game-wallets
Integrate explicit player-wallet connection, scoped SIWE authentication, authority invalidation and reviewed target-specific handoff without application-held player keys.
integrate-game-asset-trading
Integrate explicitly selected game asset settlement with exact unsigned intents, scoped approvals, idempotent operations and canonical receipt reconciliation. Use for NFT listing, buying, cancellation, retries or marketplace integration.
build-evm-game-contracts
Author and verify host-owned EVM game collections and explicit mint, burn, craft or admin rules with pinned Solidity tooling. Use for contract source and deployment candidates; deployment and player signing require separate authorization.