A fast-paced, browser-based 3D first-person shooter built with Babylon.js featuring realistic combat mechanics, dynamic weather, and an immersive urban environment.
-
4 Unique Weapons with distinct characteristics:
- Pistol: Fast, reliable sidearm (15/90 ammo)
- Sniper Rifle: Long-range precision weapon with scope (5/25 ammo)
- Pump Shotgun: Close-quarters spread damage (8/32 ammo)
- Minigun: High rate-of-fire suppression weapon (100/400 ammo)
-
Realistic Ammo Management:
- Magazine-based reloading system
- Separate ready/spare ammo tracking
- Weapon-specific ammo pools
- WASD Movement with smooth controls
- Sprint System: Double-tap W/E or hold Shift
- Slide Mechanics: Right-click while sprinting
- Jump System: Spacebar with gravity physics
- Scoped Aiming: Sniper rifle zoom functionality
- Visual Recoil: Weapon kickback and recovery
- Dynamic Weather: Real-time snow particle system
- Urban Setting: Procedurally placed buildings and structures
- Traffic System: Moving vehicles with pathfinding
- Clean UI/HUD: Health, ammo, and crosshair display
git clone https://github.com/Luckmuc/Shooter.git
cd Shooter
npm install
npm run devevOpen your browser and navigate to http://localhost:5174 to play the game.
- Modern web browser with WebGL support
- Node.js (for development)
W/A/S/D- Move forward/left/backward/rightShift- Sprint (hold)W/E(double-tap) - Toggle sprint modeSpacebar- JumpMouse- Look around
Left Click- ShootRight Click- Scope (sniper) / Slide (while sprinting)R- Reload weapon1/2/3/4- Switch weapons
Click "Play"- Start gameMouse Lock- Automatic when clicking canvas
- Pistol: Reliable for medium-range encounters
- Sniper: Use scope for long-distance elimination
- Shotgun: Devastating at close range
- Minigun: Suppress multiple enemies
- Sprint to close distance or escape danger
- Slide while sprinting for evasive maneuvers
- Monitor your ready/spare ammo ratio
- Reload during safe moments
- Each weapon has separate ammo pools
This project is licensed under the MIT License.