Creators
Details
3.26.10.17
Compatibility
Changes
Fixes
- SCore:
EQUIPMENT_VISUAL_REPLACEandEQUIPMENT_VISUAL_CANCELno longer flood the server with packets. A long REPLACE sent the equipment packet to every online player on every tick, and CANCEL sent thousands of packets at once: everyone's ping went up and players could be kicked. Each entity and slot now has a single visual, sent once to the players who see the entity. CANCEL sends one reset and now also works on mobs, and a second REPLACE replaces the first one instead of stacking. The command syntax doesn't change. Thanks to darkchroma. - SCore: fixed a dupe. With
smelt:true(VEIN_BREAKER,MINEINCUBE,MINEINSPHERE,INLINE_MINEINCUBE) and withSMELT, a block whose break was cancelled (protected region, activator withcancelEvent...) stayed in place but still dropped its smelted item. Nothing drops anymore when the break is refused, andFARMINCUBEno longer replants a crop it could not break. - SCore: delayed commands survive a restart again. Since Minecraft 1.21.3, the
DELAYcommands of ExecutableBlocks could not be saved when the server stopped, so a block that aDELAYhad to put back never came back after a restart. They are now saved and resume after the restart, and the time left keeps running while the server is off.[<OFFLINE>]commands run without waiting for their player to join. Thanks to cyclexterminated. - SCore: blocks broken by commands can no longer start an endless chain that froze the server. With
score run-block-command ... BREAKin aPLAYER_BLOCK_BREAKactivator (a pickaxe that mines in a + shape), each broken block ran the activator again and broke its neighbours, until the watchdog stopped the server. A block is now broken once per chain, and a chain that goes past 64 levels or 512 blocks stops with one warning in the console. Normal uses don't change: a tree felled log by log stays far below these limits. Thanks to espadons. - SCore:
ifHasEnchantandifHasNotEnchantkeep every level you write for the same enchantment: withLOYALTY:1,LOYALTY:2,LOYALTY:3, only the last one counted. An enchantment written without a level (LOYALTY) now means any level; it used to be skipped without a word. Thanks to lxstradiance. - ExecutableItems: an activator with
VEIN_BREAKER,MINEINCUBE,FARMINCUBEorSMELTnow behaves the same right after the editor and after a reload or a restart. Before, the blocks of the vein could getdesactiveDropsandDROP_ITEMright after editing, then lose them after/ei reload. To make the blocks broken by the command run the activator, use the newrunActivatorOnBlocks:true(see below). Thanks to CRY0G3N_. - ExecutableItems, ExecutableBlocks, ExecutableEvents, MyFurniture: no more "out of date" message when your version is newer than the one Spigot shows. The message only appears when a newer version is published. Thanks to officialbasic.
- SCore: in the item editor, the message shown when no item is set now explains that the item is read from your cursor, not from your hand. Thanks to grim.
Performance
- SCore, ExecutableItems: a pickaxe that mines with chains of
score run-block-command ... BREAK(a + shape pickaxe, for example) now costs about 3 times less server time per hit underground, and 5 times less in the open. Commands no longer try to break empty air blocks, which ran the activators again for nothing, and every ExecutableItems activation skips work it used to throw away (conditions that are not set, colors already converted, the lookup of command names). Thanks to espadons.
New
- ExecutableItems: setting
runActivatorOnBlocks:trueonVEIN_BREAKER,MINEINCUBEandFARMINCUBE(off by default). The blocks broken by the command also run the activator that launched it: conditions,desactiveDrops,cancelEvent, the other commands,usageModification, variables. Cooldowns and uses are checked and taken only on the block you broke, so a cooldown doesn't stop the vein.triggerEvent:true, which old editor templates wrote, does nothing and still does nothing. Thanks to CRY0G3N_. - SCore:
DRAININCUBEgetswaterlogged:true(off by default). It also dries the waterlogged blocks of the cube (slabs, stairs...) and removes the water plants a sponge removes (kelp, seagrass, bubble columns). Minecraft 1.13+. Thanks to daphsquid. - ExecutableItems, MyFurniture: option
texturesPackRequiredinconfig.yml(defaulttrue, nothing changes). Set it tofalseto propose the textures pack without forcing it: players can decline it and still play. It applies to the next joins after/ei reloador/mf reload. Thanks to skinnylxgxnd. - SCore, MyFurniture:
AROUNDandMOB_AROUNDnow work in the commands of furniture, so a furniture can have an aura (effects on the players or the mobs around it). - ExecutableCrafting: the console says at startup when
accurateRecipeBookis enabled, and the[EC debug]line shows the recipe book state of the matched recipe (craftable, not craftable, not tracked, option off). Thanks to grim. - SCore: option
breakChainsinconfig.yml(defaulttrue, nothing changes). Set it tofalseto stop the chains of blocks broken by commands: a block broken by a command then never makes the activators break other blocks by command. A + shape pickaxe mines its own 5 blocks only, and a tree felled log by log withscore run-block-commandstops at its second log. The line is not added to existing configs: writebreakChains: falseyourself. Thanks to espadons.
Every new setting keeps the current behaviour by default (texturesPackRequired and breakChains default to true), so your configs are unchanged. If something looks wrong after updating, open a post in the bug channel.
Projects on Modrinth are automatically available through a Maven repository for use with JVM build tools such as Gradle. To learn more about the Modrinth Maven API, click here.
Note: When available, you should use the creator's maven repo instead as it will have transitive dependency information that the Modrinth Maven API does not. You may also end up with duplicate dependencies if you use a mix of Modrinth and non-Modrinth Maven repositories for your dependencies, because the group identifier will be different when served through the Modrinth Maven API.
Maven coordinates:
Version ID:
build.gradle:
repositories {
exclusiveContent {
forRepository {
maven {
name = "Modrinth"
url = "https://api.modrinth.com/maven"
}
}
// forRepositories(fg.repository) // Uncomment when using ForgeGradle
filter {
includeGroup "maven.modrinth"
}
}
}
// Standard Gradle dependency
dependencies {
implementation "maven.modrinth:y1hd60wk:ah0iOBYr"
}
// Legacy Loom dependency
dependencies {
modImplementation "maven.modrinth:y1hd60wk:ah0iOBYr"
}

