Compatibility
Minecraft: Java Edition
Platforms
Supported environments
75% of ad revenue goes to creators
Support creators and Modrinth ad-free with Modrinth+Creators
Details
About
You can think of ModpackUtilities as your toolbox as a modpack developer. Copy files & folders, execute commands on world join, and much more to come! A single, simple mod to help you make the modpack you've always dreamed of, one feature at a time!
Features
Copy files & folders
Kinda like Configured Defaults or Your Options Should Be Respected (YOSBR), this allows you to copy any file or folder you put inside the copy
directory to the game's directory.
Example:
- If you want to copy the
options.txt
without overriding it, place it in/config/modpackutilities/copy/options.txt
and it will end up in/options.txt
, right where it should be! - Now let's say you want to overwrite the user's config even if he already has one. First set
overwriteOnCopy
totrue
in the config, then simply put your files and folders however you want them to be inside the user's game directory! It could look something like/config/modpackutilities/copy/config/fancymenu
that will end up in/config/fancymenu
for example.
And there is no limit to the files and folders you can copy. It's up to your needs! Whatever you put will be copied.
Execute commands on world join
As the name suggests. In the config, executionContext
will be from who the commands will be executed. client
will make it as if the player typed the commands, and server
will make it as if they were typed from the server's console. Keep in mind that permissions matter.
Example:
- If
executionContext
is set toclient
, if you try commands like /give that require administrator permission and the player isn't one, thne the command will silently fail. - If
executionContext
is set toserver
, the commands will be executed as an administrator, so /give commands and others will work. However, since you can't target the player via the classic @ parameters, you can use a special@player
one instead to target the player.
executionFrequency
will run the commands either everytime the player joins the world, either once the first time, then never again. No example needed I hope.
commands
is where you actually type the commands. They will be executed from right to left, so keep that in mind if order matters.
They have to start with a /
and must be between double quotes, inside the already present square brackets.
Example:
"commands": ["/give @s minecraft:diamond 64", "/tell @player Hello world!"]
will first run the /tell command, then the /give command. You can note the use of @s and @player together.
How do I configure this mod?
Almost everything happens in modpackutilities.json
, which is located at /config/modpackutilities/modpackutilities.json
.
In order, you'll find:
overwriteOnCopy
:true
orfalse
executionContext
:client
orserver
executionFrequency
:once
oreverytime
commands
: any valid Minecraft commands.@player
can be used to get the player's username
Enjoy :)