Introduction
With non player characters becoming more and more important to the next generation of games, it is an area of games that warrants further research to develop these characters to act within the realms of believability. Communities of characters that are able to act based on there own knowledge and environmental factors could possibly be the next step for artificial intelligence in games. The aim of this project will be to determine whether or not it is possible to incorporate cognitively modeled, self animating non player characters (NPC's) on a mass scale within a games environment. This will allow for communities of game characters that can think for themselves and act somewhat realistically and independently of player input. This could be used in many game applications where NPC’s are used heavily throughout such as role playing games (World of Warcraft, Fable 2) and real time strategy games (Command & Conquer, Dawn of War).
Issues
Games such as Assassins Creed and Fable 2 both use NPC’s heavily and both somewhat fail on the believability of these characters. When they are not walking aimlessly around there environment they quiet often partake in walking into walls, standing still and watching when the player assaults a stranger on the street and generally acting strangely. These are 2 example are next generation games and it seems that the AI for the NPC’s is lacking greatly for them both, and it is unacceptable in games of this caliber.
Issues will include avoiding bugs and other behavior related issues that other games have fallen into. While this is the ideal, I do not expect to create a perfect system or to out perform a professional games company, it is simply the aim to try and avoid some of the more basic and aesthetically annoying bugs within that occur regularly in games.
The two main issues that will have to be addressed are that of performance and believability of the actions the character takes. The application will have to incorporate a blend of both these as one is no more important than the other…if the game runs smooth and the character behaves irrationally then no improvement has been made, but if the characters act realistically and the games runs below an acceptable frame rate then the technique will have to be dropped. Finding the right mix will be the most difficult task and the final result may suffer from this decision if the wrong one is made.
Research question
"Is it possible to implement cognitively modeled, self animating non-player characters into a computer game on a mass scale and if so what is the best method for achieving this?"
Addressing the Question
I will need to create a basic 3D game engine as an environment for the NPC's. This will most likely be created using the OGRE graphics rendering engine to try and save time, as it would require minimum work to set up fully. For it to be a realistic interpretation of a game, collision detection, accurate lighting, multiple environmental models and audio will need to be included in this, again OGRE allows for all of these. Once this has been completed I will create the systems which will animate the NPC's. Based on current research it is the plan to try and implement at least 2 and possibly 3 techniques to do this. The first technique will be a fuzzy logic based system, and the second will be an implementation of a technique known as “Situation Calculus”. If time allows the third technique that will be implemented will be a decision tree system. These will be integrated into the game engine and NPC's will be added until the frame rate drops below an acceptable level. The number of NPC's the environment can hold will be the initial bases for my results (the more NPC's that can be contained in the environment, the better) and the secondary criteria of the accuracy of the NPC's actions will be tested after this.
Progress
So far progress has been limited to research into the techniques that will be used. Through this research it has been decided that a comparative study may not be the best course of action. The length of time to develop the application may not be enough to produce a study into the three techniques mentioned earlier. A better course of action may be to pick one method and develop that as far as possible to the same end. More research will be carried out to determine what technique will be the best for this and whether or not it is the best course of action to take. A period of three days has been set to decide once and for all what route to take.
After this period has been passed, I will start to create the environment that the characters will be placed into. The sooner that this is up and running the more work can be carried out on the AI side of things.
Sunday, 16 November 2008
Subscribe to:
Post Comments (Atom)
.jpg)
No comments:
Post a Comment