Theory

Creature Behaviours

Up to this point, I've created Echolife using a fairly organic creative process, meaning that I've added creatures and behaviors on a whim. Now it's time to define the final behaviors:

Blobfish

ecl_EchoLife_BlobfishThe blobfish is the most basic creature. It only follows the most basic flocking principles.

 

 


Flatfish

ecl_EchoLife_Flatfish The Flatfish will eat other creatures it comes into direct contact with, at which point it will increase in length, (Like the classic Snake game.). The Flatfish will move like a snake. Upon reaching a length of approximately 6 pieces, the Flatfish will die and create two offspring.


Hunterfish

ecl_EchoLife_Hunterfish The Hunterfish will hunt and eat all other creatures. Creatures will flee from it's presence.

 


Colourfish (Male & Female)

ecl_EchoLife_Female

ecl_EchoLife_Male The Male and Female Colourfish are assigned a random colour when they are spawned. If a Female and Male collide, there is a chance that they will create one offspring. The child Colourfish will be a colour blend of the two parents.


Bigshrub

Bigshrub  Five Bigshrubs are placed randomly. These plants slowly grow and produce food for the creatures.

 


Universal Behaviors

All creatures will flock with creatures of the same species.

Each creature has a certain lifespan, which is extended by eating food or other creatures.

Flocking

Flocking is a behavior that is primarily seen in the way certain birds fly together.

It can be replicated mathematically using the following three principles:

  1. Separation - avoid crowding neighbors (short range repulsion)
  2. Alignment - steer towards average heading of neighbors
  3. Cohesion - steer towards average position of neighbors (long range attraction)
I intend to use Flocking extensively within the Echolife project.

About

Echolife is a simple eco-system based upon the principles of Virtual Life and Artificial Intelligence.
Copyright © 2012 EchoLife. All Rights Reserved.
Joomla! is Free Software released under the GNU/GPL License.