StackUp Tutorial #1: Introduction
This is an introductory tutorial on how to use StackUp, a mod which allows you to increase Minecraft’s stack limit above 64, as well as modify the stack size of existing items.
First, we need to make a few assumptions and note a few things:
- This tutorial has last been updated for StackUp 0.2.3 (13th October 2018). Newer versions of StackUp may include additional functionality.
- This tutorial is targetting Minecraft 1.12.2. In addition, presence of CharsetLib >= 0.5.5.6 is assumed for the “/ch” sub-commands.
- Currently, StackUp does not allow to change item stack sizes at the metadata level - only items and blocks as a whole. This may be expanded upon in the future, depending on 1.12.2’s remaining lifespan.
You can find StackUp and CharsetLib here.
Once you download and start a modpack with StackUp installed, you may find that nothing has actually changed and that items still stack to 64.
This is because StackUp does not assume a new default maximum stack size - that is, the global maximum for any item stack in the game. The reason for that is compatibility - we cannot just make it infinite, and very high numbers could cause compatibility concerns in some modpacks but not in others.
You’ll have to decide on one yourself. It can be any number of choice - 64, 99, 4096, etc. Please note that, while the mod’s maximum is slightly above 999 million, going above about 8 million may cause duplication issues in certain mods such as Inventory Tweaks. As such, please don’t go overboard!
After making said decision, open config/stackup.cfg and set the general.maxStackSize option accordingly, as highlighted below.
For this guide, we’re going to assume a global maximum of at least 256, but it is not a requirement.
Next, you can proceed with the actual modification of stack sizes. To do so, create a new directory called config/stackup and create a new file with the .stackup extension (such as “test.stackup”) inside of it. This adds a new script.
Before you begin writing commands for the script, it is important to warn about certain practices:
- Making non-stackable (of a maximum stack size equal to 1) items stackable should be done with great care. Many mods are not tested for this scenario, and this may cause very strange bugs. The opposite, making stackable items non-stackable, should be fine!
- If a larger stack than allowed appears - for instance, you limit wooden planks to stack to 2, but a recipe outputs 4 wooden planks - the user will be forced to put it into two slots in their inventory. While this is much less likely to cause bugs, some mods may still not take to this too kindly.
- Setting a stack size larger than the global maximum stack size will not work! Refer to the notes on config/stackup.cfg above.
In general, please keep your stack size changes consistent with each other and the rest of the modpack.
The easiest thing one can do with a script is change the stack size of a specific item, for example an Apple. To do so, we need to discover the ID of the item in question. This can be done by either using F3+H (advanced tooltips), or by using CharsetLib’s “/ch hand” command, as shown below.
Once we know the ID, we can edit the created script and run “/stackup reload” to reload all stack size-changing scripts in the game.
id="minecraft:apple" = 256
If you’re not seeing any changes, make sure you have edited config/stackup.cfg as explained above!
One of the most common things people seem to be interested in doing is making all blocks stack to a higher value. This can be accomplished in many ways, for example:
- Making all blocks which previously stacked to 64 stack to 256:
isBlock, size=64 -> 256
- Making all blocks which stacked at all stack to 256:
isBlock, size>=2 -> 256
- Making all blocks which stacked at all stack four times higher:
isBlock, size>=2 *= 4
This should be enough to begin working with StackUp!
For more information, I recommend studying the format documentation and examples available here. I hope you’ll enjoy using StackUp and find novel ways to tweak your modpack’s balance with it!