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.
-
check-for-updates
(boolean) Enables/Disables checking for updates. Defaulttrue
. -
show-admin
(boolean) Enables/Disables an update message that shows up by admins if there is one avaiable. Defaulttrue
.
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. Defaultfalse
. -
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. Default3306
. -
table-prefix
(string) What to prepend to each table name used by the plugin. Defaultcq_
.
-
countdown
(integer) The time you have to wait before the game starts in seconds. Default30
. -
game-length
(integer) The time a game will last in seconds. Default450
. -
after-count
(integer) The time in seconds the game will wait before resetting the arena after the game has ended. Default15
. -
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. Default100
. -
team-colour-prefix
(boolean) Enable/Disable the use of coloured chat messages in-game (team colour). Defaulttrue
. -
force-even-teams
(boolean) If true, the game forces players to make even teams. Defaulttrue
. -
blood
(boolean) True if you want to enable blood. False if you want to disable blood. Defaulttrue
. -
blood-material
(string) The material name of which the blood particles are from. Defaultredstone_block
. -
chat-silence
(boolean) Whether the chat should be silenced or not. Defaultfalse
. -
banned-items
(string list) Exact names of items you don't want to have spawned. Default none.
-
regen-fire
(integer) Time in seconds it takes to fully recharge a fire wand. Default6
. -
regen-teleport
(integer) Time in seconds it takes to fully recharge an ender wand. Default12
. -
regen-healing
(integer) Time in seconds it takes to fully recharge a healing wand. Default12
. -
regen-ice
(integer) Time in seconds it takes to fully recharge an icew and. Default12
. -
regen-wither
(integer) Time in seconds it takes to fully recharge a wither wand.6
.
-
start-price
(integer) The price of the first upgrade. Default250
. -
multiplier
(double) How much the price increases each level (exponential). Default1.75
. -
crystal-multiplier
(integer) Double, triple the crystals if you like. Suitable for special events. Default1
. -
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)
.
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
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).
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.
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 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.
-
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.
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.
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.
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).
- 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.
- Itemname:
wand_ender
- Item: Stone Hoe
- Use: The ender wand will teleport you to a certain location withing a range of 40 blocks.
- Itemname:
wand_healing
- Item: Wooden Hoe
- Use: The healing wand will heal all players in your team by 4 hearts.
- 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 inv1.3
and earlier).
- 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 inv1.3
and earlier).
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.
You can find an example config (default) here.