agathoandClaude Opus 4.5 a23ab5203a feat(movement): Replace MotionMaster with BotMovementController (Task 3 Partial)
TASK 3 PARTIAL COMPLETE: Movement Generator Replacement (3/33 files)

Core Files Updated:
- AI/Actions/CommonActions.cpp - MoveToPosition & FollowAction
- Quest/QuestCompletion.cpp - Quest turn-in navigation (NPC/GO)
- Created comprehensive migration guide for remaining files

Changes:
- Replace direct MotionMaster calls with BotMovementController
- Add GetBotAI() helper usage for safe AI access
- Implement fallback to legacy MotionMaster if validation fails
- Support non-bot players (check BotAI existence)
- Preserve existing debug logging

Migration Pattern:
```cpp
// Before: bot->GetMotionMaster()->MovePoint(0, x, y, z);
// After:
if (BotAI* ai = GetBotAI(player))
{
    Position dest(x, y, z, 0.0f);
    if (!ai->MoveTo(dest, true))  // validated
        player->GetMotionMaster()->MovePoint(0, dest);  // fallback
}
```

Benefits:
✅ Validated pathfinding for quest navigation
✅ Ground/collision/liquid validation in movement actions
✅ Graceful fallback maintains stability
✅ No impact on non-bot players

Documentation:
- Created .claude/MOVEMENT_MIGRATION_GUIDE.md
- Documents migration pattern for all 33 files
- Prioritizes remaining files (HIGH/MEDIUM/LOW)
- Provides testing guidelines

Remaining Work:
- 30 files to migrate (see migration guide)
- Priority: Combat files (15 usages in RoleBasedCombatPositioning)
- Medium: ClassAI files (spec-specific movement)
- Low: Dungeon/Travel files (specialized movement)

Testing:
✅ Compiles without errors
✅ Backward compatible (fallback to legacy)
✅ Ready for runtime validation

Part of: Movement System Integration (Task 3/6)
Related: MOVEMENT_INTEGRATION_PROMPT.md, MOVEMENT_MIGRATION_GUIDE.md

Co-Authored-By: Claude Opus 4.5 <[email protected]>
Signed-off-by: luis <[email protected]>
2026-02-04 20:36:57 -03:00
2026-01-20 21:24:33 -03:00
2026-01-28 18:45:01 -03:00
2026-01-20 21:25:30 -03:00
2026-01-20 21:27:50 -03:00
2026-01-20 21:28:45 -03:00
2026-01-20 21:29:54 -03:00
2026-01-20 21:29:54 -03:00
2026-01-20 21:33:16 -03:00
2026-02-02 00:47:02 -03:00
2026-01-20 21:25:30 -03:00
2026-01-20 21:25:30 -03:00
2026-01-20 21:25:30 -03:00
2026-01-20 21:25:30 -03:00
2026-01-20 21:25:30 -03:00
2026-01-20 21:25:30 -03:00
2026-01-20 21:25:30 -03:00
2026-01-20 21:25:30 -03:00
2026-01-20 21:25:30 -03:00
2026-01-20 21:25:30 -03:00
2026-01-20 21:25:30 -03:00
2026-01-20 21:25:30 -03:00
2026-01-20 21:25:30 -03:00
2026-01-20 21:25:30 -03:00
2026-01-20 21:25:30 -03:00
2026-01-20 21:25:30 -03:00
2026-01-20 21:25:30 -03:00
2026-01-20 21:25:30 -03:00
2026-01-20 21:25:30 -03:00
2026-01-20 21:25:30 -03:00
2026-01-20 21:25:30 -03:00
2026-01-20 21:25:30 -03:00
2026-01-20 21:25:30 -03:00
2026-01-20 21:25:30 -03:00
2026-01-20 21:25:30 -03:00
2026-01-20 21:25:30 -03:00
2026-01-20 21:25:30 -03:00
2026-01-20 21:25:30 -03:00
2026-01-20 21:25:30 -03:00
2026-01-20 21:25:30 -03:00
2026-01-20 21:25:30 -03:00
2026-01-20 21:27:50 -03:00
2026-01-20 21:27:50 -03:00
2026-01-20 21:27:50 -03:00
2026-01-20 21:27:50 -03:00
2026-01-20 21:27:50 -03:00
2026-01-20 21:27:50 -03:00
2026-01-20 21:27:50 -03:00
2026-01-20 21:27:50 -03:00
2026-01-20 21:27:50 -03:00
2026-01-20 21:27:50 -03:00
2026-01-20 21:27:50 -03:00
2026-01-20 21:27:50 -03:00
2026-01-20 21:27:50 -03:00
2026-01-20 21:27:50 -03:00
2026-01-20 21:28:45 -03:00
2026-01-20 21:28:45 -03:00
2026-01-20 21:28:45 -03:00
2026-01-20 21:28:45 -03:00
2026-01-20 21:28:45 -03:00
2026-01-20 21:28:45 -03:00
2026-01-20 21:28:45 -03:00
2026-01-20 21:28:45 -03:00
2026-01-20 21:28:45 -03:00
2026-01-20 21:28:45 -03:00
2026-01-20 21:28:45 -03:00
2026-01-20 21:28:45 -03:00
2026-01-20 21:28:45 -03:00
2026-01-20 21:28:45 -03:00
2026-01-20 21:28:45 -03:00
2026-01-20 21:28:45 -03:00
2026-01-20 21:28:45 -03:00
2026-01-20 21:28:45 -03:00
2026-01-20 21:28:45 -03:00
2026-01-20 21:28:45 -03:00
2026-01-20 21:28:45 -03:00
2026-01-20 21:28:45 -03:00
2026-01-20 21:28:45 -03:00
2026-01-20 21:28:45 -03:00
2026-01-20 21:28:45 -03:00
2026-01-20 21:28:45 -03:00
2026-01-20 21:28:45 -03:00
2026-01-20 21:28:45 -03:00
2026-01-20 21:28:45 -03:00
2026-01-20 21:28:45 -03:00
2026-01-20 21:29:54 -03:00
2026-01-20 21:29:54 -03:00
2026-01-20 21:33:16 -03:00
2026-01-20 21:33:16 -03:00
2026-01-20 21:33:16 -03:00
2026-01-20 21:33:16 -03:00
2026-01-20 21:33:16 -03:00
2026-01-20 21:33:16 -03:00
2026-01-20 21:33:16 -03:00
2026-01-20 21:33:16 -03:00
2026-01-20 21:33:16 -03:00
2026-01-20 21:33:16 -03:00
2026-01-20 21:33:16 -03:00
2026-01-20 21:33:16 -03:00
2026-01-20 21:33:16 -03:00
2026-01-20 21:33:16 -03:00
2026-01-20 21:33:16 -03:00
2026-01-20 21:33:16 -03:00
2026-01-20 21:33:16 -03:00
2026-01-20 21:33:16 -03:00
2026-01-20 21:33:16 -03:00
2026-01-20 21:33:16 -03:00
2026-01-20 21:33:16 -03:00
2026-01-20 21:33:16 -03:00
2026-01-20 21:33:16 -03:00
2026-01-20 21:33:16 -03:00
2026-01-20 21:33:16 -03:00
2026-01-20 21:33:16 -03:00
2026-01-20 21:33:16 -03:00
2026-01-20 21:33:16 -03:00
2026-01-20 21:33:16 -03:00
2026-01-20 21:33:16 -03:00
2026-01-20 21:33:16 -03:00
2026-01-20 21:33:16 -03:00
2026-01-20 21:33:16 -03:00
2026-01-20 21:33:16 -03:00
2026-01-20 21:33:16 -03:00
2026-01-20 21:33:16 -03:00
2026-01-20 21:33:16 -03:00
2026-01-20 21:33:16 -03:00
2026-01-20 21:33:16 -03:00
2026-01-20 21:33:16 -03:00
2026-01-20 21:33:16 -03:00
2026-01-20 21:33:16 -03:00
2026-01-20 21:33:16 -03:00
2026-01-20 21:33:16 -03:00
2026-01-20 21:33:16 -03:00
2026-01-20 21:33:16 -03:00
2026-01-20 21:33:16 -03:00
2026-01-20 21:33:16 -03:00
2026-01-20 21:33:16 -03:00
2026-01-20 21:33:16 -03:00
2026-01-20 21:33:16 -03:00
2026-01-20 21:33:16 -03:00
2026-01-20 21:33:16 -03:00
2026-01-20 21:33:16 -03:00
2026-01-20 21:33:16 -03:00
2026-01-20 21:33:16 -03:00
2026-01-20 21:33:16 -03:00
2026-01-20 21:33:16 -03:00
2026-01-20 21:33:16 -03:00
2026-01-20 21:33:16 -03:00
2026-01-20 21:33:16 -03:00
2026-01-20 21:33:16 -03:00
2026-01-20 21:33:16 -03:00
2026-01-20 21:33:16 -03:00
2026-01-20 21:33:16 -03:00
2026-01-20 21:33:16 -03:00
2026-01-20 21:33:16 -03:00
2026-01-20 21:33:16 -03:00
2026-01-20 21:33:16 -03:00
2026-01-20 21:33:16 -03:00
2026-01-20 21:33:16 -03:00
2026-01-20 21:33:16 -03:00
2026-01-20 21:33:16 -03:00
2026-01-20 21:33:16 -03:00
2026-01-20 21:33:16 -03:00
2026-01-20 21:33:16 -03:00
2026-01-20 21:33:16 -03:00
2026-01-20 21:33:16 -03:00
2026-01-20 21:33:16 -03:00
2026-01-20 21:33:16 -03:00
2026-01-20 21:33:16 -03:00
2026-01-20 21:33:16 -03:00
2026-01-20 21:33:16 -03:00
2026-01-20 21:33:16 -03:00
2026-01-20 21:33:16 -03:00
2026-01-20 21:33:16 -03:00
2026-01-20 21:33:16 -03:00
2026-01-20 21:33:16 -03:00
2026-01-20 21:33:16 -03:00
2026-01-20 21:33:16 -03:00
2026-01-20 21:33:16 -03:00
2026-01-20 21:33:16 -03:00
2026-01-20 21:14:35 -03:00
2026-01-20 21:33:16 -03:00
2026-01-20 21:33:16 -03:00
2026-01-30 20:37:05 -03:00
2026-01-20 21:33:16 -03:00
2026-01-20 21:33:16 -03:00
2026-01-20 21:33:16 -03:00
2026-01-20 21:37:09 -03:00
2026-01-20 21:37:09 -03:00
2026-01-20 21:37:09 -03:00
2026-01-20 21:37:09 -03:00
2026-01-20 21:37:09 -03:00
2026-01-20 21:37:09 -03:00
2026-01-20 21:37:09 -03:00
2026-01-20 21:37:09 -03:00
2026-01-20 21:37:09 -03:00
2026-01-20 21:37:09 -03:00
2026-01-20 21:37:09 -03:00
2026-01-20 21:37:09 -03:00
2026-01-20 21:37:09 -03:00
2026-01-20 21:37:09 -03:00
2026-01-20 21:37:09 -03:00
2026-01-20 21:37:09 -03:00
2026-01-20 21:37:09 -03:00
2026-01-20 21:37:09 -03:00
2026-01-20 21:37:09 -03:00
2026-01-20 21:37:09 -03:00
2026-01-20 21:37:09 -03:00
2026-01-20 21:37:09 -03:00
2026-01-20 21:37:09 -03:00
2026-01-20 21:37:09 -03:00
2026-01-20 21:37:09 -03:00
2026-01-20 21:37:09 -03:00
2026-01-20 21:37:09 -03:00
2026-01-20 21:37:09 -03:00
2026-01-20 21:37:09 -03:00
2026-01-20 21:37:09 -03:00
2026-01-20 21:37:09 -03:00
2026-01-20 21:37:09 -03:00
2026-01-20 21:37:09 -03:00
2026-01-20 21:37:09 -03:00
2026-01-20 21:37:09 -03:00
2026-01-20 21:37:09 -03:00
2026-01-20 21:37:09 -03:00

WowCommunityProject

Blizzlike WowCommunity project

S
Description
No description provided
Readme
308 MiB
Languages
C++ 89.3%
C 10.1%
CMake 0.4%