/Civilizations

A NetLogo simulation to model "civilization"-style games such as Age of Empires.

Primary LanguageNetLogoMIT LicenseMIT

Civilizations

A NetLogo simulation designed to model "civilization"-style games such as Age of Empires, to explore competitive strategies for gameplay.

Written during my CMPLXSYS 270 course in Winter 2013 at the University of Michigan as an independent final project.

Installation

  1. Download NetLogo
  2. Use it to open Civilizations.nlogo

Usage

  1. Press setup to randomly distribute resources and civilizations around the map
  2. Press go to run the simulation

Screenshot of red civilization victory

You can look at the presentation to get some idea of how it works, but if you've never used NetLogo before, there's really no better way to learn than to just run it yourself and see what happens.

History

As a final project for Complex Systems 270, we were asked to write a NetLogo simulation for anything we wanted, and to create a report about it showing what we learned.

I chose a "civilization" simulator which, at an abstract level, models the complex interactions between warring societies competing for resources. Because this would have been way too difficult to accomplish within the couple weeks we were given, I instead used the model to analyze gameplay strategies for games like Age of Empires. The findings are available in my report.

Note: All the code here is in its original form, and hasn't been modified since I wrote it in 2013.

Contributing

  1. Fork it!
  2. Create your feature branch: git checkout -b my-new-feature
  3. Commit your changes: git commit -am 'Add some feature'
  4. Push to the branch: git push origin my-new-feature
  5. Submit a pull request :D

Credits

Credit to Blizzard's StarCraft, Microsoft's Age of Mythology, and Microsoft's Age of Empires for the images used in the presentation, and for many hours of fun in middle school!