Commit Graph
9 Commits
Author SHA1 Message Date
irrlichtandClaude Opus 5 03a12c82dc Add Brain enum with hunting foxes; move the A* into the sim
NPC strategy is now a Brain field on the entity (Idle, Wander, Hunt(Prey))
that Sim::think matches on, so behavior is data independent of species.
Hunt follows the first step of an A* route to the nearest prey in sight,
replanned every window; the pathfinder moves from game/ to sim/ for that.
A greedy step-toward-target was tried first and oscillated at walls. Bumps
between the same species no longer fight, and six foxes join the hens.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-19 11:27:47 +02:00
irrlichtandClaude Opus 5 b64c83fce0 Add bump-to-attack, death and a sim event queue
A step onto an occupied tile is now an attack: the geometry rule is checked
against terrain only and the target tile decides between move and bump.
Entities carry an attack stat; at zero hp they are removed. The sim reports
Attacked/Died through an event queue the game drains after every movement
window — the seam for sound, log, camera effects and spawns. Click-to-move
treats an occupied goal as a target but detours around entities in the way;
the player's death ends the game.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-19 10:59:14 +02:00
irrlichtandClaude Opus 5 c512bf49da Ease the camera toward the player's interpolated position
The camera target was the sim tile, which jumps 8 px per movement window,
and the follow was a constant-speed chase that stopped abruptly. Now the
target is the render-side lerp position and the camera closes the gap
exponentially, so it accelerates and settles smoothly. Also spawns the
first NPC and switches the game to World::blocked.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-19 10:51:44 +02:00
irrlichtandClaude Opus 5 7ea351f8e5 Add entity blocking and a wandering NPC
Occupied tiles now block movement through World::blocked, the one predicate
the sim and the pathfinder share. Entities carry an EntityKind so the sim
knows which ones to think for; Sim::think gives each NPC a random king move
one window in four. Intents execute in id order so contested tiles resolve
deterministically.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-19 10:51:44 +02:00
irrlicht a2196feb78 current state 2026-09-18 22:41:20 +02:00
irrlicht 5cc156992f Smooth lerping 2026-07-17 22:58:00 +02:00
irrlicht 674cf91ef3 Pathfinding and re-pickup of the project 2026-07-16 21:08:30 +02:00
irrlicht 5c8494961c CSV-Map loading 2026-06-17 10:28:32 +02:00
irrlicht fd02ed6d8b Resumed to project. INIT 2026-06-17 08:23:13 +02:00