This is a command-line tool that handles every step of generating the release files for your Minecraft Bedrock Edition add-on for you.
It can:
- Add the files from your development behavior and resource packs into a .mcaddon file.
- Remove development folders such as
src
andnode_modules
. - Remove development files such as
package.json
andpackage-lock.json
. - Update the add-on's version number.
- Apply any desired modifications to the release files automatically, including adding, removing, renaming, and moving file and folders.
It uses a configuration file called add-on-releaser-config.json
to specify the options.
You can have as many packs as you want included in the .mcaddon file.
npm i -g add-on-releaser
Usage:
add-on-releaser [configPath] Generate the release files.
add-on-releaser --update Update the Add-On Releaser.
add-on-releaser -u Update the Add-On Releaser.
add-on-releaser --version Get the current version of the Add-On Releaser.
add-on-releaser -v Get the current version of the Add-On Releaser.
Parameters:
configPath The path to the configuration file. Defaults to "./add-on-releaser-config.json".
The schema can be accessed at: https://raw.githubusercontent.com/8Crafter-Studios/Add-On-Releaser/refs/heads/main/8crafters-add-on-releaser-config.schema.json
Here is the default configuration file (Note: You will need to modify a few options for it to work):
{
"$schema": "https://raw.githubusercontent.com/8Crafter-Studios/Add-On-Releaser/refs/heads/main/8crafters-add-on-releaser-config.schema.json",
"cwd": "./",
"destination": "./Release Files", // Set this to the directory you want the generated .mcaddon file to be placed in.
"packs": [
{
"path": "./BP", // The path to the behavior pack.
"release_name": "bp", // The folder name of the behavior pack in the .mcaddon file.
"modifications": [
{
"type": "delete_folders",
"targets": ["src", "node_modules", ".git", ".vscode", "deprecated"] // This is a list of folders that will not be included in the release files.
},
{
"type": "delete_files",
"targets": [
".git",
".eslintrc",
".gitignore",
".gitmodules",
".hintrc",
".gitattributes",
".mcattributes",
"desktop.ini",
"package.json",
"package-lock.json",
"jsconfig.json",
"tsconfig.json",
"tsconfig.tsbuildinfo"
] // This is a list of files that will not be included in the release files.
}
]
},
{
"path": "./RP", // The path to the resource pack.
"release_name": "rp", // The folder name of the resource pack in the .mcaddon file.
"modifications": [
{
"type": "delete_folders",
"targets": ["node_modules", ".git", ".vscode", "deprecated", "blockbench_models"] // This is a list of folders that will not be included in the release files.
},
{
"type": "delete_files",
"targets": [
".git",
".eslintrc",
".gitignore",
".gitmodules",
".hintrc",
".gitattributes",
".mcattributes",
"desktop.ini",
"package.json",
"package-lock.json",
"jsconfig.json",
"tsconfig.json",
"tsconfig.tsbuildinfo"
] // This is a list of files that will not be included in the release files.
}
]
}
],
"file_type": "mcaddon",
"file_name": "myaddon-v${version}", // Set this to the name you want the .mcaddon file to have, ${version} will be replaced with the version of the pack.
"file_name_version": {
"format": "dashed"
},
"release_version_format": "tuple"
}