Compatibility
Minecraft: Java Edition
Platforms
Supported environments
Creators
Details
HttpInfoServer
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.
Manual
The full manual you can read here: read
Build
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).
Installing
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.
Contribution
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
Code structure:
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 calledonInitializeand starts when Minecraft loads. We create and run WebSocket instances in theonInitializemethod.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 usesInfoCollectorclass (this behavior is described in theonMessagemethod).InfoCollector.java— Have thegenJsonfunction 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 theinitmethod 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.



