Jump to content

Home

Making NPCs walk waypoints


Recommended Posts

The k_inc_walkways.nss file contains the generic functions used to make people walk the waypoints. The naming of the waypoints is important in order to use these functions:

 

wp_NPCtag_## where ## is a two digit number starting with 01. The NPCtag portion should match the .utc tag exactly.

 

(There is a 2nd naming convention that uses wp_xx_## where xx is a two digit number, but this requires extra work with Local Numbers for each creature.)

 

Now, for generic walkpaths, you only really need one .utw file and then you can use the .git file to spawn it multiple times using different tagnames (using the naming convention described above). Almost every .git file has an example of this in its WaypointList field.

 

 

 

Your .utc's spawn-in script should be modeled after k_def_spawn01.nss inasmuch that you preserve the following lines:

[size=1]GN_SetDayNightPresence( AMBIENT_PRESENCE_ALWAYS_PRESENT);
GN_SetListeningPatterns();  
GN_WalkWayPoints();[/size]

These lines will force your .utc to start walking the waypoints that you've named especially for them. :)

 

#glovemaster 19/01/09:

A problem I found was that when you talked to them they stopped walking their waypoints, I had to add the following script to fire onEndDialog to fix it.

[size=1]#include "k_inc_generic"
#include "k_inc_debug"
#include "k_inc_treas_k2"

void main(){
// Force them to continue walking waypoints.
GN_WalkWayPoints();
}[/size]

 

Stormtrooper789 says: For random walking you may be able to do without any waypoints. Use the following script:

void main()
{
AssignCommand(OBJECT_SELF,ActionRandomWalk())
}

Attach this to the .utc OnHeartbeat script event.

Link to comment
Share on other sites

  • 4 years later...

A tutorial that's a little easier to understand.

 

Okay, let's get started.

First, you need to make your creature file.

 

Do everything that you normally do to make a creature file, but I would make the tag very simple. In my case, I used "walkdrd" without the quotes. Also, change the Template ResRef to whatever you decide to make the tag.

 

Under the scripts tab, remove everything, and type the following scripts into their corresponding fields:

OnEndDialogu- k_act_walkways2

OnSpawn- k_def_spawn01

OnRested- k_act_walkways2

 

(These scripts command the NPC to walk the waypoints you will create next)

 

Save your .utc with the same name that you used in the tag and Template ResRef.

 

Now, get the waypoint editor open and enter the following in the Template ResRef, Tag, and Name files:

wp_walkdrd_01 (if you're using a different tag, use wp_tag_01)

 

Next, put your character in the .git file as normal, and then go to the waypoints section. Click 'Add struct', and then use the following for the fields:

 

Save the waypoint as what you used in the last step.

Okay, now make however many more that you need, just changing the number on the end (ex: wp_walkdrd_01, wp_walkdrd_02, .etc).

 

Add the .utc to the .git file as normal, and then go down to the waypoint list and click 'Add Struct.'

Find and existing .git with a waypoint beginning with wp_, and then copy and change the following fields:

Tag: wp_walkdrd_01 (or whatever you saved your waypoint as)

TemplateResRef: wp_walkdrd_10 (or whatever you saved your waypoint as)

XPosition: use whereami cheat to find location

YPosition: use whereami cheat to find location

ZPosition: use whereami cheat to find location

 

Add more waypoints for a longer path. Once your creature completes the last waypoint, he will return to the first and start over.

 

Hope that helps, and remember to include your .utc's and .utw's in the ERF!

 

SS

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...