Darwin Simulation is a Java-based application that simulates the evolution of animals in different environments. The simulation allows users to configure various parameters related to the map, animals, and simulation settings.
- Configurable map types (Earth, Ocean)
- Configurable animal types (Normal, Aging)
- Adjustable simulation parameters such as map size, grass growth, animal energy levels, and more
- CSV statistics saving for simulation data
- Dynamic UI updates based on user input
- Java
- JavaFX for the user interface
- Gson for JSON serialization
- Gradle for build automation
-
Clone the repository:
git clone https://github.com/yourusername/darwin-simulation.git cd darwin-simulation -
Build the project using Gradle:
./gradlew build
-
Run the application:
./gradlew run
- Launch the application.
- Configure the simulation parameters using the provided UI fields.
- Click the "Start" button to begin the simulation.
- Monitor the simulation progress and view statistics.
- Save the configuration or load a previously saved configuration as needed.
-
Map Configuration:
- Map Width
- Map Height
- Starting Grass Count
- Grass Growth Per Day
- Grass Energy Level
- Map Type (Earth, Ocean)
- Starting Ocean Count (for Ocean map)
- Water Segments (for Ocean map)
- Ocean Change Rate (for Ocean map)
-
Animal Configuration:
- Animal Type (Normal, Aging)
- Starting Animals Count
- Animal Starting Energy
- Animal Ready to Breed Energy Level
- Animal Energy Loss Per Move
- Animal Energy Given to Child
- Chance of Animal Skip Move (for Aging animals)
-
Genome Configuration:
- Genome Length
- Minimal Mutations Count
- Maximal Mutations Count
-
Simulation Configuration:
- Simulation Speed
- Total Simulation Days
- CSV Statistic Saving


