SirStone
12624d3069
feat(PPO_Bot): bot-relative bullets + scan staleness (STATE_DIM=57)
...
- Bullet state (indices 44-55): enemy-relative → bot-relative frame
(bot needs threat vectors to itself for dodging, not to enemy)
- New index 56: scan staleness = min(ticksSinceLastScan / 30, 1.0)
(gives policy a confidence signal for enemy data freshness)
- warm_start.py updated: 44→57 dim expansion, TARGET_DIM variable
- Tests updated for new state layout
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-08-20 14:27:28 +02:00
SirStone
6ad51148f4
fix(PPO_Bot): SIGSEGV crash fixes + static buffers for thread safety
...
- bullets: seq[InFlightBullet] → array[4, InFlightBullet] + bulletCount
(eliminates cross-thread heap realloc under ORC)
- hasFired: edge-triggered (cleared after state build, not level-triggered)
- round_counter parseInt: wrapped for empty/torn file → 0
- Static SVG + intent buffers to kill cross-thread heap realloc
- Tick-local alive/bulletData also fixed arrays
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-08-20 14:23:08 +02:00
SirStone
cdde60d79f
feat(PPO_Bot): command abstraction layer — goto/aimTo controllers ( #24 )
...
- Add gotoTick/aimToTick controller functions (#25 )
- Update network dims: actor 5→6, state 42→44 (#26 )
- Rewrite mapActions for 6-dim command space (#27 )
- Delete stale weight files (shape mismatch)
- Fix existing tests for new signatures
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-08-17 19:20:40 +02:00
SirStone
bbc9e51166
fix(PPO_Bot): state vector bearing uses game coords (north=0° CW)
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-08-16 16:40:28 +02:00
SirStone
588c9ebc2f
feat(PPO_Bot): enemy tracker + 42-float state vector ( #15 )
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-08-16 15:12:13 +02:00