Mods
Resource Packs
Data Packs
Modpacks
Shaders
Plugins
Mods Resource Packs Data Packs Plugins Shaders Modpacks
Get Modrinth App Upgrade to Modrinth+
Sign in
ModsPluginsData PacksShadersResource PacksModpacks
Sign in
Settings
ModpackUtilities

ModpackUtilities

A (soon) multi-loader, multipurpose mod designed to address common annoyances when making a modpack!

47
2
Game Mechanics
Management
Utility
AboutChangelogVersions

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 to true 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 to client, 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 to server, 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 or false
  • executionContext: client or server
  • executionFrequency: once or everytime
  • commands: any valid Minecraft commands. @player can be used to get the player's username


Enjoy :)

90% of ad revenue goes to creators

Support creators and Modrinth ad-free with Modrinth+

Compatibility

Minecraft: Java Edition

1.20.1

Platforms

Fabric

Supported environments

Client-side

Creators

Discorde
Discorde Member

Details

Licensed CC-BY-NC-ND-4.0
Published 2 months ago
Updated 2 months ago

Modrinth is open source.

main@a0bd011

© Rinth, Inc.

Company

TermsPrivacyRulesCareers

Resources

SupportBlogDocsStatus

Interact

Discord X (Twitter) Mastodon Crowdin
Get Modrinth App Settings
NOT AN OFFICIAL MINECRAFT SERVICE. NOT APPROVED BY OR ASSOCIATED WITH MOJANG OR MICROSOFT.