Out of cheese?
News News
Befunge Befunge
Doom Doom
Inform Inform
   - Library stuff
   - NPC stuff
   - ZProlog

Quake Quake
Misc Misc
Links Links
Contact Contact

Half-finished NPC library

npc.zip (52,379 bytes)

This is my attempt at an advanced NPC library, suitable for games where interaction with, and building relations with, NPCs is a vital part of the game. Specifically I was aiming at a simulation similar to that used in The Sims; i.e. each NPC has an emotional state, and is able to interact with numerous items in the game world in order to make it happy. I was also aiming at having the NPCs intelligent enough to understand simple sentences; e.g. so that you can (or another NPC can) tell it to go to a certain place, wait for someone to arrive before doing something, search for an object, etc. However the library is unfinished in two major ways:

  • The pathfinding is very poor. Changing it to a proper breadth first or A*-ish algorithm would be a good idea.
  • The language processing and knowledge base system has hardly even been started. At the moment you can (if you're lucky) tell or ask an NPC where something is, but that's about it.

Also the standard library wasn't really designed with NPCs in mind. At the moment the NPCs will happily walk around and interact with (suitably coded) objects, but that's about it. There isn't any documentation beyond the comments in the source code, so you're on your own if you decide to try this out.

Needs my standard library improvements/bugfixes to work.

Page last modified 03/03/2005