Spaces:
Running
Running
| title: AdaptiveTactics | |
| emoji: ⚡ | |
| colorFrom: indigo | |
| colorTo: purple | |
| sdk: static | |
| pinned: false | |
| thumbnail: >- | |
| https://cdn-uploads.huggingface.co/production/uploads/6916590f41e1323e1096cf76/UJ-K9_briMXGNL5Uy0Zwf.png | |
| license: apache-2.0 | |
| short_description: A tactical roguelite game of doomed repetition. | |
| tags: | |
| - game | |
| - game-ai | |
| - npc | |
| - games | |
| - reinforcment-learning | |
| - godot | |
| - unity | |
| - tactical-rpg | |
| - ai | |
| - roguelite | |
| - strategy | |
| - javascript | |
| - static | |
| # Adaptive Tactics | |
| A browser-playable tactical roguelite where you face Ephraim, the Returning King, across repeated cycles on a single fixed map. Each time Ephraim is defeated, he returns stronger and more aware of how you fight. | |
| **Your score is how many cycles you survive before Ephraim finally defeats you.** | |
| ## How to Play | |
| ### Starting the Game | |
| This game uses ES modules and requires a local web server to run. | |
| **Option 1: Python (recommended)** | |
| ```bash | |
| cd KingOfAdaptation | |
| python -m http.server 8000 | |
| ``` | |
| Then open http://localhost:8000 | |
| **Option 2: Node.js** | |
| ```bash | |
| npx serve KingOfAdaptation | |
| ``` | |
| **Option 3: VS Code Live Server** | |
| Install the "Live Server" extension and right-click `index.html` → "Open with Live Server" | |
| ### Gameplay | |
| 1. Name your Oathbearer | |
| 2. Command your 4-unit party against Ephraim's forces | |
| 3. Click a unit to select it, then click a blue tile to move | |
| 4. After moving, click an enemy in the red attack range to attack | |
| 5. Use the action buttons: Attack, Heal, Wait, Switch Weapon | |
| 6. End your turn when all units have acted | |
| 7. Defeat Ephraim to complete the cycle | |
| 8. Face his adapted army in the next cycle | |
| ### Your Party | |
| - **Oathbearer** - Balanced fighter with sword and magic | |
| - **Yuta** - Powerful axe warrior, high HP | |
| - **Eilisia** - Precise archer, attacks from range | |
| - **Mirella** - Healer with supportive magic | |
| ### Combat System | |
| - Units can move and then take one action per turn | |
| - Weapons have different ranges (melee: 1, ranged: 2, spears: 1-2) | |
| - Defenders can counter-attack if their weapon reaches | |
| - A unit with 4+ more Speed attacks twice | |
| - Terrain provides defensive bonuses (bushes, throne) | |
| ### Adaptation | |
| Ephraim learns from each defeat: | |
| - He tracks which lanes you favor | |
| - He notices your high-value targets | |
| - His forces adapt their positioning | |
| - Later cycles add reinforcements | |
| - His behavior becomes more aggressive over time | |
| ## Tech Stack | |
| - Pure static HTML / CSS / vanilla JavaScript (ES modules) | |
| - No framework, no build step | |
| - All game data in JSON files | |
| - localStorage for persistence | |
| ## Project Structure | |
| ``` | |
| ├── index.html # Main entry point | |
| ├── css/ # Stylesheets | |
| ├── js/ # Game logic modules | |
| ├── content/ # JSON data files | |
| │ ├── maps/ # Map layouts | |
| │ ├── units/ # Unit templates | |
| │ ├── items/ # Weapons | |
| │ ├── adaptation/ # AI packages | |
| │ └── balance/ # Game rules | |
| ├── assets/ # Images | |
| │ ├── sprites/ # Unit sprites | |
| │ ├── portraits/ # Character portraits | |
| │ ├── tiles/ # Terrain tiles | |
| │ └── screens/ # Background images | |
| └── tests/ # Test files | |
| ``` | |
| ## License | |
| All rights reserved. | |
| ## Creator | |
| Zain Asad |