About This File
Advanced Behavioral Simulation System for WRobot
Overview
This combat class represents an experimental AI-driven Warrior Tank system designed for WRobot.
It combines predictive movement, adaptive hysteresis, and context-aware decision making to simulate highly realistic player behavior during combat.
The system is built around multiple synchronized threads controlling both rotation and movement intelligence independently, allowing it to react smoothly to complex combat situations and environmental changes.
Core Features
-
π§ Adaptive AI Movement Engine
Dynamically positions the player at the threat centroid, repositions based on enemy spread, and adjusts movement smoothness according to FPS, ping, and encounter type (trash, elite, boss). -
βοΈ Predictive Enemy Tracking
Utilizes Kalman-based filtering to estimate enemy movement vectors and accelerations, improving facing and threat control accuracy. -
βοΈ Context-Aware Combat Positioning
Detects isolated targets, executes Charge or Intercept where appropriate, and uses fallback movement logic when gap closers are on cooldown. -
π§© Threaded Coordination System
Rotation and movement logic run in separate threads, synchronized through custom locks and adaptive state arbitration layers. -
π§± Adaptive Hysteresis System
Dynamically recalibrates movement thresholds based on performance metrics, preventing excessive micro-adjustments and improving realism under unstable frame rates or network latency. -
π§ Momentum-Based Movement Model
Simulates inertia and directional smoothing for more human-like motion transitions.
Entropy & Timing Source
This system uses a high-quality entropy source derived from the operating system scheduler and runtime timing variations.
Key properties:
-
The entropy is effectively CPU-free (it leverages natural scheduling jitter, timer granularities and other OS timing artifacts rather than expensive cryptographic operations).
-
The behavior produced by this entropy source is inherently non-deterministic and differs across machines β even identically configured systems will exhibit small, meaningful timing differences.
-
These timing differences are intentionally used to produce microvariation in movement and decision timing so that runs are not perfectly repeatable.
Note: the entropy mechanism is not a cryptographic RNG; it is a lightweight, practical source of behavioral randomness derived from normal OS operation and scheduling jitter.
Performance and Behavior
This class constantly self-adjusts based on:
-
Current FPS and ping
-
Number of enemies
-
Player health
-
Threat status and boss detection
It strives to behave differently under varying system conditions β introducing slight desynchronization across machines.
This creates unique microbehavior signatures, reducing the chance of pattern-based analysis producing identical traces.
β οΈ Important Notice β BETA Version
This system is currently in BETA and contains a carefully tuned internal race condition design.
These controlled timing variances serve as a behavioral anti-analysis layer, ensuring that no two executions behave identically β even on the same computer.
However, due to this design, the AI may sometimes:
-
Attempt to move in unintended directions
-
Overreact to sudden environmental or combat changes
-
Momentarily βbreak freeβ or exhibit erratic behavior (βself-destructive impulsesβ)
β‘οΈ Manual supervision is absolutely required.
Never run this system unattended β it is intended for research and supervised use only.
Known Risks & Stability Notes
-
The system uses multiple threads and many fine-grained locks; while designed to be thread-safe, deadlocks or race outcomes can still occur under pathological conditions.
-
In extreme cases, the character may attempt risky movement (e.g., run directly into environmental hazards or pathing pitfalls).
-
Operator oversight is mandatory β monitor behavior and be ready to interrupt or take manual control.
Β
π§© Internal Architecture
Main (ICustomClass)
β
βββ Thread #1 β RunRotation()
β - Handles combat, buffs, targeting
β
βββ Thread #2 β RunMovementAI()
β - Handles positioning, facing, LoS, gap closer logic
β
βββ Sub-thread β PathfindingOptimizer
- Calculates safe spots and escape routes
Β
WarriorTankRotation
β
βββ TankMovementAI
β βββ EnemyMovementPredictor β Kalman filter prediction
β βββ AdaptiveHysteresis β FPS / Ping adaptive smoothing
β βββ PathfindingOptimizer β Separate thread for safe pathfinding
β βββ IsolatedTargetHandler β Charge / Intercept decision system
β βββ ExponentialSmoothing β Smooth motion and rotation
β βββ PerformanceMetrics β Internal benchmark & debugging
β βββ DangerState β Environment threat evaluation
β
βββ TurnCommandArbiter β Rotational control priority
β
βββ WRobotCoordinator β Manages shared movement ownership
Combat Start
β
ββ Is manually controlled? β Pause AI
β
ββ Target in range?
β ββ <5y β Maintain melee
β ββ 8β25y β Use Charge/Intercept
β ββ 5β8y β Fallback to charge range
β ββ >25y β Direct approach
β
ββ Isolated from group? β Smart Gap Closer logic
β
ββ Danger detected?
ββ Compute escape path (PathfindingOptimizer)
ββ Defensive rotation & movement priority
π§Ύ Internal Evaluation
| Category | Score |
|---|---|
| Architecture | β 10/10 |
| Movement AI | β 9.5/10 |
| Stability | β 9/10 |
| Combat Logic | β 8.5/10 |
| Human-like Control | β 10/10 |
Total Score: π§© 9.3 / 10
π§° Requirements
-
WRobot for WoW 3.3.5a (WotLK)
-
.NET Framework 4.7.2+
-
Protection Warrior
π¬ Final Words
This FightClass merges combat logic, movement prediction, and manual input detection into a smooth, human-like tank AI.
Perfect for soloing, grinding, or dungeons β safe, adaptive, and powerful.
π§ͺ Status: BETA
π» Author: Calaude
π§ Version: v5.2 (DEBUG + LoS)
ποΈ Build: Advanced_WAR_TANK_192_Optimized
What's New in Version 1.0.180 See changelog
Released
-
180
Β
π PRIORITY LIST
CRITICAL (Fix Immediately):
-
β Timer.IsReady race condition - Causes double-execution, corruption
-
β Arbiter blocks emergency during manual timeout - Tank gets hit from behind
-
β Dual-threshold state desync - AI oscillates or gets stuck
HIGH (Fix Soon):
-
β Centroid returns invalid position - Wrong positioning decisions
-
β Manual control detection delay - Input lag, poor UX
-
β Cleanup coordination lost signal - State corruption over time
-
β WRobot ownership deadlock - Can't escape bad situation
MEDIUM (Optimize):
-
β Turn cooldown too aggressive - Slow reaction to threats
-
β O(nΒ²) threat loop - Performance hit with many enemies/party
-
β Lock contention in updates - FPS drops
-
β Angle smoothing delay - Slow emergency response
LOW (Polish):
-
β Excessive trig calculations - Minor CPU waste
-
Documentation of magic numbers
-
Error handling completeness
Β
