A modular Unity FPS framework with advanced movement, hitscan and projectile gunplay, procedural weapon motion, inventory, attachments, enemy AI, editor tools, and four playable demos.Build a responsive first-person game with configurable movement, weapons, inventory, interaction, and enemy combat.MSJ FPS Controller brings these systems together in a modular framework. Use the included gameplay setup as a starting point, tune individual components, or extend the systems through editable C# source code, ScriptableObject profiles, interfaces, and UnityEvents.The main package uses URP. Optional HDRP and Built-in support packs provide rendering adaptations, with installation instructions included.Responsive First-Person MovementWalk, sprint, crouch, slide, jump, vault, lean, climb ladders, and ride moving platforms. Coyote time and jump buffering make traversal more forgiving, while configurable stamina, surface footsteps, and landing feedback help shape the character’s feel.Camera effects include head bob, landing motion, sprint FOV, shake, and recoil that affects the player’s aim.Hitscan and Projectile GunplayConfigure rifles, SMGs, pistols, shotguns, melee weapons, grenades, and other throwables.Choose instant hitscan shooting or travelling projectiles with adjustable speed, gravity, lifetime, and collision radius. Single, burst, and automatic firing modes can be configured independently of the shooting method.Weapon features include hip-fire and ADS accuracy, movement and airborne penalties, sustained-fire bloom, shotgun pellets, damage falloff, impact force, magazine checks, manual chamber cycling, and multiple reload styles.Use traditional ammunition counters or individual magazines with their own remaining rounds. Incremental reloads and automatic action cycling support pump-action shotguns and other manually operated weapons.Procedural Weapon Motion and Animated ActionsA modular pose system combines breathing, sway, movement bob, sprint poses, slide poses, airborne motion, recoil, and aim transitions.Per-weapon profiles let you give each firearm a distinct feel. Hands Animator integration supports firing, reloads, magazine checks, and chamber pulls, alongside configurable weapon-part movement, shell ejection, muzzle effects, and audio.Optics and AttachmentsConfigure iron sights, red dots, holographic sights, and magnified scopes with individual ADS positions, zoom, and sensitivity.Scopes support screen-FOV zoom and picture-in-picture rendering. Per-optic depth-of-field settings can blend with the aim transition.Inventory-driven attachment sockets support removable optics, muzzle devices, silencers, flashlights, lasers, and other side-mounted equipment.Inventory, Interaction, and ConsumablesThe slot-based inventory includes backpack storage, weapon slots, drag-and-drop movement, stack merging, swapping, filtering, and item details.Create weapons, ammunition, medical supplies, optics, and attachments through reusable item definitions. Pick up, equip, inspect, use, attach, and drop items through configurable actions.External inventories support containers such as lockers, crates, chests, and corpses. Timed player actions and progress feedback support activities such as using medical items.Enemy AI and CombatBuild melee enemy encounters with NavMesh movement, vision, hearing, investigation, chasing, attacks, hit reactions, and body-part damage.Enemies support stagger, ragdoll knockdowns, get-up recovery, dormant ragdoll states, and death. Profile assets let you create variants with different movement speeds, senses, health, attack behavior, and reactions.Included mechanical enemy examples provide a starting point for zombie-style encounters. Player death handling includes weapon dropping, a falling camera, a failure screen, and scene restart.Player Settings and Demo ScenesThe runtime settings menu provides sensitivity, FOV, input preferences, camera effects, aim blur, audio, and graphics controls. Players can preview changes, apply and save preferences, or cancel to restore previous values.Four demo scenes are included:Movement Course — traversal and movement practice.Showcase (Standard) — hitscan weapons, inventory, and controller features.Showcase (Projectiles) — travelling bullets and shotgun pellets.Industrial Combat Arena — weapon testing and enemy encounters.A welcome window, custom inspectors, setup utilities, package validation, and documentation help with installation and customization.Compatibility and ArchitectureDeveloped and tested primarily with Unity 6.3 — 6000.3.14f1.Primary rendering configuration: URP 17.3.Optional HDRP and Built-in support packs with pipeline-specific materials, rendering scripts, camera adaptations, and setup instructions.Unity 2022.3 compatibility adaptations included; complete gameplay and build validation remains pending.Dependency installer requests Editor-compatible releases through Unity Package Manager.Uses Input System, Animation Rigging, AI Navigation, uGUI, TextMeshPro, and Unity Test Framework.Keyboard, mouse, and action-based gamepad input.Complete, editable C# source code.Modular component-based architecture.ScriptableObject-driven weapon, optic, item, and NPC profiles.Interfaces and UnityEvents for extending gameplay, animation, audio, VFX, and UI.Character Controller and CameraWalking, sprinting, crouching, sliding, and jumping.Coyote time and jump buffering.Vaulting, leaning, and ladder climbing.Moving-platform support.Optional stamina system.Surface-based footsteps and landing audio.Generic interaction system.Procedural head bob, landing motion, FOV effects, camera shake, and aim recoil.Player death, held-weapon dropping, failure UI, and scene restart.Weapon SystemHitscan and travelling-projectile shooting modes.Single, burst, and automatic fire.Configurable supported firing modes per weapon.Projectile speed, gravity multiplier, lifetime, range, and collision radius.Swept projectile collision detection.Multi-pellet shotgun support.Hip-fire and ADS accuracy.Movement, airborne, and sustained-fire bloom.Configurable damage, impact force, range, and distance falloff.Loose-ammunition and individual-magazine modes.Standard and incremental reloads.Magazine-check actions.Manual chamber cycling and automatic post-shot action cycling.Optional chamber action after an empty reload.Weapon switching and holstering.Procedural recoil, sway, breathing, bobbing, sprint, slide, airborne, and ADS poses.Hands Animator integration for weapon actions.Muzzle flashes, impact effects, shell ejection, moving weapon parts, and audio.Melee weapons, throwables, grenades, and explosive objects.Optics and AttachmentsIron sights, red dots, holographic sights, and magnified scopes.Per-weapon and per-optic ADS positioning.Screen-FOV and picture-in-picture scope modes.Magnification-based scope FOV calculation.Adjustable aiming sensitivity.Per-optic aim depth-of-field settings.Aim-blur adaptations in the optional rendering support packs.Inventory-driven optic, muzzle, and side-attachment sockets.Silencer support.Toggleable flashlights, lasers, and powered attachments.Inventory, Interaction, and HUDSlot-based backpack and weapon storage.Drag-and-drop inventory interface.Stack merging, swapping, filtering, and overflow handling.Weapon, ammunition, medical, optic, muzzle, and side-attachment items.Configurable Use, Heal, Inspect, Throw, and Drop actions.Timed player actions with progress feedback.World pickups and unlimited supply crates.External containers with configurable starting contents and deposit restrictions.Weapon ammunition synchronized with carried inventory.Generic stat bars for health, stamina, armor, hunger, or custom stats.Weapon name and ammunition HUD.Crosshair and interaction feedback.Configurable inventory and gameplay audio.Enemy AI and CombatInterface-based damage system.Health, healing, regeneration, and death events.Body-part damage multipliers.NavMesh-driven melee enemy AI.Vision cones, line-of-sight checks, and hearing.Idle, investigate, alert, chase, attack, stagger, knockdown, recovery, and death states.Gunshot noise propagation.Animated ragdolls and dormant ragdoll enemies.Get-up recovery after knockdowns.ScriptableObject NPC profiles.Animator bridge with configurable parameter names.Configurable enemy movement, attacks, reactions, and audio.Runtime SettingsMouse, gamepad, and aiming sensitivity.Invert-Y and toggle/hold preferences for aiming and crouching.Toggle sprint.Field of view and head-bob strength.Camera shake, landing dip, sprint FOV, and aim-blur controls.Master volume, quality level, VSync, and frame-rate limit.Live preview, Apply, Cancel, and saved player preferences.Optional pause while the settings menu is open.Editor Tools and Included ContentWelcome window with setup checks and demo shortcuts.Dependency installation and compatibility checks.Custom inspectors with organized settings, validation, and setup warnings.Character setup and test-scene generation tools.Demo project-settings utilities.Package validation and validated export tools.Configurable player, weapon, pickup, inventory, and enemy content.Four playable demo scenes.PDF user guide, installation instructions, and pipeline-support documentation.AI tools were used to assist with development of scripts and editor utilities, troubleshooting, and documentation for the MSJ FPS Controller. The creator reviewed and integrated the resulting changes. Third-party assets retain their original credits and licenses.The project documentation supports AI-assisted development, but doesn’t establish whether any visual or audio assets were AI-generated.


