3.3 KiB
3.3 KiB
E1.M4 — AbilityInputScaffold
Summary
| Field | Value |
|---|---|
| Module ID | E1.M4 |
| Epic | Epic 1 — Core Player Runtime |
| Stage target | Prototype |
| Status | Planned (see dependency register) |
| Linear | Story slugs E1M4-01 through E1M4-05 in E1M4 prototype backlog; label E1.M4 per decomposition README — Linear alignment |
Purpose
Hotbar bindings, cooldown slot UI hooks, and the client/input path that issues AbilityCastRequest into E5.M1 — CombatRulesEngine, using targeting from E1.M3.
Responsibilities
- Map hotbar slots to abilities and emit
AbilityCastRequestwith validation hints. - Surface
HotbarLoadoutandCooldownSnapshotfor UI sync.
Key contracts
| Contract | Role |
|---|---|
AbilityCastRequest |
Intent sent to combat resolution. |
HotbarLoadout |
Bound abilities per slot. |
CooldownSnapshot |
Client/server-visible cooldown state for UI. |
Module dependencies
- E1.M3 — InteractionAndTargetingLayer: target lock and cast validity.
- E5.M1 — CombatRulesEngine: authoritative accept/deny of casts.
Dependents (by design)
- Consumed by UX and telemetry; combat engine remains the authority.
Related implementation slices
Epic 1 Slice 3 — ability_cast_requested, ability_cast_denied with reason codes.
Implementation snapshot
- Current state: NEO-29 landed prototype
HotbarLoadoutv1 contract and hydration path (GET/POST /game/players/{id}/hotbar-loadout, fixed 8 slots, deny reason codes).AbilityCastRequestandCooldownSnapshotwiring are still pending. - Prototype persistence policy (NEO-29): per-player loadout key; Postgres when
ConnectionStrings:NeonSprawlexists, in-memory fallback otherwise. - Prototype backlog: E1M4 prototype backlog defines five vertical slices from hotbar loadout contract to cast telemetry hooks.
- Dependency expectation: first implementation stories assume E1.M3 target selection flow exists and E5.M1 provides minimum cast accept/deny contract.
Linear backlog
Parent epic: Epic 1 — Core Player Runtime.
Stories: full acceptance checklists in docs/plans/E1M4-prototype-backlog.md.
| Slug | Linear |
|---|---|
| E1M4-01 | NEO-29 — HotbarLoadout v1 contract + baseline persistence path |
| E1M4-02 | TBD — Input to AbilityCastRequest path |
| E1M4-03 | TBD — Combat accept/deny integration + reason-code UX |
| E1M4-04 | TBD — CooldownSnapshot sync + slot presentation |
| E1M4-05 | TBD — Slice 3 telemetry hooks for cast funnel |
Issues should carry label E1.M4 per Linear alignment.
Source anchors
- Master plan:
neon_sprawl_vision.plan.md— Epic 1. - Module dependency register