Game Development Blog 5

This is was the last week before the beta show off in our Game Development course. This week I have been doing all sorts of things to finish stuff before the beta show off, but just like the previous two weeks I will focus this blog on AI since I feel like that is the biggest single task I have worked on during the week.

So last week I described how I wanted my AI to work, when to go for the player, when to do targeted searches of rooms, and when to just roam around the rooms at random. This was all supposed to work with a waypoint system I where he goes to a random waypoint belonging to the same room type as the one the player is walking in ( by room type I mean what kind of floor it is, every type makes a distinct sound which Otto recognizes).

I also described a problem I was having with the pathfinding, and how it didn’t work like it had to. This is the reason why I had to scrap the plans of making Otto have different “modes” like roaming and targeted searching, simply because when I finally managed to fix that problem, (with the help of Tommi, our teacher in Game Programming 2) I didn’t have enough time to get the whole logic of that implemented. This was even further worsened thanks to me falling ill on Tuesday. As of the writing of this blog (Thursday), I am still sick, but today I managed almost an entire day’s work.

In the end for beta the enemy will simply track where the player is and move there to look for you. This is a very “cheaty” behavior since it means that Otto always knows of your position and furthermore he will take the shortest route towards you, and as such I lowered his movement speed to compensate for his sudden boost in presence, so that the player at least could outrun him if they saw him in time.

This is one of the modes that I want to include in the final version of our enemy AI, with the other ones being the ones I spoke about above, targeted searches of rooms associated with player’s room type, and general roaming for when he has no clue where you are. There behaviors should be pretty easy to implement in the game, just that I unfortunately didn’t have that time before the beta deadline.

About Erik Lindgren

2014  Programming