Skip to main content

Create a Shop

Creating a shop is relatively simple once you understand the configuration.

This is a full example shop configuration file:

settings:
  key: Example
  command: coinshop
  economy: VAULT
  refreshTime: 180
  persistent: false
  unique: true

  inventory:
    title: 'Coin Shop'
    rows: 3
    shopSlots:
      - 13

items:
  '0':
    available-item:
      material: DIAMOND
      name: '<green>Diamond'
      lore:
        - '<gray>Costs $10'
    bought-permission: bought.diamond
    bought-item:
      material: DIAMOND
      name: '<green>Diamond'
      lore:
        - '<gray>Already bought!'
    required-permission: buy.diamond
    no-permission-item:
      material: DIAMOND
      name: '<green>Diamond'
      lore:
        - '<gray>No permission'
    commands:
      - 'give %player% diamond 1'
    price: 10
    weight: 1.0
  '1':
    available-item:
      material: IRON_INGOT
      name: '<green>Iron Ingot'
      lore:
        - '<gray>Costs $5'
    commands:
      - 'give %player% iron_ingot 1'
    price: 5
    weight: 2.5

filler-items:
  '0':
    slots:
      - 4
    material: CLOCK
    name: <green>%timeRemaining%
    commands:
      - 'say Hello!'
  • settings:
    • key: This is the key used to refer to this shop. Must be unique.
    • command: What command should the shop use?
    • economy: The economy to use. Available types:
      • VAULT
      • ULTRAECONOMY_<currency>: Replace <currency> with the name of your currency.
      • REDISECONOMY_<currency>: Replace <currency> with the name of your currency.
      • PLAYERPOINTS
    • refreshTime: How often should the shop refresh, in seconds? If set to 0, the shop won't refresh automatically.
    • persistent: Should the timer and items persist after restarts?
    • unique: Should the items be unique or not?
    • inventory:
      • title: Inventory title for this shop.
      • rows: How many rows should the shop have? From 1 to 6.
      • shopSlots: Where should we place the items?
  • items:
    • available-item, bought-item, no-permission-item: These are the items used when the item is available, bought, or the player has no permission, respectively.
      • All three support custom model data and skull textures. Example:
      • available-item:
          material: PLAYER_HEAD
          headTexture: 'example'
          name: '<green><bold>Example Item'
          lore:
            - '<gray>Cost: 100 Money'
      • Model data example:
      • item:
          material: PAPER
          modelData: 10000
          name: '<green><bold>Example Item'
          lore:
            - '<gray>Cost: 100 Money'
    • bought-permission: Permission used to check if the player has bought the item or not.
    • required-permission: Permission required to buy this item.
    • commands: Commands to execute. %player% is the placeholder used. If you want to use "bought-permission", add the permission that you're using there here.
    • price: Price of this item.
    • weight: Weight of this item. Higher weight = higher chance of being in the rotation.
  • fillerItems:
    • You can define custom items here. You need to define material, name, lore, slot(s), and commands to execute. The only placeholder available is %timeRemaining%.

If you need more help creating your shops, feel free to reach out on Discord!