Configuration and Classes - SugarCaney/CrystalQuest GitHub Wiki


← Installation | Table of Contents | Creating Arenas →


After you have installed the CrystalQuest plugin, 2 files should be generated in your plugins/CrystalQuest folder. With the data.yml file you should not mess, unless you know exactly what you're doing. However, with the config.yml we can mess around. You can edit the config.yml with your favourite text editor. I recommend using something like Notepad++ when on Windows. Make sure you only use spaces instead of tabs. Tabs won't work.

Contents

Updates

  • check-for-updates (boolean) Enables/Disables checking for updates. Default true.
  • show-admin (boolean) Enables/Disables an update message that shows up by admins if there is one avaiable. Default true.

MySQL

v1.4+ Enabling this will allow the plugin to store the balance, bought classes and bought upgrades in a database. When the database is not used, the data.yml will be used to store this data. The required tables will be created on first boot.

  • enabled (boolean) Whether to use a MySQL database to store shop info. Default false.
  • username (string) The username of the account that has access to the database.
  • password (string) The password of the account that has access to the database.
  • database (string) The name of the database.
  • host (string) The hostname of the database without port number.
  • port (integer) The port number of the database. Default 3306.
  • table-prefix (string) What to prepend to each table name used by the plugin. Default cq_.

Arena

  • countdown (integer) The time you have to wait before the game starts in seconds. Default 30.
  • game-length (integer) The time a game will last in seconds. Default 450.
  • after-count (integer) The time in seconds the game will wait before resetting the arena after the game has ended. Default 15.
  • crystal-spawn-chance (integer) A crystal will approximately spawn on a spawnpoint every N seconds. Default: 20.
  • item-spawn-chance (integer) An item will approximately spawn on a spawnpoint every N seconds. Default 100.
  • team-colour-prefix (boolean) Enable/Disable the use of coloured chat messages in-game (team colour). Default true.
  • force-even-teams (boolean) If true, the game forces players to make even teams. Default true.
  • blood (boolean) True if you want to enable blood. False if you want to disable blood. Default true.
  • blood-material (string) The material name of which the blood particles are from. Default redstone_block.
  • chat-silence (boolean) Whether the chat should be silenced or not. Default false.
  • banned-items (string list) Exact names of items you don't want to have spawned. Default none.

Wand

  • regen-fire (integer) Time in seconds it takes to fully recharge a fire wand. Default 6.
  • regen-teleport (integer) Time in seconds it takes to fully recharge an ender wand. Default 12.
  • regen-healing (integer) Time in seconds it takes to fully recharge a healing wand. Default 12.
  • regen-ice (integer) Time in seconds it takes to fully recharge an icew and. Default 12.
  • regen-wither (integer) Time in seconds it takes to fully recharge a wither wand. 6.

Shop

  • start-price (integer) The price of the first upgrade. Default 250.
  • multiplier (double) How much the price increases each level (exponential). Default 1.75.
  • crystal-multiplier (integer) Double, triple the crystals if you like. Suitable for special events. Default 1.
  • crystal-message (string) The message that shows up when someone receives crystals. Leave blank if you do not want to have a message. %teamcolour% = teamcolour. %amount% = received amount. Default %teamcolour%+%amount% Crystal(s).

Rarity

v1.4+ Contains per item the rarity of that item. A lower number means that the item occurs more often, a higher number means the item occurs less often. All values have their inverses added up. The chance of an item spawning is the inverse rarity value of the item divided by the total amount. The values are mapped by their item ids.

Roughly: 1 is common, 2.5 is rare, 4 is extremely rare.

Defaults:

  • crystal-shard: 1
  • small-crystal: 1.5
  • shiny-crystal: 2.5
  • lightning-bolt: 2.5
  • glue: 2.5
  • landmine: 1
  • wolf: 1
  • creeper-egg: 1
  • hammer: 1
  • wither: 2.5
  • shield: 1
  • strength: 1
  • flower: 1
  • apple: 1
  • railgun: 1.5
  • blooper: 2.5
  • speed: 1
  • health: 1
  • grenade: 1
  • anvil: 1
  • tnt: 1
  • telepearl: 1
  • bunny: 2
  • bomb: 1
  • curse: 2.5
  • poison-dart: 1
  • force-field: 1
  • sugar: 1
  • smart-bomb: 1
  • totem-of-undying: 4

Kit

To make a new kit, you have to make a new section under the kit node. The section's name will be called 'technical name' on this wiki. It will be used to define the permissions. Under the technical name's section you can define several properties of the kit.

  • name (string) The name that'll show up in the class-menu.Make sure to put single quoutes around the String if you use colours.
  • icon (string) The item-icon for the kit (see the item-handling section down below).
  • lore (string) Extra text that will show up. You can use colour codes. Use %nl% to add a new line.
  • ability (string list) See the section below.
  • price (integer) The amount of crystals this class costs in the shop. Remove this or set it to -1 to not make the class buyable. If you make a class buyable, do not give them the permission for the class or the shop-perm will be overwritten.
  • arenas (string list) Optional, remove when not wanted A list of all arenas (names) the class will be avaiable in. If you delete this node, the class will be avaiable in all arenas. If you want to exclude a class from an arena you use the - prefix (e.g. -Park).
  • items (string list) A list of all items the player receives when choosing this kit. Armour will be auto-equipped (see the item-handling section down below).

Abilities

You can give certain classes certain abilities. To give a class abilities, make a string list under the keyword ability. Every ability listed in that list will be given to a player when they choose the class. The possible keywords are:

  • doublejump_boost Let the player have a slightly higher double jump.
  • agility Gives the player a permanent Speed I effect.
  • super_speed Gives the player a permanent Speed II effect.
  • strength Gives the player a permanent Strength I effect.
  • poison Poisons hit targets for a few seconds.
  • explosive_arrows All fired arrows will create a small explosion when they hit.
  • resistance Gives the player a permanent Resistance I effect.
  • jump_boost Gives the player a permanent Jump Boost II effect.
  • health_boost Gives the player 2 more hearts.
  • last_revenge When a player dies, a random team will be hit by lightning.
  • less_death_crystals Lowers the amount of crystals a player drops when they die (PS. this must be 'fewer' obviously but isn't for legacy reasons).
  • return_arrow When a player hit a target, they will get their arrow back.
  • drain Each hit will give the player +0.5 heart.
  • slowness Gives the player a permanent Slowness I effect.
  • weakness Gives the player a permanent Weakness I effect.
  • water_healing Lets the player heal when they are in the water.
  • corroding Damagess the player when they are in the water.
  • magical_aura Makes wands regenerate 2 times faster.
  • power_loss Makes wands regenerate 2 times slower.

Abilities are not required.

Item Handling

Format v1.4 and later

v1.4+ The item config format has been changed since v1.4. Are you using an earlier version (v1.3/MC 1.12)? Check the section below for the old format. When there are problems parsing, warning messages will be print to the console.

The format is as following:

  • <itemname>[;customname],[amount],[modifiers...]

With the following parameters:

  • itemname (required) The name of the item as you can find it in game, e.g. redstone_block. Legacy names (of older bukkit versions like MC 1.8) will, at least for now, still be parsed when there is no corresponding new name.
  • customname (optional) See Custom item names.
  • amount (optional) The amount of the item to give.
  • modifiers (optional) See below.

All parameters except the item name are optional. Please note that when you want to add modifiers, you have to add an amount, i.e. shield,1,[d 317] is valid while shield,[d 317] is not.

Modifiers

Modifiers contain extra metadata for the added items. There are currently 3 types: e for enchantments, p for potion effects, and d for durability. They have the following format: [e|p|d data..].

  • Enchantments can be added by enumerating pairs of enchantment names and levels all separated by ;. Examples:
    • team_boots,1,[e unbreaking;10]
    • bow,1,[e power;1;punch;1;infinity;1;sharpness;1].
  • Potion effects can be added by joining the effect name, level number, and duration number (in ticks, there are 20 ticks/second) similarly to enchantments. Example:
    • potion,1,[p speed;1;600;jump_boost;4;600]
  • Durabilty can be changed by simply entering the damage amount applied to the item. Example:
    • shield,1,[d 317] for a worn shield.

Format v1.3 and earlier

v1.3- The plugin can handle different kinds of lengths of formats. <itemname> should be replaced with the itemname you want to have (a list can be found here) and <enchantment> should be replaced with the actual enchantment-name without spaces and capitals. Please mind that armour will be equipped automatically.

  • <itemname> Give 1 piece of the item with the given name.
  • <itemname>,<amount> Gives N amount of items with the given name.
  • <itemname>,<amount>,<datavalue> This will add a data value to the item (e.g. 35,3,1 will give you 3 orange wool blocks).
  • <itemname>,<amount>,<datavalue>,<enchantment>,<level> This will add an enchantment to the item.
  • <itemname>,<amount>,<datavalue>,<enchantment1>,<level1>,<enchantment2>,<level2> etc. This will add multiple enchantments (up to 5) to the item.

Team Armour

To get leather armour dyed in the colour of the player's team you use the following item names: team_helmet, team_chestplate, team_leggings or team_boots. For example if a player is in team red (id 4) and chose a kit where team_chestplate is mentioned, they will get a red leather chestplate. Of course you can also add enchantments to the team armour.

Custom item names

If you want to give an item a custom display name (colour supported), you suffix the itemname by ;Display Name Text. A bone called "club" will be gained by using bone;&6Club,1,[e sharpness;2] in version 1.4 and later, or bone;&6Club,1,0,sharpness,2,knockback,3 in earlier versions.

Wands

If you want to bring in some magic, you can use special wands to enlarge people's powers. All wands can be used by right-clicking and will recharge +/- every 12 seconds (this is configurable, see above). To add a wand to a class simply use wand_<wandtype> as the itemname (do not give them a custom display name. This can be changed using the language file: lang.yml).

Fire Wand
  • Itemname: wand_fire
  • Item: Golden Hoe
  • Use: The fire wand will set all players in a radius of 4 (6 in v1.3 and earlier) on fire and will shoot a fireball.
Ender Wand
  • Itemname: wand_ender
  • Item: Stone Hoe
  • Use: The ender wand will teleport you to a certain location withing a range of 40 blocks.
Healing Wand
  • Itemname: wand_healing
  • Item: Wooden Hoe
  • Use: The healing wand will heal all players in your team by 4 hearts.
Ice Wand
  • Itemname: wand_ice
  • Item: Diamond Hoe
  • Use: The ice wand will freeze (slowness effect) all players within a radius of 8 blocks (10 in v1.3 and earlier) for 5 seconds (7.5 in v1.3 and earlier).
Wither Wand
  • Itemname: wand_wither
  • Item: Stone Axe
  • Use: The wither wand will shoot out a wither skull and will wither all players within a range of 4 blocks (5 in v1.3 and earlier) for 5 seconds (7.5 in v1.3 and earlier).

Colour formatting codes

You can use the following formatting codes to spice up your names and lores:

  • &0 Black
  • &1 Dark Blue
  • &2 Dark Green
  • &3 Dark Aqua
  • &4 Dark Red
  • &5 Dark Purple
  • &6 Gold
  • &7 Gray
  • &8 Dark Gray
  • &9 Blue
  • &a Green
  • &b Aqua
  • &c Red
  • &d Light Purple
  • &e Yellow
  • &f White
  • &k Magic
  • &l Bold
  • &m Strikethrough
  • &n Underline
  • &o Italic
  • &r Reset all formatting.
  • %nl% Newline, only used in lores.

Example Config

You can find an example config (default) here.


⚠️ **GitHub.com Fallback** ⚠️