Skip to content

Enjoy a seamless modpack installation process and effortless updates with a user-friendly solution that simplifies management, making your gaming experience a breeze.

License

Notifications You must be signed in to change notification settings

boyonk913/AutoModpack

 
 

Repository files navigation

Logo

AutoModpack
CF GitHub Modrinth
Supported on Fabric Supported on Quilt

Welcome to AutoModpack,

What is this? AutoModpack is a Minecraft modification that aims to simplify the process of updating modpacks for servers. With this mod, players no longer have to manually update each mod or the entire modpack. The tedious task of updating is handled automatically, making the experience more seamless and enjoyable.

(A bit outdated) Showcase (YouTube video)

I do not take credit for any of the content that can be downloaded from the mod. Likely all materials, except for the mod itself, were created by various talented individuals!

Key features

  • Auto modpack updating for seamless player experience.
  • Effortless modpack management for admins, including the ability to easily manage mods, configs, resource packs, and more.
  • Direct downloads from modrinth and curseforge.
  • Dynamic modpack updates without disrupting player experience.
  • Quick and simple installation process.

How it works?

On server AutoModpack generates a file called modpack-content.json on the server, which contains all the mods, configs, resource packs, and other necessary files for your modpack. The server also hosts this file, as well as all the files contained within it, on an HTTP server.

When a client joins the server, the modpack automatically downloads the modpack-content.json file from HTTP server, check modrinth and curseforge APIs to get direct downloads of as most as possible files and then it downloads all the files contained within modpack-content, if they haven't been installed before on client. The client simply needs to wait a few seconds for the files to download, install, and restart the game. Once the process is complete, the client can join the server again and enjoy the modpack

Is it secure?

Simply, no. This mod allows ANY server running it to put ANY file in your game folder, such as a virus or a keylogger. So if you are a client please make sure you trust your server administrator and as a good measure make sure to scan your games folders for malicious content. Please direct any useful security material to the github issues. However as long you know server is safe and owner isn't impostor, you should be good.

This is only intended for personal use. Other developers work very hard on their mods and simply visiting their website, modrinth/curseforge page, or github is just a common courtesy. Please don't use this to mass distribute other people's mods without explicit permission. Depending on the copyright and/or pattent laws in your area using this mod with other developer's mods for a commercial purpose could be ILLEGAL, check licenses.

How to use

First of all download the latest version of the mod from here or use our modified version of fabric installer which will install fabric loader and AutoModpack.

Put it into the /mods/ folder of your minecraft/server installation.

Launch the game your game/server.

- Client

  1. Join the server. Now modpack will be magically downloaded and installed. You will only need to click few buttons to confirm download and restart the game.
  2. Join the server again and Enjoy!

- Server

  1. Open/Forward port (default: 30037 on TCP protocol) on your server! need to host modpack. (Port needs to be different from port used by minecraft server)
  2. Restart server

and you are good to go!

Doesn't work? Check minecraft server logs!

Do you want to add more content to your modpack?

  • By default, the modpack will automatically synchronize all mods, configs from default server directories to the modpack. (Check syncedFiles list in /automodpack/automodpack-server.json)
  • To add more mods to your server, place them in the /automodpack/host-modpack/mods/ directory. And so analogically to add shaderpacks, put them in /automodpack/host-modpack/shaderpacks/. You can create any subdirectories you need within /automodpack/host-modpack/ folder.
  • Or add whatever file/folder from server main directory to the syncedFiles list in /automodpack/automodpack-server.json

Do you want to delete some mods from modpack?

  • Just delete what file you want to delete from directory on your server.
  • Or check and delete whatever file/folder from list syncedFiles in /automodpack/automodpack-server.json

Do you want to exclude some mods from syncedFiles?

  • Just add them to the excludeSyncedFiles list in /automodpack/automodpack-server.json

Config

/automodpack/automodpack-server.json

Name Default Value Description
modpackName The name of the server modpack, shows while downloading modpack, more in the near future!
modpackHost true Starts HTTP server to host modpack.
generateModpackOnStart true Automatically generate modpack when the server starts.
syncedFiles "/mods/", "/config/" A list of files and directories that will be synced from the default server directory to the modpack.
excludeSyncedFiles "/mods/iDontWantThisModInModpack.jar", "/config/andThisConfigToo.json", "/mods/andAllTheseMods-*.jar" A list of only files that will be excluded from the syncing process. You can use wildcards * to exclude all files in directory, e.g. for files starts with mysupermod, type mysupermod*
allowEditsInFiles "/options.txt" A list of only files that clients are allowed to edit. In other words, just a files that are downloaded one time and then ignored from updating. There you can also use wildcards.
optionalModpack false Whether or not the modpack is optional for clients to download.
autoExcludeServerSideMods true Automatically excludes server-side mods from the modpack.
hostThreads 8 The number of threads used by the HTTP server.
hostIp The IP address on which the HTTP server binds.
hostLocalIp The local IP address on which the HTTP server binds.
updateIpsOnEveryStart false Updates hostIp and hostLocalIp on every server start. Might be useful if you have dynamic IP address and you know that automodpack gets you ip correctly (try and see :) ).
hostPort 30037 The port number on which the HTTP server listens.
reverseProxy false If true AutoModpack won't be adding configurable port from hostPort to the end of hostIp, localHostIp and externalModpackHostLink.
externalModpackHostLink An external link to the modpack host, if it's hosted elsewhere. If not empty, hostIp and hostLocalIp are not used. If you use it, probably you want to disable modpackHost and generateModpackOnStart.
selfUpdater true Turn on/off all automodpack updates. This does not affect the mod's activity in installing modpacks.
acceptedLoaders "<mod loader used by server>" Allows players from different modloaders to connect to your server (as long, automodpack support that loader and other mods on your server aren't incompatible with each other) with the same modpack. (use with caution, some mods may not work on both loaders)

/automodpack/automodpack-client.json

Name Default Value Description
selectedModpack The main folder of the modpack that you want to play. Typing the name of the modpack here will cause it to be loaded.
selfUpdater true Turn on/off all automodpack updates. This does not affect the mod's activity in installing modpacks.

Commands

  • /automodpack - Status of automodpack and general help.
  • /automodpack generate - Generate new modpack-content.json file on server, which results in modpack update for clients.
  • /automodpack host - Status of modpack hosting.
  • /automodpack host start - Start modpack hosting.
  • /automodpack host stop - Stop modpack hosting.
  • /automodpack host restart - Restart modpack hosting.
  • /automodpack config reload - Reload config files.

Questions? Problems?

  • Feel free to contact me via discord: skidam

Thanks to @Fallen-Breath for awesome mod template

Contributors are welcome! click.

About

Enjoy a seamless modpack installation process and effortless updates with a user-friendly solution that simplifies management, making your gaming experience a breeze.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Java 100.0%