Classification and Clashing

Everything in the world, from the most complex bird or plant to the icons that allow you to select a creature or change room, are agents. These are autonomous beings who are scripted with the proprietary Creature Labs CAOS language. The Norns, Grendels and Ettins themselves are also linked into the CAOS language, but the general mechanism for creating these creatures is beyond the scope of these agent tutorials ... for these tutorials we we will only concern ourselves with the agents that are not running a brain.

Let's start with the basics, don't worry if some of the words are unfamiliar at the moment hopefully they will become clear as the lessons progress ... and other tutorials will provide you with simple templates you can alter to create your very own objects!

The very least you should understand before messing around and creating your own objects is how classification works.

The most important part of creating an agent is assigning it a classifier. This classifier will uniquely identify the type of agent and allows it to own event scripts that will dictate it's behaviour and response to the world around it and/or other agents.

The unique classifier that every type of agent must have is made up of 3 numbers which correspond to the family, genus and species of the object. Below is a table listing the family and genus categories:

FamilyGenus
11 Invisible to Norns
 2 User Interface and system parts
21 Hand
 2 Door
 3 Seed
 4 Good Plant
 5 Bad Plant
 6 Leaf
 7 Flower
 8 Good Fruit
 9 Bad Fruit
 10 Detritus
 11 Food
 12 Buttons and Switches
 13 Good Bug
 14 Bad Bug
 15 Good Critter
 16 Bad Critter
 17 Nest
 18 Agent Egg
 19 Weather
 20 Bad
 21 Toy
 22 Incubator
 23 Vendors
 24 Tools
 25 Potions
31 Lifts
 2 Teleporters
 3 Machinery (fixed, non-movable)
 4 Creature Egg
 5 Norn Home
 6 Grendel Home
 7 Ettin Home
 8 Gadgets

From this table you can see that there is a grouping of objects and this is not coincidental - for example, family 2 genus 11 objects are all classed as Food. Where the variety of food objects come from is by having a species number that is not used by any other food object (the species numbers have not been shown here for clarity, check the Classifier List on the CDN for a complete list of all classifiers in use). So, for example, carrots and cheese are both classed as food (family 2, genus 11) but the carrot is classed as species 1 and the cheese as species 2. This gives a triplet that we call the classifier for the object: carrot classifier = 2 11 1; and the cheese classifier = 2 11 2.

The reason for classification is many faceted but primarily it is to allow the creatures with brains to make sensible generalisations about the agents in the world - and creatures also name objects based on this genus level category.

So, how does this relate to making an object? Simply put, if you want to create an object that has an effect on a creature and/or needs to interact consistently with other agents in the world then you need to make sure it has the correct family+genus classifier. The species number you are free to choose, but you must make it unique. Nasty things can happen when you have different objects all using the same classifier!

So now you know how to give your agent a unique classifier you're part of the way towards making your own object, but first a nasty techy bit about the TARG object.