Project Structure

Last modification on 2019-01-29


This document offers an brief explanation of how Ecosim will work. For more detailed information on any one component, please see the specifications at the bottom of the page.

Project Overview

Ecosim is an ecosystem simulator. It's main goal is to help illustrate and explore interconnectedness between various organisms within an environment, and how they can directly and indirectly affect one another.

The world these organisms inhabit will be a fairly simple one with minimal graphics, as the project is focused on the behaviours of them, which are the following: Users are able to interact with the simulation in three ways. The first is via a plaintext config file containing information on the attributes of various "breeds" of organisms which will populate the environment once the program is ran.

The second way a user can interact is via Vim style keybindings whilst the simulation is running. These enable the user to perform actions such as: Finally, the user is able to enter direct commands into the engine of the simulation, to perform similar actions as the key binds, but with more verbosity.

This minimalistic way of interacting allows for the user interface to remain simple yet powerful, the only elements on screen being a small command strip along the bottom with the rest of the window being dedicated to the simulation.

As previously stated, the graphics of the simulation will be very simple and utilitarian. Each organism will be a single colored point, with their color being used to indicate their genetics and/or state. Any interaction between two agents will be brought to attention by graphically highlighting the area which the event took place.