Overview#
Iceberg Library is a technical dependency mod designed to simplify the development process for Minecraft modders. While it does not add traditional content like mobs, biomes, or dimensions, it introduces powerful backend mechanics that enable advanced features in other mods. Its primary purpose is to provide a unified framework for item selection, custom user interface (UI) components, and configuration management.
As a library, Iceberg is a prerequisite for several popular mods, including Legendary Tooltips, Prism, Equipment Compare, and Advancement Plaques. It is compatible with Forge, Fabric, and NeoForge, ensuring that complex UI and logic features work seamlessly across different modding environments.
Item Selectors#
The most prominent feature of Iceberg Library is the Item Selector system. This allows players and modpack authors to target specific items or groups of items within configuration files using a standardized string-based syntax. These selectors are essential for mods that apply custom tooltips, filters, or attributes to items.
Basic Selectors
| Selector Type | Symbol | Description | Example |
|---|---|---|---|
| Item ID | (None) | Matches a specific item by its internal ID. | minecraft:stick |
| Item Tag | $ |
Matches all items within a specific tag group. | $minecraft:planks |
| Mod Name | @ |
Matches every item added by a specific mod. | @iceberg |
| Rarity | ! |
Matches items based on their vanilla rarity level. | !epic |
| Hex Color | # |
Matches items whose tooltip name uses a specific hex color. | #23F632 |
| Display Name | % |
Matches items containing specific text in their display name (Case Sensitive). | %Netherite |
| Tooltip Text | ^ |
Matches items containing specific text in their tooltip description. | ^Legendary |
| NBT Tag | & |
Matches items with specific NBT data or values. | &Damage=0 |
Advanced Selector Logic
Iceberg versions 1.1.0 and higher support complex logic to refine item targeting:
- *Wildcard (``):** A single asterisk matches every item in the game. This is useful for applying a global setting that affects all items.
- Negation (
~): Placing a tilde before any selector will invert the match. For example,~@minecraftwill match every item except those from vanilla Minecraft. - Combining Selectors (
+): Multiple selectors can be chained together using a plus sign to create an "AND" operation. All conditions must be met for the item to be selected.- Example:
minecraft:diamond_sword+&Enchantmentsmatches only diamond swords that are enchanted. - Example:
shears+~!common+&Damage=0matches shears that are not common rarity and have zero damage.
- Example:
Mechanics & Technical Features#
Iceberg Library provides several core mechanics that function behind the scenes to enhance the gameplay experience through other mods.
Custom Tooltip Rendering
Iceberg includes a specialized rendering engine for item tooltips. This allows mods like Legendary Tooltips to display unique borders, backgrounds, and animated effects around item descriptions. It handles the complex math required to scale and position these elements correctly regardless of the screen resolution or GUI scale.
Configuration System
The library features a fully-contained configuration system. This allows dependent mods to save and load user settings without requiring additional third-party config libraries. It supports dynamic reloading, meaning many changes made to a mod's config file can take effect instantly without restarting the game.
Event Handling
For developers, Iceberg adds several loader-agnostic events. These events allow mods to trigger actions during specific game moments (such as when a tooltip is about to be rendered or when a player opens a specific menu) without needing to write separate code for Forge and Fabric.
Items and Blocks#
As a library mod, Iceberg does not add any items or blocks to the game's creative inventory or world. It functions entirely as a set of instructions and tools for other mods to utilize. If you see new items or blocks in your game, they are being provided by the mods that require Iceberg Library, rather than the library itself.
Mobs and Biomes#
Iceberg Library does not add any mobs, creatures, biomes, or dimensions. It is strictly a utility mod focused on UI, configuration, and item logic. It does not modify world generation or entity behavior directly.