fps-shooter
Agent skill fromgamedev-skills/awesome-gamedev-agent-skills
Build a first-person shooter: move+mouse-look controller, hitscan or projectile shooting, weapons, health, and enemy AI. Use for an FPS, or tuning aim feel, time-to-kill, recoil, or spread.
How to install fps-shooter
install fps-shooter
# install the awesome-gamedev-agent-skills pack with the skills CLI
npx skills add gamedev-skills/awesome-gamedev-agent-skills# or add only this skill to Claude Code: copy the folder
skills/genres/fps-shooter/
# into
~/.claude/skills/fps-shooter/ (all projects)
.claude/skills/fps-shooter/ (one project)
1# FPS Shooter23A playbook for first-person shooters — the look/move controller, the shooting model, weapon4feel, and combat. This is a **compositional** skill: it wires a 3D controller, input, and AI5into a shooter. It does not re-teach 3D nodes or raycasts; it defines the shooting model and6the feel knobs (TTK, recoil, spread) that decide whether the guns feel good.78## When to use910- Use when building a first-person game whose core verb is **aim and shoot** — arena shooter,11 tactical FPS, PvE shooter, boomer-shooter.12- Use when deciding hitscan vs. projectile, tuning time-to-kill, recoil, spread, or aim feel.1314**When *not* to use:** third-person/2D shooting → reuse the shooting model here but build the15camera/controller from the relevant genre. Wave survival with towers → `tower-defense`.16For the camera/character body itself, use `godot-3d-essentials` / `unreal-cpp-gameplay`.1718## Core loop1920**Scan → acquire a target → aim and fire → confirm the kill (feedback) → reposition / reload21/ advance.** The whole experience rests on the *aim-and-fire* micro-loop feeling crisp:22responsive look, clear hit feedback, and a death that reads instantly.2324## Must-have systems25261. **First-person controller** — move (WASD/stick) + mouse/stick look, gravity, jump/crouch.272. **Camera** — eye-height view, configurable FOV and sensitivity, recoil kick.283. **Shooting model** — hitscan raycast and/or projectile spawn; one impact path for feedback.29…
Excerpt shown under the repository's Apache-2.0 license.
