Hi,
This is just a basic path following bot, later we will add more personality.
You will need the Blender file to follow what is happening.
Click here for the file

run the file before going further so you understand what is going on.
The bot is following a network of  "path nodes"
while the demo is running press the N key to toggle the path nodes on and off.

Here is how I make a simple path node network, and a simple bot that follows it.
in later tutorials we will add more personality.

First we need a bot rig, for this tutorial I am just going to use a simple mesh.


I have named the mesh Bot. (name is un important now)

Now I tick the Actor,and Dynamic tabs , I also set the bot's bounds to cylinder.



I now need some way to keep a record of which node the bot is currently following so I add the property "node" and make it into an integer

OK,
Now our little friend is finished for now. We now need to make a path node.
I have created a Cube and vertex painted it red so it is easy to see.
I have also made a material with the vertex paint tab  ticked, so later we can see the nodes ingame if needed for debuging.


This part is quite important! notice in the picture below that I have made the cube the exact height of my bot, and that the center is at exactly the same height as the bot's center.

The reason for this is that ingame the bot will be actualy aiming at the center of the object. If  the center is  taller than the bot he will apear to be floating off the ground. If the node is too low the bot may pop through your floor/terrain mesh and fall into infinity .
(Later I will exlpain how to keep the bot  on the floor, even if the node is too high)

Here is the logic I add to the node:


The most important part is here:

I make it into a ghost so that things like the player dont run into it.
I also add the "path node" property to it, This will identify the node to the bot's collision later on in the tutorial.

The rest of the nodes logic I added so that we can toggle (turn on and off) the path nodes visibility. THIS IS VERY nice for debugging, I highly recomend you do this to keep your sanity later.

Basicaly I have the N key set to add +1 to the property named "switch".
when the property named "switch" is 0 (default setting) the node is invisible
and when it is 1 the node will become visible.
when the switch reaches 2, it resets back to 0 and the node is invisible again.
Here is a closer look:



To make life easyer on me I also do some tweaks in the Objects pannel so I can easily Identify my nodes in the editor window.
I turn on the Name and wire.



I have now duplicated my pathnodes, and renamed them 1- 10 as seen here:


10 nodes should do nicely for a small patrol area, for your game you may need more or less.
I usualy have the enviornment all modeled before I do the nodes, so I can see exactly how many I will need.
for this tutorial , we will keep the number small.

Allright, now lets make the node network into a simple circle, and add a floor/ground/terrain mesh.
I subdevided a plane a few times and added some simple vertex color:



Make sure all the pathnodes are on the floor mesh. If they are above our bot will float, if they are under the floor our poor bot will fall into infinity.
We will arange them in a more complex pattern later, I usualy do a circle pattern at first soI can quickly debug my bot while he runs around the network.

OK now back to  our bot,
Lets program our bots "node" property first ,                      

Make sure "node" is a Intager, click the D tab for debug, and ad a 1 to the field.
Make an identicle property and call it speed... all debug, and 1 :D

In the main blender menu, click on Game, and make sure debug is checked on so you can see the bot count nodes as he travels around the network.
here is the first set of blocks:



in English : When the property node = 1 then face the object "1"  (our path node 1 ).
I repeat this for every path node:



ok now when the property  "node" is at 11, we want the cycle to loop back to 1 like this:



ok, now to make the bot count the nodes,
we will do this with a collision sensor and add + 1 to the "node" property every time the bot collides with an object with a "path node" property.
like this:


OK,
now the easy part...
we make the bot move forward whenever the property "speed"=1.(we set this to 1 when we made it)
I used a Motion actuator and a Local +5 linV


OK, now if everything went well  you should have the bot running around in a circle when you play the game engine.
Press N to turn the nodes on and off ....

well, that is it for the first part of the tutorial.