Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

⚡ Aether Forge

A browser-based incremental / idle ("clicker") game. Click the aether orb and build an empire of magical structures that generate energy on their own. Pure vanilla HTML + CSS + JavaScript — no build step, no dependencies, no server required.


▶️ How to run

Just open the file in a browser:

open index.html          # macOS
# or double-click index.html in Finder / your file explorer

There is nothing to install or compile. The game auto-saves to localStorage.


🗂️ Project structure

aether-forge/
├── index.html          # Layout & DOM scaffold (3-panel UI)
├── style.css           # All styling + animations (CSS variables theme)
├── js/
│   ├── data.js         # CONTENT: buildings, upgrades, skills, achievements, shops
│   ├── game.js         # Core state (G), CPS/click math, buying, tick loop
│   ├── ui.js           # Rendering, tooltips, canvas background, click effects
│   ├── prestige.js     # Rebirth / Awakening / Transcendence + Void Tree
│   ├── spin.js         # "Aether Spin" gacha / ability rewards
│   ├── quests.js       # Quest generation & progress tracking
│   ├── achievements.js # Achievement checks
│   ├── save.js         # Save / load / export / import / wipe
│   └── main.js         # Bootstrap & event wiring
├── README.md           # ← you are here
├── CHANGELOG.md        # Dated log of every change (what's been done)
└── ROADMAP.md          # What's planned / what needs doing next

Scripts load in dependency order at the bottom of index.html: data → game → ui → prestige → achievements → save → spin → quests → main.


🧠 Key concepts (where to edit what)

I want to… Edit this
Add/balance a building js/data.jsBUILDINGS array
Add/balance an upgrade js/data.jsUPGRADES array
Add a skill / achievement / shop js/data.jsSKILLS / ACHIEVEMENTS / *_SHOP
Change production / click math js/game.jscalcCPS, calcClickPower, etc.
Change visual effects js/ui.js (spawnParticles, animateCanvas) + style.css
Change prestige / void tree js/prestige.js

Data shapes (quick reference)

// BUILDINGS entry
{ id, name, desc, flavor, baseCost, baseCps, color, icon /* inline SVG string */ }

// UPGRADES entry
{ id, name, type:'building'|'click'|'global', icon, desc, effect,
  mult, target, cost, trigger:{ type:'building'|'aether'|'clicks', ... } }

Buildings cost-scale at ×1.15 per purchase; per-building upgrades unlock at owned counts 1 / 10 / 25 / 50 / 100 (the last is usually a ×4).


💾 Saves

State lives in the global G object (see top of js/game.js) and is persisted to localStorage. Use the header buttons to Save / Export / Import / Wipe. New content (buildings/upgrades) is append-only, so existing saves keep working.

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages