VR FPS Kit - Framework & Template

Discord | Documentation Page | Try the Demo!

Save yourself 2 Years of development time and get started creating your dream VR FPS Game right away! Join our Discord Server with 400+ members for quick support & help!


🕹️ Shooting Range Demo for PCVR & Quest is available Here.

__________^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^__________




🌍 Multiplayer Package is available as an addon!




🔍 Realistic Weapon Handling Features. Chambering & Ejecting rounds, 3 different fire modes, Hammer needing to be reset after firing, Several weapon specific physical controls, like the AR-15's Bolt Release Button, a charging handle that's separate from the bolt, dustcover that opens after being shot, the famous "Mp5 Slap", etc.


Cartridges that are fully rendered inside of magazines & weapon chambers!




🔫 12 Example Weapons are included in the package, which you easily can iterate upon and create your own weapons in as little as a few minutes!

That also means custom made animations, particle effects, models, haptic patterns, and sound effects that are recorded from their real-life counterparts:

  • HK-416 (AR-15) [5.56x45mm]
  • M16 [5.56x45mm]
  • SCAR-L [5.56x45mm]
  • AK-74 [5.45x39mm]
  • AKS-74U [5.45x39mm]
  • M17 Pistol [9x19mm]
  • Winchester Model 1897 (Pump Action Shotgun) [12 Gauge]
  • Mosin Nagant (Bolt Action) [7.62×54mmR]
  • H&K MP-5 [9x19mm]
  • M67 grenade (With a pullable pin)
  • F-1 grenade
  • RDG-5 grenade



🔄 Continuous Support! The Package is receiving regular content updates, with following features and lots more having been added since the initial release:

  • New calibers: 9x19mm, 12 Gauge, 7.62x54R Caliber
  • Physics magazine insertion
  • M17 Pistol [9x19mm]
  • Winchester Model 1897 [12 Gauge]
  • Mosin Nagant [7.62×54mmR]
  • M16 [5.56x45mm]
  • SCAR-L [5.56x45mm]
  • AK-74 [5.45x39mm]
  • H&K MP-5 [9x19mm]
  • F-1 grenade
  • RDG-5 grenade
  • PU scope
  • AK Picatinny mount
  • Several new range targets
  • Bullet impacts
  • Complete firearm sound overhaul
  • Reworked VR Networking
  • Damage post processing effects
  • Ballistic profiles
  • Ladders
  • Pistol reflex sight
  • Laser attachment
  • Hand poses
  • Physical Hands
  • Flashlight attachment
  • Physics based recoil
  • Weapon Hints
  • Shake magazine for ammo count
  • Simulated action spring weight
  • Fully animated cartridge loading
  • Magazine follower plates

Even more features are being worked on and will be included in future updates:

  • More Firearms & Grenades
  • Revolvers
  • Sliding Picatinny Rail Interactors
  • Physical Magazine Inserting
  • Mag Palming (Similar to Ghosts Of Tabor)
  • Body & Arm IK
  • Doors
  • Human Enemies



💥 Cartridge Characteristics such as caliber, bullet types (FMJ, Tracers, AP, Empty Casing, etc), velocity & drop off, and easily extendable functionallity through the Cartridge Struct.


Individual cartridges (alongside their unique characteristics) are also rendered inside of magazines and weapon chambers! Magazines can both be Loaded & Unloaded, and Cartridges retain the order that they were loaded in, All multiplayer synced!




🧰 Weapon Attachments System with several different real-life attachment systems like:

  • Picatinny Rails
  • Soviet Dovetail Mount
  • Pistol sight & flashlight Mounts
  • Different suppressor threads



🔧 Example Weapon Attachments are included:

  • 8x Vortex LPVO Scope (Picture in Picture Custom Shader)
  • Holographic Sight (Custom Shader)
  • Russian OKP-7 Collimator Sight (Custom Shader)
  • 3.5x Mosin PU Scope (Picture in Picture Shader)
  • PBS-1 Suppressor
  • Pistol RMR Reflex Sight
  • Dovetail to Picatinny Mount
  • HS ls321g Laser/Tactical device



🛰️ Fully Fletched XR Rig, with all the features you need to get started with creating your own VR experiences like:

  • Full Unity XR Interaction Toolkit Integration
  • Grabbing & Throwing Objects
  • Sockets for storing items (Weapons & Magazines)
  • Player Movement
  • Damage Indicator effect
  • Snap Turn
  • Animated Hands



🌪️ VR Haptic Patterns Support allows you to create complex and realistic vibration patterns for your interactions, such as feeling the friction and individual clicks & vibrations when racking the slide of your gun or pulling the pin of a grenade.


VR Multiplayer FPS Kit fully supports VR Haptic Patterns out of the box when you simply import it.




🩸 Damage System that is extendable to fit your needs. Used for player health, shooting targets, and destructible objects like bottles working over the network!




🖐️ Hands On Samples provide a quick way to learn how to further develop and build your own experiences. The following well documented samples below give you clear examples of how to effortlessly write your own network-synced code:

  • Plate carrier (For storing magazines, grenades etc)
  • Shooting Range (With resettable & moving targets)
  • Lots of Grabbable Objects



💬📖 Discord Server & Extensive Documentation. If you ever encounter any issues or want to share your progress, our active & supportive Discord Server is always open for you. Furthermore, the entire package features an ever growing Documentation Page, where you can get started!

Release Notes

v10.1

Tweaks

  • Fixed LimitedMagazineSocket behaving as unlimited due to faulty authority check
  • OpenXR Android rendering mode is now single-pass for improved performance
  • Fixed null reference issue in SpeedOfSound
  • Adjusted & reworked cartridge ejection velocities
  • Updated base physics material of world to reduce interactable friction
  • Improved socket spawn script netcode
  • Enhanced Cartridge.ToString() method for more informative output
  • Fixed broken FirearmCyclingAction.ChamberCartridgeEvent
  • FirearmCyclingAction.ShootEvent() would mistakenly only be called on servers, sometimes breaking cartridge loading completely after shooting
  • Bullets & ejected cartridges would collide with firearm after shooting on clients, breaking recoil
  • Magazine sockets are now prefabs
  • Reworked all recoil values
  • Fixed CartridgeItem not rendering cartridge visuals
  • Proxy grab socket scrippt to grab it's item instead
  • Hand Poses would break in some cases
  • Hand Pose editor code would prevent compilation
  • UniversalMagazineSockets will now always show a default magazine



v10.0

Features

• Vertical physics-based magazine insertion

• AK-style "rock back" physics-based magazine insertion

• Physics Joint interactor (attachments now also have collisions when attached)

• Magazine follower plate (below bullets; tracks lowest bullet with offset)

• Simulate action spring weight

• Magazine cartridge renderers slightly depressed before the firearm reaches its "feed" position

• Double-stacked magazines alternate bullet side

• AK safety block action

• Animated Cartridge loading functionallity (Only configured for AKS-74u yet)

• Trigger Visually Rotating

• New magazine insertion sounds for every weapon, played with FirearmPhysicsMagazineSound.cs

• Limited Magazine Socket On Vest

• Unlimited Magazine Socket On Vest

• New magazine pivots

• Mag release part movement

• Tracking Grenade & Explosion ownership

• Recoil diminishing randomness as you shoot more (Smoother full-auto recoil)

• Hover outline for detaching magazine from firearm

• XRSocketHoverOutline component

• XRHoverOutline component

• Cartridge Renderer updates by cartridge change events instead of every frame

• DeadMaterial component

• MagazineResetOnDeath script

• Hand pose editor dots that stay constant

• Grenade collision sound

• New cartridge fall sounds

• Spawn with M17 holstered

• Normal material for HK416 selector

• Bullet passing-by sound now played when landing close to the player

• Multiple shoot sounds at once

• Big audio mixing changes

• Fire mode selector now rotates by script

• Lit scope shader

• InternalMagazineLoader component that lets you select if the bolt needs to be open to load

• Rendered hammers on AKs & M1897

• Customizable hammer reset action position

• Action movement speed determines sound volume

• Random pitch shifting on collision sounds

• Random pitch shifting on shoot sounds

• Can now toggle flashlight with the support hand on pistols


Tweaks


• Outline.cs creates errors about model.isReadable

• XRHoverOutline targets only the highest priority interactor

• Haptic patterns null-check

• Warning for when CartridgeEjector prefab is null

• Bullets with too low velocity are destroyed

• Fix XRHoverOutline fade-in outline not working correctly

• Reduced muzzle flash

• Firearm.ShootEvent now plays on clients

• Option to disable action sounds when shooting

• Smaller magazine trigger on AKs (closer to the hinge)

• DamageableInvisibleOnDeathImproved

• Magazine.FillPreset() resets magazines and calls Reset() method

• Magazine.FillPreset() cannot have the [Server] attribute

• BulletPassSound.cs error when multiple players are in-game

• Sticky weapon socket does not cancel existing interaction

• Error in SpeedOfSound.cs when no listener is present

• Magazine preset fill on authority instead of server

• StickyWeaponSocket.cs was breaking when releasing an object

• Action interactable weight when not selected is fixed

• Removed unneeded fixedDeltaTime multiplier in HandPresence.linearAcceleration

• Warning for items not using the "Interactable" layer

• Hands physics objects were lagging behind, affecting slide-holding during movement

• No longer overcompensating tracking when holding a child interactable while moving

• Reduce required magazine shake magnitude for round count

• Range scene occlusion culling

• Reevaluated the "can grab mag" logic

• Physical detach magazine adjusting

• HandPresence is no longer a network behaviour

• Support hand lagged behind when moving

• Improved M17 magazine model performance

• Changed XRReattachCooldownFilter to be more widely applicable

• Collision sound cooldown with a smaller magnitude threshold

• AKs have a much smaller magazine collision detacher

• Hand pose dot editor now fixes undo

• Hand pose editor now directly selects the hand for a more intuitive dot editing experience

• Left hand lag issues fixed

• Smaller micro dot reticle

• Updated hover mat

• Collision sounds and FirearmCyclingActionSound are disabled during the loading scene

• Flip targets do not flip from falling bullets

• Removed strange audio artifacts from the pistol shoot sound

• Safety was rendered incorrectly before the firearm was grabbed in multiplayer

• Fix for mag counter displaying every time a magazine is selected

• HK416 cartridge renderer wasn't working

• StickyWeaponSocket now includes netcode so it does not execute on every client




v9.0

Features

• Adjusted awful offsets of all weapons (feels so much better)

• Physics recoil

• Shake magazine to show capacity

• Flashlight attachment

• M16 Firearm

• AK-74 Firearm

• SCAR-L Firearm

• M16 20rd magazine

• Bullet sonic crack sound (when traveling past player at supersonic speeds)

• Bullet zip past sound (when traveling past player at close range)

• Reworked firearm shoot sound

• Textures & normal maps for firearms & some attachments

• Bullet vapor trail effect

• High-pass filter for distant sounds

• Explosion and gunshot sounds delayed by speed of sound

• F-1 grenade

• RDG-5 grenade

• Grenade pin physics

• Firearm hints (that outline parts) when failing to shoot because of: Empty chamber, locked back action, safety on

• Grip threshold to allow for cooking grenades

• Reworked firearm particle effects

• Suppressor shoot particle effect

• Grenade prime particles

• New explosion particle effect

• Reworked a lot of materials to have better colors & PBR values

• 5.56x45 PMag magazine

• Holographic sight model complete

• Added simple "Skip chambering" script

• More detailed colliders for all firearms and magazines

• Firearms can now be fired from Inspector buttons

• Grenades can now be primed from Inspector buttons

• Particle effect light curve script (for grenade prime & explode, muzzle flash, etc.)

• Bullet drag (configurable in ballistic profile)

• Bullet bounces

• Bullet damage decreases with velocity

• Bullets now collide with and move Interactables

• Damaging a grenade causes it to explode

• Lever hand pose

• Explosions apply velocity to nearby Rigidbodies

• Magazine spawn cartridge preset list

Tweaks

• Now using more performant "Single Pass Instanced" XR rendering mode

• Use string for checking magazine compatibility

• XRSocketTrackingModeFix component

• Faded smoke particles

• Fixed AK lever broken hand pose target

• Added "Collider needs assigning" warning on firearms

• XRMultiplayerInteractionManager now uses existing XR managers if possible

• Fixed XRMultiplayerInteractionManager syncing a dictionary null error

• Adjusted layer hand weight

• Reduced physics button pressure sensitivity

• Fixed multiplayer "Spawn" object in singleplayer

• HandPresence.ApplyParentMovementToInteractors() no longer applies movement to non-rigidbodies

• Fixed recoil issue caused by Picatinny mount on AK

• Hand pose window now closes correctly in prefab mode

• DamageSound now attached to child audio source

• Renamed "MagazineInteractor" to "SimpleMagazineInteractor"

• Removed BRP post-processing profiles

• Upgraded DamagePostProcessFilter to URP (wasn't working in the last version)

• Bullet no longer casts a shadow

• AutoConnector start mode now adjustable for platforms

• Added more sparks particles to the AKS-74U

• Adjusted volume curves of all sounds

• Added grenades down range

• Collision sound minimum impulse to fix spam

• Fixed missing collision sound for LPVO

• Loaded some magazines with tracers

• All damage is now applied through the IDamageReciever interface

• Shoot sound & particle system now played by separate scripts

• Adjusted smoke particles' rotation

• Fixed trigger sounds not working while action is back (trigger now waits until action is forward)

• Removed colliders of far-off mountains for performance

• Magazine interactor compatibility filter no longer drops invalid magazines

• Changed Firearm.isActionOpen to Firearm.inBattery

• Fixed "no magazine" sound for AK

• Adjusted grenade physics material bounciness

• Fixed server crash when loading rounds into M1897

• Removed unused packages

• Enlarged hand interactor triggers

• Corrected 9x19 start velocity

• MagazineCollisionDetacher being triggered by magazines in vest




v8.0

Features

  • Magazine weight is updated based on amount of loaded rounds
  • Hand weight simulation now nests weight calculation (Example: Magazine will affect weight of weapon)
  • Trigger Interactor & Interactables
  • Picatinny version of OKP-7 Sight
  • Mosin now has 4 action sounds
  • Trigger squeeze & release sounds
  • Hammer reset sounds
  • Holster & Sling sounds
  • Round eject sound for all firearms
  • Action round feed sound for all firearms
  • Customisable action feed & eject positions
  • New model for M67 Grenade
  • Update vegetation pack
  • Reworked shooting range scene
  • Unity 6
  • Migrated to URP

Changelog exceeds 10000 characters (Check discord server for full patch notes)

Basic Information
Latest Version
10.1.0 (12 Apr 2025)
Publisher
Scuttled Tech
Category
Templates/Systems
Size
431.5 MB
Price
€36.19
Asset Rating
(21)
Extended Information
Unity Versions
6000.0.33
Render Pipelines
URP
State
published