Download Utils — Minecraft Mods — MetaMods

Utils

Active

Downloads

0

Last update

6 months ago

Versions

1.21 — 1.21.8
Server
Fabric
Forge
Neoforge
Quilt
Libraries
Utils

Utils

Version: 5

Mod Features

Utils is a universal library of functions for Minecraft that significantly simplifies the creation and management of various game mechanics. The mod offers a comprehensive set of tools for working with commands, entities, players, and other game world elements.

Key features:

  • Global, entity, and player functions
  • Entity movement control in specified directions
  • Data storage system for entities
  • Constant score values
  • Player identification in the score system
  • Predicates for various conditions
  • Item modifiers
  • Entity tag groups
  • Macro functions
  • Custom item cooldown settings

Command Usage Examples

Global Commands

Clear chat for all players:

/function utils:global/clear_chat

Hide sidebar interface:

/function utils:global/hide_sidebar

Entity Commands

Remove mobs and entities:

/execute as @n[type=zombie] run function utils:entity/despawn

Reset all attributes:

/execute as @n[type=zombie] run function utils:entity/reset_all_attributes

Full health restoration:

/execute as @n[type=iron_golem] run function utils:entity/heal_full

Player Commands

Clear chat for specific player:

/function utils:player/clear_chat

Reset experience:

/function utils:player/xp/reset

Get all experience points:

/function utils:player/xp/get_all_points

Result is saved in the utils.player.xp.total_points score

Random teleportation for void worlds:

/function utils:player/random_tp

Movement System

Functions for controlling entity movement:

function utils:motion/calc

summon fireball ^ ^ ^.5

execute store result entity @n[type=fireball] Motion[0] double -0.00025 run scoreboard players get @s utils.motion.mx
execute store result entity @n[type=fireball] Motion[1] double -0.00025 run scoreboard players get @s utils.motion.my
execute store result entity @n[type=fireball] Motion[2] double -0.00025 run scoreboard players get @s utils.motion.mz

Or use the storage and macro method:

function utils:motion/storage {"value":"-0.00025"}

summon fireball ^ ^ ^.5

data modify entity @n[type=fireball] Motion set from storage utils:motion motion

Entity Data Storage

Creating Data

Two ways to add data: set for absolute values and append for arrays.

# Absolute values
/function utils:entity/storage/set {"path":"lives","data":3}
/function utils:entity/storage/set {"path":"name","data":'"lullaby6"'}

# Arrays
/function utils:entity/storage/append {"path":"deaths","data":1}
/function utils:entity/storage/append {"path":"deaths","data":2}
/function utils:entity/storage/append {"path":"deaths","data":3}

Running Functions with Entity Data

All data from storage is passed to the function as macro arguments.

/function utils:entity/storage/function {"function":"namespace:say_lives"}

say_lives.mcfunction file:

$say $(lives)

Removing Data

# Absolute values
/function utils:entity/storage/remove/data {"path":"lives"}
/function utils:entity/storage/remove/data {"path":"name"}

# Arrays
/function utils:entity/storage/remove/first {"path":"deaths"}
/function utils:entity/storage/remove/index {"path":"deaths","index":1}

Constants

Constants from 0 to 1000 are available. Check values using:

/scoreboard players get <number> utils.const

Example:

/scoreboard players get 1 utils.const

Player Identifiers

Get player identification in the score system:

/scoreboard players get @s utils.player.id

Predicate System

The mod offers various predicates for condition checking:

Weather conditions: can/see_sky, is/raining, is/thunderingEffects: has/effect/<effect_name> (speed, regeneration and others) — Interactions: has/passenger, is/riding, is/sneaking, is/sprintingLocation: in/biome/<biome_name>, in/structure/<structure_name>, in/dimension/<dimension>Light: in/light/<level> (0, 5, 10, 15, ranges 0-5, 5-10 and others) — State: is/baby, is/falling, is/flying, is/ground, is/on_fire, is/swimmingRandom: random/<chance> (0.1 for 10%, 0.5 for 50% etc.)

Usage example:

/execute as @s if predicate utils:is/on_fire run say I am on fire :D

Item Modifiers

Quantity operations:

{- count/add/ - increase quantity {- count/remove/ - decrease quantity {- count/set/ - set quantity

Other modifiers:

{- enchantment_glint_override/ - enchantment glow {- max_stack_size/ - maximum stack size {- rarity/ - item rarity {- repair_cost/ - repair cost {- tooltip//<show | hide> - tooltips {- use_cooldown/ - cooldown time (1s, 2s, 1m, 1h) {- damage/add/0. - add damage {- damage/set/0. - set damage

Special functions:

{- Content clearing clear_bundle, clear_container {- Death protection death_protection {- Random enchantment enchant_randomly, enchant_randomly_compatible {- Furnace smelting furnace_smelt {- Gliding glider {- Hiding tooltips, non-consumable items and other utilities

Usage example:

/execute if items entity @s weapon.mainhand minecraft:raw_iron run item modify entity @s weapon.mainhand utils:furnace_smelt

Entity Tag Groups

Extensive tag library for convenient work with different entity types:

Living beings: animals, aquatics, arthropods, bosses, monsters, undeadNarrower categories: aquatics_animals, aquatics_real_animals, real_animalsTransportation: all_boats, boats, boats_with_chest, rideables, rideables_animalsSocial: humanoids, illagers, piglins, villagers, villagers_hostilesAggressiveness: hostiles, flyers_hostiles, neutrals, passivesDimensions: end, netherSpecific mobs: cows, fishs, flyers, horses, slimes, spiders, tameables, zombiessTeam-related: team_player, proyectiles

Application example:

/effect give @e[type=#utils:team_player] glowing 1 0

License

The mod is distributed under MIT license.

Project members
lullaby

lullaby

Developer

Created: 13 Jan 2025

ID: 100603