
MMOIdentifier 1.0-Latest
Unlock the Unknown, Forge Your Legend!
MMOIdentifier - Advanced Item Identification & Gacha System
Transform your server with a dynamic item identification system inspired by RPG classics! MMOIdentifier adds depth to loot mechanics, allowing players to uncover powerful gear through an engaging identification process.
🌟 Key Features
-
Unidentified Items
-
Craft mysterious items with custom names, lore, and NBT tags.
-
Integrate with MMOItems for unique gear or use vanilla items.
-
-
Interactive Identification GUI
-
Identify items via a customizable GUI with Vault economy or physical item costs.
-
Gacha-style animation reveals rewards for immersive gameplay.
-
-
Smart Mob Drops
-
Configure drops for vanilla mobs and MythicMobs with adjustable rates and decay mechanics.
-
Add conditions (PlaceholderAPI support) to control drop eligibility.
-
-
Epic Visual Effects
-
Glowing items with rainbow effects, lootsplosions, and client-side particle beams.
-
Per-player drops and client-side rendering to reduce server lag.
-
-
Multi-Language Support
-
Built-in localization for 9+ languages (EN, ID, JA, ZH, etc.).
-
⚙️ Commands & Permissions
Commands | Usages | Permissions |
/mmoid identify <ID> | Identify held item | mmoid.use |
/mmoid get <ID> [player] | Admin tool to spawn unidentified items | mmoid.get |
/mmoid reload | Reload configs safely | mmoid.reload |
/mmoid open | Access the identification GUI |
🔧 Customization
-
Fully Configurable GUIs
- Modify layouts, animations, and costs via:
/guis/identify.ymlgui: title: "&fIdentify Item" confirm-item: material: GREEN_STAINED_GLASS_PANE # custom_model_data: 1 name: "<gradient:gold:yellow>Confirm Identification</gradient>" lore: - "&7Prices:" - "%price_amounts%" - "" - "&eClick to Identify!" slot: 8 # fill: # material: PAPER # custom_model_data: 2 # name: " " # slot: [0] unidentified_item_input: slot: [0, 1, 2, 3, 4, 5, 6, 7]
/guis/roullete.ymlgui: title: "&fIdentify Item" fill: material: GREEN_STAINED_GLASS_PANE custom_model_data: 1 name: "<blue>Identifying..." slot: [8] gacha_slot: slot: [0, 1, 2, 3, 4, 5, 6, 7] gacha_animation: duration: 40 spin_speed: 1.3 slowdown_speed: 2
/guis/output_gui.ymlgui: title: "&fIdentify Item" return-item: material: RED_STAINED_GLASS_PANE # custom_model_data: 1 name: "<red>RETURN" lore: - "<gray>Click to Return" slot: 8 # fill: # material: PAPER # custom_model_data: 2 # name: " " # slot: [0] identified_item_output: slot: [0, 1, 2, 3, 4, 5, 6, 7]
- Modify layouts, animations, and costs via:
-
Item & Drop Configuration
-
Define tiers, prices, and rewards in /items and /drops folders.
-
Set conditions using math operators ( >, >=, <, <=, ==, !=).
-
config.yml
# config version 1.0 debug: false lang: en-us economy: vault_plural: $
-
/items/example.yml
example: displayname: name: #middle name value: "&7Unidentified Item" #legacy color prefix: #first name value: "<#5f6669>[</#5f6669><#FFA500>Unknown</#FFA500><#5f6669>]</#5f6669> " #mini message hex color suffix: #last name value: "" lore: - "<gray>Unidentified Weapon" - "<red>Identify this on Identifier NPC" material: value: GUNPOWDER # custom_model_data: 10 price: type: vault #physical value: 5000 #DIAMOND item_chance: #item identifier gacha chance "1": type: item material: diamond_sword #vanilla item displayname: "<gradient:#084CFB:#ADF3FD>Diamond Sword</gradient>" lore: - "&f" - "&7Lore:" - "&7Made with love and energy" - "&7by master blacksmiths." - "&f" enchant: "1": value: "sharpness" level: [ 1, 2, 3, 4, 5 ] #low level have high chance, high level have low chance chance: 30 "2": value: "unbreaking" level: [ 1, 2, 3 ] #low level have high chance, high level have low chance chance: 60 "3": value: "sweeping_edge" level: [ 1, 2, 3 ] #low level have high chance, high level have low chance chance: 80 # conditions: # "1": # first: "%placeholder_api%" # second: "Warrior" #case sensitive # operator: "==" chance: 30 #1 to 100 percent total: 1 #item stack # "2": # type: item # material: SWORD:KATANA #mmoitems support, format <mmoitems_type>:<mmoitems_id> # mmoitems: # matchlevel: true #matching level or stats to player level # getlevel: "%mmocore_level%" #or getlevel from placeholder api # conditions: # "1": # first: "%placeholder_api%" # second: "Warrior" #case sensitive # operator: "==" # "2": # first: "%your_level%" # second: 10 #int don't use quote # operator: "=>" # chance: 14.5 #not int # total: 1
-
/drops/example.yml
example: type: vanilla #mythicmobs mobs: ZOMBIE: #SkeletalKnight mythicmobs mob id/name amount: 2 chance: 50 # conditions: # "1": # first: "%mmocore_class%" # second: "Warrior" # operator: "==" # "2": # first: "%placeholder_api%" # second: 15 # operator: ">=" DropOptions: ItemGlowByDefault: enable: true color: RED Lootsplosion: true PerPlayerDrops: true ClientSideDrops: true ItemBeamByDefault: true
-
📦 Dependencies
-
Required:
- PlaceholderAPI (dynamic conditions)
-
- PacketEventsAPI (packet manipulation)
-
- Vault (Economy)
-
Optional:
-
MMOItems (for custom gear)
-
MythicMobs (mythic mob drops)
-
🚀 Optimized Performance
-
Client-side item rendering reduces server load.
-
Async checks and debug mode for smooth troubleshooting.
-
Supports 1.18+ with Java 17 compatibility.
👀 Preview
GUI Identifier:
Custom Mob Drops support MythicMobs:
Let players experience the thrill of discovering hidden power in every unidentified item! Perfect for RPG, MMORPG, and adventure servers.