HomeGamesUpdatesPricingMethodology
Steam News20 September 20241y ago

Devlog 3: Creating Smart Enemies

Along with levels and weapons, enemies are one of the toughest but also most crucial design elements when it comes to making a first-person shooter game.

Full notes

Full IHAS update

Read the full published notes in a cleaner layout. The original post stays linked below.

What changed

0 fixes2 additions5 changes0 removals
  • Performance
  • Gameplay
changedIn an FPS game, enemies create an engaging experience, and their behaviour can make or break immersion. A "Smart Enemy" doesn't necessarily mean having to be highly advanced & intelligent. Instead, they need to feel natural and integrated into the game world you're building.
changedThis involves more than just AI; it's about making sure enemies react and move in ways that are believable . Technical issues like T-posing or unnatural movement patterns can pull players out of the experience. Ultimately, smart enemies don’t need to be complex — they just need to seem smart, reacting in ways that feel intuitive and aligned with the player's actions.
addedI booted up the Unreal Engine and began by giving enemies basic movement, allowing them to navigate the levels I had created . After that, I added perception so they could sense their surroundings and react accordingly. To tie it all together, I used behaviour trees . Behaviour trees are sort of like decision-making flowcharts , which helped me organise the AI's actions and behaviours.
addedFor example, if an enemy spotted the player, it would immediately attack. I added sequences and made them capable of handling multiple tasks at once, like moving and attacking simultaneously. It was a simple but effective way to bring my enemies to life.
changedWith the AI set up, I moved on to creating models for each enemy , and I quickly bumped into a major problem. I had 3D modelled five enemy types and four unique bosses and began to create their respective AI. With 9 different behaviour trees in place, adapting even minor tweaks across all enemies became tedious, often leading to buggy behaviour.
changedI definitely encountered a steep learning curve when it came to creating the enemy AI for IHAS. But I felt motivated by the constant trial and error and figuring it all out in the end felt incredibly satisfying, partly because it finally tied the visuals together with the gameplay!

Along with levels and weapons, enemies are one of the toughest but also most crucial design elements when it comes to making a first-person shooter game.

Prior to working on IHAS, I didn’t have a lot of game design experience, so I taught myself the ins and outs of creating enemy AI using books, video tutorials, and lots of experimentation. In this dev log, I’ll give you a rundown of how I taught myself to create the smart enemies in IHAS!

Smart Enemies

In an FPS game, enemies create an engaging experience, and their behaviour can make or break immersion. A "Smart Enemy" doesn't necessarily mean having to be highly advanced & intelligent. Instead, they need to feel natural and integrated into the game world you're building.

This involves more than just AI; it's about making sure enemies react and move in ways that are believable. Technical issues like T-posing or unnatural movement patterns can pull players out of the experience. Ultimately, smart enemies don’t need to be complex — they just need to seem smart, reacting in ways that feel intuitive and aligned with the player's actions.

Creating the AI in Unreal

I booted up the Unreal Engine and began by giving enemies basic movement, allowing them to navigate the levels I had created. After that, I added perception so they could sense their surroundings and react accordingly. To tie it all together, I used behaviour trees. Behaviour trees are sort of like decision-making flowcharts, which helped me organise the AI's actions and behaviours.

For example, if an enemy spotted the player, it would immediately attack. I added sequences and made them capable of handling multiple tasks at once, like moving and attacking simultaneously. It was a simple but effective way to bring my enemies to life.

Creating 9 Enemy Types

With the AI set up, I moved on to creating models for each enemy, and I quickly bumped into a major problem. I had 3D modelled five enemy types and four unique bosses and began to create their respective AI. With 9 different behaviour trees in place, adapting even minor tweaks across all enemies became tedious, often leading to buggy behaviour.

To solve this, I rebuilt the entire AI system, giving each enemy its own unique attack patterns. Some enemies ended up behaving quite differently from others. For the bosses, I combined various elements from the smaller enemies' behaviours, which made them feel more complex without starting from scratch.

I definitely encountered a steep learning curve when it came to creating the enemy AI for IHAS. But I felt motivated by the constant trial and error and figuring it all out in the end felt incredibly satisfying, partly because it finally tied the visuals together with the gameplay!

Stay tuned for more insights in the next devlog! Vladyslav

--------------------------------------------------------------------------------------------------------------

The Difference Studio

Iceberg Interactive

Source

Steam News / 20 September 2024

Open original post

Changelog.gg summarizes and formats this update. How we read updates.