This is a complete first person controller for Unity 6, driven by a single component and a custom inspector athat tells you when something is misconfigured.
FPS-Tool is a first person character controller. It handles everything the player character does: walking, running, tactical sprinting, jumping, crouching, going prone, sliding, diving, holding and firing weapons, taking damage, and dying.
Everything is driven by one component, FPS Tool Core, with a custom inspector that only shows the settings for the features you have enabled. Nothing is hidden behind code: every value has a tooltip, and the inspector tells you when something is set up wrong and offers to fix it.
SET UP IN ONE CLIK
Add the component and press Setup Player. It configures the Rigidbody, creates the camera pivot at eye height, moves your camera under it, creates the weapon holder, and assigns the input actions. One undo reverses all of it. The console reports exactly what it changed.
AN INSPECTOR THAT EXPLAINS ITSELF
The validator watches your setup and writes a plain message when something is wrong:
an empty ground layer mask, a prone height the capsule cannot reach, a safe fall distance below your jump height, an animator parameter that does not exist in your controller.
Most warnings come with a button that fixes them.
The recoil pattern editor draws the resulting crosshair path live while you drag the curve handles, so you can design a spray pattern without entering play mode to test it.
The runtime debug panel shows every value the controller is working with, grouped by system. It is the first place to look when something behaves differently from what you expected.
MOVEMENT
Walk, run and tactical sprint with configurable speeds, acceleration and air control. Each run mode decides which directions it allows, and separate multipliers slow the player down when moving backwards or sideways, so running backwards is never as fast as running forward.
Slope handling keeps your speed on inclines and slides you down anything too steep. Step assist handles stairs and kerbs, with a height limit you control. Coyote time and jump buffering are included.
Crouch and prone use smooth capsule resizing that never makes the player pop or sink, with a ceiling check that keeps you crouched when there is no room to stand.
Slide has slope influence and optional steering.
Dive has a real leap and a recovery on landing.
WEAPONS
Three configurable slots by default, with weapons defined as reusable assets.
Hitscan firing with single, burst and automatic modes. Dynamic spread that grows under sustained fire and widens while moving, sprinting or airborne.
Pellet counts for shotguns.
Recoil follows a pattern you design with two curves, so bursts are repeatable rather than random. Compensating for recoil with the mouse works the way players expect: your correction is never undone by the automatic recovery.
Aiming positions the weapon automatically from its actual mesh bounds, so it lands centred under the crosshair without you tuning offsets.
Weapons with real iron sights can be aligned to a sight transform instead.
HEALTH, STAMINA AND DAMAGE
Health with regeneration and three death behaviours: freeze in place, drop to the ground, or free flying spectator with a body left behind.
Stamina with a configurable cost per action. A cost of zero means that action is free, so you decide what should be tiring. Recovery is faster while standing still, crouching or prone.
Damage is built on one public interface, IDamageable. Hitboxes with per zone multipliers, damage zones for lava or spikes, and fall damage measured in metres.
The tool never decides whether damage should apply: every damage event carries its source, so friendly fire and team rules stay your logic.
Healing items with an application time, cancelled by damage without consuming the item.
ANIMATOR READY
No animations are included, but nineteen parameters are written to an Animator you provide, including local space movement values for 2D blend trees. Every parameter name is editable, so the tool adapts to a controller you already have rather than forcing you to rebuild it. Missing parameters are reported once in the console instead of failing silently.
WHAT IS IN THE PACKAGE
A demo scene with a movement course, targets with hitboxes, a damage zone and fall damage platforms.
Three placeholder weapons showing where the muzzle and sight transforms belong.
Full offline documentation in HTML and Markdown.
Commented, readable C# source with no obfuscation.
WHAT IS NOT IN THE PACKAGE
No animations, no models, no sounds, no particles, no icons, no HUD layout, no enemies or AI.
FPS-Tool is the movement and combat layer underneath your game, not the game itself. Every limitation is listed in the documentation before you install it.
Unity 6.0 or newer.
Requires the Input System package. Active Input Handling must be set to
"Input System Package" or "Both".
Render pipeline: the tool contains no shaders or materials and works in any pipeline. The demo scene materials are authored for URP.
The optional UI components require uGUI and are excluded automatically when it is not installed.
Documentation: included offline in HTML and Markdown.
Single player only. No networking layer is included.
No animations, models, audio, particles or icons are included.
The C# source code and the written documentation of this package were generated
with Claude, an AI assistant by Anthropic.
AI generated content:
all C# scripts in the package
the README and LICENSE documents
the editor script used to generate the demo scene layout
Content not generated by AI:
all marketing images, screenshots and the icon, made by the publisher
the final demo scene, adjusted and reworked by the publisher after generation
the CD jewel case artwork used in the images, taken from a royalty free source that permits commercial use without attribution
Work done by the publisher:
the specification the code was written against, written before any code existed and revised across the whole development
every design decision, including the architecture, the module structure, the physics approach, the public damage interface, and the scope of the package
testing of every build in the Unity Editor
identification and reporting of the defects found during testing, which were then corrected in further generation passes. Several systems, including the aiming alignment, the step assist, the slope sliding and the death handling, required multiple correction rounds driven by this testing
the Unity project setup, the asset folder structure, and the final demo scene