Simple World is the simulation of a world and the bugs that live on it. Simple World tries to reproduce the basic elements that define a simple world. The objective of the project is to observe the evolution of this world and of these bugs.

Simple World 1.0a4

Simple World 1.0a4 has been released. You can get it in the Source releases section of this web.

This was supposed to be the first beta of Simple World, but there are ore changes than previously thought. Some of these changes were ncompatibles with previous versions and prevent the use of previous ugs in this version:

  1. changes in the instructions and in the registers of the CPU
  2. new registers in the CPU
  3. changes in the database

Simple World 1.0a3

Simple World 1.0a3 has been released. You can get it in the Source releases section of this web.

The main changes in this version are:

  1. Actions take 16 cycles to be finished.
  2. Implementation of action "egg".

This is the last alpha version of Simple World. With this version, all the functionality of the specification 1.0 is working. This means, that:

  1. The bugs can be coded.
  2. The bugs interact with the World.
  3. The bugs can put eggs.
  4. The code of the eggs can mutate.

Simple World 1.0a2

Simple World 1.0a2 has been released. You can get it in the Source releases section of this web.

The main changes in this version are:

  1. Bugs die if they do a action but they don't have energy enough to do it.
  2. TimerInterrupt is sent to the alive bugs each 64 cycles.
  3. Event Attack is sent to the attacked bugs.
  4. Implementation of actions eat and attack.

This version allows the first battles between the bugs. They can go for all the World, get information about what they found in its path, attack other bugs and eat food. The only bug present in this version, brainless, can do all this.

Simple World 1.0a1

Simple World 1.0a1 has been released. You can get it in the Source releases section of this web.

This version should be seen as a 0.1 because it's the first release of Simple World. This version is numered as 1.0a1 because each version of Simple World is the implementation of a specific version of a specification. So, this version is the implementation of some of the functionality of the specification 1.0 of Simple World.

The Simple World Language (SWL) should be completed, this way, there shouldn't be any future changes. The compiler (swlc) is completed. The first bugs for Simple World can be written. The decompiler (swld) is completed too, but, as the bugs can't evolve, the decompiler is not very useful at this stage.

The bugs are inserted in the World as eggs. The eggs after some time become bugs. The bugs in this version can only do movements and get information about the World, and, even if they use its energy, they never die.

The first bug for Simple World has been created: brainless. This bug does movements randomly until it detects a element that avoids its movement. If the element is food or a egg, brainless eats it. If the element is a bug, brainless attacks it. After eating, if it has enough energy, the bug creates a egg. At this momento, because of some bug in the SWL code of the bug or in the pseudorandom number generator, brainless finishes in a state in which it can't move and it only turns.

Specification for Simple World 1.0

Simple World LogoAfter several months of work, the definitive version of the specification for Simple World 1.0 has been released. Some things can still change, as the SWL standard library, but nothing important.

The specification can be found in the Specification section.

Most of the coding is already done: CPU and database. Simple World 1.0 is expected to be releasd in the next months.