/mars-sim

Mars Simulation Project Official Codebase

Primary LanguageJavaGNU General Public License v2.0GPL-2.0

Gitter Build Status Codacy Badge Coverity Scan Build Status

mars-sim

The Mars Simulation Project is a Java based open source project that simulates the activities of the first generation of settlers on Mars in a virtual environment. Each agent has various human-like characteristics, capable of making distinct decisions on a virtual Mars and interacting with one another on the surface of Mars.

Modeling and Simulation

mars-sim uses both discrete event modeling and Agent-based Modeling and Simulation in modeling the everyday decision of a settler in mars-sim.

mars-sim is a semi-social and professional simulation that portrays the interaction between the settlers and their environment. Each settler has well defined job type, job role, technical skills, personality, natural attributes, task preferences and relationship with one another as they strive on Mars.

Player may create numerous settlements spreading across the surface of Mars. Each settlement has a command structure and a developmental objective. They can be as simple as a four-person initial landing base; a mining depot near sites with high mineral concentration; or a full blown, self-contained colony hosting higher functions with 48+ settlers having an elected mayor. In terms of economic development, each settlement sets the Value Points (VP) of each resource, based on its supply and demand.

Tasks and Missions

Settlers spend much of their time learning to "live off the land". They engage in maintenance, ensuring life support resources are well balanced, growing crops in greenhouses, and manufacturing needed parts and equipment in workshops.

Settlers will also go out on rover missions to explore and study surrounding landscapes, prospect and mine minerals, and trade with neighboring settlements. They may even decide to move from one settlment to another.

Summary

Mars is a harsh world but is certainly less unforgiving than our Moon. Settlers come face-to-face with accidents, equipment malfunctions, illnesses, injuries, and even death. Survival depends on how well they work together, improve their survival skills and balance individual vs. settlement needs.

Webpage

For a general description of this project, see our project website at at https://mars-sim.github.io/

Feedback/Comments

We welcome anyone to contribute to mars-sim in terms of ideas and concepts. Feel free to provide your comments at our facebook community at https://www.facebook.com/groups/125541663548/. Note: see also old/archived discussions at https://sourceforge.net/p/mars-sim/discussion/

Issues/Tickets

Wiki

See our new wiki pages at https://github.com/mars-sim/mars-sim/wiki

Supported Platforms

  • Windows
  • MacOS (known bug when clicking on the tabs)
  • Linux (unwanted black shadow artifact on the spinning 3D Mars Globe)

Java environment Setup

  • Windows
    • Edit the JAVA_HOME and PATH in System's Environment Variables in Control Panel
    • Set JAVA_HOME to a JRE or JDK's destination such as C:\Program Files\Java\jre1.8.0_131 or C:\Program Files\Java\jdk1.8.0_131
    • Add %JAVA_HOME%;%JAVA_HOME%\bin; to PATH

Development Prerequisites

See setting up development environment at https://github.com/mars-sim/mars-sim/wiki/Development-Environment

Official Codebase

Download