Full notes
Full MoeArmy vs SuArmy update
Read the full published notes in a cleaner layout. The original post stays linked below.
What changed
- Performance
- Gameplay
- Fixes
- Balance
- Server
- UI and audio
# Update 11: 0.9.5D — Massive Unit Performance Optimization & Battlefield Behavior Rework
Update Scale: Minor | Small | ==Medium== | Large | Major
This update is a comprehensive optimization in preparation for the official release. The majority of changes are performance improvements, laying a solid foundation for the full version!
Core systems including targeting, combat, and unit spawning have been completely reworked!
Under a 700-unit scenario, version 0.9.4D ran at 9~15 FPS, while 0.9.5D runs at 40~60 FPS. Tested on CPU: i7-12700K.
Performance is now **4x** that of the previous version!
---
## ⚡ Performance Optimization
### Spawning System Fully Reworked
**Unified Spawn Management**: Player spawns, scripted spawns, and enemy spawns are all managed by a single system, eliminating the previous fragmented approach.
**Smart Quota Allocation**: Friendly and enemy units are spawned in parallel batches. When one side finishes, its quota is automatically transferred to the other side, making spawning faster and smoother.
**No More Wave Start Stutter**: During large wave starts, units now appear in smooth batches instead of causing a sudden freeze.
### Targeting System Major Optimization
- **Smart Search Pacing**After losing a target, units no longer all search simultaneously. Instead, each unit waits a brief random moment before searching for a new target, preventing hundreds of units from searching at once and causing frame drops.
**Post-Kill Pause**: After killing a target, units now pause in place for about 1 second before moving again, instead of immediately rushing forward. The front line is now much more stable.
- **Target Loss Detection Fix**Fixed an issue where units would fail to pause correctly after a target disappeared, causing them to advance instead of holding position.
### Area Damage Significant Speedup
**Tower Death Chain Strikes**: Optimized the damage calculation method, greatly reducing the computational cost of each strike.
**Precision Strike Protocol**: Synchronized optimization for smoother deployment.
**Unified Optimization**: All area damage (splash, protocols, tower death effects, etc.) now uses a more efficient detection method.
### Resource Loading & Caching
**Tower Death Effect Preloading**: Visual effects and scripts for tower destruction are now preloaded, eliminating stutter at the moment of death.
**Missile Texture Preloading**: All missile textures are preloaded, making protocol deployment smoother.
**Explosion Effect Info Caching**: Frame counts and sizes for explosion effects are calculated once and cached, eliminating repeated scanning.
**Shield Effect Caching**: Shield flash circular textures are cached by size, no longer regenerated on every hit.
### Audio System
**Smart Audio Throttling**: During large-scale battles, identical sound effects automatically control their playback frequency, preventing stutter and audio clutter caused by sound stacking.
### Code Cleanup
- **Dead Code Removal**Removed deprecated spatial partitioning code, reducing engine overhead.
---
## 🎮 Battlefield Behavior Improvements
### Pre-Attack Stop Delay
Units entering attack range will now continue moving a short random distance before stopping to attack, staggering the stopping positions of same-range units and reducing complete overlap.
### Post-Target-Loss Pause
After killing a target or when a target disappears, units will pause in place instead of immediately rushing to the next target or advancing forward, giving the battlefield a more rhythmic feel.
---
Source
Changelog.gg summarizes and formats this update. How we read updates.