Minecraft fabric mod that collects and sends in-game information to Minecraft HTTP API server (another my repo). The project consists of Minecraft fabric mod (agent)
and HTTP API server
. The code of the Minecraft fabric mod is located in this repo and the HTTP API server code is located by this link: *link*. Read the full manual to get everything set up correctly.
The full manual you can read here: read
I recommend you use IDEAs like IntelliJ IDEA
or Eclipse
. But If you would like to generate a .jar
file without any IDEA you can use the command gradle build
in the project root (be sure Java version 17 and higher is installed).
Be sure that you already installed the Fabric of a needed version of Minecraft. Follow the link with releases *link*. Choose and download the .jar file needed version of Minecraft (also check the patch version). Put the downloaded file to the .mods
folder (it is located by the %AppData%/.minecraft/mods
path in most cases). Run Minecraft using fabric installation in your launcher.
I will be glad if you can help in the development of this project. What you can do:
- Spelling correction. My English is not good, so you can correct the comments in the code or the text in the files (like README.md).
- Code cleanup
- Add new features or improve old ones
The code files are located in the folder that follows the path: src/main/java/com.crocoby
. There are some files in this folder:
HttpInfoServer.java
— have an entrance method that is calledonInitialize
and starts when Minecraft loads. We create and run WebSocket instances in theonInitialize
method.WebSocketDoor.java
— The project uses the TooTallNate/Java-WebSocket library to make a WebSocket client. The WebSocket class describes the behavior of the WebSocket client that connects to the WebSocket server (another repo). When the server sends a message with the text "collectData" the WebSocket client usesInfoCollector
class (this behavior is described in theonMessage
method).InfoCollector.java
— Have thegenJson
function that collects data and turns it into JSON string format. This method needs to generate a response for the WebSocket server.mixin/WorldJoinMixin.java
— Have theinit
method that invokes whenever a player joining to any world (server works too). It sends a message in the in-game chat when the WebSocket client is not connected to the WebSocket server.