Skip to content

World simulation game for OOP course on the 2nd semester of CS

License

Notifications You must be signed in to change notification settings

pcichowski/species-rivalry

Repository files navigation

Species Rivalry

Project

This project was created for Object Oriented Programming course on the 2nd semester of CS.

The task at hand was to use C++ OOP to create a simulated world with animals and plants, each having different behaviours and abilities, while following all OOP paradigms.

The world is lively and dynamic, each round animals can fight with each other or reproduce and plants can spread around. There is a simple system of strength and initiative, determining which entities are first to move and which of them should win when in combat.

The player can move, attack or activate a special ability, which grants him invincibility for 3 rounds.

The game features a journal of all events happening in the world for each round, such as animals attacking each other, successful reproduction attempts, an animal consuming a special buff or selected special abilities being activated.

Specification

The world is drawn in the console, with each letter indicating a different organism on the map. You have the ability to generate a new map, load from a file and save to it later.

Player controls are shown in the main menu.

Animal Icon Ability Plant Icon Ability
Wolf W no ability Grass T no ability
Sheep O no ability Guarana G when eaten, grants +3 to strength
Antelope A can move by not one, but two squares Dandelion M has twice as many chances to spread
Turtle Z can use his armor to survive 75% of attacks Wolfberries J kill any animal that eats them
Fox L 50% chance to escape when being attacked Pine Borscht B kills anything that comes close

Screenshots

Main menu

image

World map

image

Event journal

image

Entity list and statistics

image

Acknowledgements

Used Tabulate library to create nice looking console tables

License

This project is available under the MIT license

About

World simulation game for OOP course on the 2nd semester of CS

Topics

Resources

License

Stars

Watchers

Forks

Languages