name: MCInteractive
description: Enables Twitch interaction with customizable in-game features
version: 1.0.3-beta
author: Manel Navola

main: com.manelnavola.mcinteractive.Main
load: POSTWORLD
api-version: 1.13

commands:
   # Base command
   mci:
      description: Lists all Minecraft Interactive commands
      usage: "/mci"
      permission: mci.info
      permission-message: You do not have permission to run this command!
   # Configuration management
   mci globalconfig:
      description: Shows global configuration GUI
      usage: "/mci globalconfig"
      permission: mci.globalconfig
      permission-message: You do not have permission to run this command!
   mci config:
      description: Shows player configuration GUI
      usage: "/mci config"
      permission: mci.config
      permission-message: You do not have permission to run this command!
   # Channel
   mci channel:
      description: Lists channel commands
      usage: "/mci channel"
      permission: mci.channel.info
      permission-message: You do not have permission to run this command!
   mci channel listen:
      description: Starts listening anonymously to a Twitch channel
      usage: "/mci channel listen [channelName]"
      permission: mci.channel.issue
      permission-message: You do not have permission to run this command!
   mci channel leave:
      description: Stops listening to the connected Twitch channel
      usage: "/mci channel leave"
      permission: mci.channel.issue
      permission-message: You do not have permission to run this command!
   mci channel lock:
      description: Locks a channel to listen to server-wide
      usage: "/mci channel lock [channelName]"
      permission: mci.channel.lock
      permission-message: You do not have permission to run this command!
   mci channel unlock:
      description: Unlocks a previously listen-locked channel
      usage: "/mci channel unlock"
      permission: mci.channel.lock
      permission-message: You do not have permission to run this command!
   # Vote
   mci vote:
      description: Lists vote commands
      usage: "/mci vote"
      permission: mci.vote.info
      permission-message: You do not have permission to run this command!
   mci vote start:
      description: Starts a custom vote
      usage: "/mci vote start [voteTime] [option1] [option2] <option3..6>"
      permission: mci.vote.issue
      permission-message: You do not have permission to run this command!
   mci vote end:
      description: Forces current vote to end
      usage: "/mci vote end"
      permission: mci.vote.issue
      permission-message: You do not have permission to run this command!
   mci vote cancel:
      description: Cancels and invalidates the current vote
      usage: "/mci vote cancel"
      permission: mci.vote.cancel
      permission-message: You do not have permission to run this command!
   # Channelvote
   mci channelvote:
      description: Lists channel vote commands
      usage: "/mci channelvote"
      permission: mci.channelvote.info
      permission-message: You do not have permission to run this command!
   mci channelvote start:
      description: Starts a channel vote
      usage: "/mci channelvote start <channel> [voteTime] [option1] [option2] <option3..6>"
      permission: mci.channelvote.issue
      permission-message: You do not have permission to run this command!
   mci channelvote forcestart:
      description: Forces starting a channel vote
      usage: "/mci channelvote forcestart <channel> [voteTime] [option1] [option2] <option3..6>"
      permission: mci.channelvote.force
      permission-message: You do not have permission to run this command!
   mci channelvote end:
      description: Forces current channel vote to end
      usage: "/mci channelvote end <channel>"
      permission: mci.channelvote.issue
      permission-message: You do not have permission to run this command!
   mci channelvote cancel:
      description: Cancels and invalidates the current channel vote
      usage: "/mci channelvote cancel <channel>"
      permission: mci.channelvote.cancel
      permission-message: You do not have permission to run this command!
   # Eventvote
   mci eventvote:
      description: Lists event vote commands
      usage: "/mci eventvote"
      permission: mci.eventvote.info
      permission-message: You do not have permission to run this command!
   mci eventvote start:
      description: Starts an event vote
      usage: "/mci eventvote start <channel>"
      permission: mci.eventvote.issue
      permission-message: You do not have permission to run this command!
   mci eventvote end:
      description: Forces current event vote to end
      usage: "/mci eventvote end <channel>"
      permission: mci.eventvote.issue
      permission-message: You do not have permission to run this command!
   mci eventvote cancel:
      description: Cancels the current event vote and its effects
      usage: "/mci eventvote cancel <channel>"
      permission: mci.eventvote.cancel
      permission-message: You do not have permission to run this command!
   # Gift
   mci gift:
      description: Gifts a subscription reward to a player
      usage: "/mci gift [common|uncommon|rare|legendary] <player>"
      permission: mci.gift
      permission-message: You do not have permission to run this command!
   # Bits
   mci bits:
      description: Shows bits shop GUI
      usage: "/mci bits"
      permission: mci.bits.gui
      permission-message: You do not have permission to run this command!
   mci bits give:
      description: Gives bits to a player or yourself
      usage: "/mci bits give [amount] <player>"
      permission: mci.bits.admin
      permission-message: You do not have permission to run this command!
   mci bits remove:
      description: Removes bits from a player or yourself
      usage: "/mci bits remove [amount] <player>"
      permission: mci.bits.admin
      permission-message: You do not have permission to run this command!
   # Version
   mci version:
      description: Checks the current MCInteractive version
      usage: "/mci version"
      permission: mci.version
      permission-message: You do not have permission to run this command!
   # Customitems
   mci customitems:
      description: Opens the custom items creative GUI
      usage: "/mci customitems"
      permission: mci.customitems
      permission-message: You do not have permission to run this command!
   
permissions:
   # All commands
   mci.*:
      description: Gives access to all MCI commands
      children:
         mci.info: true
         mci.channel.*: true
         mci.vote.*: true
         mci.channelvote.*: true
         mci.eventvote.*: true
         mci.config: true
         mci.globalconfig: true
         mci.gift: true
         mci.bits.*: true
         mci.customitems: true
         mci.version: true
      default: op
   # Base command
   mci.info:
      description: Allows you to list MCI commands
      default: true
   # Configuration
   mci.config:
      description: Allows you to change your personal MCI configuration
      default: true
   mci.globalconfig:
      description: Allows you to set the global configuration for MCI
      default: op
   # Channel
   mci.channel.*:
      description: Gives access to all MCI channel commands
      default: op
      children:
         mci.channel.info: true
         mci.channel.issue: true
         mci.channel.lock: true
   mci.channel.info:
      description: Allows you to list MCI channel commands
      default: true
   mci.channel.issue:
      description: Allows you to listen and leave Twitch channels
      default: true
   mci.channel.lock:
      description: Allows you to lock/unlock channel listening server-wide
      default: op
   # Player Vote
   mci.vote.*:
      description: Gives access to all voting commands
      children:
         mci.vote.issue: true
         mci.vote.cancel: true
         mci.vote.info: true
      default: op
   mci.vote.info:
      description: Allows you to list MCI vote commands
      default: true
   mci.vote.issue:
      description: Allows you to start and end Twitch votes
      default: true
   mci.vote.cancel:
      description: Allows you to cancel a Twitch vote
      default: op
   # Channelvote
   mci.channelvote.*:
      description: Gives access to all channel voting commands
      children:
         mci.channelvote.issue: true
         mci.channelvote.cancel: true
         mci.channelvote.info: true
         mci.channelvote.force: true
      default: op
   mci.channelvote.info:
      description: Allows you to list MCI channel vote commands
      default: op
   mci.channelvote.issue:
      description: Allows you to start and end Twitch channel votes
      default: op
   mci.channelvote.cancel:
      description: Allows you to cancel a Twitch channel vote
      default: op
   mci.channelvote.force:
      description: Allows you to force start a channel vote
      default: op
   # Eventvote
   mci.eventvote.*:
      description: Gives access to all event voting commands
      children:
         mci.eventvote.issue: true
         mci.eventvote.cancel: true
         mci.eventvote.info: true
      default: op
   mci.eventvote.info:
      description: Allows you to list MCI event vote commands
      default: op
   mci.eventvote.issue:
      description: Allows you to start and end Twitch event votes
      default: op
   mci.eventvote.cancel:
      description: Allows you to cancel a Twitch event vote
      default: op
   # Gifts
   mci.gift:
      description: Allows you to freely gift subscription rewards to other players or yourself
      default: op
   # Adventure items
   mci.customitems:
      description: Allows you to open the custom items creative GUI
      default: op
   # Version
   mci.version:
      description: Allows you to check MCInteractive's version
      default: op
   # Bits
   mci.bits.*:
      children:
         mci.bits.gui: true
         mci.bits.change: true
      description: Gives access to all MCI bits commands
      default: op
   mci.bits.gui:
      description: Allows you to open the bits shop GUI
      default: true
   mci.bits.change:
      description: Allows you to change yours or others' bits amount
      default: op