Rank menu
The rank ladder GUI and the per-rank quest menu, explained.
/rank opens the rank menu: one icon per rank, in the order they appear in ranks.yml. From there the player clicks their current rank to open its quest menu.

Rank states
| State | Look | Click |
|---|---|---|
| Completed | The completed icon (lime dye by default) | Just a "you already completed this" message |
| Current | The rank's own icon, glowing, with live quest progress | Opens the quest menu |
| Locked | The locked icon (gray dye by default) | "Complete your current rank first" |
Only the current rank is playable. Past ranks stay visible so players can see how far they came, and future ranks are locked until it is their turn.
Every button and filler in the menus comes from config.yml under gui (back, page arrows, and the claim button included), and each accepts vanilla materials, custom model data, or ItemsAdder items. See Configuration.
If you have more than 45 ranks, the menu paginates with previous and next page arrows.
Opening /rank always lands on the page holding the player's current rank, so a player never has to page across to find where they are.
Menu layout: auto or manual
config.yml has gui.rank-menu-mode, with two options:
auto(default): ranks fill the menu automatically, one icon per slot, inranks.ymlorder. Nothing else to configure. This is the classic behaviour.manual: you place every rank yourself. On each rank inranks.ymlyou add two keys:menu-page- which page the rank shows on (1= first page).menu-slots- the list of slots the rank fills on that page. Slots count from0at the top-left, left to right, row by row.
In manual mode a rank can cover a whole block of slots, and every slot in the list opens that rank. This is exactly how a DeluxeMenus-style frame works: point the rank's icon at an ItemsAdder image and list all the slots it should span. Ranks with no menu-slots do not appear, so you stay in full control.
Three ranks side by side (each 3 columns wide, 6 rows tall) on the first page:
ranks:
rank-1: # left panel
menu-page: 1
menu-slots: [0,1,2, 9,10,11, 18,19,20, 27,28,29, 36,37,38, 45,46,47]
rank-2: # middle panel
menu-page: 1
menu-slots: [3,4,5, 12,13,14, 21,22,23, 30,31,32, 39,40,41, 48,49,50]
rank-3: # right panel
menu-page: 1
menu-slots: [6,7,8, 15,16,17, 24,25,26, 33,34,35, 42,43,44, 51,52,53]Extra manual-mode settings live next to the switch: gui.rank-menu-rows (menu height, 1 to 6, default 6) and gui.previous-page-slots / gui.next-page-slots (lists of slots the page arrows sit in, so one arrow can repeat down a whole edge of a frame; empty list [] hides it). See Configuration.
A different title image per page
The rank menu title comes from menu.rank-title in your language file. To give a page its own title, or its own ItemsAdder title image, add a menu.rank-title-<page number> key: rank-title-1 for the first page, rank-title-2 for the second, and so on. Any page you do not list falls back to the plain rank-title. See Messages.
Per-rank icons for each state
Each rank shows a different icon depending on the player's progress: locked, current, or completed. The current-rank icon is the rank's own icon. The locked and completed icons default to the shared gui.locked-item / gui.completed-item, but any rank can override them with icon-locked and icon-completed:
ranks:
rank-4:
icon: itemsadder-myframes:rank4_current # while it is the current rank
icon-locked: itemsadder-myframes:rank4_locked # while still locked
icon-completed: itemsadder-myframes:rank4_done # once surpassedLeave either new key out and that rank uses the shared config default. See Creating ranks.
Menu refreshes on rank change
If a player's rank changes while they have the menu open - because you granted or removed a rank permission, or because they just claimed a rank - the open menu redraws itself onto the new rank. No need to close and reopen it by hand.
The quest menu
Clicking the current rank opens its quest menu:
- One icon per quest, placed on the slots from
gui.quest-slotsinconfig.yml. Add more slots there if a rank has more quests. - Each quest shows its objective, live progress (like
345/500), and an IN PROGRESS or COMPLETED status. You can replace this text per quest, see custom lore. - An info item at the top shows the rank and how many quests are done. Its icon is
gui.quest-info-iteminconfig.yml(or a rank's ownmenu-icon). Set it toNONEto hide that slot, which is what you want when your rank icon is an invisible ItemsAdder image so it does not leave an empty gap. - A back arrow returns to the rank menu.

Delivery quests
A DELIVER_ITEM quest is turned in right here: the player brings the items in their inventory, clicks the quest icon, and the items are consumed and counted. See Quests.
The Claim Rank button
The big button at the bottom lists everything the rank still needs:
- All quests completed, with the count.
- Every extra requirement, each with a green check or red cross and the player's current value.

While something is missing the button is a red block. When everything passes it turns into a glowing green block; clicking it claims the rank, runs the rewards, and unlocks the next rank. An optional server-wide broadcast announces the promotion.