Cpack
Run .cpack and .mcfunction scripts per-world with wait , call , and zero-overhead pre-parsing — just like mcfunction, but better.
介绍
Cpack
A Fabric mod for Minecraft 1.21.11+ that lets you run .cpack and .mcfunction files as scripted command sequences — with wait, call, and full tab-completion support.
Made by Westires
What is Cpack?
Cpack works just like .mcfunction files, but stored per-world and with extra arguments (wait, call). You write plain command scripts, load them into your world, and run them with /cp run. All files are pre-parsed on world load — zero overhead at runtime.
File Location
Scripts are stored inside your world folder, not the global config:
saves/<WorldName>/cpack/<namespace>/<your_script>.cpack
saves/<WorldName>/cpack/<namespace>/subfolder/<your_script>.mcfunction
<namespace>is any folder name you choose (e.g.myproject,demo)- Subfolders are supported at any depth
- Both
.cpackand.mcfunctionextensions are supported
Script Format
Identical to .mcfunction — one command per line. Comment lines starting with # are ignored.
# This is a comment
say Hello!
particle minecraft:end_rod ~ ~ ~ 0.5 0.5 0.5 0.1 20 normal
wait 10 tick
say 10 ticks later!
wait 2 second
call myproject:effects/firework.cpack
Extra Arguments
| Argument | Example | Description |
|—|—|—|
| wait <n> tick | wait 5 tick | Waits n ticks before executing the next line |
| wait <n> second | wait 2 second | Waits n seconds (n × 20 ticks) before the next line |
| call <namespace:path> | call demo:intro.cpack | Runs another cpack/mcfunction file inline |
Note:
waitsuspends only the current script — the server keeps running normally. Multiple scripts can run in parallel.
Commands
All commands require operator level 2 (gamemaster) except /cp list.
| Command | Description |
|—|—|
| /cp | Shows the command list |
| /cp run <namespace:file> | Runs a cpack/mcfunction file |
| /cp stop <all\|namespace:file> | Stops a running script (or all scripts) immediately |
| /cp list [page] | Lists all loaded files with their status |
| /cp disable <namespace:file> | Disables a file (prevents it from running) |
| /cp enable <namespace:file> | Re-enables a disabled file |
| /cp reload <all\|namespace:file> | Reloads files from disk and re-parses them |
All arguments support tab completion — loaded file names appear automatically.
Using inside /execute
/execute positioned ~ ~1 ~ run cp run demo:frames/frame_000.cpack
Example
File: saves/MyWorld/cpack/demo/fireworks.cpack
# Launch 3 firework bursts with delays
particle minecraft:firework_rocket ~ ~1 ~ 0.5 0.5 0.5 0.05 30 normal
wait 10 tick
particle minecraft:firework_rocket ~ ~1 ~ 0.5 0.5 0.5 0.05 30 normal
wait 10 tick
particle minecraft:firework_rocket ~ ~1 ~ 0.5 0.5 0.5 0.05 30 normal
say Fireworks done!
Run it:
/cp run demo:fireworks.cpack
Performance
- All files are pre-parsed on world load using Brigadier’s parser — just like vanilla
.mcfunction - At runtime, only
dispatcher.execute()is called — no re-parsing - Command feedback (chat messages from commands like
particle) is suppressed by default, matching mcfunction behavior - Multiple scripts run in parallel with no artificial limits
Requirements
- Minecraft 1.21.11
- Fabric Loader 0.18.1+
- Fabric API 0.141.2+1.21.11
Installation
- Install Fabric
- Download Fabric API for 1.21.11
- Drop
cpack-1.0.0.jarinto your.minecraft/mods/folder - Launch the game and open a world
- Create scripts in
saves/<WorldName>/cpack/<namespace>/
License
MIT — do whatever you want with it.
常见问题
Cpack 支持哪些 Minecraft 版本?
Cpack 支持 Minecraft Java 版 1.21.11,可用的加载器:Fabric。下载时注意选择和你游戏版本一致的文件。
Cpack 怎么安装?
先用 PCL2 或 HMCL 启动器安装对应版本的 Fabric,再把下载的 .jar 文件放进游戏目录的 mods 文件夹,重新启动游戏即可。开启了版本隔离的,mods 文件夹在 versions/版本名 下面。运行环境:仅服务端。
评论
登录后评论和评分