Releases: mars-sim/mars-sim
Release v3.8.0
Introduction
The Mars Simulation Project is a Java-based Open Source project that
simulates mission operations and activities of initial settlers on Mars with a higher fidelity of
modeling and simulation details than most classic simulation games.
This project required Java 17 as a minimum.
Release
This release contains a ZIP file that contains a pre-built versions of the mars-sim application:
- The Swing variant provides a UI
- The Console variant runs on headless mode with access via command line SSH.
What's Changed
- Bump org.apache.maven.plugins:maven-failsafe-plugin from 3.1.2 to 3.2.3 by @dependabot in #1174
- Bump com.github.spotbugs:spotbugs from 4.8.1 to 4.8.3 by @dependabot in #1173
- Bump org.graalvm.buildtools:native-maven-plugin from 0.9.27 to 0.9.28 by @dependabot in #1159
- Show multiple Settlements in the Monitor Window by @bevans2000 in #1185
- Correct unable to charge by @mokun in #1186
- 3.7.x by @mokun in #1191
- Logging clean up by @bevans2000 in #1190
- Remove the use of RandomUtil by @mokun in #1193
- Delete Loggable interface by @bevans2000 in #1198
- Fix failed maven test in moderateTime() by @mokun in #1199
- Fix failing to ingress by @mokun in #1202
- Fix ingressing vehicular airlock by @mokun in #1203
- Debug execution time anomaly by @mokun in #1205
- Remove param for logger.config by @mokun in #1206
- Adjust A* pathfinding algorithm by @mokun in #1207
- Allow sleeping in another zone by @mokun in #1210
- Add 2 more checks in budgeting resources by @mokun in #1211
- Create generic Parameter control framework by @bevans2000 in #1212
- Stop the selling & buying list having the same Good by @bevans2000 in #1214
- Add alignment attribute to each building by @mokun in #1215
- Fix location update by @mokun in #1216
- Rework format for settlement template by @mokun in #1218
- Update version tag to 3.7.1 by @mokun in #1220
- Fix need for maintenance by @mokun in #1221
- Correct maintenance accident factor method name by @mokun in #1222
- Correct walking endlessly inside settlement by @mokun in #1223
- Rework the weather refresh param by @mokun in #1224
- Refine inspection/maintenance by @mokun in #1225
- Rework Brazil's phase 0 template by @mokun in #1226
- Rework heat sink in Heating by @mokun in #1227
- Change release process by @bevans2000 in #1229
- Incorporate building-package into settlement templates by @mokun in #1230
- Add new Syngas Plant for making methanol by @mokun in #1232
- Updates changelog and tutorials by @mokun in #1233
- Check for collision with previous building templates by @mokun in #1234
- Correct missing building sets and shift building locations by @mokun in #1235
- Update changelog, generated htmls and date for 3.7.1 by @mokun in #1237
- Add missing airlock to 2 outposts by @mokun in #1238
- Rework to recognize non-contiguous building id by @mokun in #1239
- Fix buildings in Hub Base by @mokun in #1240
- Add north-south-alignment attribute by @mokun in #1242
- Remove 'm' in construction foundation by @mokun in #1243
- avoid null box; add missing surface foundation by @mokun in #1245
- Convert LocalDig meta to SettlementTask approach by @bevans2000 in #1244
- Revise htmls by @mokun in #1246
- Revise air/water heat sink by @mokun in #1249
- Clean up Console code base by @bevans2000 in #1250
- Correct and improve htmls by @mokun in #1251
- Rework use of aerogel tile by @mokun in #1253
- Reduce coupling between Goodsmanager & Settlement by @bevans2000 in #1252
- Rework fertilizer composition by @mokun in #1255
- Merge Maven main module into ui module by @bevans2000 in #1254
- Revise md files by @mokun in #1258
- Fix typo in manufacturing.xml by @mokun in #1262
- Move code into the core module by @bevans2000 in #1261
- Remove mortar in ResourceUtil by @mokun in #1263
- Display list of people and vehicles by @mokun in #1264
- Create new help files by @bevans2000 in #1267
- Fix problem with Buildings in resupply mission by @bevans2000 in #1268
- Process Info consolidation by @bevans2000 in #1269
- Bump org.apache.sshd:sshd-core from 2.11.0 to 2.12.1 by @dependabot in #1266
- Bump junit-jupiter.version from 5.10.0 to 5.10.1 by @dependabot in #1156
- Bump commons-io:commons-io from 2.13.0 to 2.15.1 by @dependabot in #1158
- Added Scenario, SettlementTemplate, Building & Crew to the help pages by @bevans2000 in #1271
- Create a help library by @bevans2000 in #1277
- Bump org.apache.maven.plugins:maven-surefire-plugin from 3.2.2 to 3.2.5 by @dependabot in #1275
- Bump org.apache.maven.plugins:maven-assembly-plugin from 3.6.0 to 3.7.0 by @dependabot in #1272
- Create a Group Activity concept for meetings by @bevans2000 in #1281
- Create a Group Activity tab to the Settlement window by @bevans2000 in #1284
- Create the concept of ExperienceImpact by @bevans2000 in #1287
- Bump amazoncorretto from 21 to 22 by @dependabot in #1283
- Bump com.github.spullara.mustache.java:compiler from 0.9.10 to 0.9.13 by @dependabot in #1292
- Bump io.github.git-commit-id:git-commit-id-maven-plugin from 6.0.0 to 8.0.2 by @dependabot in #1280
- Reworking of Scientific Study Tasks by @bevans2000 in #1288
- Bump org.jacoco:jacoco-maven-plugin from 0.8.11 to 0.8.12 by @dependabot in #1297
- Bump org.springframework:spring-core from 6.1.5 to 6.1.6 by @dependabot in #1296
- Bump flatlaf.version from 3.2.5 to 3.4.1 by @dependabot in #1295
- Bump commons-io:commons-io from 2.15.1 to 2.16.1 by @dependabot in #1300
- Bump junit-jupiter.version from 5.10.1 to 5.10.2 by @dependabot in #1301
- Rework how EVAOperations handle sunlight by @bevans2000 in #1299
- Bump org.apache.maven.plugins:maven-compiler-plugin from 3.11.0 to 3.13.0 by @dependabot in #1305
- Bump org.junit.platform:junit-platform-launcher from 1.10.1 to 1.10.2 by @dependabot in #1304
- Bump org.apache.maven.plugins:maven-assembly-plugin from 3.7.0 to 3.7.1 by @dependabot in #1307
- Move Vehicle tasks to new packages by @bevans2000 in #1302
- Relocate Tasks for Building & Functions by @bevans2000 in #1310
- Bump org.springframework:spring-core from 6.1.6 to 6.1.8 by @dependabot in #1308
- Bump commons-cli:commons-cli from 1.6.0 to 1.8.0 by @dependabot in #1306
- Bump com.formdev:jide-oss from 3.7.14 to 3.7.15 by @dependabot in #1309
- Bump slf4j.version from 2.0.9 to 2.0.13 by @Dependa...
3.8.0 - Separate Jars
A. Editions
v3.8.0 are available in 2 editions :
- Jar Swing Edition :
mars-sim-swing-3.8.0.jar
- Jar Console Edition :
mars-sim-console-3.8.0.jar
In Jar Console Edition, either a beryx console or a SSH terminal can be used as the means of interacting with settlers, robots, settlements, vehicles, etc. in mars-sim.
See wiki with regard to setting up SSH console.
In Jar Swing Edition, in addition to having beryx console, a rudimentary graphic interface based on Java Swing is available for players to interact with the simulated world.
Most players prefers the 'Jar Swing Edition' as it runs on Windows, macOS and Linux, provided that Java Runtime or JDK has been preinstalled on your machine.
Download your preferred edition to your machine today by clicking on the filename at the Assets
section at the bottom of this page.
Note 1 : currently openjfx/JavaFX package is NOT required to be installed to run mars-sim.
B. Java VM Support
This build was made to be Java 17-compliant using Oracle official Java 17 or above (OpenJDK 17 or above).
We apologize that running mars-sim with Java version below 17 is NO LONGER being supported.
C. Starting a Sim in the Jar Edition
To start a new simulation, find the corresponding jar file.
Open a console and in the folder to which the jarfile was previously downloaded , type the following :
> java -jar mars-sim-swing-3.8.0.jar
Make sure you DO NOT place multiple builds of binary in the same folder or else java will pick the first jar in alphabetical order to start.
Note 2 : The
new
switch is automatically added if no switches are entered. It will assume that you are interested in starting a new simulation.
If the player clicks on the jarfile to start the simulation, he/she will NOT be able to see the logs and the track trace.
It is HIGHLY recommend using a terminal / CLI to manually start the simulation. This way, the player may see the logs and stack trace in the terminal / CLI.
D. Loading a Sim
To load the previously saved simulation, open a console. In the folder where the jarfile is resided, type the following
> java -jar mars-sim-swing-3.8.0.jar load
The load
switch will tell mars-sim to open the /default directory to look for the sim file called default.sim
.
E. Build Management
Make sure you DO NOT place multiple builds of binary in the same folder or directory since this could potentially cause java to look into the same classpath
and pick an old build to start.
Always DELETE older builds or archive each build on a separate folder.
You may tell which build version you are running as shown on the title bar of the application window.
F. What's Changed
Full Changelog: v3.7.2...v3.8.0
v3.7.2
This is a bugfix release resolving a number of issues.
Version 3.7.2 are available in 4 editions :
- Jar Swing Edition : mars-sim_3.7.2_swing_java17.jar
- Jar Console Edition : mars-sim_3.7.2_console_java17.jar
- Debian Swing Edition : mars-sim_3.7.2_swing_java17.deb
- Debian Console Edition : mars-sim_3.7.2_console_java17.deb
Full Changelog: v3.7.1...v3.7.2
v3.7.1
This is a bugfix release resolving a number of issues.
Version 3.7.1 are available in 4 editions :
- Jar Swing Edition : mars-sim_3.7.1_swing_java17.jar
- Jar Console Edition : mars-sim_3.7.1_console_java17.jar
- Debian Swing Edition : mars-sim_3.7.1_swing_java17.deb
- Debian Console Edition : mars-sim_3.7.1_console_java17.deb
Full Changelog: v3.7.0...v3.7.1
v3.7.0
A. Editions
Version 3.7.0 are available in 4 editions :
- Jar Swing Edition :
3.7.0_swing_java17.jar
- Jar Console Edition :
3.7.0_console_java17.jar
- Debian Swing Edition :
3.7.0_swing_java17.deb
- Debian Console Edition :
3.7.0_console_java17.deb
In the console edition above, either a beryx console or a SSH terminal can be used as the means of interacting with settlers, robots, settlements, vehicles, etc. in mars-sim. See wiki with regard to setting up SSH console.
In the Swing edition above, in addition to the beryx console, a rudimentary graphic interface based on Java Swing is available for players to interact with the simulated world.
Most players prefers the 'Jar Swing Edition' as it runs on Windows, macOS and Linux, provided that Java Runtime or JDK has been preinstalled on your machine.
Download your preferred edition to your machine today by clicking on the filename at the Assets
section at the bottom of this page.
Note 1 : currently openjfx/JavaFX package is NOT required to be installed to run mars-sim.
B. Java VM Support
This build was made to be Java 17-compliant using Oracle official Java 17 or above (OpenJDK 17 or above).
We apologize that running mars-sim with Java version below 17 is NO LONGER being supported.
C. Starting a Sim in the Jar Edition
To start a new simulation, find the corresponding jar file.
Open a console and in the folder to which the jarfile was previously downloaded , type the following :
> java -jar 3.7.0_swing_java17.jar
Make sure you DO NOT place multiple builds of binary in the same folder or else java will pick the first jar in alphabetical order to start.
Note 2 : The
new
switch is automatically added if no switches are entered. It will assume that you are interested in starting a new simulation.
If the player clicks on the jarfile to start the simulation, he/she will NOT be able to see the logs and the track trace.
It is HIGHLY recommend using a terminal / CLI to manually start the simulation. This way, the player may see the logs and stack trace in the terminal / CLI.
D. Loading a Sim
To load the previously saved simulation, open a console. In the folder where the jarfile is resided, type the following
> java -jar 3.7.0_swing_java17.jar load
The load
switch will tell mars-sim to open the /default directory to look for the sim file called default.sim
.
E. Build Management
Make sure you DO NOT place multiple builds of binary in the same folder or directory since this could potentially cause java to look into the same classpath
and pick an old build to start.
Always DELETE older builds or archive each build on a separate folder.
You may tell which build version you are running as shown on the title bar of the application window.
F. Contributors
- @bevans2000 and @mokun are the major code contributors
- @IBuildVans started the first comment on #324 and #1117
- @bdowrick made their first contribution in #925 on v3.6.0 and v3.6.1
G. What's Changed
Full Changelog: v3.6.2...v3.7.0
v3.6.2
This is a bugfix release that resolving a number of issues
Version 3.6.2 are available in 4 editions :
- Jar Swing Edition : mars-sim_3.6.2_swing_java17.jar
- Jar Console Edition : mars-sim_3.6.2_console_java17.jar
- Debian Swing Edition : mars-sim_3.6.2_swing_java17.deb
- Debian Console Edition : mars-sim_3.6.2_console_java17.deb
Full Changelog: v.3.6.1...v3.6.2
v3.6.1
v3.6.0
A. Editions
Version 3.6.0 are available in 4 editions :
- Jar Swing Edition :
3.6.0_swing_java17.jar
- Jar Console Edition :
3.6.0_console_java17.jar
- Debian Swing Edition :
3.6.0_swing_java17.deb
- Debian Console Edition :
3.6.0_console_java17.deb
In the console edition above, either a beryx console or a SSH terminal can be used as the means of interacting with settlers, robots, settlements, vehicles, etc. in mars-sim. See wiki with regard to setting up SSH console.
In the Swing edition above, in addition to the beryx console, a rudimentary graphic interface based on Java Swing is available for players to interact with the simulated world.
Most players prefers the 'Jar Swing Edition' as it runs on Windows, macOS and Linux, provided that Java Runtime or JDK has been preinstalled on your machine.
Download your preferred edition to your machine today by clicking on the filename at the Assets
section at the bottom of this page.
Note 1 : currently openjfx/JavaFX package is NOT required to be installed to run mars-sim.
B. Java VM Support
This build was made to be Java 17-compliant using Oracle official Java 17 or above (OpenJDK 17 or above).
We apologize that running mars-sim with Java version below 17 is NO LONGER being supported.
C. Starting a Sim in the Jar Edition
To start a new simulation, find the corresponding jar file.
Open a console and in the folder to which the jarfile was previously downloaded , type the following :
> java -jar 3.6.0_swing_java17.jar
Make sure you DO NOT place multiple builds of binary in the same folder or else java will pick the first jar in alphabetical order to start.
Note 2 : The
new
switch is automatically added if no switches are entered. It will assume that you are interested in starting a new simulation.
If the player clicks on the jarfile to start the simulation, he/she will NOT be able to see the logs and the track trace.
It is HIGHLY recommend using a terminal / CLI to manually start the simulation. This way, the player may see the logs and stack trace in the terminal / CLI.
D. Loading a Sim
To load the previously saved simulation, open a console. In the folder where the jarfile is resided, type the following
> java -jar 3.6.0_swing_java17.jar load
The load
switch will tell mars-sim to open the /default directory to look for the sim file called default.sim
.
E. Build Management
Make sure you DO NOT place multiple builds of binary in the same folder or directory since this could potentially cause java to look into the same classpath
and pick an old build to start.
Always DELETE older builds or archive each build on a separate folder.
You may tell which build version you are running as shown on the title bar of the application window.
F. New Contributors
G. What's Changed
- Bump maven from 3.9.0-amazoncorretto-17 to 3.9.1-amazoncorretto-17 by @dependabot in #839
- Bump spotbugs-maven-plugin from 4.7.3.2 to 4.7.3.3 by @dependabot in #826
- Bump maven-deploy-plugin from 3.1.0 to 3.1.1 by @dependabot in #829
- Bump flatlaf from 3.0 to 3.1 by @dependabot in #838
- Replace EarthClock with the standard Java LocalDateTime class by @bevans2000 in #841
- Bump spotbugs-maven-plugin from 4.7.3.3 to 4.7.3.4 by @dependabot in #840
- Add a tree control to the Resupply Window by @bevans2000 in #843
- Bugfix #1 on 3.5.0 by @bevans2000 in #849
- Bump native-maven-plugin from 0.9.20 to 0.9.21 by @dependabot in #845
- Bump flatlaf from 3.1 to 3.1.1 by @dependabot in #856
- Add support for multiple Vehicle Specifications by @bevans2000 in #861
- Remove hard coded constants in map data by @bevans2000 in #865
- Update setup.md by @mokun in #866
- Bump junit-platform-launcher from 1.9.2 to 1.9.3 by @dependabot in #864
- Bump junit-jupiter.version from 5.9.2 to 5.9.3 by @dependabot in #863
- Repeating resupply missions by @bevans2000 in #870
- Maps are downloaded from a remote site by @bevans2000 in #874
- Bump native-maven-plugin from 0.9.21 to 0.9.22 by @dependabot in #876
- Bump maven-surefire-plugin from 3.0.0 to 3.1.0 by @dependabot in #872
- Bump maven-failsafe-plugin from 3.0.0 to 3.1.0 by @dependabot in #873
- Remove the Mission Type from range calculations by @bevans2000 in #887
- Improve the management of HistoricalEvents by @bevans2000 in #896
- Mission preserves Vehicle used by @bevans2000 in #899
- Update bug_report.md by @mokun in #905
- Implement Settlement Preferences by @bevans2000 in #912
- Delivery a new approach to managing Missions by @bevans2000 in #920
- Bump guava from 31.1-jre to 32.0.0-jre in /mars-sim-mapdata by @dependabot in #914
- Implement MarsTime by @bevans2000 in #923
- Bump maven-assembly-plugin from 3.5.0 to 3.6.0 by @dependabot in #882
- Bump maven from 3.9.1-amazoncorretto-17 to 3.9.2-amazoncorretto-17 by @dependabot in #885
- Bump sshd-core from 2.9.2 to 2.10.0 by @dependabot in #880
- Bump git-commit-id-maven-plugin from 5.0.0 to 6.0.0 by @dependabot in #884
- Fix Issue #924 by @bdowrick in #925
- #924 - Hardware Acceleration by @bdowrick in #930
- OpenCL Bug Fixes and CPU Fallback by @bdowrick in #931
- Convert ScheduledEvent logic to MarsTIme by @bevans2000 in #934
- Build(deps): Bump native-maven-plugin from 0.9.22 to 0.9.23 by @dependabot in #927
- Build(deps): Bump maven-surefire-plugin from 3.1.0 to 3.1.2 by @dependabot in #929
- Build(deps): Bump guava from 32.0.0-jre to 32.0.1-jre by @dependabot in #928
- Build(deps): Bump maven-dependency-plugin from 3.5.0 to 3.6.0 by @dependabot in #939
- Build(deps): Bump commons-io from 2.11.0 to 2.13.0 by @dependabot in #937
- Build(deps): Bump versions-maven-plugin from 2.15.0 to 2.16.0 by @dependabot in #938
- Update Meta mission by @bevans2000 in #948
- Mission/Environment Initialisation by @bevans2000 in #949
- Build(deps): Bump maven-war-plugin from 3.3.2 to 3.4.0 by @dependabot in #945
- Build(deps): Bump spotbugs-maven-plugin from 4.7.3.4 to 4.7.3.5 by @dependabot in #944
- #947 - Mapdata restructure & mars-sim-tools creation by @bdowrick in #952
- Build(deps): Bump maven-failsafe-plugin from 3.1.0 to 3.1.2 by @dependabot in #943
- Build(deps): Bump kotlin.version from 1.7.22 to 1.8.22 by @dependabot in #926
- Bump guice from 5.1.0 to 7.0.0 by @dependabot in #879
- Assignment History uses the History<> class by @bevans2000 in #955
- Build(deps): Bump maven from 3.9.2-amazoncorretto-17 to 3.9.3-amazoncorretto-17 by @dependabot in #953
- EVA Suit has history by @bevans2000 in #960
- Build(deps): Bump guava from 32.0.1-jre to 32.1.0-jre by @dependabot in #957
- Fixed typo in TabPanelGeneral.java by @Paculino in #966
- Build(deps): Bump guava from 32.1.0-jre to 32.1.1-jre by @dependabot in #961
- Build(deps): Bump kotlin.version from 1.8.22 to 1.9.0 by @dependabot in #965
- Use the History<> class by @bevans2000 in #969
- Reduce contention in Relationship logic by @bevans2000 in #972
- Training defined by external configuration by @bevans2000 in #974
- Images can be compressed by @bevans2000 in #985
- Rework MEGDRMapReader logic to allow larger image files by @bevans2000 in #987
- Bump org.graalvm...
v3.5.0
Full Changelog: v3.4.1...v3.5.0
A. Editions
Version 3.5.0 are available in 4 editions :
- Jar Swing Edition :
3.5.0_swing_java17.jar
- Jar Console Edition :
3.5.0_console_java17.jar
- Debian Swing Edition :
3.5.0_swing_java17.deb
- Debian Console Edition :
3.5.0_console_java17.deb
In the console edition above, either a beryx console or a SSH terminal can be used as the means of interacting with settlers, robots, settlements, vehicles, etc. in mars-sim. See wiki with regard to setting up SSH console.
In the Swing edition above, in addition to the beryx console, a rudimentary graphic interface based on Java Swing is available for players to interact with the simulated world.
Most players prefers the 'Jar Swing Edition' as it runs on Windows, macOS and Linux, provided that Java Runtime or JDK has been preinstalled on your machine.
Download your preferred edition to your machine today by clicking on the filename at the Assets
section at the bottom of this page.
Note 1 : currently openjfx/JavaFX package is NOT required to be installed to run mars-sim.
B. Java VM Support
This build was made to be Java 17-compliant using Oracle official Java 17 or above (OpenJDK 17 or above).
We apologize that running mars-sim with Java version below 17 is NO LONGER being supported.
C. Starting a Sim in the Jar Edition
To start a new simulation, find the corresponding jar file.
Open a console and in the folder to which the jarfile was previously downloaded , type the following :
> java -jar 3.5.0_swing_java17.jar
Make sure you DO NOT place multiple builds of binary in the same folder or else java will pick the first jar in alphabetical order to start.
Note 2 : The
new
switch is automatically added if no switches are entered. It will assume that you are interested in starting a new simulation.
If the player clicks on the jarfile to start the simulation, he/she will NOT be able to see the logs and the track trace.
It is HIGHLY recommend using a terminal / CLI to manually start the simulation. This way, the player may see the logs and stack trace in the terminal / CLI.
D. Loading a Sim
To load the previously saved simulation, open a console. In the folder where the jarfile is resided, type the following
> java -jar 3.5.0_swing_java17.jar load
The load
switch will tell mars-sim to open the /default directory to look for the sim file called default.sim
.
E. Build Management
Make sure you DO NOT place multiple builds of binary in the same folder or directory since this could potentially cause java to look into the same classpath
and pick an old build to start.
Always DELETE older builds or archive each build on a separate folder.
You may tell which build version you are running as shown on the title bar of the application window.
v3.4.1
Fix for the #783 that relates to a failure of a fresh start from the JAR file.
Full Changelog: 3.4.0...v3.4.1