recursal/Fanatic-Fandom huggingface dataset:
Curse of Contagion

The Curse of Contagion enchantment is a curse enchantment added by Enchantment Solution for any item.

## Description

If an item with Curse of Contagion exists in a player's inventory, it will try to spread curses to any valid item in that inventory. If not all enchantable items have the contagion, there is a 50% chance of spreading the contagion to another item. More items with Curse of Contagion in a player's inventory will spread curses faster.

## Curse of Contagion

### Description

Spreads curses to items in your inventory.

## Advancements

* Plague Inc.
* Extermination
Gung Ho

The Gung Ho enchantment is an enchantment added by Enchantment Solution for chestplates.

## Gung Ho

### Description

Decreases health by half. All attacks do 3 times the damage.

### Version Added

2.0.0

While wearing the chestplate, the base health of the wearer will go down by 50%, but the damage output of all attacks is multiplied by 3.

## Events

* AttributeEvent
* GungHoEvent

## Incompatibilities

Gung Ho and Life are mutually exclusive. When added to the same item, Gung Ho will take priority.
SandVeilEvent

The Sand Veil Event is an event called when an entity gets hit with a Sand Veil weapon.

## Description

The SandVeilEvent is a class that adds two local variables: the ticks, which sets how long the lowered accuracy will occur, and the accuracy.

## Code Information

### Constructor

SandVeilEvent(LivingEntity damaged, int level, LivingEntity damager, double damage, double newDamage, int ticks, double accuracy)

* // LivingEntity damaged - the damaged entity
* // int level - the level of Sand Veil used
* // LivingEntity damager - the attacker
* // double damage - the damage of the event
* // double newDamage - the final damage for the event
* // int ticks - the number of ticks the damaged entity will have lower accuracy
* // double accuracy - the new accuracy of the damaged entity

### Methods

#### int getTicks()

Gets the number of ticks for which the damaged entity will have lower accuracy

#### void setTicks(int ticks)

Sets the number of ticks to the specified value

#### void setAccuracy(double accuracy)

Sets the accuracy percentage to the specified value
ExhaustionEvent

The Exhaustion Event is an event called every 4 ticks to increase the amount of exhaustion given to a player.

## Description

The ExhaustionEvent is a simple class that extends the ModifyActionEvent. It implements two new fields, the multiplier double that controls how much and the exhaustionTick float that states how much exhaustion happened in the past few ticks.

## Code Information

### Constructor

ExhaustionEvent(Player who, double multiplier, float exhaustionTick)

* // Player player - the player experiencing the exhaustion
* // double multiplier - the multiplier of the exhaustion
* // float exhaustionTick - the amount of exhaustion in the past 4 ticks

### Methods

#### void setMultiplier(double multiplier)

Sets the multiplier to the specified value

#### float getExhaustionTick()

Returns the exhaustion experienced by the player the past few ticks.
Angler

The Angler enchantment is an enchantment for Fishing Rods.

## Description

When fishing, you will catch one additional fish for each level of angler. This includes tropical fish, cod, salmon, and pufferfish. It does not affect any treasure loot.

## Angler

### Description

Catch one additional fish per level if you caught a fish.

### Version Added

1.0.0

 Level 30

## Advancements

* Fed For a Lifetime: Get more than one of each kind of fish with Angler

## Events

* AnglerEvent: Event called when fish is caught with Angler
Fire Aspect

The Fire Aspect enchantment is a vanilla enchantment for swords.

### Description

Sets the target on fire.Fire Aspect adds 80 fire ticks (4 seconds of burning) per level to the target.

### Version Added

Vanilla

See Fire Aspect

## Enchantability

 Level 50
 Level 50
 Level 30
 Level 30

## Incompatibilities

Fire Aspect and Quick Strike are mutually exclusive. If placed on the same item through commands, both enchantments will work as usual.
WandEvent

The Wand Event is an event called when a player places blocks with Wand in their mainhand.

## Description

The WandEvent is a simple class for placing multiple blocks with Wand.

## Code Information

### Constructor

WandEvent(Collection<Location> blocks, Player player, int level)

* // Collection<Location> blocks - the blocks' locations to be placed
* // Player player - the player placing the blocks
* // int level - the level of Wand being used
Super Effective!

Agricultural Revolution is the base advancement for the Agricultural Revolution tab.

## Requirements

The advancement will unlock once the player has an Enchanting Table in their inventory or enchants an item using an already placed Enchanting Table.

## Related Advancements

### Children

* Fish Sticks
* Bonemeal Plus
* Not That Kind
* That Food Is... Fine?
* Chicken or the Egg
* Thorgy!
Peter Ashton

Peter is an NPC alchemist who became a member of Hixan & Co.

## Description

Peter was a joyful shopkeeper of an unearning, unsuccessful alchemist's shop, who was offered a position to be a member of Hixan & Co by Arlyl, after seeing how bad Peter's life and business was going.

### Appearance

Peter is a shorter looking, fair skinned young adult with dark hair.

### Personality

Peter is mostly joyful and tries to be persuasive, coming from him being a salesperson and trying to sell his products. He is not too extremely intelligent, shown by him making big mistakes regarding his business. He is happy to become an adventurer but is scared of the danger that follows the lifestyle.

## Biography

### Beginning of the campaign

#### Arc II

##### Session 19

Peter was trying to sell many products to Arlyl including the chair he would sleep on for a price of 10gp. It was obvious that he needed money and that his business was unearning. He got invited by Arlyl to become an adventurer, firstly being sceptical but after a bit of conversion, was persuaded. He sold his shop and joined Hixan & Co.

## Relationships

### Arlyl

Arlyl is the only Hixan & Co member he has really talked to so far. He is grateful for Arlyl helping him out with his life choices and for teaching him magic.

## Character information

### Abilities

#### Alchemist abilities

* Peter is an alchemist and has practice in brewing potions.

## Trivia

* Peter is the first NPC to be a part of Hixan & Co
Transmutation

The Transmutation enchantment is an enchantment added by Enchantment Solution for tridents.

## Transmutation

### Description

On killing mobs, all non-sea drop items become sea drop items.

### Version Added

2.0.0

When killing any mob, it will replace the regular loot with a loot table from EnchantmentSolution with all the aquatic drops. The loot table is as follows:

When killing a Wither, it will still drop the Nether Star as well as 64 random pieces of loot from the above table. This is the reward for the Cerberus? advancement.

## Advancements

* Fishier Business
* Poseidon's Day Off
* Poseidon Reborn
* Cerberus?
Graphene Armor

Graphene Armor is an advancement in the Mechanical Revolution tab. It is based on the enchantment Toughness.

## Requirements

Wearing a piece of Toughness armor and having exactly or over 20 points of armor toughness will unlock the advancement. Any vanilla modifiers will stack with the benefits, but it requires a piece of Toughness armor to unlock.
Extra Power

Extra Power is an advancement for the Mechanical Revolution tab. It is based on the enchantment Life.

## Requirements

Eating an enchanted golden apple while wearing a chestplate with the highest level of Life will unlock the advancement. The default max level of Life is Life 3. Having a level of Life over the max level will still unlock the advancement.

## Description

Eat an enchanted golden apple while wearing the highest level of Life
ForceFeedEvent

The Force Feed Event is an event called when an item is repaired with Force Feed.

## Description

The ForceFeedEvent extends the ItemRepairEvent and adds one local variable: an exhaust float for how much exhaustion will be added to the player.

## Code Information

### Constructor

ForceFeedEvent(Player who, int level, ItemStack item, float exhaust)

* // Player who - the player whose item is being repaired
* // int level - the level of Force Feed applied to the item
* // ItemStack item - the item being repaired
* // float exhaust - the amount of exhaustion to be added to the player
7.8/10

7.8/10 is an advancement in the Imperial Revolution tab. It is based on the enchantment Drowned.

## Requirements

Having three entities getting drowning damage at the same time will unlock this advancement. To inflict an entity with drowning damage, the entity must be hit with a trident enchanted with Drowned.

## Description

Have 3 mobs drowning at the same time with Drowned

## Trivia

* The name of this advancement is based upon the meme surrounding IGN's review of Pokemon Omega Ruby and Alpha Sapphire.
Ready After Death

Ready After Death is an advancement in the Scientific Revolution tab. It is based on the enchantment Soulbound.

## Requirements

Saving a Diamond Hoe, Diamond Sword, Diamond Axe, Diamond Pickaxe, Diamond Shovel, Diamond Helmet, Diamond Chestplate, Diamond Leggings, and Diamond Boots on death with Soulbound will unlock the advancement.

## Description

Save 9 unique types of diamond tools, weapons, and armor in death using Soulbound
Force Feed

Force Feed is an enchantment added by Enchantment Solution for all enchantable items.

## Description

Force Feed will randomly tick to repair equipped items with exhaustion every tick. Each repair will cost 2 full exhaustion points (about 1/3 of restoring half a heart of damage), and will repair points equal to the level of Force Feed.

## Force Feed

### Description

Takes saturation to repair equipped armor and items.

### Version Added

2.3.0

 Level 30

## Advancements

* Yummy Repairs
* Hungry Hippos
ItemEquipEvent

The Item Equip Event is an event called when items in the mainhand or offhand of a player is placed into the mainhand or offhand.

## Description

The ItemEquipEvent is a modified version of the ArmorEquipEvent class authored by Arnah in 2015 to help with finding when a player's armor changes. EnchantmentSolution modifies the class slightly, but it still uses the same foundation. It comes with a hand method, an item slot type, and two itemstacks that track the old armor piece and new armor piece.

The HandMethod comes with a bunch of types:

* HELD\_SWITCH
* CRAFTED
* PICK\_UP
* DROP
* HOT\_BAR
* HELD\_SWAP
* BROKE
* DEATH
* JOIN

These help keep track of the different ways players can equip items.

## Code Information

### Constructor

ItemEquipEvent(final Player player, final HandMethod equipType, final ItemSlotType slot, final ItemStack oldItem, final ItemStack newItem)

* // Player player - the player equipping/unequipping the armor
* // HandMethod equipType - the method the item was equipped
* // ItemSlotType type - the slot to which the item is being equipped (MAIN\_HAND, OFF\_HAND, HELMET, CHESTPLATE, LEGGINGS, BOOTS)
* // ItemStack oldItem - the item being unequipped
* // ItemStack newItem - the item being equipped

### Methods

#### ItemStack getOldItem()

Gets the old item (the item being unequipped)

#### ItemStack getNewItem()

Gets the new item (the item being equipped)

#### HandMethod getMethod()

Gets the HandMethod used to equip and/or unequip items.
Endurance

Wild Speak

## Description

### Appearance

Endurance appears to be in her early twenties. She has light gray skin and slightly curved horns that point skyward. Her eyes are deep blue, and she black hair is always pulled up. She carries a shortsword and a thin walking stick, and wears simple black clothing.

### Personality

Endurance is quiet, but a fierce fighter. Due to the language barrier, she doesn't initiate conversation with the party much, and knows of their distrust towards her. Despite that, she tries to be helpful when she feels she can be, as seen by her conversation with Jason after he returned to the party.

## In-Campaign events

The party first encountered Endurance in a tunnel leading out from Mithincanthra to the Wildlands. She was severely injured by a large cat-like creature and the other tiefling she had been traveling had been killed by the feline. The party slayed the creature and kept her alive. She quietly mourned the loss of her other tiefling companion and decided to keep heading down the tunnel, with the party following her.

After a few days of journeying, Endurance led the group into a long-since abandoned temple, and watched in amazement as Click restored one of Vedia's long-lost relics to its rightful place, reinstating the temple's planar gate. She lead the party into the underground city of Ylin, where they met Kall'nyn. Endurance followed the party into the Astral Plane.

Endurance hangs around the crew of the Lightstorm mostly, picking up Common as she listens to their conversations. After Jason was recovered from Arantha and was left by the group tied up under the ship, Endurance approached him, trying to understand what happened. Frustrated by the fact that he uncharacteristically angry at her, she called him out, questioning why she or his friends would have reason to lie to him. She encouraged him to pray to his god, since he was able, to try to find clarity. Endurance was the one who untied Jason after his memories were restored so that he could find his friends.

## Quotations

* "Your friends.. want you good. Want you happy. I see them. Fought ship, fought creepy lady, for you. Why... I or they lie to you? Why your brother lie to you?" - Endurance to Jason

## Trivia

* Endurance is the first (living) character from the Wildlands the party interacted with.
SmelteryBonusDropsEvent

The Smeltery Bonus Drops Event is an event only called when used with mcMMO. The event will smelt any bonus drop that comes from mcMMO mining.

## Description

The SmelteryBonusDropsEvent is a simple class that keeps track of the bonus drops and how many should be added.

## Code Information

### Constructor

SmelteryBonusDropsEvent(Player who, Collection<ItemStack> drops, int multiplyAmount)

* // Player who - the player who broke the original block
* // Collection<ItemStack> drops - the extra drops from mcMMO
* // int multiplyAmount - how many times the player should be given the drops
KnockUpEvent

The Knock Up Event is an event called when an entity is hit with a Knock Up weapon.

## Description

The KnockUpEvent is a class that adds in one extra variable to help keep track of the modifier for the speed of the entity, the knockUp.

## Code Information

### Constructor

KnockUpEvent(LivingEntity damaged, int level, LivingEntity damager, double damage, double knockUp)

* // LivingEntity damaged - the entity to be knocked up
* // int level - the level of knockup being used
* // LivingEntity damager - the attacker
* // double damage - the damage of the event
* // double knockUp - the upward velocity of the entity after a hit

### Methods

#### void setKnockUp(double knockUp)

Sets the knock up velocity to the specified value
TelepathyEvent

The Telepathy Event is an event called when a block is broken with a Telepathy tool.

## Description

The Telepathy is a class that adds two local variables: a collection of drops from breaking the block, and a TelepathyType that keeps track of whether the break was NORMAL, CONTAINER, or SHULKER\_BOX.

## Code Information

### Constructor

TelepathyEvent(Block block, Player player, Collection<ItemStack> drops, TelepathyType type)

* // Block block - the block being mined
* // Player player - the player breaking the block
* // Collection<ItemStack> drops - the item drops from the block
* // TelepathyType type - the kind of block broken; NORMAL, CONTAINER, or SHULKER\_BOX

### Methods

#### TelepathyType getType()

Returns the type of the event - NORMAL, CONTAINER, or SHULKER\_BOX
FriedEvent

The Fried Event is an event called when a fish is caught with a fishing rod enchanted with Fried.

## Description

The FriedEvent is a simple class that extends the FishingEvent. It does not add any extra fields.

## Code Information

### Constructor

FriedEvent(Player who, Material fish)

* // Player who - the player catching the fish
* // Material fish - the material of the item being caught
Advancements

Advancements are the way for Minecraft to give simple tutorials and challenges to players. In Enchantment Solution, each advancement gives either an experience reward for completing them, from a small reward to a very large reward, or modifies the drops of certain boss mobs to promote the acquisition of the advancements.

## Obtaining

Obtaining the advancements are as simple as completing the requirements using the specific enchantment required. Some advancements, such as "Where Did That Come From?" are extensions of vanilla advancements, and some are completely original to the enchantments of Enchantment Solution, such as "Nemo Enim Coquit."

All of the advancements in Enchantment Solution are contained in one tab, named Enchantment Solution, and the progression from left to right in the tab gives more and more experience for completing the advancement.
Icarus

The Icarus enchantment is an enchantment added by Enchantment Solution for Elytra.

## Icarus

### Description

Flying upwards will occasionally increase velocity.

### Version Added

2.0.0

While flying, looking up into the sky will increase the speed of the player. The amount of change is gotten by taking the log of the value of 2 \* level + 8, dividing that by 5, and then adding 1.5 to it. Each activation of Icarus will cost 5 \* level durability points on the elytra.

Successfully activating Icarus will give a firework sound and particle effects. When Icarus is recharging, nothing will happen. Failing to activate Icarus (when the Elytra is too damaged to activate) will produce explosion cloud effects.

## Events

* IcarusLaunchEvent
* IcarusRefreshEvent

## Incompatibilities

Icarus and Frequent Flyer are mutually exclusive. When the enchantments are on the same item, both will work as normal.
ShockAspectEvent

The Shock Aspect Event is an event called when a player hits another entity with a Shock Aspect weapon.

## Description

The ShockAspectEvent is a class that adds two local variables: a chance that gets how likely striking a lightning bolt is, and a location for where the lightning should strike.

## Code Information

### Constructor

ShockAspectEvent(LivingEntity damaged, int level, LivingEntity damager, double damage, double newDamage, double chance, Location location)

* // LivingEntity damaged - the attacked entity
* // int level - the level of Shock Aspect on the weapon
* // LivingEntity damager - the attacker
* // double damage - the original damage of the event
* // double newDamage - the final damage of the event
* // double chance - the chance that a lightning bolt has of striking
* // Location location - the location where the lightning bolt will strike

### Methods

#### double getChance()

Gets the chance that lightning has to strike

#### void setChance(double chance)

Sets the chance that lightning has to strike to the specified value

#### Location getLocation()

Gets the location where lightning will strike

#### void setLocation(Location location)

Sets the location where lightning will strike to the specified value
MultiBlockBreakEvent

The Multi Block Break Event is an event called when multiple blocks are broken at the same time because of an enchantment.

## Description

The MultiBlockBreakEvent is a simple class for keeping track of block breaks.

## Code Information

### Constructor

MultiBlockBreakEvent(Collection<Location> blocks, Player player, EnchantmentLevel enchantment)

* // Collection<Location> blocks - all the blocks to be broken
* // Player player - the player to break the blocks
* // EnchantmentLevel enchantment - the enchantment and level breaking the blocks
Hank

Hank the pixie hater is an NPC that Hixan & Co meet in Nadity.

## Description

### Appearance

Hank is a commoner looking man with a bald head and yellow hair on his sides. He is fairly appalling to look at.

### Personality

Hank is loud and bitter. He seems to have a drinkers personality being quite foul, rude and distasteful.

## In-Campaign events

Hank appears in session 5 when Asper is introduced. He loudly exclaimed his hatred for pixies and gets escorted out of the tavern they were in by Arlyl. Arlyl beats Hank up and leaves him sleeping unconsciously.
GungHoEvent

The Gung Ho Event is an event called when a player attacks another mob when the player has a Gung Ho chestplate.

## Description

The GungHoEvent is a simple class that adds no additional fields in its implementations.

## Code Information

### Constructor

GungHoEvent(LivingEntity damaged, Player damager, double damage, double newDamage)

* // LivingEntity damaged - the attacked mob
* // Player damager - the player attacking the other mob
* // double damage - the original damage of the event
* // double newDamage - the damage after the 3x multiplier is added
MoisturizeEvent

The Moisturize Event is an event called when a block is modified with the Moisturize enchantment.

## Description

The MoisturizeEvent is a class that adds three variables: the block being changed, the ItemMoisturizeType that describes what kind of action will be taken, and the sound that should play on even completion.

The ItemMoisturizeType values are as follows:

* UNSMELT // turn blocks like hardened terracotta back into regular terracotta
* WATERLOG // waterlogs waterloggable blocks
* WET // turns concrete powder into concrete
* EXTINGUISH // puts out campfires

## Code Information

### Constructor

MoisturizeEvent(Player who, ItemStack item, Block block, ItemMoisturizeType type, Sound sound)

* // Player who - the player changing the block
* // ItemStack item - the item changing the block
* // Block block - the block about to be modified
* // ItemMoisturizeType type - the operation to be performed on the block
* // Sound sound - the sound to play after the event

### Methods

#### ItemMoisturizeType getMoisturizeType()

Gets the type of modification that will happen

#### void setSound(Sound sound)

Sets the sound that will play to the specified value
High Metabolism

High Metabolism is an advancement in the Agricultural Revolution tab. It is based on the enchantment Curse of Exhaustion.

## Requirements

The advancement will unlock once the player has 4 times the amount of usual exhaustion per tick. This can be accomplished with having 3 cursed items in the main hand, off hand, and the armor slots.
Armored

The Armored enchantment is an enchantment specifically for Elytras.

## Description

When wearing an Elytra in the chestplate slot, the amount of armor points on the player increases by 2 times the enchantment level. When unequipping, the armor points are removed.

## Armored

### Version Added

2.1.0

 Level 30

## Enchantability

 Level 50
 Level 50
 Level 30
 Level 30
 Level 30
LassoInteractEvent

The Lasso Interact Event is an event called when a player attempts to place an item from Irene's Lasso.

## Description

The LassoInteractEvent is a class to take care of placing animals from Irene's Lasso. It adds a BlockFace argument and an AnimalMob argument, which takes care of the animal information.

## Code Information

### Constructor

LassoInteractEvent(Player who, int level, ItemStack item, Block block, BlockFace face, AnimalMob animal)

* // Player who - the player releasing the animal
* // int level - the level of Irene's Lasso
* // ItemStack item - the item from which the animal is being placed
* // Block block - the block being interacted with
* // BlockFace face - the face of the block being interacted with
* // AnimalMob animal - the animal to be placed

### Methods

#### BlockFace getFace()

Returns the block face the animal will be placed on

#### void setFace(BlockFace face)

Set the block face the animal will be placed on to the specified value
Sand Veil

The Sand Veil enchantment is an enchantment added by Enchantment Solution for hoes.

## Sand Veil

### Version Added

2.0.0

On hitting an entity with Sand Veil, the attacked entity's accuracy will lower by 5% per level for 8 seconds. If the attacking entity misses, a small puff of cloud particles will spawn around the attacked entity.

## Events

* SandVeilEvent
* SandVeilMissEvent
Hard Bounce

The Hard Bounce enchantment is an enchantment added by Enchantment Solution for shields.

## Hard Bounce

### Version Added

2.0.0

Projectiles hitting the shield will bounce off at an upwards and increased velocity. The speed will be multiplied by (2 + 2 \* level), and if the y value is negative, it will be set to 0.1 before this calculation.

## Incompatibilities

Hard Bounce and Iron Defense are mutually exclusive. When added to the same item, both enchantments will work as normal.
TransmutationEvent

The Transmutation Event is an event called when loot is changed with Transmutation.

## Description

The TransmutationEvent is a class that adds one local variable: the killed entity.

## Code Information

### Constructor

TransmutationEvent(Player who, LivingEntity killed, List<ItemStack> newDrops, List<ItemStack> originalDrops, boolean override)

* // Player who - the killing player
* // LivingEntity killed - the killed entity whose loot will be changed
* // List<ItemStack> newDrops - the TransmutationLoot that will be dropped
* // List<ItemStack> originalDrops - the original drops from the mob
* // boolean override - whether originalDrops should be removed from the final drops. Defaults to false when killed.getType() == EntityType.WITHER, true otherwise
LagEvent

The Lag Event is an event called when a player shoots an arrow, breaks a block, or hits a mob with an item enchanted with Curse of Lag.

## Description

The LagEvent is an event that creates sounds and particle effects. It is a simple event but creates many variables to modify the event.

It adds the location of the event, the sound that will be played from the event, the volume and pitch of the sound, as well as a random assortment of particle effects.

## Code Information

### Constructor

LagEvent(Player player, Location location, List<ParticleEffect> effects)

* // Player player - the player who activated the event
* // Location location - the location where the particle effects and sound will spawn
* // List<ParticleEffect> effects - a list of particle effects to spawn. The particle effects consist of a Bukkit Particle, the number of particles that should spawn, and the offset of the particles

LagEvent(Player player, Location location, List<ParticleEffect> effects, Sound sound)

* // Player player - the player who activated the event
* // Location location - the location where the particle effects and sound will spawn
* // List<ParticleEffect> effects - a list of particle effects to spawn. The particle effects consist of a Bukkit Particle, the number of particles that should spawn, and the offset of the particles
* // Sound sound - the sound that will play when the event is called. If null, no sound will play.

LagEvent(Player player, Location location, List<ParticleEffect> effects, Sound sound, float volume, float pitch)

* // Player player - the player who activated the event
* // Location location - the location where the particle effects and sound will spawn
* // List<ParticleEffect> effects - a list of particle effects to spawn. The particle effects consist of a Bukkit Particle, the number of particles that should spawn, and the offset of the particles
* // Sound sound - the sound that will play when the event is called. If null, no sound will play.
* // float volume - the volume of the sound
* // float pitch - the pitch of the sound

### Methods

#### void setLocation(Location location)

Sets the location of the event to the specified location

#### List<ParticleEffect> getEffects()

Gets the particle effects that should be created

#### void setSound(Sound sound)

Sets the sound of the event to the specified value

#### void setVolume(float volume)

Sets the volume of the event to the specified value

#### void setPitch(float pitch)

Sets the pitch of the event to the specified value
Breaker, Breaker

Breaker, Breaker is an advancement in the Scientific Revolution tab. It is based on the enchantment Wand.

## Requirements

Breaking a torch by placing blocks with Wand will unlock the advancement.

## Trivia

* Breaker, Breaker could refer to CB radio slang meaning to break into the conversation.
	+ It could also refer to the 1977 movie Breaker! Breaker! about a truck driver trying to find his brother, starring Chuck Norris.
* During the development of 2.0.0 and the Wand enchantment, the plugin developer ran into an issue where Wand would place blocks over any transparent block, which includes torches, but would not break them. This meant a lot of torches went missing during development. The developer remembered these issues while developing the advancements later.
TelepathyBonusDropsEvent

The Telepathy Bonus Drops Event is an event only called when used with mcMMO. The event will put any bonus drop that comes from mcMMO mining directly into your inventory.

## Description

The TelepathyBonusDropsEvent is a simple class to monitor the bonus drops from mcMMO.

## Code Information

### Constructor

TelepathyBonusDropsEvent(Player who, Collection<ItemStack> drops, int multiplyAmount)

* // Player who - the player who broke the block
* // Collection<ItemStack> drops - the bonus drops from mcMMO
* // int multiplyAmount - the amount of times the player should receive the bonus drops
Double Header

Double Header is an advancement in the Imperial Revolution tab. It is based on the enchantment Beheading.

## Requirements

Beheading gives a chance for a mob head to drop; this stacks with other loot, such as loot when killing a wither skeleton. Killing a wither skeleton who drops both a mob head normally and one from Beheading triggers this advancement.

## Description

Get two Wither Skeleton skulls from one kill
FlowerGiftEvent

The Flower Gift Event is an event called when a player right clicks on a flower with Flower Gift.

## Description

The FlowerGiftEvent is a class that keeps track of what flower you will receive from the event and the drop location for the flower.

## Code Information

### Constructor

FlowerGiftEvent(Player who, ItemStack item, Block block, ItemStack flower, Location dropLocation)

* // Player who - the player clicking the flower
* // ItemStack item - the item with FlowerGift on it
* // Block block - the block clicked on
* // ItemStack flower - the flower to be dropped. If null, red particles will spawn instead of green ones.
* // Location dropLocation - where the flower will drop

### Methods

#### void setFlower(ItemStack flower)

Sets the flower item to the specified value
DropEvent

The Drop Event is an event called with enchantments modify existing drops.

## Description

The DropEvent is a class that adds one local variable: the drops list of items for the new drops that are added by EnchantmentSolution.

## Code Information

### Constructor

DropEvent(Player who, EnchantmentLevel enchantment, List<ItemStack> drops)

### Methods

#### List<ItemStack> getDrops()

Gets the new drops added by EnchantmentSolution to the event
HollowPointEvent

The Hollow Point Event is an event called when a Hollow Point arrow hurts an armored mob.

## Description

The HollowPointEvent is a simple class for increasing the damage of Hollow Point.

## Code Information

### Constructor

HollowPointEvent(LivingEntity damaged, LivingEntity damager, double damage, double newDamage)

* // LivingEntity damaged - the damaged entity
* // LivingEntity damager - the attacking entity
* // double damage - the original damage of the event
* // double newDamage - the final damage of the event
SacrificeEvent

The Sacrifice Event is an event called when a player dies while wearing a piece of Sacrifice armor.

## Description

The SacrificeEvent is a simple class for giving damage to entities or players that attack the wearer of Sacrifice.

## Code Information

### Constructor

SacrificeEvent(LivingEntity damaged, Player damager, double damage)

* // LivingEntity damaged - the entity that will take Sacrifice damage
* // Player damager - the player doing the Sacrifice damage
* // double damage - the newDamage to the event (SacrificeEvent.damage is set to 0)
SniperLaunchEvent

The Sniper Launch Event is an event called when an arrow is shot out of a Sniper bow.

## Description

The SniperLaunchEvent is a simple class for when an arrow is shot out of a Sniper bow.

## Code Information

### Constructor

SniperLaunchEvent(Player who, int level, double speed)

* // Player who - the player shooting the bow
* // int level - the level of Sniper being used
* // double speed - the value the speed should be multiplied by
Coffee Break

Coffee Break is an advancement in the Mechanical Revolution tab. It is based on the enchantment No Rest.

## Requirements

When the player has no blocks above them, it is nighttime, and when the player hasn't slept in over 3 days, putting on a No Rest helmet will unlock the advancement.

## Description

Put a No Rest helmet on when Phantoms can spawn
Unrest

The Unrest enchantment is an enchantment added by Enchantment Solution for helmets.

## Unrest

### Description

Night vision at the cost of more phantom spawning.

### Version Added

2.0.0

Wearing the helmet will set your Since Last Rest statistic to 96000 if it is below that value. Because of this, phantoms will always spawn around the player at nighttime (unless gamerule doInsomnia is false).

## Incompatibilities

Aqua Affinity, No Rest, and Unrest are mutually exclusive. When added to the same item, Aqua Affinity will work as normal, and No Rest and Unrest may cause lag and issues.
This Girl is on Fire

This Girl is on Fire is an advancement in the Mechanical Revolution tab. It is based on the enchantment Magma Walker.

## Requirements

Being on fire while walking on magma created from Magma Walker will unlock the advancement.

The best way to do this is to light a block with a flint and steel by lava, walk through the fire, then walk onto the lava with Magma Walker.

## Description

While walking on Magma-ized lava, catch fire
Not That Kind

Not That Kind is an advancement for the Agricultural Revolution tab. It is based on the enchantment Knock Up.

## Requirements

Once the player has killed every kind of breedable mob with a Knock Up weapon, the advancement will unlock. The mob may die of fall damage and still work for the advancement, as long as the player has hit them recently enough.

The list of animals is as follows:

Chicken, Cat[1.14], Cow, Fox[1.14], Horse, Mule, Donkey, Llama, Mooshroom, Ocelot[< 1.14], Panda, Pig, Sheep, Wolf, Bee[1.15], Strider[1.16], Hoglin[1.16], and Turtle.

## Description

Kill every breedable animal with Knock Up

## Related Advancements

### Children

* High Metabolism
* Wildlife Conservation
WalkerBlockEvent

The Walker Block Event is an event called a Walker custom enchantment places a block.

## Description

The WalkerBlockEvent is a simple class for keeping track of place events.

## Code Information

### Constructor

WalkerBlockEvent(Block placedBlock, BlockState replacedBlockState, Player thePlayer, EnchantmentLevel enchantment)

* // Block placedBlock - the placed block
* // BlockState replacedBlockState - the previous block state of the block
* // Player thePlayer - the player placing the block
* // EnchantmentLevel enchantment - the enchantment and level information
Mechanical Revolution

Mechanical Revolution is the base advancement of the Mechanical Revolution tab.

## Requirements

The advancement will unlock once the player has an Enchanting Table in their inventory or enchants an item using an already placed Enchanting Table.

## Description

Hop in your new mech suit and go save the day!

## Related Advancements

### Children

* Coffee Break
* This Girl is on Fire
* I'm You, But Shorter
* Too Close
* Deflection
Warp

The Warp enchantment is an enchantment added by Enchantment Solution for leggings.

## Warp

### Description

Gives a chance of teleporting a small distance away on hit.

### Version Added

1.0.0

When hurt by a mob, a living entity with Warp will have a 25% chance of teleporting to a random location close by. The locations must have 2 blocks of clearance, must not be in the void, and must be within a level + 4 radius (level 1 would have a 5-block radius in all directions, etc.).

## Enchantability

 Level 50
 Level 50
 Level 30
 Level 30
 Level 30

## Events

* WarpEntityEvent
* WarpPlayerEvent
Bane of Arthropods

Bane of Arthropods is a vanilla enchantment for swords and axes.

### Description

Increases damage to "arthropod" mobs (spiders, cave spiders, silverfish and endermites).Each level separately adds 2.5 (half heart) extra damage to each hit, to "arthropods" only.

The enchantment will also cause "arthropods" to have the Slowness IV effect when hit.

### Version Added

Vanilla

 Level 30

## Incompatibilities

Sharpness, Smite, and Bane of Arthropods are all mutually exclusive. If one item is given all enchantments through commands, the effects will stack.

Bane of Arthropods and Quick Strike are incompatible. If one item is given both of these enchantments, the effects will stack.
Curse of Exhaustion

The Curse of Exhaustion enchantment is a curse enchantment added by Enchantment Solution for any item.

## Description

If an item with Curse of Exhaustion is equipped in the main hand, off hand, or equipped as armor, the amount of exhaustion that Minecraft tasks exert on the player increases for the player. The first item doubles the exhaustion, the second triples it, etc.
Detonator

The Detonator enchantment is an enchantment added by Enchantment Solution for bows and crossbows.

## Detonator

### Description

Ignites creepers. Triggers an explosion based on the enchantment level.

### Version Added

2.2.0

When a projectile shot with Detonator hits an entity or block other than a Creeper, it will cause an explosion equal to 0.5 + 0.5 \* level size.

When a projectile shot with Detonator hits a creeper, it will lower the detonation ticks by 5 ticks per level after level 1.

## Advancements

* Blast Off
* Carpet Bombs

## Events

* DetonatorExplosionEvent
* DetonateCreeperEvent

## Incompatibilities

Detonator and Hollow Point are mutually exclusive. When added to the same item, both enchantments will act as normal if explosions are delayed.
IronDefenseEvent

The Iron Defense Event is an event called when the player takes damage with an Iron Defense shield in their offhand.

## Description

The IronDefenseEvent is a class that adds what the shield ItemStack being damaged is and the damage that will be done to the shield.

## Code Information

### Constructor

IronDefenseEvent(LivingEntity damaged, int level, double damage, double newDamage, ItemStack shield, int shieldDamage)

* // LivingEntity damaged - the damaged entity with a shield
* // int level - the level of IronDefense
* // double damage - the original damage of the event
* // double newDamage - the damage applied after the called event
* // ItemStack shield - the shield being damaged
* // int shieldDamage - the damage being done to the shield

### Methods

#### @Override void setNewDamage(double newDamage)

Sets the new damage to the given value. The newDamage cannot be higher than the original damage

#### void setShieldDamage(int shieldDamage)

Sets the shieldDamage to the specified value
AttributeEvent

The Attribute Event is an event called when an Armor Equip Event fires with an enchantment that adds an attribute to the player.

## Description

The AttributeEvent gets called on multiple enchantments, including Armored, Quick Strike, Life, Gung Ho, and Toughness. What happens after the event depends on which enchantment is being set. Each enchantment checks for a different slot (Toughness handles all armor slots) as well as the type of attribute being added, the uuid, and the operation.

An Attribute event either acts as an equip event or an unequip event; although it can handle both at once, it generally does not want to do this.

## Code Information

### Constructor

AttributeEvent(Player who, EnchantmentLevel level, String removeModifier, String addModifier)

* // Player who - the player getting the attributes
* // EnchantmentLevel level - the custom enchantment and level of the enchantment being equipped/unequipped
* // String removeModifier - the name of the modifier being removed
* // String addModifier - the name of the modifier being added

### Methods

#### String getRemoveModifier()

Returns the name of the attribute to remove.

#### String getAddModifier()

Returns the name of the attribute to add.
Agricultural Revolution

Agricultural Revolution is the base advancement for the Agricultural Revolution tab.

## Requirements

The advancement will unlock once the player has an Enchanting Table in their inventory or enchants an item using an already placed Enchanting Table.

## Related Advancements

### Children:

* Fish Sticks
* Bonemeal Plus
* Not That Kind
* That Food is... Fine?
* Chicken or the Egg?
* Thorgy!
* Yummy Repairs
Curse of Vanishing

The Curse of Vanishing enchantment is a vanilla curse enchantment in Minecraft.

### Description

Causes the item to disappear on death.When the player dies, the item disappears instead of dropping on the ground. The item may still be dropped normally.

### Version Added

Vanilla

See Curse of Vanishing

## Incompatibilities

Curse of Vanishing and Soulbound are mutually exclusive. If both enchantments are added to the item, Curse of Vanishing will take precedence.
HeightWidthEvent

The Height Width Event is an event called when blocks will be broken with Height++ and/or Width++.

## Description

The HeightWidthEvent is a class that shows the blocks that will be broken with Height++ and Width++. For each block left in the event, it will also call a BlockBreak event so that the proper format to break the blocks is done.

## Code Information

### Constructor

HeightWidthEvent(Collection<Location> blocks, Player player, int heightLevel, int widthLevel)

* // Collection<Location> blocks - all the blocks' locations that will be broken
* // Player player - the player breaking the blocks
* // int heightLevel - the level of Height++. Value of this can be gotten through EnchantmentLevel getEnchantment()
* // int widthLevel - the level of Width++

### Methods

#### EnchantmentLevel getEnchantmentWidth()

Returns the enchantment and level of Width++
Shock Aspect

The Shock Aspect enchantment is an enchantment added by Enchantment Solution for axes.

## Shock Aspect

### Description

Has a chance to strike lightning on attacked mobs.

### Version Added

1.0.0

When hitting a mob with Shock Aspect, there is a chance that lightning will strike on the opposing mob. The chance is 5% plus 10% for each level (level 1 has a 15% chance).

## Enchantability

 Level 50
 Level 50
 Level 30
 Level 30

## Incompatibilities

Quick Strike and Shock Aspect are mutually exclusive. When added to the same item, the enchantments will act as normal.
Scientific Revolution

Scientific Revolution is the base advancement of the Scientific Revolution tab.

## Requirements

The advancement will unlock once the player has an Enchanting Table in their inventory or enchants an item using an already placed Enchanting Table.

## Description

Marvelous wonders or dystopian nightmares? You decide.

## Related Advancements

### Children

* Breaker, Breaker
* Sharing is Caring
* Laaagggggg
* Kept On Hand
* Fear the Reaper
MultiBlockPlaceEvent

The Multi Block Place Event is an event called when multiple blocks are placed at the same time because of an enchantment.

## Description

The MultiBlockPlaceEvent is a simple class for keeping track of block places.

## Code Information

### Constructor

MultiBlockPlaceEvent(Collection<Location> blocks, Player player, EnchantmentLevel enchantment)

* // Collection<Location> blocks - all the blocks to be placed
* // Player player - the player to place the blocks
* // EnchantmentLevel enchantment - the enchantment and level placing the blocks
Nether Dull

Nether Dull is an advancement in the Industrial Revolution tab. It is based on the enchantment Curse of Stagnancy.

## Requirements

Placing a Netherite Sword in your mainhand slot with the highest level of Sharpness (default: 5, Level 50: 6) and with Curse of Stagnancy will unlock the advancement.

## Description

Hold a Netherite Sword with the highest level of Sharpness and Curse of Stagnancy
PotionEffectEvent

The Potion Effect Event is an event called when a potion effect is modified on an entity.

## Description

The PotionEffectEvent is a class that adds one local variable: a potion effect type for what potion effect is being modified.

## Code Information

### Constructor

PotionEffectEvent(LivingEntity who, EnchantmentLevel enchantment, PotionEffectType type)

* // LivingEntity who - the entity with the potion effect
* // EnchantmentLevel enchantment - the enchantment and level information
* // PotionEffectType type - the potion effect type being modified

### Methods

#### void setType(PotionEffectType type)

Sets the potion effect type to the specified value
Necromancy

**Necromancy** is the proper title for the magic practiced by the adepts of The Houses System (also known as the Dominicus System). Necromantic adepts are skilled in the manipulation of thalergy and thanergy, and are classed into three schools: bone magic, flesh magic, and spirit magic.

### **Thalergy**

Thalergy, or life energy, is an inherent property of most objects in the universe. Produced by cellular growth and reproduction, most planets and all organisms contain thalergy. Though some necromancers such as Palamedes Sextus may have studied healing, necromancers work primarily from thalergy to thanergy.

### **Thanergy**

Thanergy, or death energy, is produced by cell death. Though most planets produce thalergenic radiation, this can be converted to thanergy (dying planets). The Nine Houses are the only stable forms thanergetic radiation as a result of the Resurrection, and require alternate sources of power when off-planet.

### **Schools of Magic**

#### Bone Magic

The school of magic chiefly to do with manipulating the extant thanergy of bones, or impregnating them with additional thanergy. Bones being the only known source of long-term storable thanergy, bone magic is to do with animating and "programming" bones (such as by raising skeletons), manipulating inert or living bone, or forming bones into patterns it wants to fill (topological resonance).

Bone creation - reproducing skeletal matter from a sample - is the ultimate end state of bone magic.

#### Flesh Magic

> *"...a flesh magician: someone whose entire education was in the carnal. Experts in things that were yellow, and wobbled. People who thought there was something really interesting to be found in meat."*
>
>

The school of magic chiefly to do with manipulating the extant thanergy of flesh, or impregnating it with additional thanergy. Flesh is a conduit for short-term storable thanergy, and in the right circumstances provides immense thalergy and thanergy boosts to the magician. Flesh magic is wide-ranging, covering preservation, imbuing, manipulation, creation, and processing. Flesh magic is also used for self-manipulation of the human body, either to make it perform better or to make it perform worse, often quite suddenly.

##### **Blood Magic**

A subschool of flesh magic, blood magic is primarily used for warding.

##### **Lymph Magic**

Another subschool of flesh magic, and an alternative to blood magic, but is widely regarded as being lesser.

#### Spirit Magic

The school of magic chiefly concerned with the River, ghosts, and revenants, as well as with liminal magic spaces and nexuses. Spirit magic is diverse, and can range widely from creation of anti-thalergy and anti-thanergy spaces (impregnation of spirit energy into non-River spaces) to manipulation of people's souls, forming conduits to the River, to the conversion of another person's spirit and thalergy to thanergy. It is also the school of magic that lets the living access the River, the afterlife space to which the dead are drawn. The subschool of River magic is practiced only by the Emperor and his Lyctors.