This demo showcases the Berserker's relentless aggression, the Warrior's tactical defense, and the Cleric's supportive healing behaviors all working in harmony to create challenging combat encounters.
From Concept to Combat: Building Intelligent AI Enemies
This demo showcases the Berserker's relentless aggression, the Warrior's tactical defense, and the Cleric's supportive healing behaviors all working in harmony to create challenging combat encounters.
Creating Blood and Sand's AI combat system was about solving a core challenge: How do you make AI enemies that feel intelligent, varied, and fun to fight? My approach focused on giving each enemy archetype a distinct personality through their combat behaviors, creating a rock-paper-scissors dynamic that keeps players engaged.
Each enemy needed to feel like a different opponent, not just a stat variation
Players should need different strategies for each enemy type
Enemies should complement each other when fighting together
Combat should feel visceral, strategic, and rewarding
The 3.5km combat arena where all AI behaviors come together
Multi-enemy Encounter
Tactical Positioning
Dynamic Combat Flow
Player Character
Each enemy type was designed to solve a specific gameplay problem and create unique tactical challenges
Create constant pressure that forces players to stay mobile and think quickly under stress.
"The Berserker teaches players to maintain distance and timing"
Create a methodical opponent that rewards patient, strategic play over button mashing.
"The Warrior forces players to learn patience and timing"
Add a priority target that changes the entire flow of multi-enemy encounters.
"The Cleric creates tactical depth in group encounters"
My approach to AI behavior was to create modular, readable behavior trees that designers could easily modify and expand.
Simple but effective: Can See Player? → Chase → Attack → Repeat
The beauty is in the relentlessness - no complex decision making, just pure aggression.
Combat Sub-tree
Movement Sub-tree
Building a system that could handle multiple intelligent enemies required careful architectural planning.
AI Controller
├── Perception Component
├── Behavior Tree Component
├── Combat Component
└── Movement Component
Clerics communicate with other enemies to determine healing priorities, while Warriors can call for backup when overwhelmed.
Decision Making Sub-tree
Smart AI means nothing if the game doesn't run smoothly. My focus was on maintaining 60+ FPS even with complex AI calculations.
Fine-tuning AI timing, attack telegraphs, and visual feedback to make combat feel responsive and fair. Players needed to feel like victories and defeats were earned.
Before and after polish passes - notice the improved visual clarity and spacing
Beyond the technical implementation, I wanted to create a specific feeling when players experienced combat. Every decision was made to support this emotional goal.
Every hit needed to feel weighty and consequential. AI timing and player feedback were tuned to create that satisfying "crunch" when attacks connect.
Players should feel smart when they figure out the optimal approach for each enemy combination. The "aha!" moment when they realize they need to target the Cleric first.
Combat encounters build intensity naturally. Starting with single enemies, escalating to coordinated group attacks that test everything the player has learned.
When players win, they should feel like they outplayed intelligent opponents, not just executed the right button sequence. AI behaviors reward skill and punish mistakes fairly.
The Berserker's straightforward aggression was more effective than complex behaviors. Sometimes the best AI is the most readable AI.
AI behavior timing had to account for human reaction time and decision-making patterns. Frame-perfect AI isn't fun AI.
Individual enemy behaviors that worked perfectly solo needed adjustment when fighting in groups. The whole is different than the sum of its parts.
Optimization wasn't an afterthought—it was integrated into the design process. Smooth performance enhances the feeling of responsive, intelligent AI.