This is a Java-based simulation project where different types of "critters" interact in a grid-based world. The project demonstrates object-oriented programming concepts through an engaging simulation environment.
- Grid-based world simulation
- Multiple critter types with unique behaviors:
- Ant
- Bird
- Hippo
- Longhorn
- Vulture
- Stone
- Real-time visualization of critter interactions
- Configurable simulation parameters
- Food spawning and consumption mechanics
- Mating and reproduction system
- Combat system between critters
- Ensure you have Java installed on your system
- Compile the project using your preferred Java IDE or command line
- Run the
CritterMainclass to start the simulation
src/- Contains all Java source filesCritterMain.java- Main entry point and GUI implementationCritter.java- Base class for all critter types- Individual critter implementations (Ant.java, Bird.java, etc.)
bin/- Compiled class filesdocs/- Project documentation
- Launch the simulation using
CritterMain - Use the GUI controls to:
- Start/Stop the simulation
- Adjust simulation speed
- Add/Remove critters
- Reset the simulation
- Configure display options
Each critter type has unique characteristics:
- Ant: Moves in a specific pattern
- Bird: Flies in a particular direction
- Hippo: Moves slowly and eats food
- Longhorn: Aggressive behavior
- Vulture: Scavenges for food
- Stone: Stationary object
The project includes several implemented critter classes, each extending the base Critter class. Each critter type implements its own unique behavior through the following methods:
getColor()- Defines the critter's visual appearancetoString()- Determines how the critter is displayedgetMove()- Controls the critter's movement patternsfight()- Defines combat behavior when critters meet
_critters_network_settings.txt- Network configuration_critters_saved_settings.txt- Saved simulation settings
- The simulation uses a grid-based world where critters can move, eat, fight, and reproduce
- Each critter type has unique behaviors and characteristics
- The GUI provides real-time visualization of the simulation
- Network features are disabled in this version