Skip to content

AsakaiAkachi/Paramecium

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

83 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Paramecium

Paramecium is an artificial life/ecosystem simulator that simulates a continuous two-dimensional virtual space (called a “soup”).

The soup contains numerous interacting virtual organisms, which can simulate their survival, flourishing, evolution, and extinction over thousands of generations.

Virtual Organism

The virtual organisms in the soup can be divided into two categories: plants and animals. Both plants and animals share some characteristics common to both and unique to each.

Both plants and animals can only multiply by storing a certain amount of nutrients, called “Element”. They can also move by being pushed by other objects in the soup or by accelerating themselves.

Plant

Plants are virtual organisms that play the role of producers in Paramecium. They grow by collecting elements contained in tiles and multiply by splitting into multiple plants when a certain amount of elements are collected. They can also survive where elements are depleted, in which case they cannot grow.

Animal

Animals are virtual creatures that play the role of consumers in Paramecium. They can gain elements by attacking other plants and animals, but they cannot gain elements from tiles. They also constantly consume elements and die when they run out. Conversely, if it collects enough elements, it will multiply by splitting in two.

Every animal has a neural network (called simply “brain” in Paramecium) to determine its own behavior, which is inherited by its offspring. Brain structures can mutate as they are inherited by offspring, and this is what drives evolution.

Element

Elements are nutrients needed by all organisms in Paramecium. The amount of elements throughout the soup is always constant and does not increase or decrease. Animals consume elements, but the consumed elements are not extinguished but released into the tiles so that plants can use them again for growth. Also, the elements have a tendency to flow slowly from tiles with higher quantities to tiles with lower quantities.

Key Binding

Window

  • F1: Show/Hide overlay
  • Crtl + F: Enable/Disable full screen

Simulation

  • Space: Run/Pause Simulation
  • Period: Increase the number of threads by 1
  • Comma: Decrease the number of threads by 1
  • Question Mark: Advance the simulation by one step

Camera

  • Right Drag: Move the camera
  • C: Reset the camera position
  • Left Click: Select an object
  • T: Make the camera follow the selected object
  • Crtl + T: Enables auto-tracking of the camera
  • Crtl + Left Click / Mouse Wheel Up: Zoom in
  • Crtl + Right Click / Mouse Wheel Down: Zoom out

Edit

  • Shift + Left Drag: Move selected objects
  • Alt + Left Drag: Create wall
  • Alt + Right Drag: Delete Wall
  • Crtl + D: Open Object Inspector (WARNING: FOR ADVANCED USER FEATURE)

Requirements

Since Paramecium is developed on Windows 11, operation on other operating systems is not guaranteed.

There are no minimum CPU or GPU requirements, but high-performance CPUs may be needed to run large simulations.


The creator of this project is not an English speaker (I'm Japanese) and cannot read or write English, so I use DeelL translation, etc. to write README.md and other documents. Therefore, some sentences may be incorrect.

About

This project is an artificial life/ecosystem simulator that I am currently developing personally.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages