Why hello there! What a nice thing to see you again! This is another entry of your favourite Weekly Update!
This time it's all about (artificial) intelligence. Most new features are linked to AI in one way or another, so let's get right to it!
Step It Up!
First, let's talk about sound!
Previously, the game was almost devoided of sounds. It was pretty miserable, but lately, I've tried to remedy the situation by adding many different sounds.
It gave a whole lot of life and overall made the game much more enjoyable. Now I've also made another big step (sorry for the pun): I've added stepping sounds.
This means that walking around now makes noise. There are also various types of sound for each type of surface.
This applies to both player and AI steps.
Those sounds are also played when the player is either going to jump or is landing from one. It's quite nice to hear and it's a pleasant way to give audio feedback for jumping.
Coming up to our senses
Second, AIs are generally smarter than before with the help of senses. Right now there are only two types of senses: hearing and communicating.
I'm All Ears
First, let's talk about hearing things.
Previously, AIs were lacking any type of ears, meaning that they would only react to a direct line of sight or just by being in their "bubble". This meant that as long as the player avoided any of these situations no ones would be able to spot said player.
But now this all changes: AIs can "hear" sounds like footsteps and gunshots. This system works in an elegant way...
First of all, everyone sounds in the game are fully 3D. This means that a sound has a given position, and because of this there's also a spatial volume roll-off.
By using the sounds' 3D position and applying the volume roll-off we can calculate a perceived volume for each listener. We then compare that to the listeners' hearing threshold to tell whenever or not the sound is heard. If so, then there's an appropriate reaction from the listener.
Next, there's also the communication sense. Although broad, the idea is that an AI can broadcast a message to any other ones close enough to hear it. In that sense, it kinda works like the hearing one, except it's completely silent, is exclusively for AIs and also have a meaning.
Like hearing, each message has a perceived volume (or urgency, as I like to call it) which is defined by the emitters 3D position and a spatial roll-off curve.
Right now, each AI can choose to respond or not to a broadcasted message depending on their willingness. For example, a healthy AIs would be more akin to respond to any messages, while injured ones might be more hesitant to make a move.
Urgencies also depend on the emitter's current condition: if an enemy attacks an AI and the latter is getting dangerously close to death then the broadcasted message base urgency would be high. It's quite a complex thing to decide which is the appropriate urgency level for each message, and it also figures that it would change based on which type of AI are involved.
There are, as of now, only two types of messages:
This message is sent mainly when the AI needs assistance. Right now this is mainly used when an AI is injured. The more injured the AI gets the bigger the urgency is.
This message is sent when an AI wants other AI to take their attention to in a specific direction. Right now this message is sent when AIs spots an enemy.
That's about it for messages.
Next, there's another AI upgrade.
Enemies are now properly reacting to attacks and injuries. If the injured AI didn't spot the attacker they would try to investigate the supposed attacks. This means that the player could technically set up an elaborate trap to lure the AI near and give a lethal blow away from its friends.
Pretty insignificant on its own, but paired with the other AI upgrade this makes gameplay a whole lot better in my opinion.
Yes, you read that right. Bosses are now technically in! (although there's a lot of bugs with their AI and whatnot)
Bosses are usually encountered at the end of a level. They guard the exit and in order for the player to advance they need to take them out.
Type of Bosses
In the finished game there would be two different types of bosses:
As the name suggests, this type of boss doesn't move at all.
Instead of depending on movements to attack and escape players they would use environmental way to distance themselves from the player.
These would generally have a lot more HP than the other type of boss to try to balance things out.
This type of boss will, unlike the sedentary ones, be mobile and move around the room.
They're also using that mobility of theirs to control the distance between their enemies and themselves.
All bosses will use behaviour trees to decide their behaviour and attack patterns. In general bosses attacks are split in two: their announcement and the actual attack.
Before attacking the boss need to "announce" (or telegraph) it first. The player can then easily predict attacks and plan accordingly.
There are also two types of attacks: melee or range. If the target is close enough, a melee attack is used. Otherwise, we use a range one.
Some bosses are restricted to melee attacks while others can do both.
In the final game, there might be multiple cyclic types of attacks per bosses.
Once the player kills the boss a reward is given and the passage to the next level is opened.
The reward got from the encounter is currently randomly chosen, but will most of the time either be pieces of equipment or relics.
The player can either dismiss or collect them. That's where the strategy part comes in!
First ＡＥＳＴＨＥＴＩＣ boss
Right now there's only one particular boss that is fully modelled, textured and even animated (thanks Mixamo).
It's supposed to represent a Greek statue. (Verry ＡＥＳＴＨＥＴＩＣ if you ask me.)
Here you can see it telegraphing a melee attack:
There will be more that one boss but this is a start.
Now that bosses are in there's still a whole lot of work ahead to really polish and fix their behaviour tree, as I'm not much familiar enough to behaviour tree and have still a lot to learn.
I also need to finish attacks so that they do damage.
So next week will be boss-themed I guess.
Other than that the work ahead of me is mostly modelling. I need to really polish each level so they feel different enough from each other to keep the interest and curiosity level up throughout the game.