Welcome to the Creatures Wiki! Log in and join the community.

Difference between revisions of "Cellular Automata"

From Creatures Wiki
Jump to navigation Jump to search
(11 intermediate revisions by 3 users not shown)
Line 1: Line 1:
'''Cellular automata''' ('''CA''') are virtual particles which are emitted from [[agent]]s, such as food and plants, allowing [[creature|creatures]] and other agents to "smell" this agent and make navigation decisions accordingly. Cellular automata were introduced in the [[Creatures Evolution Engine]] games such as [[Creatures 3]], [[Creatures Village]] and [[Docking Station]].  
+
'''Cellular automata''' ('''CA''') are virtual particles which are emitted from [[agent]]s, such as food and plants, allowing [[creature|creatures]] and other agents to "smell" this agent and make navigation decisions accordingly. Cellular automata were introduced in [[Creatures 2]] and expanded in the [[Creatures Evolution Engine]] games such as [[Creatures 3]], [[Creatures Village]] and [[Docking Station]].  
  
Sometimes the emitting agents are invisible so as to give the appearance an area is emitting CAs; for example, an agent in the [[Grendel Jungle]] emits Grendel [[Home]] smell, which entices the [[Grendel]]s to live there. CAs are called "'''scentons'''" in the help menu for the [[smell emitter]].  
+
In C2, CAs were used for a few [[room]] properties such as [[light]], but more were added in later games, and they are emitted by agents instead. Sometimes the emitting agents are invisible so as to give the appearance an area is emitting CAs; for example, an agent in the [[Grendel Jungle]] emits Grendel [[Home]] smell, which entices the [[Grendel]]s to live there. CAs are called "'''scentons'''" in the help menu for the [[smell emitter]].  
  
In creatures, the Cellular Automata enter through the foot that is in contact with the ground, then intepreted by the [[smell lobe]].  The reason why creatures smell with their foot touching the ground is to avoid changes which could happen when creatures turn around.[http://www.gamewareeurope.com/GWDev/cdn/CDN_more.php?CDN_article_id=108] Creatures also emit smell themselves depending on their [[genus]]: [[Norn|Norns]] emit the Norn smell (12), while Grendels and [[Ettin|Ettins]] emit their own smells respectively. In [[Creatures Village]], male and female norns have different CA scents.   
+
In creatures, the Cellular Automata enter through the foot that is in contact with the ground, then interpreted by the [[smell lobe]].  The reason why creatures smell with their foot touching the ground is to avoid changes which could happen when creatures turn around.[https://web.archive.org/web/20170814232150/http://www.gamewareeurope.com/GWDev/cdn/CDN_more.php?CDN_article_id=108] Creatures also emit smell themselves depending on their [[genus]]: [[Norn|Norns]] emit the Norn smell (12), while Grendels and [[Ettin|Ettins]] emit their own smells respectively. In [[Creatures Village]], male and female norns have different CA scents.   
  
== Commands ==
+
Cellular automata are used in [[Creatures 2]], [[Creatures 3]], [[Docking Station]] and [[Creatures Village]] as follows:
* '''[[CACL]]''' ''(command)'' FAMILY ''(integer)'' GENUS ''(integer)'' SPECIES ''(integer)'' CA_INDEX ''(integer)'' <br />The command '''CACL''' is used to link the CA to an object in the Creatures' minds, for example, that smell 18 means a gadget.  In DS, this can be seen in the [[Bootstrap]] cos file z_DS agent smells.cos.  In C3 this can be seen with the Bootstrap cos file z_agent smells.cos.  The agent included with the [[Butterfly Norn]] creates a flower smell by associating CA 9 with plants and flowers. 
+
 
* '''[[LINK]]''' ''(command)'' ROOM1 ''(integer)'' ROOM2 ''(integer)'' PERMIABILITY ''(integer)'' <br />Cellular Automata only travel between rooms which are linked horizontally, not vertically. To link vertical rooms (as is used in the lift shafts) the command '''LINK''' is used.  In DS, this can be seen in the Bootstrap cos file "lift ca linkers.cos".  Using the LINK command without the permiability value returns the permeability between the two rooms.
+
==Creatures 2==
* '''[[PROP]]''' ''(command)'' ROOM_ID ''(integer)'' CA_INDEX ''(integer)'' CA_VALUE ''(float)'' <br />The command '''PROP''' is used when making metarooms to set the amount of a CA in a [[room]], and if you leave out the CA_VALUE it returns the amount of a CA in the specified room. 
+
{| border="1"
 +
! Name !! Note
 +
|-
 +
|Temperature||
 +
|-
 +
|Light ||
 +
|-
 +
|Pressure || Air pressure; creates [[wind]]
 +
|-
 +
|Radiation || Gives creatures [[heavy metals]], causing mutations and sterility
 +
|}
  
They are used in [[Creatures Village]], [[Creatures 3]] and [[Docking Station]] as follows:
+
Rooms also have [[organic nutrients]] and [[inorganic nutrients]], but these are not modeled as CAs.
  
 
==Creatures 3 and Docking Station==
 
==Creatures 3 and Docking Station==
  
 
{| border="1"
 
{| border="1"
! Number !! Name !! Agents CACL linked to
+
! Number !! Name !! Agents linked to
 
|-
 
|-
| 0 || Sound || --
+
| 0 || Sound || See below
 
|-
 
|-
 
| 1 || Light || --
 
| 1 || Light || --
Line 35: Line 45:
 
| 8 || Fat || [[Food]]
 
| 8 || Fat || [[Food]]
 
|-
 
|-
| 9 || Flowers || Originally, linked with nothing - the [[Butterfly Norn (C3/DS)| Butterfly Norn]] agent makes this link with [[Plant]]s and [[Flower]]s.
+
| 9 || Flowers || See below
 
|-
 
|-
 
| 10|| Machinery || [[Machinery]]
 
| 10|| Machinery || [[Machinery]]
Line 55: Line 65:
 
| 18 || Gadgets || [[Gadget]]s
 
| 18 || Gadgets || [[Gadget]]s
 
|-
 
|-
| 19 || (unused) || --
+
| 19 || (unused) || See below
 
|}
 
|}
 +
Note that CA 0 (Sound) does not appear to be properly implemented in the engine.
 +
===Fan-made expansions in C3 and DS===
 +
Players have created fixes which give greater use of the cellular automata available as below:
 +
 +
*The [[Butterfly Norn (C3/DS)|Butterfly Norn Flower Smell]] creates a flower smell by associating CA 9 with plants and flowers.
 +
*[[Critter and Bug Smells]] links CA 0 to critters and bugs.
 +
*[[Detritus Smell]] - links detritus to CA 9, conflicts with the Butterfly Norn agent above.
 +
*[[New Toy Smell]] links toys to CA 19.
 +
 +
Players have also created agents that allow experimentation with CAs:
 +
 +
*[[CAev]] - creates CA emitters easily in-game.
 +
*[[Heat Transfer]] - allows for heat to transfer through water.
 +
*[[Magic Words]] - a module allows for easy creation of CA links (encourages exploration behaviour).
  
 
==Creatures Village==
 
==Creatures Village==
 
{| border="1"
 
{| border="1"
! Number !! Name !! Agents CACL linked to
+
! Number !! Name !! Agents linked to
 
|-
 
|-
 
| 0 || -- || --
 
| 0 || -- || --
Line 91: Line 115:
 
|}
 
|}
  
{{stub}}
+
== Commands ==
 +
There are various CAOS commands used to control cellular automata and to give them meaning to creatures or agents.
  
==See also==
+
* '''[[ALTR]]'''<br />The command '''ALTR''' is used to tweak the existing CAs in a room by a certain amount, often seen in decomposing critters, food, etc.  It does not have to be the same CA as the one CACL-linked to its genus.
*[[Magic Words]] - a module allows for easy creation of CA links
+
* '''[[CACL]]''' ''(command)'' FAMILY ''(integer)'' GENUS ''(integer)'' SPECIES ''(integer)'' CA_INDEX ''(integer)'' <br />The command '''CACL''' is used to link the CA to an object in the Creatures' minds, for example, that smell 18 means a gadget.  In DS, this can be seen in the [[Bootstrap]] cos file z_DS agent smells.cos.  In C3 this can be seen with the Bootstrap cos file z_agent smells.cos.  The agent included with the [[Butterfly Norn (C3/DS)|Butterfly Norn]] creates a flower smell by associating CA 9 with plants and flowers. 
*[[CAev]] - creates CA emitters easily ingame
+
* '''[[EMIT]]'''<br />The command '''EMIT''' is commonly used in the creation script of new objects to make it smell like its genus (as determined by the command CACL.)
 +
* '''[[HIRP]]'''<br/> HIRP is used to tell what [[room]] has the highest concentration of any given smell.  Used by agents.
 +
* '''[[LINK]]''' ''(command)'' ROOM1 ''(integer)'' ROOM2 ''(integer)'' PERMEABILITY ''(integer)'' <br />Cellular Automata only travel between rooms which are linked horizontally, not vertically. To link vertical rooms (as is used in the lift shafts) the command '''LINK''' is used.  In DS, this can be seen in the Bootstrap cos file "lift ca linkers.cos".  Using the LINK command without the permeability value returns the permeability between the two rooms.
 +
* '''[[LORP]]'''<br/> LORP is used to tell what [[room]] has the lowest concentration of any given smell.  Used by agents such as the [[gnarler]].
 +
* '''[[PROP]]''' ''(command)'' ROOM_ID ''(integer)'' CA_INDEX ''(integer)'' CA_VALUE ''(float)'' <br />The command '''PROP''' is used when making metarooms to set the amount of a CA in a [[room]], and if you leave out the CA_VALUE it returns the amount of a CA in the specified room. 
 +
* '''[[RATE]]''' ''(command)'' ROOM_TYPE ''(integer)'' CA_INDEX ''(integer)'' GAIN ''(float)'' LOSS ''(float)'' DIFFUSION ''(float)''<br /> The RATE command is used to set how fast a smell travels through rooms.  This command is used in the !map.cos file and in the [[Heat Transfer]] agent which allows heat to travel through water. Using the RATE command with only ROOM_TYPE and CA_INDEX returns the gain, loss and diffusion values for that smell/room type combination.
  
 
==External Links==
 
==External Links==
 
*[https://naturingnurturing.blogspot.com/2012/05/cas-and-you.html CAs and You!] - [[Naturing Nurturing]]
 
*[https://naturingnurturing.blogspot.com/2012/05/cas-and-you.html CAs and You!] - [[Naturing Nurturing]]
 +
*[https://web.archive.org/web/20100103155024/http://www.gamewaredevelopment.co.uk/cdn/CDN_more.php?CDN_article_id=78 Creatures 2 Room Editor Tutorial - World Building Basics] - [[CDN]] article explaining how CAs work in C2 (archived)
  
 
[[Category:Internals]]
 
[[Category:Internals]]
 
[[Category:Terms]]
 
[[Category:Terms]]

Revision as of 05:20, 15 July 2022

Cellular automata (CA) are virtual particles which are emitted from agents, such as food and plants, allowing creatures and other agents to "smell" this agent and make navigation decisions accordingly. Cellular automata were introduced in Creatures 2 and expanded in the Creatures Evolution Engine games such as Creatures 3, Creatures Village and Docking Station.

In C2, CAs were used for a few room properties such as light, but more were added in later games, and they are emitted by agents instead. Sometimes the emitting agents are invisible so as to give the appearance an area is emitting CAs; for example, an agent in the Grendel Jungle emits Grendel Home smell, which entices the Grendels to live there. CAs are called "scentons" in the help menu for the smell emitter.

In creatures, the Cellular Automata enter through the foot that is in contact with the ground, then interpreted by the smell lobe. The reason why creatures smell with their foot touching the ground is to avoid changes which could happen when creatures turn around.[1] Creatures also emit smell themselves depending on their genus: Norns emit the Norn smell (12), while Grendels and Ettins emit their own smells respectively. In Creatures Village, male and female norns have different CA scents.

Cellular automata are used in Creatures 2, Creatures 3, Docking Station and Creatures Village as follows:

Creatures 2

Name Note
Temperature
Light
Pressure Air pressure; creates wind
Radiation Gives creatures heavy metals, causing mutations and sterility

Rooms also have organic nutrients and inorganic nutrients, but these are not modeled as CAs.

Creatures 3 and Docking Station

Number Name Agents linked to
0 Sound See below
1 Light --
2 Heat --
3 Water (from the sky, often used by plants to grow) --
4 Nutrient (used by plants to grow) --
5 Water (bodies of) --
6 Protein Fruit
7 Carbohydrate Seeds
8 Fat Food
9 Flowers See below
10 Machinery Machinery
11 Creature egg smell Creature Eggs
12 Norn Norns
13 Grendel Grendels
14 Ettin Ettins
15 Norn home Norn Home
16 Grendel home Grendel Home
17 Ettin home Ettin Home
18 Gadgets Gadgets
19 (unused) See below

Note that CA 0 (Sound) does not appear to be properly implemented in the engine.

Fan-made expansions in C3 and DS

Players have created fixes which give greater use of the cellular automata available as below:

Players have also created agents that allow experimentation with CAs:

  • CAev - creates CA emitters easily in-game.
  • Heat Transfer - allows for heat to transfer through water.
  • Magic Words - a module allows for easy creation of CA links (encourages exploration behaviour).

Creatures Village

Number Name Agents linked to
0 -- --
1 Movers Movers (2 2 0)
2 Anims Animated toys that lower boredom and raise sleepiness (2 3 0)
3 Lonelies Toys that reduce boredom and loneliness (2 8 0)
4 Instruments Instruments (2 11 0)
5 Clothes Clothes (2 26 0)
6 -- --
7 Protein -- (2 22 0)
8 Fat -- Cake (2 23 0)
9 Carbohydrates -- Carrots, fruit (2 24 0)
10 Food Vendors -- (2 35 0)
11 Scaries Things that go bump in the night and scare norns.
12 Male Norns Male Norns
13 Female Norns Female Norns

Commands

There are various CAOS commands used to control cellular automata and to give them meaning to creatures or agents.

  • ALTR
    The command ALTR is used to tweak the existing CAs in a room by a certain amount, often seen in decomposing critters, food, etc. It does not have to be the same CA as the one CACL-linked to its genus.
  • CACL (command) FAMILY (integer) GENUS (integer) SPECIES (integer) CA_INDEX (integer)
    The command CACL is used to link the CA to an object in the Creatures' minds, for example, that smell 18 means a gadget. In DS, this can be seen in the Bootstrap cos file z_DS agent smells.cos. In C3 this can be seen with the Bootstrap cos file z_agent smells.cos. The agent included with the Butterfly Norn creates a flower smell by associating CA 9 with plants and flowers.
  • EMIT
    The command EMIT is commonly used in the creation script of new objects to make it smell like its genus (as determined by the command CACL.)
  • HIRP
    HIRP is used to tell what room has the highest concentration of any given smell. Used by agents.
  • LINK (command) ROOM1 (integer) ROOM2 (integer) PERMEABILITY (integer)
    Cellular Automata only travel between rooms which are linked horizontally, not vertically. To link vertical rooms (as is used in the lift shafts) the command LINK is used. In DS, this can be seen in the Bootstrap cos file "lift ca linkers.cos". Using the LINK command without the permeability value returns the permeability between the two rooms.
  • LORP
    LORP is used to tell what room has the lowest concentration of any given smell. Used by agents such as the gnarler.
  • PROP (command) ROOM_ID (integer) CA_INDEX (integer) CA_VALUE (float)
    The command PROP is used when making metarooms to set the amount of a CA in a room, and if you leave out the CA_VALUE it returns the amount of a CA in the specified room.
  • RATE (command) ROOM_TYPE (integer) CA_INDEX (integer) GAIN (float) LOSS (float) DIFFUSION (float)
    The RATE command is used to set how fast a smell travels through rooms. This command is used in the !map.cos file and in the Heat Transfer agent which allows heat to travel through water. Using the RATE command with only ROOM_TYPE and CA_INDEX returns the gain, loss and diffusion values for that smell/room type combination.

External Links