📄config.yml

# config.yml for HalosStaffUtilities
# This file is used to configure the plugin.
##############################################################################
##                                                                          ##
##                                                                          ##
##                         FEATURE MANAGER                                  ##
##                  Toggle any feature on/off here                          ##
##                                                                          ##
##                                                                          ##
##############################################################################
Features:
  Cps: true
  xray: true
  Vanish: true
  Freeze: true
  invsee: true
  helpme: true
  report: true
  staff_mode: true
  inventory_backup: true
  punish_gui: true
  staff_chat: true
  login: true
  web_hooks: true
##############################################################################
##                                                                          ##
##                                                                          ##
##                                  FREEZE                                  ##
##                                                                          ##
##                                                                          ##
##############################################################################
# Allow head rotations while frozen.
allow_head_rotation: true


##############################################################################
##                                                                          ##
##                                                                          ##
##                                  X-RAY                                   ##
##                                                                          ##
##                                                                          ##
##############################################################################
# Control how xray alert gets triggered.
xray_trigger:
  # The time span, for example when players mines a certain blocks in a span of 1 minute it will trigger an xray alert.
  time_span: 1m
  # The minimum amount that triggers it.
  amount_mined: 10
# The blocks that staff will receive a notification for when a player mines them.
xray_blocks:
  - "DIAMOND_ORE"
  - "EMERALD_ORE"
  - "GOLD_ORE"
  - "IRON_ORE"
  - "COAL_ORE"
  - "REDSTONE_ORE"
  - "LAPIS_ORE"
##############################################################################
##                                                                          ##
##                                                                          ##
##                              Vanish                                      ##
##                                                                          ##
##                                                                          ##
##############################################################################
# The max number allowed to be in permissions (halosstaff.vanish.see.<number>)
# For example if you set it to 10, you will be able to set permission levels from halosstaff.vanish.see.level.1 to halosstaff.vanish.see.level.10
# And halosstaff.vanish.level.1 to halosstaff.vanish.level.10
vanish_permissions_max_number: 10
# Custom tablist prefix for vanishing players.
vanish_tablist_prefix: "&7&o"
# Settings while a player is vanished.
vanish_settings:
  item_pick_up: true
  item_drop: true
  interact: true
  damage: true
  chat: false
  hangings_break: true
  vehicle_collision: true
  vehicle_destroy: true
  silent_chest_open: true
  avoid_join_quit_message: true
  avoid_collision: true

##############################################################################
##                                                                          ##
##                                                                          ##
##                                HOOKS                                     ##
##                                                                          ##
##                                                                          ##
##############################################################################
Hooks:
  Citizens:
    enabled: true
    vanish_hook: true
  CMI:
    enabled: true
    vanish_hook: true
  DiscordSRV:
    enabled: true
    vanish_hook: true
  Dynmap:
    enabled: true
    vanish_hook: true
  Essentials:
    enabled: true
    vanish_hook: true
  ProtocolLib:
    enabled: true
    vanish_hook: true
  LiteBans:
    enabled: true
    # When fetching data from litebans (warns, kicks etc) we need to query the litebans database
    # This might take sometime so instead of fetching the database everytime, should we cache the queries?
    cache_queries: true
##############################################################################
##                                                                          ##
##                                                                          ##
##                                WEBHOOKS                                  ##
##                  Control options related to DiscordSRV hook              ##
##                                                                          ##
##############################################################################
webhook_username: "Staff bot"
# Webhooks URL - replace 'testurl' with your own webhook url for each category.
webhooks:
  staff_chat: testurl
  help_me_alerts: testurl
  xray_alerts: testurl
  report_alerts: testurl
# We use a fully configurable embed system, you can configure the following:
# title, title_url, fields , color, description
#author_name, author_url, author_icon_url, footer_text
# footer_url, image_url, thumbnail_url
# All these are optional fields you can use whichever ones you want.
# You can configure the following for field:
# title, text, inline_mode(true/false)
# All fields for field are optional too.
helpme_alert_embed:
  title: "Help me Alert"
  description: "A player needs help!"
  color: "red"
  thumbnail_url: "https://upload.wikimedia.org/wikipedia/commons/c/c7/Warning-icon-png-2749.png"
  fields:
    1:
      title: "Player Name"
      text: "%player%"
xray_alert_embed:
  title: "XRAY Alert"
  color: "red"
  thumbnail_url: "https://upload.wikimedia.org/wikipedia/commons/c/c7/Warning-icon-png-2749.png"
  fields:
    1:
      title: "%player% has broke a block!"
      text: "%block%"
report_alert_embed:
  title: "A new report"
  color: "red"
  thumbnail_url: "https://upload.wikimedia.org/wikipedia/commons/c/c7/Warning-icon-png-2749.png"
  fields:
    1:
      title: "%player% reported %target%"
      text: "For %reason%"
staffchat_alert_embed:
  title: "Staff chat message"
  description: "From %server%."
  color: "blue"
  thumbnail_url: "https://cdn-icons-png.flaticon.com/512/5962/5962463.png"
  fields:
    1:
      title: "%sender% said:"
      text: "%message%"
##############################################################################
##                                                                          ##
##                                                                          ##
##                                StaffMode                                 ##
##                       Options related to staff mode                      ##
##                                                                          ##
##############################################################################
######################### ( Global Tips For all guis ) #######################
# - Every button follows the same system, some buttons may not               #
# use the 'slot' field.                                                      #
# - 'others' field in every gui is any other optional item you want to       #
# include in the menu with the slot you want.                                #
# - 'fill_item' field in every gui is the fill item that going to fill       #
# all empty slots                                                            #
# - You can use legacy items (type:id) or new items (type), both are         #
# acceptable for 'material'. exmaple: both (wool:5) and (lime_wool) works.   #
##############################################################################
# Items here follow the same for system for GUI items.
Items:
  # Vanish item when vanish is on.
  vanish_on:
    slot: 5
    display_name: "&c&lVanish &a&lON &7(Right click)"
    material: "ENDER_PEARL"
    lore:
      - ""
      - "&a&lVanish is &a&lON."
      - ""
      - "&9&lRight click &7to unvanish."
  # Vanish item when vanish is off.
  vanish_off:
    slot: 5
    display_name: "&c&lVanish &c&lOFF &7(Right click)"
    material: "ENDER_EYE"
    lore:
      - ""
      - "&a&lVanish is &c&lOFF."
      - ""
      - "&9&lRight click &7to vanish."
  disable_staff_mode:
    slot: 8
    display_name: "&e&lDisable StaffMode"
    material: "CLOCK"
    lore:
      - ""
      - "&9&lRight Click &7to disable staff mode."
  CPS:
    slot: 1
    display_name: "&2&lCheck CPS of a player"
    material: "COMPASS"
    default_seconds: 30
    lore:
      - ""
      - "&7Right click on a player to view their"
      - "&7current CPS."
  Freeze:
    slot: 0
    display_name: "&b&lFreeze"
    material: ICE
    lore:
      - ""
      - "&aRight click a player to freeze them!"
  Xray:
    slot: 2
    display_name: "&c&lXRAY Alerts"
    material: PAPER
    lore:
      - ""
      - "&cRight click to toggle xray alerts."
  RandomTp:
    slot: 3
    display_name: "&5&lRandom Teleport"
    material: NETHER_STAR
    lore:
      - ""
      - "&bRight click to teleport to a random player"
      - "&bin the server."
  Inspect:
    slot: 6
    display_name: "&e&lInspect A player"
    material: BLAZE_ROD
    lore:
      - ""
      - "&aRight click a player to view info about them."
  Punish:
    slot: 7
    display_name: "&e&lPunish Player"
    material: BARRIER
    lore:
      - ""
      - "&aRight click a player to open punishment menu for them."
##############################################################################
##                                                                          ##
##                                                                          ##
##                                InspectGUI                                ##
##                                                                          ##
##                                                                          ##
##############################################################################
InspectGUI:
  title: "%player% Inspection"
  size: 27
  gamemode_item:
   slot: 2
   display_name: "&a%player%'s GameMode"
   material: "COMPASS"
   lore:
     - ""
     - "&a%player% is in %gamemode% gamemode"
  # Last location when you inspect offline players.
  last_location_item:
    slot: 12
    display_name: "&ePlayer's Last location"
    material: EMPTY_MAP
    lore:
      - "&c%player% was last seen in %location%."
      - ""
      - "&fRight click to teleport"
  frozen_item:
    material: "ICE"
    slot: 4
    display_name: "&b&lFrozen State"
    lore:
      - ""
      - "&a%player%'s frozen state is %frozen_state%"
  invsee:
    slot: 6
    material: "ENDER_EYE"
    display_name: "&e&lInv see"
    lore:
      - ""
      - "&b&lRIGHT CLICK &7to open %player%'s inventory."
  warnings:
    material: "RED_WOOL"
    slot: 20
    display_name: "&7Player's Warns"
    lore:
      - "&7&l%player%'s Warn History:"
      - "%warns%"
    # Configure each line of %warns% placeholder
    warns_each: "&8- &7By &c%warn_by% &7at &c%time% &7until &c%until% %active_state% &7for &c%reason%"
  mutes:
    material: "RED_WOOL"
    slot: 21
    display_name: "&7Player's Mutes"
    lore:
      - "&7&l%player%'s Mute History:"
      - "%mutes%"
    # Configure each line of %mutes% placeholder
    mutes_each: "&8- &7By &c%mute_by% &7at &c%time% &7until &c%until% %active_state% &7for &c%reason%"
  kicks:
    material: "RED_WOOL"
    slot: 22
    display_name: "&7Player's Kicks"
    lore:
      - "&7&l%player%'s Mute History:"
      - "%kicks%"
    # Configure each line of %kicks% placeholder
    kicks_each: "&8- &7By &c%kick_by% &7at &c%time% &7for &c%reason%"
  bans:
    material: "RED_WOOL"
    slot: 23
    display_name: "&7Player's Bans"
    lore:
      - "&7&l%player%'s Ban History:"
      - "%bans%"
    # Configure each line of %bans% placeholder
    bans_each: "&8- &7By &c%ban_by% &7at &c%time% &7until &c%until% %active_state% &7for &c%reason%"




##############################################################################
##                                                                          ##
##                                                                          ##
##                                Reports                                   ##
##                                                                          ##
##                                                                          ##
##############################################################################
ReportsGUI:
  title: "Reports"
  size: 54
  reports_per_page: 36
  # Whether or not it should fill the borders of the gui.
  fill_borders: true
  # How it should sort reports in the menu.

  sort:
    # It's recommended to turn this off if you have more than 1000 reports.
    enabled: true
    # Valid types:
    # last_submitted_first: the latest reports first.
    # first_submitted_first: the old reports first.
    type: "last_submitted_first"
  # Config for every report item.
  # Placeholders (all across the item):
  # %player%: the reporter.
  # %target%: the reported player.
  # %reason%: the reason.
  report_item:
    material: "PAPER"
    display_name: "&cReport by &e%player%"
    lore:
      - ""
      - "&eReported player: &c%target%"
      - ""
      - "&7%reason%"
      - ""
      - "&b&lRIGHT CLICK &cto delete"
  next_item:
    slot: 53
    material: "ARROW"
    display_name: "&eNext page"
  previous_item:
    slot: 45
    material: "ARROW"
    display_name: "&ePrevious page"
  exit_item:
    slot: 49
    material: "BARRIER"
    display_name: "&cExit"
  others:
    # This doesn't matter, could be a number or a text.
    1:
      # Slot could be a range.
      # It will fill all slots in that range.
      # Range: both min and max are included in that range.
      slot: 36-44
      material: "BLACK_STAINED_GLASS_PANE"
      display_name: ""

##############################################################################
##                                                                          ##
##                                                                          ##
##                                PunishGUI                                 ##
##                                                                          ##
##                                                                          ##
##############################################################################
PunishGUIMain:
  title: "&c&lPunish %player%"
  size: 27
  # Whether it should check if player has litebans to kick/mute/ban/warn or not.
  # Setting this to false will allow players who has permission halosstaff.punishgui.* to punish.
  check_litebans_permissions: false
  fill_item:
    material: "BLACK_STAINED_GLASS_PANE"
    display_name: " "
  warn_item:
    slot: 10
    material: ARROW
    display_name: "&c&lWarn"
    lore:
      - ""
      - "&fClick to warn the player."
  mute_item:
    slot: 12
    material: PAPER
    display_name: "&c&lMute"
    lore:
      - ""
      - "&fClick to mute the player."
  kick_item:
    slot: 14
    material: oak_door
    display_name: "&c&lKick"
    lore:
      - ""
      - "&fClick to kick the player."
  ban_item:
    slot: 16
    material: REDSTONE_BLOCK
    display_name: "&4&lBan"
    lore:
      - ""
      - "&fClick to ban the player."
  exit_item:
    slot: 22
    material: BARRIER
    display_name: "&cExit Menu"
    lore:
      - ""
MuteReasonAndDurationMenu:
  title: "&bSelect mute duration & reason"
  size: 27
  presets:
    1:
      material: CLOCK
      slot: 10
      display_name: "&c&lMute for spamming"
      duration: "3d"
      reason: "Spamming"
      lore:
        - ""
        - "&bMute for 3 days"
    2:
      material: CLOCK
      slot: 11
      display_name: "&c&lMute for bad words"
      duration: "7d"
      reason: "Bad words"
      lore:
        - ""
        - "&bMute for 7 days"
  custom_item:
    material: ANVIL
    slot: 26
    display_name: "&c&lCustom Duration & Reason"
    lore:
      - ""
      - "&7Set custom duration & reason for the mute."
  exit_item:
    slot: 22
    material: BARRIER
    display_name: "&cExit to previous menu"
    lore:
      - ""
BanReasonAndDurationMenu:
  title: "&bSelect ban duration & reason"
  size: 27
  presets:
    1:
      material: CLOCK
      slot: 10
      display_name: "&c&lBan for cheating"
      duration: "7d"
      reason: "Cheating"
      lore:
        - ""
        - "&bBan for 7 days"
    2:
      material: CLOCK
      slot: 11
      display_name: "&c&lBan for duping"
      duration: "14d"
      reason: "Duping"
      lore:
        - ""
        - "&bBan for 14 days"
  custom_item:
    material: ANVIL
    slot: 26
    display_name: "&c&lCustom Duration & Reason"
    lore:
      - ""
      - "&7Set custom duration & reason for the ban."
  exit_item:
    slot: 22
    material: BARRIER
    display_name: "&cExit to previous menu"
    lore:
      - ""
KickReasonMenu:
  title: "&bSelect kick reason"
  size: 27
  presets:
    1:
      material: CLOCK
      slot: 10
      display_name: "&c&lKick for abusing afk"
      reason: "Abusing afk"
      lore:
        - ""
    2:
      material: CLOCK
      slot: 11
      display_name: "&c&lKick for test"
      reason: "Testing"
      lore:
        - ""
  custom_item:
    material: ANVIL
    slot: 26
    display_name: "&c&lCustom Reason"
    lore:
      - ""
      - "&7Set custom duration & reason for the kick."
  exit_item:
    slot: 22
    material: BARRIER
    display_name: "&cExit to previous menu"
    lore:
      - ""
WarnReasonMenu:
  title: "&bSelect warn reason"
  size: 27
  presets:
    1:
      material: PAPER
      slot: 10
      display_name: "&c&lWarn for Spamming"
      reason: "Spamming"
      lore:
        - ""
    2:
      material: PAPER
      slot: 12
      display_name: "&c&lWarn for Trolling"
      reason: "Trolling"
      lore:
        - ""
    3:
      material: PAPER
      slot: 14
      display_name: "&c&lWarn for Bad words"
      reason: "Bad words"
      lore:
        - ""
  custom_item:
    material: ANVIL
    slot: 26
    display_name: "&c&lCustom Reason"
    lore:
      - ""
      - "&7Set custom duration & reason for the warn."
  exit_item:
    slot: 22
    material: BARRIER
    display_name: "&cExit to previous menu"
    lore:
      - ""
##############################################################################
##                                                                          ##
##                                                                          ##
##                                STAFF CHAT                                ##
##                                                                          ##
##                                                                          ##
##############################################################################
# Should it have separate staff chat server and universal?
# If this is false all chat will be considered universal.
separated_staff_chat: true
universal_staffchat_chat_prefix: "%"
server_staffchat_chat_prefix: "$"
# A universal unique id for the current server.
universal_current_server_id: "server1"
##############################################################################
##                                                                          ##
##                                                                          ##
##                                InventoryBackup                           ##
##                                                                          ##
##                                                                          ##
##############################################################################
# Maxmimum inventories to be saved per player, everytime a new inventory backup happens it will override existing one if it exceeds this number.
maximum_inv: 3
backup_interval: 5h
# When it should backup player's inventory?
# Valid events: death, quit, change_world: when players teleports to a different world.
backup_events:
  - death
  - quit
  - world_change
InvBackupGUI:
  title: "Inv Backup for %player%"
  size: 27
  # Each item of the inventories.
  inv_item:
    material: CHEST
    display_name: "&bInventory #%id%"
    lore:
      - ""
      - "&fBackup date: &e%backup_date%"
      - "&fBackup event: &e%backup_event%"
      - ""
      - "&9&lLEFT CLICK &7to view."
      - "&f&lRIGHT CLICK &7to rollback:"
      - "&c&l(this will give this inventory to the player)."
  backup_now_item:
    material: CLOCK
    slot: 26
    display_name: "&b&lBackup now"
    lore:
      - ""
      - "&bClick to backup player's inventory now"
      - "&bIt may take some time to backup."
##############################################################################
##                                                                          ##
##                                                                          ##
##                                Login                                     ##
##                                                                          ##
##                                                                          ##
##############################################################################
# Valid options are:
# All: players and staff members.
# Staff_only: players with halosstaff.login permission.
login_targets: staff_only
# for example, if player logins in now, he won't need to login again in 5h no watter how many times he disconnect.
# To disable set this to 0.
login_session_time: 5h
# Notification interval for register/login.
notification_interval: 10s
password_flags:
  min_char_length: 6
  max_char_length: 20
  must_contain_numbers: true
  must_contain_letters: true
##############################################################################
##                                                                          ##
##                                                                          ##
##                                Storage                                   ##
##                  Control options related to Storage                      ##
##                                                                          ##
##############################################################################
# Valid types: mysql, json.
storage_type: json


# Whether it should debug to console info about saving operations.
debug_console_save: true
mysql:
  host: "localhost"
  port: 3306
  database: "halosstaff"
  user: "root"
  password: "root"
  players_table: "users"
  reports_table: "reports"
  inventories_table: "inventories"
##############################################################################
##                                                                          ##
##                                                                          ##
##                                  COOLDOWNS                               ##
##                                                                          ##
##                                                                          ##
##############################################################################
# The cooldown on /helpme.
helpme_cooldown: "10m"
# The cooldown on /report.
report_cooldown: "10m"

Last updated