skillZs
★ LIVE SKILL TAGS ★
>>> LIVE SKILLS INDEX <<<
* OPEN SOURCE *
NO LOGIN, NO TRACKING
※ REAL INSTALL DATA ※
← back to all skills
thedivergentai/game-dev-agentic-skills222 installs

godot-genre-shooter-fps

Expert blueprint for First-Person Shooters: fps_camera_look, fps_movement_logic, hitscan_weapon_query, weapon_bobbing_system, procedural recoil, and FPS NEVER rules. Shared TPS/cover theory links to godot-genre-shooter. Keywords: FPS, movement physics, weapon bobbing, camera sway, hitscan, viewmodel, air control.

How do I install this agent skill?

npx skills add https://github.com/thedivergentai/game-dev-agentic-skills --skill godot-genre-shooter-fps
view source ↗

Is this agent skill safe to install?

  • Gen Agent Trust Hubpass

    This skill provides a comprehensive suite of GDScript templates and expert documentation for building First-Person Shooter (FPS) games in the Godot Engine. It covers core game loop elements such as movement physics, camera systems, weapon logic (hitscan and projectiles), and visual polish. The analysis found no evidence of malicious behavior, prompt injection, or data exfiltration. All external links point to official documentation or the author's own vendor repositories for legitimate development resources.

  • Socketpass

    No alerts

  • Snykpass

    Risk: LOW · No issues

What does this agent skill do?

MANDATORY script reads (start here)

  1. fps_camera_look.gd — raw _input mouse look (yaw/pitch)
  2. fps_movement_logic.gd — accel/friction/air control
  3. hitscan_weapon_query.gd — space-state hitscan
  4. weapon_bobbing_system.gd — viewmodel bob/sway

Also: procedural_recoil_handler.gd, hitscan_weapon_logic.gd, advanced_fps_controller.gd, weapon_state_machine.gd, frame_perfect_input.gd, bullet_decal_spawner.gd, weapon_spread_calc.gd, server_projectile_instance.gd, player_anim_bridge.gd, recoil_system.gd (pattern + bloom), aim_assist.gd (controller friction/magnetism).
advanced_weapon_controller.gd is shared theory — keep FPS feel in the scripts above; genre routing for TPS → sibling skill.

Core Loop

Move/Look → Aim → Fire (hitscan) → Recoil recover → Acquire

NEVER Do (FPS)

Gunplay & registration

  • NEVER hit-detect in _process — use _physics_process + intersect_ray.
  • NEVER apply recoil only to the gun mesh — kick camera + bloom/spread.
  • NEVER trust client damage — server authority + lag compensation.
  • NEVER forget exclude / add_exception for the player RID.
  • NEVER use == on float cooldowns — is_equal_approx.

Input & movement

  • NEVER poll mouse in _physics_process — _input / _unhandled_input for look.
  • NEVER accumulate look on a raw Transform3D — store yaw/pitch floats.
  • NEVER multiply velocity by delta before move_and_slide().
  • NEVER use Transform3D.looking_at for muzzle forward — use -transform.basis.z.

Polish

  • NEVER single AudioStreamPlayer for gunfire — layer mechanical + shot + tail.
  • NEVER leave decals forever — fade/pool (bullet_decal_spawner.gd).
  • NEVER hardcode weapon stats — WeaponData Resources.
  • NEVER use plain Strings for hot weapon states — StringName.

Advanced FPS (keep)

Viewmodel sway / bob

Procedural sine bob + look sway — weapon_bobbing_system.gd.

Step-up

Ray forward/down from step_height when is_on_wall() after move_and_slide(); lift to step top for stairs.

Tactical lean

Roll camera Z + local X offset from Input.get_axis("lean_left","lean_right") with lerp.

Shared weapon theory

Hitscan vs projectile, spray patterns, and net prediction details that are not FPS-rig specific → godot-genre-shooter + combat/multiplayer complements. Implement FPS fire path via hitscan_weapon_query.gd + procedural_recoil_handler.gd + recoil_system.gd.

MANDATORY for hitscan/projectile tradeoffs, three-layer recoil, aim assist, weapon balance matrices, and client prediction: fps-weapon-theory.md. Do NOT Load after MANDATORY script reads unless extending beyond bob/step/lean.

Reference

Progressive disclosure: open Official Documentation links only when researching a specific API; load Related Skills when routing to a peer domain — do not preload the whole lattice.

Official Documentation

  • Ray-casting — PhysicsDirectSpaceState3D intersect_ray patterns for hitscan registration without Area3D ballistics.
  • Physics introduction — collision layers/masks, layers for player exclude, and physics tick vs visual frame for gunplay.
  • Using 3D transforms — basis axes and -transform.basis.z forward vectors for aim, recoil, and muzzle direction.
  • Using InputEvent — _input vs _physics_process so mouse look stays zero-latency while movement stays physics-synced.
  • Mouse and input coordinates — relative mouse motion, capture, and screen-center projection for aim rays.
  • Controllers, gamepads, and joysticks — analog look axes and deadzones that aim-assist friction/magnetism build on.
  • Using decals — Decal node projection for bullet impacts instead of Sprite3D/QuadMesh stickers.
  • High-level multiplayer — RPC authority and fire-event patterns for server-validated hitscan without syncing every bullet.
  • Using AnimationTree — blend/state machines for idle/aim/fire/reload without ! in expressions.
  • Resources — WeaponData Resource stats (damage, recoil, spread) instead of hardcoded class constants.
  • Audio streams — layered mechanical/shot/tail streams for gunfire weight.
  • Optimization using Servers — RenderingServer RID paths for high-volume visual projectiles without SceneTree spam.

Related Skills

Prerequisites

  • godot-project-foundations — scene tree, InputMap actions, and Resource import basics before FPS controllers and WeaponData wiring.
  • godot-input-handling — mouse capture, action buffering, and look vs move split that frame-perfect fire and camera look depend on.
  • godot-raycasting-queries — physics-synced ray/shape queries and exclude RIDs that hitscan registration builds on.

Complements

Downstream / consumers

  • godot-monte-carlo-balancer — simulate weapon asymmetry matrices, TTK bands, and bloom/recoil knobs before shipping balance tables.
  • godot-genre-battle-royale — large-scale relevancy and lag-compensated combat that reuses FPS hitscan/recoil feel inside BR matches.

Master

  • godot-master — library router and mirrored module entry; open when discovering which Domain Skill owns a cross-cutting FPS concern.

Add the canonical catalog link to the repository README so users can inspect current installs and available audits. The publishing guide covers the complete discovery path.

<a href="https://skillzs.dev/skills/thedivergentai/game-dev-agentic-skills/godot-genre-shooter-fps">View godot-genre-shooter-fps on skillZs</a>