promotional bannermobile promotional banner

yRodrigus: SMP Utilities

This mod was designed and planned to improve the experience of creating SMPs servers in Minecraft. Its main function is to ban and control items, blocks, and mods, with the ability to unban those same items, blocks, or mods for specific players.
Back to Files

SMP-Utilities-NeoForge-1.21.1-0.1.9.jar

File nameSMP-Utilities-NeoForge-1.21.1-0.1.9.jar
Uploaded
Nov 12, 2026
Downloads
4
Size
900.0 KB
Mod Loaders
Forge
File ID
9578165
Type
R
Release
Supported game versions
  • 1.20.1

Curse Maven Snippet

Forge

implementation fg.deobf("curse.maven:smp-utilities-1481310:9578165")

Learn more about Curse Maven

What's new

SMP: Utilities - Changelog

Complete development history of SMP: Utilities, from the initial refactoring of the legacy workspace to the current 0.1.9 version for Minecraft 1.20.1 & 1.21.1 (Forge, NeoForge, and Fabric).


[0.1.9] - 1.21.1 Parity & Optional Dependencies

Optional Dependencies (4 Loaders)

  • Standalone Operation: Curios (Forge/NeoForge), Trinkets and Accessories (Fabric), JEI, and Balm/Waystones are now strictly optional - the mod starts and operates normally both with these mods installed and without any of them.
  • Open Version Ranges: mods.toml and neoforge.mods.toml updated with versionRange="[0,]" for curios and jei; fabric.mod.json (1.20.1 and 1.21.1) configured with "suggests" using "*" for jei, trinkets, accessories, waystones, and balm.
  • Class & Mixin Protection: Isolation of optional handlers (CuriosRestrictionHandler) and client-only packets (ShowTypewriterPacket, SyncRestrictionsPacket, SyncCanonHeartsPacket), along with SmpMixinConfigPlugin using require = 0 in TrinketSlotMixin to prevent crashes when Trinkets is absent.
  • Safety Backup: Complete snapshot preserved in _reservados/backup_pre_dependencias_2026-11-10/.

Commands & Final Documentation

  • Unquoted # Support in /smpu lectern: Hex argument migrated to ScoreHolderArgument with HEX_SUGGESTIONS, allowing /smpu lectern #FF5500 or /smpu lectern #F50 to be used directly without quotation marks.
  • Command-Specific Colors: Hexadecimal support removed from /smpu rename, /smpu lore, and /smpu objective in all 4 workspaces (keeping Minecraft's 16 named colors + & codes), making hexadecimal colors exclusive to /smpu lectern.
  • Official Wiki (WIKI.md): Complete documentation rewritten in Markdown, covering all mechanics, items, blocks, commands, 14 restriction categories, TOML examples, Canon Hearts, potions, and FAQ.
  • Organized Exports: Clean build and export of the 4 final 0.1.9 .jar files to Desktop/SMP Utilities 0.1.9/.

Fabric 1.20.1 & 1.21.1 Parity

  • 1:1 Fabric 1.21.1 Parity: Fully ported using DataComponents (CUSTOM_NAME, LORE, DYED_COLOR, POTION_CONTENTS), CustomPacketPayload + StreamCodec, FabricBrewingRecipeRegistryBuilder.BUILD, hud/heart/* sprites, and singular data directories (recipe, loot_table, tags/block, tags/item).
  • Canon Hearts via Cardinal Components: Persistence migrated to Cardinal Components API (5.2.2 in 1.20.1 / 6.1.0 in 1.21.1) with RespawnCopyStrategy.ALWAYS_COPY, replacing old entity mixins.
  • HUD Textures & Animation: Canon Hearts unified under textures/gui/sprites/hud/heart/*.png (including the _blinking state), with AppleSkin bar offset correction (GuiMixin on Fabric and ARMOR_LEVEL anchor on NeoForge 1.21.1).

Curios, Trinkets & Accessories

  • Native Dual Integration on Fabric: Created TrinketsCompat and AccessoriesCompat (CanEquipCallback + AccessoryChangeCallback), maintaining unified aliases in restrictions.toml and PermissionManager (blocked_trinkets_items, blocked_curios_items, blocked_accessories_items).
  • Prevention of Item Loss on Shift+Click and Hover Spam: Removed error messages triggered merely by hovering over predictive slots (mayPlace / canInsert) and fixed AbstractContainerMenuMixin to prevent relics from being discarded during QUICK_MOVE.

Restriction System (restrictions.toml)

  • New Categories (blocked_offhand_items and blocked_crafting_items):
    • Complete offhand blocking (inventory slots, F key, and GUI clicks/swaps) through RestrictedOffhandSlot and mixins/events.
    • Server-side and client-side crafting recipe blocking (RecipeManagerMixin / RecipeFilterHelper / RestrictedResultSlot), hiding only the recipes in JEI without removing the item from search results when it is not listed in hidden_jei_items.
  • Creative vs. JEI Independence: hidden_creative_items and hidden_jei_items now operate independently (including the #c:hidden_from_recipe_viewers tag for JEI/EMI/REI).
  • Individual Whitelists and Blacklists in the Same File: Consolidation of player_whitelist and player_blacklist across all 14 categories within restrictions.toml (with the removal of permissions.toml and the old special_features), using empty [] lists by default.
  • Full .toml File Preservation: Decoupling of ForgeConfigSpec/ModConfigSpec from restrictions.toml, ConfigFormatter converted into a no-op, and a resilient parser with loadFallback tolerant of manually added spaces and blank lines.
  • Action Bar Preemption & Placeholders: ShowTypewriterPacket synchronizing remote messages; immediate preemption (new messages always interrupt previous ones from character 0); proximity-based drop_items display without pickup spam; universal case-insensitive resolution of %item%, %block%, and %player% (with a notifStack copy before slot removal); left-click attack handling removed from blocked_use_items (zero damage handling centralized in zero_damage_items).

Weapons, Items, Audio & Visuals

  • Updated Identity: Official displayed name set to SMP: Utilities.
  • Weapon Balancing & Tooltips:
    • Absurd Damage Sword: damage fixed at 1,000,000 with a dark green vanilla tooltip displaying the ∞ symbol (without +).
    • Ban Sword and Chapolin Colorado's Sledgehammer: 0 actual damage while retaining knockback, particles, and sound only when hitting entities; Sledgehammer attack speed adjusted to 1.6 (-2.4).
    • Mind Wrench: 0 damage, zero knockback, and instant block breaking without drops (including unbreakable blocks, while respecting blocks protected by restrictions).
    • /smpu lore updated to use a single line with explicit withItalic(false) in the normal style (also fixing forced italics in /smpu rename).
  • 3D Audio Normalization: The 4 .ogg files (little_poop, ban_sword, absurd_damage_sword, chapolin_sledgehammer) normalized to -21.2 dBFS RMS in mono.
  • Tooltips & Line Wrapping: Automatic wrapping of long lines (wrapTooltipLines) added to Fabric.

[0.1.8] - Multi-Loader & NeoForge 1.21.1

Version Policy & Multi-Loader Structure

  • Official version 0.1.8 established for synchronization across workspaces, and folder names standardized without hyphens (-).
  • NeoForge 1.21.1 Port: Complete migration of Forge 1.20.1 code to ModDevGradle, Java 21, DataComponents, CustomPacketPayload / StreamCodec, NeoForge.EVENT_BUS, updated test mods, and compatibility with Curios and JEI 1.21.1.
  • Fabric Workspaces Created (1.20.1 and 1.21.1): Initial Loom structure, .bat execution scripts, NightConfig bundled via Jar-in-Jar, FabricConfigManager with templates aligned with Forge, and initial plugins for JEI and Waystones/Balm.
  • Critical Multi-Loader Fixes:
    • Fixed ClassCastException in the Creative inventory and NullPointerException during client logout (TypewriterActionBar).
    • Fixed mixin/Jar-in-Jar loading (syncModsToRun) and implemented the rule of never exporting the mod's own .jar file to mods/.

[Pre-0.1.8] - MCreator -> Forge Refactoring

MCreator Decoupling & Clean Architecture

  • Complete removal of MCreator files (.mcreator, elements/, mcreator.gradle) and package migration to com.gamersa3b.smputilities with native Gradle and instance .bat scripts.
  • Migration of world-specific .dat files to 4 global .toml configs in config/smp_utilities/ (restrictions.toml, canon_hearts.toml, waystones.toml, utilities.toml) with /smpu reload and support for vanilla /reload.

Core Mechanics Implemented

  • Restrictions & Anti-Duplication: Transition from legacy commands (/restrict, /idrestrict, /idcontrol, /idlock) to declarative configuration, along with RestrictedArmorSlot and CurioEquipEvent to eliminate duplication race conditions in slots.
  • Unified Commands (/smpu & /smp_utilities): Centralization of rename, lore, lectern, objective (with custom typewriter animation and pause for alerts), canon (get, set, add, setmax, reset, revive online/offline), and reload, all strictly in English.
  • Creative Lectern: Indestructible and dynamically RGB-dyeable administrative block (LecternColorHelper, creative_lectern_dye recipe, direct use of dyes in the world, washing with water/cauldrons, 17 entries in vanilla order, CreativeLecternJeiPlugin, page-switching fix in the menu, and Done button width correction).
  • Items, Weapons & Little Poop: Infinite durability for admin tools, LittlePoopProjectileEntity decoupled from SnowballItem with mono 3D audio, Mind Wrench with villager menu bypass and NoAI toggle, and clean single-paragraph [SHIFT] tooltips on the 4 items with descriptions.
  • Blocks, Potions & Canon Hearts: Fixed UVs and cullface on the Security Block; standardized potions and arrows in the Creative tab with exact durations (5:00, 2:30, 1:15, 0:10); Canon Hearts HUD with left-to-right consumption and CanonLossMobEffect.
  • Cleanup & Removals: Permanent removal of the old Generator (/generator) and Lock (/lock) systems, Golden Beetroot (golden_beetroot), security_slab/security_stairs, and extra canon_loss variants.

This mod has no additional files