Ecosystem Simulator Project

Ecosystem Simulator Project

Getting used to developing 0-players games and cellular automata

ยท

2 min read

Table of contents

Intro

I've previously created an app that simulates the Game Of Life, a very interesting cellular automata. But I'm curious about that kind of apps, so I decided to develop a ecosystem simulator, that shows the interactions between plants and diferent kinds of animals (carnivore/herbivorous). It should show that an ecosystem is balanced, and can be disbalanced if another animal is introduced, or if there's less food. You can check my Game Of Life repo here and play it here.

Project ideas

  • Developing it using React.js and Node.js

  • Not yet sure about the graphic design of the actual game, HTML5 canvas are difficult to manage

  • Create a working food chain

  • The simulation loops on a day/night basis, creating actions on the animals depending on the time

  • A climate system can be added, so the alterations on climate can show how they damage the food chain

  • A log should be made, maybe ordered by day when the action was made

  • Each kind of living being must have a class with it's variables and functions

  • Climate have effects on living beings, positive or negative effects

  • I plan to develop a navigation system so my beings can "walk" freely around the map

Issues

  • I learned React.js recently and haven't still used it to develop anything, so I'm not really used to that framework

  • HTML5 canvas are so difficult to use, maybe I should look for anything else

There's that two main issues that need solving, then I can get to work on the tree generation system or similar issues, but that two are stopping the project from going forward. My React display won't work, and the canvas won't show on React. I need to solve that two issues. I will look for an alternative to HTML5 canvas that works on React and is easier to use.

This is the current view of the app, and this is the repo

The repo isn't still updated to the version shown on CodeSandbox, but I get a weird error that I don't understand. That's an error that I need to check as well.

I'll post devlogs as I solve isssues, I hope that I can solve them soon.

ย