Please sign in to access this page
A utility that allows users to easily install and configure a Minecraft java server on their computer, which they can then run and have people join.
Mohammed
Check their projects out: Hour Zero, Minecraft Server Wizard
Once you ship this you can't edit the description of the project, but you'll be able to add more devlogs and re-ship it as you add new features!
Updating the project JDK multiple times to try and make the app more compatible lol
I might end up changing it back to the original zulu 21, but I need to figure out how to bundle the JDK through launch4j.
I also tried again to fix closing the bat/sh files when running is complete by adding a script within the files themselves. I'm pretty sure it works a lot better this time since it doesn't risk not generating any files due to closing when the EULA is detected. The base command remains the same within both file contents.
Added an option to turn on the server after setup is complete. As of right now, this feature is not available for forge since full forge setup is not supported due to it being wildly different from the other setups. As always, turning on the server is an OPTION, because this application wants to give the user as much control as possible over server setup without requiring them to interact with the bat/run files or any of the complex files involved in setting up a server.
Finally finished my first attempt at adding file closing to the bat/sh files that run initially to create the EULA and start the server. The program closes the run file once it detects the creation of the EULA (which might actually be an issue because it could prevent the creation of files that come after, I will have to test for this). This feature makes it a lot simpler for the user as they don't even have to worry about seeing the bat file lol
Added the client, version, and server/profile name inputs with heavy validation to ensure no weird inputs that cause errors can be given by the user. Profile/server folder name is specifically validated to ensure no names are given that cannot be used in the operating system folder names, including CON, PRN, AUX, NUL, COM1, COM2, COM3, COM4, COM5, COM6, COM7, COM8, COM9, COM0, LPT1, LPT2, LPT3, LPT4, LPT5, LPT6, LPT7, LPT8, LPT9, LPT0, and the symbols that cannot be used in file names either.
Restarted the project to switch from command arguments to an actual input system through the console as that is much easier for a typical user to deal with. Command arguments can get a little difficult, especially as more arguments are added to customize the server further. An actual user-friendly input system would make this a lot simpler for anyone to understand.
Added a version testing method to validate the inputted version as each client has different supported versions on the website being used to retrieve the JAR files. It sends a request to the URL with the inputted version and if an error code is returned, the version is considered invalid. The user is then asked to input a different version over and over until they select a valid one.
Added input validation to the client & version inputs in the console to ensure the user can't input crazy values or incorrect values that don't make sense for them in their specific case. Created a much better menu for the client choice to make it a lot easier for the user to understand.
Added a networking method for retrieving the server jar file from an online resource. Invalid server jars and incorrect inputs are also handled. The server jar takes the client and version as input (which are retrieved from the user).