Files
aether-chronicles/CHANGELOG.md
T
arch_agent face8023a4 v0.2.0 — M7: LLM Integration Frontend ↔ Backend
- api.js: API bridge to FastAPI backend
- Dynamic NPC dialogues via gemma4:12b (cached 30s)
- Periodic world event generation (every ~10s)
- Event validation (no soft-lock)
- Backend health check on startup
- Fallback to static dialogue if LLM offline
- Tested: events , dialogues 
2026-07-17 20:24:58 +02:00

2.3 KiB

Changelog

v0.1.0 — M1: Project Setup + Tilemap (2026-07-16)

Added

  • HTML5 Canvas game with isometric tilemap renderer
  • Procedural tilemap for Eichenhafen (starting city)
  • Tile types: grass, path, water, wall, sand, flowers, trees, buildings, bridge
  • Camera system with smooth follow
  • Player character with movement (click-to-move via A* pathfinding)
  • Player stats: HP, SP, EXP, Level, STR, AGI, INT, VIT, DEX, LUK
  • HP/SP/EXP bars UI overlay
  • Skill bar (1-0 keys, visual only)
  • Minimap with player position
  • Event log with color-coded message types
  • 3 NPCs: Händler Bruno (merchant), Meisterin Vera (class master), Wirtin Helga (innkeeper)
  • 6 monster spawns (Junger Wolf) with aggro/chase/attack AI
  • Combat: click enemy → auto-attack → damage numbers → EXP/gold gain
  • Player death → respawn in Eichenhafen
  • FastAPI backend with SQLite game state
  • LLM bridge (Ollama) for dynamic events and NPC dialogue
  • Event validation system (rejects events that block paths, move NPCs, etc.)
  • Gitea repository: https://gitea.die-heimatlosen.eu/arch_agent/aether-chronicles

Known Issues

  • Skill bar has no functionality yet
  • Inventory not implemented
  • NPC dialogue is static (LLM not yet wired to frontend)
  • Only one map (Eichenhafen)

v0.2.0 — M7: LLM Integration Frontend ↔ Backend (2026-07-17)

Added

  • API bridge (api.js) connecting frontend to FastAPI backend
  • Backend health check on startup — shows LLM model name in event log
  • Dynamic NPC dialogues via Ollama (gemma4:12b)
    • Each NPC gets unique dialogue based on personality, mood, and player class/level
    • 30-second dialogue cache to reduce LLM calls
    • Fallback to static dialogue if LLM unavailable
  • Periodic world event generation (every ~10 seconds)
    • LLM generates optional events (weather, discoveries, encounters)
    • Events validated by backend (no soft-lock possible)
    • Events displayed in event log with prefix and purple color
  • NPC interaction now shows "LLM generating..." placeholder while waiting

Changed

  • NPC interaction is now async (waits for LLM response)
  • Event log color coding: purple (llm), red (combat), green (quest), yellow (system)

Tested

  • Backend health endpoint:
  • Event generation: (gemma4:12b generates atmospheric events)
  • NPC dialogue: (personalized, in-character responses)