Ailments are any infectious/non-infectious illness or injury that can be applied to a player. They can be set to be contagious or affect only the player who has it. They can also lead to secondary ailments which afflict the player after a set amount of time if the original ailment isn’t cured in time. You can even set the ailment to be hidden from the player for a set amount of time, during which, they could be infecting any number of other players.
Each ailment has a number of possible configuration options to allow you to create extremely customized illnesses and injuries that best fit your server.
Ailment Configuration
Ailment files are .yml files stored in the ailments folder. They should be named as the internal_name (details below) .yml - For example: broken_leg.yml
Ailment file version, this MUST match the currently required version and should not ever be modified by hand. If the ailment configuration ever needs to update, it will replace this value automatically.
v: 1.1
Internal key name should be a unique value and should not include any spaces or most special characters (underscores are acceptable.)
internal_name: "broken_leg"
Display name is how the ailment will be referred to in-game. It can include color codes or any special character that is allowed in-game.
display_name: "Broken Leg"
The infectious flag indicates if this ailment can be passed along to other players. If so, being close to someone who has this ailment will increase your chance of catching the ailment. This should only be set if the ailment is infectious. For example, you can’t catch a broken leg.
infectious: false
Infectious chance is the number between 0-
infectious_chance: 0
Non-Infectious chance is the number between 0-
non_infectious_chance: 250
Contagious chance boost is the amount to add on to your infectious chance if you are near a player who has the ailment. For example, if you have an infectious chance of 200, and an infectious chance boost of 50, with the boost, if the random number was <= 200, you would get the ailment. With the boost, if the number <= 250, you would get the ailment. The boost is added to infectious_chance and used to calculate your chance of getting the ailment.
contagious_chance_boost: 0
Chance of contracting the infectious ailment when deliberately injected Chance is out of the random_chance in config.yml - To always have the player get the ailment when injected, set to same as random_chance, lower numbers have less chance.
deliberate_transmission_chance: 100000
Applies a modifier based on biome. A negative number would indicate less chance while a positive number would indicate more chance. If we had an infectious_chance of 100, and a swamp modifier of 24900 it would jump to 25000 every minute. So a random number of 1-100000 would now be <= 25000 would get you sick instead of the 100, so a 1/4 chance instead of a 1/1000. You could also have an infectious_chance of 0, and a positive biome_infectious_chance for the biome you’re in, meaning you could only get sick in that particular biome. If you use a negative biome infectious chance and is less than the infectious chance, the overall infectious chance could drop below 0, which would mean you cannot get that ailment in that biome. In example below, being in a swamp would add 500 to the 100 already applied, so a (500+100) = 600 in 100000 chance, but if you were in a desert, you’d have (100 + -100) leaving a 0 chance and therefore meaning you could not get it in the desert. However, if you were in Plains, your chance would be (100 + 0) = 100 as plains is not included Note: example does not take contagious chance boost into consideration
biome_infectious_chance:
SWAMP: 500
DESERT: -100
Maximum immunity amount is the maximum immunity you can gain to infectious ailments. Your immunity will increase based on the number of times you have recovered from an illness up the maximum set here. The immunity is used to lower your chance of getting an ailment. For example, if you have a maximum immunity of 100, and your current immunity is 80, and your infectious chance is 200 (with 0 boost), your new infectious chance would be 200 - 80 = 120 so you would only get the ailment if the random number generated was <= 120 instead of <= 200.
max_immunity: 0
Immunity modifier is the amount to add to your immunity for this ailment each time you recover from the ailment. If your immunity modifier was 10 and your current immunity was 70, with a max_immunity of 80, the next time you were healed from this ailment, it would reach the maximum of 80. If you got the ailment and was healed again, it would remain 80.
immunity_modifier: 0
Report before symptoms indicates if the ailment should show up when using the /health command if symptoms have not yet been applied. Setting this to false would show no ailment in /health if symptoms have not been applied, if they have been applied, it would show the ailment.
report_before_symptoms: true
If true, the warn on afflicted flag will send the afflicted_text to the player when the player gets the ailment. This can be used in conjunction with report_before_symptoms = false to hide the ailment from the player until they start to show symptoms. This can be used to have the player spread the ailment to other people without their knowledge.
warn_on_afflicted: true
Afflicted text is the message to send to the player when they get the ailment (if warn_on_afflicted = true). It can contain color codes and any special characters that are allowed in-game. If the message is left blank, no message will be sent to the player.
afflicted_text: "Your leg breaks with a sickening crack"
Symptom text is the message to send to the player when symptoms first start. This is especially useful if you have a long period between affliction and symptoms. It can contain color codes and any special character allowed in-game. If this is left blank, no message will be sent.
symptom_text: "The pain is starting to make you nauseous"
Infected Other text is the message the player receives if they cause another player to become sick through being near them. If you are hiding affliction from the player, you may want to leave this blank, however, if you don’t mind the player knowing that they have the affliction (purposefully spreading illness is valid), then you can include the message for the player here. It can contain color codes and any special character allowed in-game. If this is left blank, no message will be sent.
infected_other_text: ""
Healed text is the message sent to the player when they are cured of an ailment. It can contain color codes and any special character allowed in-game. If this is left blank, no message will be sent.
healed_text: "Your leg is feeling much better!"
Natural cure text is the message sent to the player if they are cured of an ailment over time. It can contain color codes and any special character allowed in-game. If this is left blank, no message will be sent.
natural_cure_text: "Your leg has improved and you can put weight on it again"
Time to symptoms is the number of seconds between a player getting an ailment, and them actually starting to show symptoms for it. For non-infectious ailments such as a broken leg, you might want symptoms to be immediate, in which case, set it to 0. For infectious ailments, you may want the player to spread the ailment before they start to show symptoms, in which case you can specify the number of seconds to wait.
time_to_symptoms: 0
Is Fatal is a true/false flag for if the damage applied to the player can be fatal. If false, the damage for the player will stop if it would take to 0 health. However, if they have a potion effect applied that also causes damage, the player may still die even if the ailment itself is not fatal. When false, the lowest health a player can go to is half a heart.
is_fatal: false
Damage is how much damage to apply to the player each time symptoms are applied. By default, each 1 damage is half of a hearts worth of damage, so if you wanted them to drop 2 hearts of damage, you’d set damage to 4. Damage will not be applied if is_fatal = true and the damage would take them to 0 health.
damage: 1
Secondary ailments are a pointer to another ailment that should be applied if the player does not cure the original ailment within the amount of time specified. Secondary ailments replace the ‘secondary_infection’ from previous versions, and allows much more control over the secondary ailment. For example, you could have Gangrene as a secondary ailment for a broken leg, and Sepsis as a secondary ailment for a wound. Each of those could have their own remedies, and could apply vastly different effects. Chaining secondary ailments is NOT recommended and NOT supported (chaining would be setting a secondary ailment on a secondary ailment). Once a player has gotten a secondary ailment, they will not get that secondary ailment again if they cure it, until the original ailment has been cured (or the player dies) and they get the original ailment a second time. For example: If a player gets a broken leg, then gets gangrene, they can cure the gangrene but not the broken leg, in that case, the broken leg will not lead to gangrene a second time. However, if they cure the broken leg and then break their leg again, they can get gangrene as a secondary ailment.
secondary_ailment:
ailment: gangrene
time: 360
Chance of the ailment being cured while you sleep. This number is out of 1000 Lower numbers have less chance of curing the player. Set to 0 to never cure the player, or 1000 to always cure them when sleeping
cure_with_sleep_chance: 0
Message to send to the player when they are cured by sleeping cure_with_sleep_message: “”
If temperature is enabled and Fever is true, it will cause the player to overheat more quickly, raising their core temperature. This can cause the player to suffer temperature symptoms more easily. Alternately, if the player is cold, having a Fever will warm them up and may protect them from freezing.
fever: false
If temperature is enabled and Chills is true, it will cause the player to freeze more quickly, lowering their core temperature. This can cause the player to suffer temperature symptoms more easily. Alternately, if the player is hot, having Chills will cool them down and may protect them from overheating.
chills: false
If true, Display vomit will cause particle-effect vomit to be issued from the players mouth each time symptoms are applied to the player. It is a visual effect only, but can be paired with making a player hungry by lowering their hunger points.
display_vomit: false
Display bleeding contains a number of true/false flags for if the player should appear to be bleeding from various parts of the body. You can use any combination of true/false to simulate bleeding from multiple body parts as needed. This a visual effect only. It can be paired with damage to simulate the player being cut
display_bleeding:
face: false
head: false
chest: false
back: false
left_arm: false
right_arm: false
left_leg: true
right_leg: false
Display bowel, if true will simulate the player losing control of their bowels every time symptoms are applied to the player. This is a visual effect only.
display_bowel: false
Display urinate, if true will simulate the player losing control of their bladder every time symptoms are applied to the player. This is a visual effect only.
display_urinate: false
Display sweat, if true will simulate the player sweating every time symptoms are applied to the player. This is a visual effect only, but can be paired with fever in order to simulate a player overheating.
display_sweat: false
Display contagious, if true will display a small particle effect over the player when they are currently contagious. This can be used to warn players to stay away from them. This is a visual effect only.
display_contagious: false
Display injury, if true will display a small particle effect over the player when they are injured (not contagious). This could be used to indicate injury during pvp etc. This is a visual effect only.
display_injury: false
If insomnia is true, the player will be unable to sleep while they have this ailment. This can cause issues for the player such as sleeping to avoid Phantoms, or for recovering from ailments by sleeping (NOTE: planned for 1.7.0), or even just for sleeping through the night.
insomnia: false
If hallucinations are true, the player may hear random noises when symptoms are applied, such as the sound of a creeper priming, a spider hissing or the sound of an arrow impacting etc. This is an audio effect only currently but visual hallucinations are planned for the future.
hallucination: false
If gibberish is true, any text the player types in chat will be scrambled.
gibberish: false
If Food rot is true, then every time symptoms are applied to the player, any food they have on them will rot away
food_rot: false
Remove XP is a number and indicates the amount of XP to remove from the player each time symptoms are applied to the player. Keep in mind that symptoms (by default) are applied every 20 seconds, so setting the number to 10 for example, could potentially lead to losing 30XP per minute.
remove_xp: 0
If Rust is true, damage will be applied to any iron items the player has on them, either wearing or in inventory. The amount of damage applied is indicated in rust_amount.
rust: false
Rust amount is the amount of damage points to apply to each piece of iron armor/tool/weapon that the player has on them, if rust is set to true.
rust_amount: 0
If Clumsy is set to true, there is a 1/5 chance each time symptoms are applied that the player will drop the item in their main hand.
clumsy: false
Chance out of 1000 that the player will die suddenly from this ailment Set to 0 for no chance, lower number is less chance
sudden_death_chance: 5
Message to display to the player when they suddenly die of this ailment
sudden_death_message: "Your heart can't take the strain of the plague"
Caused by fall is a true/false flag that will cause the ailment to be triggered if the damage type is from a fall. This is for non-infectious chance only.
caused_by_fall: true
Caused by injury is a true/false flag that will cause the ailment to be triggered if the damage type is from an injury, such as being hit, shot etc. This is for non-infectious chance only.
caused_by_injury: true
Flag to indicate if the ailment is caused by a weapon (sword, axe, projectile, stick) caused_by_weapon_injury: false
Caused by explosion is a true/false flag that will cause the ailment to be triggered if the damage type is explosion. Explosion damage can be from a block such as TNT or entity such as a creeper. This is for non-infectious chance only.
caused_by_explosion: true
Caused by fire is a true/false flag that will cause the ailment to be triggered if the player is burned. Burning can come from fire, lava, magma blocks etc. This is for non-infectious chance only.
caused_by_fire: false
Caused by water is a true/false flag that will cause the ailment to be triggered by drowning damage. This is for non-infectious chance only.
caused_by_water: false
Caused by consume is a true/false flag that will cause the ailment to be triggered by eating or drinking. This is for non-infectious chance only.
caused_by_consume: false
Cause by magic is a true/false flag that will cause the ailment to be triggered by damage caused by Magic. This is for non-infectious chance only.
caused_by_magic: false
Caused by entity is a list of entities that can caused the ailment to be triggered if the player takes damage from them. For example, for Rabies, you may use - WOLF, then any time the player takes damage from a wolf, there is a chance (non-infectious chance) that the player will get rabies. You can add as many entity types as needed. If you do not wish for this to be used, you can set it to [] or comment it out/remove it completely from the config.
caused_by_entity: []
For ailment causes triggered by player damage (fall, explosion, injury etc.) if the damage_chance_modifier 0, then the damage dealt will be multiple by the damage chance modifier and added to the chance of ailment. Example, a player falls, taking 1.5 hearts of damage (damage = 3), and triggering an ailment with a non-infectious chance of 50 and a damage_chance_modifier of 3. The new non-infectious chance would be 50 + (3 * 5) = 50 + 15 = 65 (chance is always rounded)
damage_chance_modifier: 5;
Ailment effects is a group of settings that apply potion effects on to the player every time symptoms are applied to the player. You can add multiple potion effects, taking care of the spacing so time and amplifier are correctly nested under each effect. Ailment effects is the parent item, the potion effect is a child of that, and time and amplifier is a child of the potion effect. Time is the number of seconds to apply it for, and amplifier is how strong the effect is. Ailment effects information can be found here: Potion Effects
ailment_effects:
SLOW:
time: 60
amplifier: 2
WEAKNESS
time: 5
amplifier: 1
Particle on heal is the particle effect to apply to the player when the player is cured of the ailment. If you do not wish to have an effect, comment out or remove it from the config entirely.
particle_on_heal: VILLAGER_HAPPY
Sound on heal is the sound to player at the players location when the player is cured of the ailment. If you do not wish to have a sound player, comment out or remove it from the config entirely.
sound_on_heal: BREWING_STAND_BREW
Can gain immunity is a flag that indicates if the player can gain immunity to this ailment when they are cured of the ailment.
can_gain_immunity: false
Is Active is a true/false flag that indicates if the ailment should be added to the game. If False, the ailment will be ignored when loading the plugin.
is_active: true