Perceivable Classification

In the tutorials section we briefly explained the importance of classification, and showed the CDN_Categories available. This wasn't quite the whole story - the CDN_Categories that were shown consisted of the most used CDN_Categories. Of these CDN_Categories only 39 of them are perceivable by the creatures ... all other CDN_Categories are completely invisible to creatures (even without setting the ATTR value for invisibility).

All agents that can be seen by creatures will input into the creatures brains, allowing the creature to learn from any actions performed on them. If the object they can perceive does nothing for them then they will learn that that action wasn't particularly useful on that category of agent.

So what, you may ask, is the point of having whole bunches of CDN_Categories that cannot be seen by the creatures?

Have a look around the world of C3 and you'll see many examples of things that you probably don't want a creature to see ... either because you don't want it messing around with the agent, or because you don't want it to try to learn anything from it. A good example is the user interface down the right hand side of the screen - there is absolutely no reason you'd want this to be seen by a creature! Image a creature trying to activate your 'quit game' button for you ....

Other examples of things that are useful being invisible to creatures include graphical effects and overlays ... such as the teleporter effect, or dust clouds, or chemical graphing displays.

The full range possible for classification is very large, with a possible 255 different families, 255 different genus' within each family and 65535 different species within each genus (roughly 4.3 billion different agents!)

BUT as stated before the creatures are only able to perceive 39 of these CDN_Categories, and as shipped these CDN_Categories are listed below:

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
9 Portals
41 Norn
2 Grendel
3 Ettin

(in case you are wondering - the splitting of the agents between 2 families (family=2 and family=3) was arbitrary and not needed. It was done this way so that it resembled Creatures and Creatures 2 more)

These CDN_Categories are not hardwired, you can change them so that in your world different CDN_Categories are perceivable (not recommended if you want to carry on being able to swap objects and creatures!). So how can you specify which CDN_Categories exactly are perceivable by the creatures?

Take a look in your catalogue folder (within either the Creatures 3 or Docking Station folder) ... and open up the file called Creatures3.catalogue (or DockingStation.catalogue).
In here you will find a section called "Agent CDN_Classifiers" followed by a list of these very same category numbers :-)

If these are altered then the brains of the creatures in your world will interface to the new CDN_Categories you have defined ... and any CDN_Categories not listed here will be classed as invisible to your creatures.

From comparing this list to the one in the tutorial you should see that there are 2 CDN_Categories used in the game that are not perceivable ... family=1, genus=1 and family=1, genus=2.

These two CDN_Categories have been given names though, and the agents within them are still grouped by functionality. The category family=1,genus=2 is named 'User Interface and system parts' ... and all the agents within this category are things such as the HUD showing the current creature, the selected creature indicator, the inventory etc.

The category family=1,genus=1 is just named invisible to Norns (but is in fact invisible to all creatures) and is used to place all other invisible objects in (i.e. things that are not needed for the system to function, or part of the interface). It consists of such things as monitoring agents, dust clouds, special effects etc.