Zum Hauptinhalt springen

Advanced Tooltip Configuration

The advanced_tooltip_config manifest entry controls the multi-page tooltip system for MMOItems, including pagination keybinds, item comparison, and dynamic requirement status indicators.

Configuration

advanced_tooltip_configMap

Configuration for the advanced tooltip settings.

Properties

isEnabled

"> Enable or disable the advanced dynamic tooltip system globally or per player. overrideDefaultLore

"> When true, completely overrides MMOItems default lore with Typewriter's dynamic paginated format. paginationKeybind

"> Keybind for changing pages. Available: SWAP_OFFHAND, DROP, SNEAK, SHIFT_LEFT, SHIFT_RIGHT, LEFT_CLICK, RIGHT_CLICK, MIDDLE_CLICK. Default: SWAP_OFFHAND (F key). comparisonKeybind

"> Keybind to set an item as comparison base. Same available options as pagination. Default: SNEAK. requirementMetSymbol

"> MiniMessage symbol displayed when a requirement IS met. Used by both <requirement_met> (static) and <requirement_status> (dynamic). Default: <green>✔</green>. requirementNotMetSymbol

"> MiniMessage symbol displayed when a requirement is NOT met. Used by both <requirement_not_met> (static) and <requirement_status> (dynamic). Default: <red>✖</red>. categoryImages

"> Maps MMOItems category IDs (e.g., SWORD, BOOTS) to MiniMessage icon strings for the <category_image> tag. paginationIndicator

"> Indicator at the bottom of multi-page items. Use <page> and <max_pages> placeholders. comparisonIndicator

"> Indicator shown when comparison mode is active on a compatible item. comparisonStatPositive

"> Template for positive stat difference when comparing items. Use <value> placeholder. Default: <green> +<value></green>. comparisonStatNegative

"> Template for negative stat difference when comparing items. Use <value> placeholder. Default: <red> -<value></red>.

Lore Tags Reference

All tags below are placed directly in your MMOItems lore template and replaced at display time.

Page Structure

TagDescription
<page_break>Splits lore into pages. Everything after this tag goes to the next page.
<pagination_indicator>Replaced with the configured pagination indicator. Hidden on single-page items.
<category_image>Replaced with the category icon from categoryImages map.

Requirement Status (Conditional, Dynamic)

TagBehavior
<requirement_met>Shows requirementMetSymbol (✔) ONLY when the player meets the requirement. Hidden otherwise.
<requirement_not_met>Shows requirementNotMetSymbol (✖) ONLY when the player does NOT meet the requirement. Hidden otherwise.

How it works:

  1. Place BOTH tags side by side on each requirement line: <requirement_met><requirement_not_met>
  2. At display time, the tooltip engine reads the item's requirements from MMOItems (level, class, profession, permission)
  3. Each requirement is evaluated against the player's CURRENT stats via MMOCore
  4. For each requirement: only the CORRECT tag is shown, the other becomes invisible
  5. If the player levels up, the indicators update on the next inventory refresh

Example MMOItems lore template:

<gray>Required Level: <white>50</white> <requirement_met><requirement_not_met>
<gray>Required Class: <white>Warrior</white> <requirement_met><requirement_not_met>
<gray>Required Profession: <white>Mining 30</white> <requirement_met><requirement_not_met>

Rendered (player level 55, class Warrior, no Mining):

Required Level: 50 ✔
Required Class: Warrior ✔
Required Profession: Mining 30 ✖

Evaluated stat keys (read from MMOItems NBT):

NBT KeyCheck
MMOITEMS_REQUIRED_LEVELPlayerData.getLevel() >= value
MMOITEMS_REQUIRED_CLASSPlayerData.getProfess().getId() == value
MMOITEMS_REQUIRED_PROFESSIONPlayerData.getCollectionSkills().getLevel(name) >= level
MMOITEMS_REQUIRED_PERMISSIONplayer.hasPermission(value)

If MMOCore is not available, the tags fall back to static replacement (both show).

Comparison

TagDescription
<comparison_indicator>Shown when comparison mode is active and item type matches the base item.
<comparison_stat_positive>Template for higher stats when comparing.
<comparison_stat_negative>Template for lower stats when comparing.

Comparison workflow:

  1. Press the configured comparisonKeybind (default: Shift/Sneak) on an MMOItem
  2. That item becomes the comparison base
  3. When viewing other items of the same category, the comparison indicator appears
  4. Press the comparison keybind again on the same item to clear comparison

Keybinds Reference

Keybind StringTrigger
SWAP_OFFHANDF key (swap hands) or F-click in inventory
DROPQ key (drop item)
SNEAKLeft or Right Shift (sneak)
SHIFT_LEFTLeft Shift + Click in inventory
SHIFT_RIGHTRight Shift + Click in inventory
LEFT_CLICKLeft click in inventory
RIGHT_CLICKRight click in inventory
MIDDLE_CLICKMiddle click in inventory

Note: When the pagination keybind matches an MMOItem, the default action (swap/drop/etc.) is ALWAYS cancelled for that item — even on single-page items. This ensures consistent behavior.