docs: Update bot project status - POC combat system complete

- Mark Phase 3 (shooting), loadout, death/respawn as completed
- Document two-force accuracy system and target recognition
- Add faction-specific spawn commands as current work in progress
- Update last session summary with current context
- Note known issue: bots spawn as player's faction (being fixed)
This commit is contained in:
Claude 2025-11-23 05:45:34 +00:00
parent 2e5b5e0dbd
commit 0452f44545
No known key found for this signature in database
2 changed files with 42 additions and 19 deletions

View file

@ -180,17 +180,23 @@ zone.AvatarEvents ! AvatarServiceMessage(
- [x] Bot takes damage from players (PlayerControl works!)
- [x] Bot movement (10 tick/sec, random wandering, PlayerState broadcasts)
- [x] Multiple bots work independently
- [x] Bot loadout/equipment (POC - proper backpack drops on death)
- [x] Bot shooting with two-force accuracy system (adjustment vs recoil)
- [x] Target acquisition with distance-based recognition time
- [x] Death/respawn cycle with weighted random delays (1-90 sec distribution)
- [x] Burst fire control (resets after 15-25 shots)
### KNOWN ISSUES (Expected for POC)
- No backpack on death (likely because bot has no items/loadout)
- Walks through walls (no collision detection)
- No Z-height adjustment (melts into stairs, terrain)
- Walk speed slightly fast for animation (4 units/sec, try 3)
- Bots spawn as whatever faction the spawning player is (BUG - being fixed)
### IN PROGRESS
- [ ] Faction-specific spawn commands (!botnc, !bottr, !botvs)
- Currently `!bot` spawns bots as the player's faction
- Need separate commands to spawn specific empire bots
### NOT YET IMPLEMENTED
- [ ] Bot loadout/equipment
- [ ] Bot shooting (weapon fire broadcasts)
- [ ] Bot death/respawn cycle
- [ ] Terrain following (Z height from map data)
- [ ] Collision avoidance
- [ ] Pathfinding
@ -198,6 +204,7 @@ zone.AvatarEvents ! AvatarServiceMessage(
- [ ] Celebration coordination system
- [ ] Vengeance/attitude system
- [ ] Population scaling (spawn/despawn based on real players)
- [ ] Bot class differentiation (loadouts will be revised for prod)
---
@ -298,16 +305,27 @@ If the user says **"update the docs"**:
## Last Session Summary
**Date**: 2024 (context creation date)
**Date**: 2025-11-23
**Accomplished**:
- Analyzed PSF-LoginServer codebase architecture
- Mapped spawn/broadcast/GUID flows
- Created behavioral spec from user's notes
- Sketched BotActor and BotSpawner concepts
- Documented key files with line numbers
**Recent Accomplishments**:
- POC fully working: bots spawn, move, fight, die, respawn
- Bot loadout/equipment working (proper backpack drops)
- Two-force accuracy system implemented (adjustment vs recoil)
- Death/respawn cycle with weighted random delays
- Target acquisition with distance-based recognition time
**Current Work**:
- Fixing faction bug: bots spawn as player's faction instead of specified faction
- Adding faction-specific spawn commands: `!botnc`, `!bottr`, `!botvs`
- Files being modified:
- `src/main/scala/net/psforever/actors/session/support/ChatOperations.scala` - add command cases
- `src/main/scala/net/psforever/actors/bot/BotManager.scala` - use passed faction parameter
**DB Notes**:
- Bot characters use DB IDs 2-301 (xxBOTxxTestBot1 through xxBOTxxTestBot300)
- NCBotfighter character in DB is showing as VS (DB quirk, not a blocker)
**Next Steps**:
- Set up dev environment
- Start Phase 1: spawn a static bot
- OR wait for dev team answers on open questions
- Complete faction-specific spawn commands
- Terrain following (Z height)
- Population scaling

View file

@ -106,7 +106,7 @@ See `CODEBASE_MAP.md` for file locations and line numbers.
## Status
**Phase**: POC Complete - Bots Spawn and Move!
**Phase**: POC Complete - Bots Spawn, Move, Fight, Die & Respawn!
### Completed
- [x] Clone PSF-LoginServer codebase
@ -120,6 +120,11 @@ See `CODEBASE_MAP.md` for file locations and line numbers.
- [x] Verify baseline compile and server run
- [x] **Phase 1: Spawn a static bot** - WORKING!
- [x] **Phase 2: Bot moves and broadcasts** - WORKING!
- [x] **Phase 3: Bot detects enemies and shoots** - WORKING!
- [x] Bot loadout/equipment (POC - proper backpack drops)
- [x] Death/respawn cycle with weighted random delays
- [x] Two-force accuracy system (adjustment vs recoil)
- [x] Target recognition time based on distance
### Resolved Questions (Through Trial & Error)
- Avatar IDs must be POSITIVE (900000+), not negative
@ -127,10 +132,10 @@ See `CODEBASE_MAP.md` for file locations and line numbers.
- Must use `registerAvatar()` not `registerPlayer()` (locker needs GUID)
### Next Steps
- [ ] Bot loadout/equipment (no backpack on death without items)
- [ ] Phase 3: Bot detects enemies and shoots
- [ ] Death/respawn cycle
- [ ] Faction-specific spawn commands (!botnc, !bottr, !botvs) - **IN PROGRESS**
- [ ] Terrain following (Z height)
- [ ] Bot class differentiation (loadouts will be revised for prod)
- [ ] Population scaling (auto-spawn/despawn based on real players)
---