Mine Colab [Improved]
Run Minecraft Server on Google Colab
Table of content
- [ :hear_no_evil: What is Minecolab_Improved?](https://github.com/N-aksif-N/MineColab_Improved/tree/master/?tab=readme-ov-file#hear_no_evil--first-of-all-what-is-mine-colab-improved)
- [ :moneybag: Can Minecolab server online 24/7?](https://github.com/N-aksif-N/MineColab_Improved/tree/master/?tab=readme-ov-file#moneybag--can-minecolab-server-online-247)
- [ :page_with_curl: Instructions](https://github.com/N-aksif-N/MineColab_Improved/tree/master/?tab=readme-ov-file#page_with_curl-instructions)
- [ :zap: How does Minecolab actually work?](https://github.com/N-aksif-N/MineColab_Improved/tree/master/?tab=readme-ov-file#zap--so-how-does-it-actually-work)
- [ ๐ฎ License](https://github.com/N-aksif-N/MineColab_Improved/tree/master/?tab=readme-ov-file#-license)
- [ ๐ Found a bug?](https://github.com/N-aksif-N/MineColab_Improved/tree/master/?tab=readme-ov-file#-found-a-bug)
- [ ๐ Notes](https://github.com/N-aksif-N/MineColab_Improved/tree/master/?tab=readme-ov-file#-notes)
:hear_no_evil: First of all, what is Mine Colab [Improved]?
Mine Colab [Improved] is an alternative Minecolab project that helps to build a Minecraft server on your own Gdrive. It is easier to use and more flexible to edit. This project is suited for mainly google colab (a free service based on jupyter notebook and ubuntu os), though this can be applied on other projects like jupyter lab, deepnote, etc. This project followed the GNU License. Before looking closer, please make sure to see the original
:moneybag: Can Minecolab server online 24/7?
Of course, it's possible but with a little hard work. Google Colab is a free service and it is not suited for 24/7 online so you can use deepnote instead. Or if you still want to use google collab you may need some tricks or friends to make the web online and accept the captcha manually.
:page_with_curl: Instructions
- Open the notebook in Google Colab.
- RUN THE SET-UP CELL (important)
- Read through the notebook, most of the code is self-explanatory. Run the cells that are useful for your use case.
Create Minecraft server
- Run the cell that creates the Minecraft server.
- After that, you have five options. You can either use Ngrok, PlayIt, or Cloudflare's Argo. Ngrok, Localtonet is easy to set up and doesn't require anything to be installed by the clients but it can often be quite unreliable. Argo doesn't have such limitations but requires a bit more work. Playit, Zrok may get bugged at this point but it is more reliable and does not require any hard work.
:zap: So, how does it actually work?
MInecolab [Improved] is an alternative Minecolab project. Therefore, it has all the main features, which the Minecolab project does:
- Update the system's apt-cache.
- Install Openjdk-8 (For Minecraft versions below 1.17) or Openjdk-17 (For Minecraft versions over or in 1.17) through apt-get.
- Mount Google Drive to access the Minecraft folder (Drive is used here to provide persistent storage).
- Setup Argo/ngrok/playit Tunnel (Opening a tunnel at port 25565) depending on the
tunnel_service
variable.
- Change the directory to the Minecraft server folder on Google Drive ("Minecraft-server" is the default, located in the root directory of your Google Drive.)
- List/Print the file list on the screen to indicate successful directory change.
- Startup the Minecraft server (with optimized JVM parameters from Aikar's guide) and from GC logging
Additionally, Minecolab [Improved] has more new features:
- Bug Fixes: Mine Colab [Improved] addresses issues like Java errors, connection disruptions, and missing files, ensuring a smoother experience.
- Performance Improvements: The project has been optimized for better performance, making it more efficient.
- Mod and Plugin Support: You can now easily integrate mods, plugins, and mod packs from two primary sources: Modrinth and CurseForge.
- Server Configuration:
- Server Properties: Customize server properties such as game rules, difficulty, and world settings.
- Server MOTD (Message of the Day): Describe the server, promote features, create announcements, attract attention.
- Server Icon Configuration: Choose an icon to represent your server visually.
- Logs Viewing: Access and review server logs to troubleshoot issues or monitor server activity.
- Server Backup: Create backups of your server data in zip files, ensuring data safety.
- Expanded Software Support:
- Forge: Use the popular Forge modding platform.
- Fabric: Opt for the lightweight Fabric mod loader.
- Vanilla: Run a vanilla Minecraft server.
- Snapshot: Experiment with the latest Minecraft snapshots.
- Paper: Utilize the Paper server software.
- Purpur: Explore the Purpur server implementation.
- Arclight: Try out the Arclight server software.
- Mohist: Use Mohist, which combines Forge and Fabric.
- Banner: Deploy a Banner server.
- Velocity: Set up a Velocity proxy server.
๐ฎ License:
๐ Found a bug?
๐ Notes
- Please use the FUNCTION in the notebook unless you want any ERRORS/BUGS.
- If something does not work, try using a VPN like windscribe before opening an issue.
- Switch between the three tunnel providers and see which works best.
- Make regular backups of your world.
- Google Colab is not designed to create Minecraft servers, but it can be done. Google Colab promises to work for 12 hours straight, however, it is possible that if no person is reviewing the page or using the console, basically if the page detects inactivity the process will end. The performance is approximately 12 GB of RAM, together with a processor with a power of 2.2 GHz and 2 threads, this is better than many paid hostings, but it doesn't have support and doesn't promise to be open always
- It is not advisable to fill it with as many as plugins, which is more limited to this server than its own processor, it is not very good, any hosting for 12 USD can offer a higher quality server, if you are thinking of creating something for many users, it's much better.
๐ฅ Contributors
This project couldn't be made just without everyone that put it's little piece of sand, so we would like to show them all in this section.