feat(controllers): #60 shooter — ludic.shooter package (base + extensible)
Top-down shooter: TopDown decoupled move/aim (mouse/stick/move-dir/auto-aim), a name-keyed Weapon registry (fire-rate/spread/pellets/pattern + data-driven pierce/homing), and a self-contained deterministic Projectile pool with faction-filtered Combat hits, pierce, ring/spiral patterns, and homing. One weapon impl serves player + NPC via a want_fire intent. Budgeted wave Spawner. Reuses ludic.gameplay Faction/Combat/Stats. 11-check example, in the suite. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
parent
dd5cb5817b
commit
02a8bcc324
5 changed files with 705 additions and 0 deletions
16
packages/ludic.shooter/package.ludic
Normal file
16
packages/ludic.shooter/package.ludic
Normal file
|
|
@ -0,0 +1,16 @@
|
|||
# ludic.shooter — the builtin top-down Shooter controller (#60).
|
||||
#
|
||||
# A twin-stick / mouse-aim character whose movement is decoupled from aim, a
|
||||
# data-driven weapon registry, and a general projectile system (pierce / bounce /
|
||||
# homing / bullet-hell patterns), all conforming to the six-lever contract (#57).
|
||||
# Reuses the engine Body/Collider and the ludic.gameplay Faction + Combat + Stats
|
||||
# foundation: the SAME weapon/projectile systems drive a player and an NPC (the AI
|
||||
# writes the "fire" intent instead of input), so there is no duplicate enemy-gun
|
||||
# code. Deterministic integer/fixed maths throughout, so bullet patterns replay.
|
||||
package "ludic.shooter"
|
||||
version "0.1.0"
|
||||
kind source
|
||||
provides "TopDown"
|
||||
provides "Weapon"
|
||||
provides "Spawner"
|
||||
require "ludic.gameplay" "0.1.0"
|
||||
Loading…
Add table
Add a link
Reference in a new issue