Skip to content

JuliuChe/Minecraft_StatusAndControl

Repository files navigation

Minecraft Smart World Project

IntelliJ based project related to Minecraft Lab of 221_SIn & 231_SIn course. This program is developped as part of the course SIn and used to control a simulated world on a Minecraft map with the mod Electrical-age. The objective of this project is to manage the world in order for it to survive a three days simulation. The simulation last 25 minutes and is divided in 2.5 days of 10 minutes each. This project can also send the evolution of the different values in the world to a database and/or a web page.

Table of content

Installation

In order to run the program, you need to have a Minecraft server running with the mod Electrical-age installed. You also need to have Java JDK 8 installed on your computer to run the program. To run the program, you need to download the current directory and run the jar file with the command prompt. The .jar file HEI.jar is available here

Database

To use the database feature, you need to installhave your own database have the url of that database ready. You need to have also the name of that database as well as the token to access it. The database used in this project is influx db. The database can then be used in a dashboard environnment to display the data in time-series. The dashboard used in the developpment was Grafana. The JSON for the grafana dashboard is available here link to JSON

Web page

To use the web page feature, you don't need to install anything, you just need to have a web browser. You can use the link below to access the webpage used in the developpment of this project. The web client is available here link to WebClient

Instructions

The .jar file HEI.jar is available [here](/out/artifacts/MinecraftSmartWorld/HEI.jar In order to start the program you can start a cmd prompt, go to the directory of the .jar file and type the command : java -jar HEI.jar You can use the following parameters to start the program correctly :

  • <InfluxDB Server>: The complete URL of the InfluxDB server, including the protocol (http or https)... Example: https://influx.sdi.hevs.ch
  • <DB Name>: The name of the Influx DB to use. For this project, this name is the name of the group you've been affected to. (SInXX)
  • <DB Username>: The user's name to use to access the DB. It's also your group's name. (SInXX)
  • <Token>: The token to access the DB, it has to be generated by your database provider
  • <ModbusTCP Server>: The IP address of the Minecraft ModbusTCP server (default value: localhost)
  • <ModbusTCP port>: The port number of the Minecraft ModbusTCP server (default value: 1502)
  • [-eraseDB]: Optional parameter! If set, the application will erase the previous data in InfluxDB...
  • <measurement>: Optional parameter! If set, the application will send the data to the specified set of measurement if it is not set, the application will send the data to the default measurement (i.e. "Minecraft")

A javadoc has also been prepared for this project, it is available here

Contributors

Chevalley Julien, Bellon Adrien

About

This is a project to pull out some values from a Minecraft Electrical Age mod and Manage that world's electricity during a simulation

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors