Specimen Report · JavaScript

turkey-hunter-js

phiat/turkey-hunter-js

built with Opus 4.5 in < 2 hours

Stars
★ 0
Forks
⑂ 0
Language
JavaScript
Size
1,356 kB
Last Push
3mo ago
Forged
5mo ago
# The Turkey's Curse: A Polygonal Nightmare ![The Turkey's Curse](assets/images/tutkeys-curse.png) A dark, atmospheric first-person shooter built with Three.js. Hunt turkeys through a maze-like forest, survive waves of enemies, and unlock permanent upgrades through a skill tree system. ## Features - **Atmospheric FPS Gameplay**: Navigate a procedurally generated maze forest with dynamic lighting - **Wave-Based Combat**: Survive increasingly difficult waves of aggressive turkeys - **Dual Currency System**: - Feathers: Per-run currency dropped by turkeys, spent at the between-wave shop - Golden Feathers: Permanent currency earned through performance, spent on skill upgrades - **Branching Skill Trees**: Four skill trees with branching paths: - Marksman: Damage & Precision - Stalker: Mobility & Stealth - Survivalist: Defense & Recovery - Gunsmith: Weapons & Utility - **Wave Shop**: Spend feathers between waves on temporary buffs - **Destructible Environment**: Trees can be destroyed with shotgun blasts - **Debug Tools**: Built-in lighting debug panel for development ## Controls | Key | Action | |-----|--------| | WASD | Move | | Mouse | Look | | Left Click | Shoot | | R | Reload | | Shift | Sprint | | F | Toggle flashlight | | B | Open shop | | Tab | Open skill tree | | ` (Backtick) | Toggle debug panel | ## Skill Trees Each tree has 5 skills in a branching structure (Tier 1 → Tier 2A/2B → Tier 3A/3B): - **Marksman**: Steady Aim → Stopping Power / Rapid Fire → Dead-Eye / Bullet Storm - **Stalker**: Light Step → Quick Dodge / Ghost Walk → Predator / Shadow Hunter - **Survivalist**: Thick Skin → Regeneration / Iron Will → Last Stand / Unstoppable - **Gunsmith**: Quick Loader → Extended Mag / Scavenger → Incendiary / Explosive ## Getting Started ### Prerequisites - Node.js 18+ - npm ### Installation ```bash # Install dependencies npm install # Start development server npm run dev ``` Open http://localhost:3000 in your browser. ### Build for Production ```bash npm run build npm run preview ``` ## Tech Stack - **Three.js** - 3D rendering - **Vite** - Build tool and dev server - **Vanilla JS** - No framework dependencies ## Project Structure ``` src/ ├── main.js # Entry point ├── game/ │ ├── Game.js # Main game coordinator │ └── Player.js # FPS player controller ├── world/ │ ├── Lighting.js # Dynamic lighting system │ └── MazeGenerator.js # Procedural maze generation ├── combat/ │ └── Shotgun.js # Weapon system ├── enemies/ │ ├── Turkey.js # Turkey enemy AI │ └── TurkeyManager.js # Enemy spawning/management ├── ui/ │ ├── HUD.js # In-game HUD │ ├── SkillTreeUI.js # Skill tree interface │ └── WaveShop.js # Between-wave shop └── progression/ ├── Currency.js # Feather currency system └── SkillTree.js # Skill tree data/logic ``` ## License MIT
↗ GitHub