I'm taking all my zombie-related facts from the [Zombie Survival Handbook][1]Zombie Survival Handbook. Which, on a tangent, is a very entertaining read.
A stereotypical zombie would be very stupid - so it wouldn't need AI for things like:
- Opening doors, though it could probably break them (if you choose to go for a destructible route)
- Any kind of tactics
- Climbing, or the Z-axis at all.
- Swarming.
Instead, you would want zombies to do things like:
- Walk around aimlessly until they get a target
- Chase the target until it disappears
- Follow the trail of the lost target for a short time
- Repeat
I'm pretty sure a simple state machine would be useful - either WANDER, FOLLOW, OR LOST.
As for the target searching, each zombie could have a field-of-vision check. If target can be seen, change state and set the direction to go.
Something interesting may be to have different target checks. Not just if a zombie sees you, but perhaps if you wandered an area you could leave a 'scent trail', putting a zombie into the LOST state? Or if you fired a large weapon, the zombie would be attracted to your position in the LOST state? This second one could have an area-of-effect radius, giving a swarm-type pattern since all the zombies will end up in one area, and then move as one.
As for implementing, it wouldn't be much more than having a check to see if the player has been seen, then some very dirty pathfinding - quick and dirty rather than something like A* - a zombie isn't going to go the optimal route - and a state machine. Just make sure that your random walk does have some form of obstacle avoiding - I really hate it when enemies just run into buildings for ages. ;-) [1]: http://en.wikipedia.org/wiki/The_Zombie_Survival_Guide