Skip to content

Blue-Rangoon/Poly-Ops-Tactical-Shooter

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

12 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Poly Ops - 3D Tactical Shooter

Browser-Based Low-Poly First-Person Shooter Proving Grounds

HTML5 CSS3 React TypeScript Three.js Tailwind CSS Vite Vercel

Last Commit Stars Forks License Status


Project Preview


πŸ“‹ Table of Contents


About The Project

Poly Ops is a browser-based, high-fidelity 3D tactical shooter simulation. Designed with a clean low-poly military aesthetic, the game challenges operators to defend a combat perimeter against progressive waves of smart hostile AI units.

Featuring fully procedural Audio Synthesis (Web Audio API), physics-based player motion, and a tactile four-weapon gun catalog, Poly Ops runs natively inside modern desktop browsers without requiring heavy external asset downloads.

πŸ’‘ Live Demo: Poly Ops Live Battlefield (Live Website)


⭐ Repository Visitors

GitHub Views GitHub Clones


✨ Core Features

1. Swappable Weapon Arsenal

Switch seamlessly between four custom low-poly weapon models, each with distinct fire rates, reload times, precision coefficients, and damage multipliers:

  • Key [1] - Tactical Pistol: A compact sidearm featuring high precision, zero spread, a crisp 1.1s reload time, and a devastating 2.85x headshot damage multiplier. (12 Mag Capacity).
  • Key [2] - Pump Shotgun: Twin-barrel wood-stock model dispersing an 8-pellet buckshot spread. Excellent for immediate close-quarters neutralization. (6 Mag Capacity, 1.8s reload).
  • Key [3] - Assault AK-47: Wood-accented tactical rifle firing automatic 32-damage hitscan rounds at a rapid 0.1s rate with a 3.0x critical headshot coefficient. (30 Mag Capacity, 1.5s reload).
  • Key [4] - Heavy MG42: A drum-fed support gun outputting a blistering 1,200 RPM rate of fire. Features notable muzzle climb and spread, balanced by extensive suppression capabilities. (100 Drum Capacity, 2.5s reload).

2. Dynamic Hostile AI Matrix

Combat smart AI enemies that spawn dynamically from the perimeter:

  • 🟒 Green Rifle Soldiers: High-speed ranged combatants firing red ballistic tracers at 72 m/s. Adapt and utilize stacked crates or low-poly trees for physical cover. Has a 15% rare drop rate to drop an extra active magazine.
  • πŸ”΄ Red Melee Operatives: Rapid ground runners that charge and deal physical trauma on contact. Has a 12% rare drop rate to spawn a hovering +10 HP health kit on the ground.
  • 🟠 Orange Exploder Units: Markings of hazard stripes and glowing eyes. These units sprint at high velocity towards the player, accompanied by accelerating alarm beeps. Neutralizing them triggers a massive orange debris fireblast, dealing 45 HP damage within a 5m radius and rewarding 350 pts.

3. Procedural Audio Synthesis

Experience the ultimate sound design powered natively by your browser's audio nodes (Web Audio API) without loading external assets:

  • Acoustic Pain Vocalizations: Multi-tone organic vocal grunts are synthesized upon sustaining physical impact.
  • Cardiovascular Breathing Loop: Sprinting activates a synchronized vocal inhale/exhale respiratory cycle which automatically winds down upon coming to a halt.
  • Mechanical Reload SFX: Four distinct micro-tone clank-clack frequencies mimic manual magazines popping and slide releases.
  • Tactical Ambient Drone: A low-frequency dual-oscillator sawtooth drone with LFO vibrato creates a tense, cinematic combat atmosphere.

4. High-Performance 3D Visuals

  • WebGL Rendering: Crisp, flat-shaded low-poly aesthetics with soft, directional lighting and real-time shadow mappings.
  • Dynamic Environments: structural coordinate-space fog, procedural trees, obstacles, and crates designed to support strategic positioning and defensive cover plays.

πŸ› οΈ Tech Stack

  • React 19: Responsive HUD layout, active weapon slots displays, health trackers, scoreboard, and live battlefield alerts overlays.
  • Three.js: Procedural 3D ground landscape geometries, low-poly weapon meshes, and hitscan tracer renderings.
  • TypeScript: Statically typed game cycles, event callbacks, object pooling (bullets/enemies/pickups), and structural collision bounding boxes.
  • Tailwind CSS v4: Ultra-modern glassmorphic battlefield lock-screens, navigation portal designs, and font typography styling.
  • Vite: Rapid Hot Module Replacement (HMR) and optimized single-file build scripts configurations.
  • Web Audio API: High-efficiency synth nodes, LFO frequency modulation filters, gain controllers, and custom audio buffer synthesis.

πŸ•ΉοΈ Command Controls

Action Control Key
Move / Strafing W A S D
Sprint Left SHIFT (triggers audio breathing)
Aim Camera MOUSE (Aim)
Fire Active Gun LEFT CLICK
Reload Weapon R
Pistol / Shotgun 1 / 2
Assault Rifle / MG42 3 / 4
Pause & Unlock Cursor ESC

πŸš€ Getting Started

Follow these quick commands to spin up the tactical arena on your own machine:

Prerequisites

Make sure you have Node.js (v18 or higher) installed.

Installation

  1. Clone the operations repository:
    git clone https://github.com/Blue-Rangoon/Poly-Ops-Tactical-Shooter.git
    cd Poly-Ops-Tactical-Shooter
  2. Install dependencies:
    npm install

Running the Application

Launch the local hot-reloading development server:

npm run dev

Open http://localhost:5173 in your desktop web browser.

Building for Production

Create the optimized production build:

npm run build

πŸ“‚ Project Structure

β”œβ”€β”€ src
β”‚   β”œβ”€β”€ game
β”‚   β”‚   β”œβ”€β”€ FPSGame.ts          # Core 3D engine, enemy AI, weapons & collision mechanics
β”‚   β”‚   └── SoundManager.ts     # Procedural audio synthesizers & audio node routing
β”‚   β”œβ”€β”€ utils
β”‚   β”‚   └── cn.ts               # Class merger utility
β”‚   β”œβ”€β”€ App.tsx                 # HUD Overlay, web portal, controls UI, and reactive state
β”‚   β”œβ”€β”€ index.css               # Core styling and font integration
β”‚   └── main.tsx                # Entrypoint mounting
β”œβ”€β”€ index.html                  # HTML template
β”œβ”€β”€ vite.config.ts              # Bundler configuration
└── tsconfig.json               # TypeScript configuration

βš–οΈ Legal & Content Disclaimer

Poly Ops is entirely fictional and was developed solely as an interactive 3D programming showcase and digital entertainment platform. This software does not promote, encourage, or glorify violence, war, terrorism, extremist ideologies, or real-world weapons of any nature. All visual characters, low-poly assets, and procedural sound waves are digital computer representations synthesized programmatically.


🀝 Contributing

Contributions, suggestions, and battle reports are welcome!

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/TacticalUpgrade)
  3. Commit your Changes (git commit -m 'Add new weapon specs')
  4. Push to the Branch (git push origin feature/TacticalUpgrade)
  5. Open a Pull Request

πŸ“„ License

Distributed under the AGPL v3.0 License. See License for details.


πŸ‘₯ Operator Communications Hub

Created with passion by Blue-Rangoon. Let's connect across the networks:

GitHub LinkedIn Twitter Discord


❀️ Made with Love

Crafted for maximum performance and immersive 3D gameplay.

About

Poly Ops is a low poly style FPS Shooter based browser compatible game made simply on Typescript

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages