Player Interface
All you need to know about the player interface file.
Summary
Quest slots
The quests
section in playerInterface.yml
defines where each quest icon will be displayed in the GUI. Each quest is assigned an index (starting at 1) and mapped to a slot number (starting at 1) in the inventory.
Quests are indexed based on their order in your configuration or generation logic.
For example, if you have:
3 Easy quests
3 Medium quests
3 Hard quests
Then the quest indexes will look like this:
1 – 3
Easy
4 – 6
Medium
7 – 9
Hard
This means Quest #1 is the first Easy quest, Quest #4 is the first Medium quest, and so on.
Example:
quests:
1: 12
2: 14
3: 16
1: 12
→ Quest with index1
will be placed in slot12
2: 14
→ Quest with index2
will be placed in slot14
3: 16
→ Quest with index3
will be placed in slot16
Important:
Slots start at 1 (not 0).
The inventory is counted left-to-right, top-to-bottom.
If you skip an index, that quest will not be displayed in the GUI.
After making some modifications, you may need to reset your quests with the command
/dqa reset quests <player>
to see your changes applied.
Item types
In the interface configuration, each item you define must have a type. This type determines what happens when the player clicks on it (or if it simply serves as decoration).
Available Types
FILL
A decorative item with no click action. Useful for filling empty spaces in the GUI.
material
, slot
PLAYER_COMMAND
Executes the listed commands as the player when clicked.
name
, description
, slot
, commands[]
CONSOLE_COMMAND
Executes the listed commands from the console when clicked.
name
, description
, slot
, commands[]
CLOSE
Simply closes the GUI when clicked.
name
, description
, slot
Items of type FILL
are minimal — they only display the material and cannot have:
Custom name
Lore (description)
Enchantments, flags, or other visual effects
If you want a decorative item with a custom name or lore but no action,
use PLAYER_COMMAND
or CONSOLE_COMMAND
with an empty command list:
example_button:
type: PLAYER_COMMAND
item:
material: STONE
name: "&7Information"
lore:
- "&fThis is a custom decorative item"
- "&fIt does nothing when clicked"
slot: 10
commands: [] # no commands -> purely decorative
This allows you to use all display features (name, lore, flags) while keeping the item action-free.
Placeholders
For interface items of type CLOSE
, PLAYER_COMMAND
or CONSOLE_COMMAND
, you can put in the lore some placeholders. Since 3.0, the use_placeholders
parameter is no longer required.
1:
type: PLAYER_COMMAND
item:
material: IRON_BLOCK
name: "&cSay hello"
lore:
- "Total: %odailyquests_total%"
slot: 53
commands:
- "say hello"
You can also put placeholders on the player head in the same way:
player_head:
enabled: true
item_description:
- "%player_name%"
Custom model data
In the player interface, you can specify a custom model data for the player's head and for different items.
For the player head, you need to add the
custom_model_data
parameter.For any other item, you need to add it in the
material
field, as the following example.
For example:
player_head:
enabled: true
slot: 5
custom_model_data: 1245 # custom model data for player heads
item_name: "&bYour quests"
item_description:
- "&eCompleted quests : &b%achieved%&e/&63"
- "&eNext draw in : &c%drawIn%"
items:
1:
type: PLAYER_COMMAND
item:
material: "custommodeldata:REDSTONE:1234" # custom model data for command items
name: "&cBack"
lore:
- "&eGo back to menu."
slot: 19
commands:
- "menu"
Oraxen, Nexo & ItemsAdder items
You can specify for the material an item from Oraxen, Nexo or ItemsAdder. It's really simple, you just need to add oraxen:
, nexo:
or itemsadder:
before the name of the item.
Ensure that you have the appropriate option enabled in the configuration.
material: "oraxen:my_item"
material: "nexo:my_item"
material: "itemsadder:namespace:my_item"
Don't forget to enclose the item names in inverted commas ("..."
), otherwise the file will be formatted incorrectly and the plugin will crash!
Custom head texture
You can also use custom head textures, from this website.
You just need to add a texture
field in the item
section. The value to put here is the Minecraft-URL
at the bottom of the head page. Be sure to use the Minecraft-URL
and NOT the Value
that is just before!
The syntax is the same as for Oraxen, Nexo and ItemsAdder items.
// from https://minecraft-heads.com/custom-heads/decoration/60568-coin
material: "customhead:ebda5f31937b2ff755271d97f01be84d52a407b36ca77451856162ac6cfbb34f"
Multiple slots
If you want to set the same item on several slots, for a custom GUI for example, you can do it by creating a list of slots, like this:
quests: # set the position of quests items
1:
- 12
- 13
- 14
2: 21
3: 30
Here, the quest number 1 will be displayed on slots 12, 13 and 14.
It also works with the player head:
player_head:
enabled: true
slot:
- 8
- 17
Item flags
Item flags allow you to hide some default information from an item in the interface (name, attributes, enchantments, etc.). They are configured directly in the flags
list of an item inside player_interface.yml
.
pvp_arena:
type: PLAYER_COMMAND
item:
material: DIAMOND_SWORD
slot: 27
name: "&cPvP Arena"
lore:
- "&7Fight against other players"
- "&7and prove your strength!"
flags:
- HIDE_ATTRIBUTES
- HIDE_ENCHANTS
commands:
- "warp pvp"
You can find the list of all available item flags right here. This parameter is applicable to all item types.
Last updated