Tags
Creators
Details
1.3.1-SNAPSHOT
Compatibility
Changes
New PortType:
- ITEM_STACK ("item_stack") added to PortType enum
New item/ node category (6 nodes):
- item/create – ItemStack from material + amount
- item/inspect – read all properties in one node
- item/modify – set name/lore/amount/damage/model data, returns new ItemStack
- item/enchant – GET/SET/REMOVE/HAS mode for enchantments (uses Registry API)
- item/compare – similar vs identical comparison between two ItemStacks
- item/pdc – GET/SET/HAS/REMOVE on ItemStack PersistentDataContainer
New paper/ nodes:
- paper/entity_pdc – GET/SET/HAS/REMOVE on Entity PersistentDataContainer
- paper/inventory_slot – GET/SET item in specific inventory slot
- paper/inventory_held – GET/SET player's main hand item
- paper/player_get_food – companion to player_set_food
- paper/entity_teleport – companion to player teleport
- paper/player_uuid – get UUID string from player
- paper/entity_uuid – get UUID string from entity
- paper/get_player_by_uuid – look up online player by UUID
- paper/player_fly – GET/SET flight state
New data/ nodes (Map/Dictionary):
- data/map_create, map_set, map_get, map_remove, map_contains, map_keys
New trigger/ nodes:
- trigger/player_move – PlayerMoveEvent (BLOCK mode by default)
- trigger/item_pickup – EntityPickupItemEvent filtered to players
API fixes:
- SendActionBarNode: BungeeCord API → p.sendActionBar() + Adventure
- ChatTriggerNode: AsyncPlayerChatEvent → AsyncChatEvent (Paper)
- EntityEffectNode: PotionEffectType.getByName() → Registry.EFFECT
- EntityNameNode: setCustomName(String) → customName(Component), naive & replacement removed
- MaterialMetaNode: ChatColor + setDisplayName/setLore → Adventure API; marked @deprecated
- PlayerDeathTriggerNode: getDeathMessage() → deathMessage() Component
- SpawnEntityNode: EntityType.valueOf() → Registry.ENTITY_TYPE
Port type updates (any/object → item_stack):
- PlayerGiveItemNode, DropMaterialNode, InventoryContainsNode, InventoryRemoveNode, EntityEquipmentNode, InventoryClickTriggerNode
DropMaterialNode/InventoryContainsNode/InventoryRemoveNode: split single "any" port into explicit item_stack + string ports
Other fixes:
- CreateLocationNode: yaw/pitch promoted from property-only to input ports
- EntityDamageNode/EntityEffectNode/EntityAINode/EntityNameNode: property default values corrected from string literals to proper primitives
- NodeRegistry: papi/ prefix added to SOFT_DEP_PREFIXES map so PlaceholderAPI required-plugin warning appears in node palette
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:Y9V7DADc:X6KjLcAg"
}
// Legacy Loom dependency
dependencies {
modImplementation "maven.modrinth:Y9V7DADc:X6KjLcAg"
}

