NightExpress's Plugins Wiki

Some things you should know when editing YML files:

  • List Syntax:
    filled-list: # Filled list
    - element1
    - element2
    - elementX
    empty-list: [] # Empty list
  • Map Syntax:
    filled-map: # Filled map
      key1: value1
      key2: value2
      key3: value3
    empty-map: {} # Empty map
  • Section Syntax:
    some-section: # Filled section
      name1: # Section name
        option1: value
        option2: value
        option1: value
    empty-section: {} # Empty section

Core Settings

These settings contains every plugin that depends on JCore. You can see it in config.yml

  # Plugin command aliases. You can add more or remove some if you want.
  # The first alias will be used as main command.
  command-aliases: 'moneyhunters,mh'
  # Plugin language.
  # Before changing, make sure you have a .yml lang file
  # in /lang/ folder. File name must be like this: messages_LANGCODE.yml (In lower case)
  lang: en

Config Commands

How to properly run commands in the plugin.

For player name use %p placeholder.

- '[CONSOLE] give %p diamond 1' # Command with prefix [CONSOLE] will be executed by Server Console.
- '[OP] say Hello!' # Command with prefix [OP] will be executed by player as OP.
- 'spawn' # Command with no prefix will be executed by a player.

Storing Items

When using JCore plugin, in the config you can see configurable items. All of these items can use the settings below!

# This is internal item name. Do not change it if it's not supposed to do.
# TIP: You can remove all the settings of item, except the material,
# if you don't want them to be applied.
  # Item display name.
  name: '&e&lCustom Item'
  # Item material. List of Materials
  # Format: Material:Data:Amount. Data can be used to define item durability or custom model from ResourcePack.
  material: 'GOLD_NUGGET'
  # Item lore.
  - '&7Line 1'
  - '&6Line 2'
  # CustomModelData value. Allows you to change the item model/texture
  # Only for 1.14+
  model-data: 1
  # Color for leather armor or potions.
  # Format: R,G,B. Use -1 for random value (0-255).
  color: 255,255,255
  # Makes the item with enchantment glow by adding random enchantment.
  enchanted: true
  # Item flags. Allows you hide some of item attributes.
  # List of ItemFlags
  # Custom head texture. Can be applied only to PLAYER_HEAD material.
  # To get the texture value you can use THIS website.
  # Then select the head and go at bottom page, you'll see the Value field. Just copy-paste it here.
  skull-hash: ''
  # Makes the item unbreakable or not.
  unbreakable: true

Storing GUI Items

Configuring the GUI items is pretty simple too!

GUI items has the same format as the items above with some additional settings:

  # [Here is item settings like above]
  # Item positions in the GUI.
  # Separate the slot numbers by a comma>
  slots: 0,1,2,3,4,5,10,15,20
  # Defines the item action on click.
  # Each plugin has it's own values for GUI's, but can use the default ones:
  # - NONE - No actions on click. Static item.
  # - NEXT - Go to next page.
  # - BACK - Back to previous page.
  # - EXIT - Close the GUI.
  # Note: This setting is a bit outdated and probably will be separated by Click types, so you'll be able to attach different actions on different clicks.
  type: NONE

GUI Configuration

Configuring the GUIs is pretty simple.

In future updates all the GUIs will got an ability to be animated.

  # GUI Title. Title may be equals to another GUI title and it won't conflict.
  # JCore validating GUIs by randomly generated UUID, not by titles.
  title: '&4&lCustom GUI'
  # GUI Size. Allowed values: 9/18/27/36/45/54
  size: 9
  # Items in the GUI.
    # Internal GUI item name. Must be unique.
      # Item format is exactly as above.
      material: 'BLACK_STAINED_GLASS_PANE'
      name: '&a'
      lore: []
      enchanted: false
      slots: '0,1,2,3,5,6,7,8,18,19,20,21,23,24,25,26'
      type: NONE

Messages Config

Output Type

Define, where the message will be displayed.

Allowed Types:

  • CHAT - Chat message.
  • ACTION_BAR - Action Bar message.
  • TITLE - Titles message.
  • NONE - Disable message.

To define the output type, put the type name in brackets before the message like: '[ACTION_BAR] Invalid Player!'

Multi-ling messages

Making the message multi-line is simple: just add the \n between the lines.

Custom JSON Formatting

You can add custom JSON format to any message of the plugin.

And there is steps how to make it:

  • Let's say we have the message in our config: 'Player %player% has joined the game.'
  • Now we want to make placeholder %player% have an hover and click actions.
  • We should add the {json: hint=Hover; suggest=/t %player% Hello} at the begging of text
  • And add the {end-json} at the end of the text.
  • So message will look like: 'Player {json: hint=Hover; suggest=/t %player% Hello}%player%{end-json} has joined the game.'
  • The final message will display 'Hover' text on hover and suggests the command to tell the player 'Hello'

  • All arguments must be separated by ;
  • To make the hover multi-line use /n instead of \n
  • All the arguments supports PlaceholderAPI placeholders
  • You can use multiple JSON texts in the same message.

  • hint=text - Creates hover event with your text.
  • cmd=text - Creates click event that executes the specified comamnd. Don't forget to add / or it will send message in chat.
  • suggest=text - Creates click event that suggests the specified comamnd or text in chat.
  • url=text - Creates click event that suggests to open the specified URL.