The Daily Click ::. Projects ::. Zombie Swarm
 

Project: Zombie Swarm
Project Started: 28th November, 2009 Last Update: 29th October, 2011
Project Owner: Sumo148 Project Members: izac CakeSpear
Project Type: Online Zombie Survival Project Progress:
More Info: http://www.martin2k.co.uk/forums/viewtopic.php?f=19&t=234 Faves: 17

Zombie AI
Posted 30th Jan 10, by CakeSpear  
Hay hay, i am CakeSpear pleased to meet you all!
Through a natural process and personal interest for it, i have been assigned to do the Zombies AI for Zombie Swarm.

(1)Main project FSM
- The Zombies are going to act according to this FSM(Finite State Machine) making the Zombies switch from one state to another:
http://dl.dropbox.com/u/3537859/ZombiePhysicalAIAlternate.jpeg
I will add a more detailed explanation of the different states at a later time.

Before the FSM can be applied to the Zombies there are other 'sub projects'(#2, #3) that needs to be completed and assembled into one master application, for the FSM to be able to execute as planed.

(2)Zombie Perception: LOS + Sound Detection
- For the Zombies to be intelligent, they need to be able to detect the player through sight and be able to detect sound as well. FastLoops will most likely be used to apply perception to all the Zombies.
- The Zombies will be able he hear sound within a certain radius.(exceptions on hearing through thick walls or inconvenient places will be a consideration).
- The Zombies will be able to see other players using a set of 'degrees' from facing direction and 'radius', creating a pizza slice LOS which can proportions can be changed at runtime (yes, there is a very good reason to be able to do so).

(3)Pathfinding
- I have decided to embark on a very advanced pathfinding technique for the Zombies navigational system, which will be the hardest and most challenging part or their AI. I am planing on making a 'node system' similar to that of UT3, consisting of a network of interconnected nodes for the Zombies to navigate between. When complete, the Zombies will for the most part navigate along paths to reach their destinations, rather than continuously ram into walls and such. FastLoops may be used for calculating paths.
- In a worst case scenario, if the method becomes too mind boiling for my own mind, Dijkstra's, A* or other algorithm will be considered for the pathfinding (some available through extension objects i believe)

I will complete the tasks in this sequence:
#2 #3 #1

No comments have been posted for this post.


 



Project Forums


Favourite

Advertisement

Worth A Click