EventPulse logoEventPulse

Event types

The twelve kinds of event, what each one counts, and the settings that belong to each type.

Every event in events.yml has a type. The type decides which player actions are counted and which of the optional settings mean anything. The seven count types score the actions players already take, while the five objective types place something in the world for players to finish, and the point value of each action comes from the event's own targets list, so two mining events can value the same block differently.

The twelve event types as cards: MINING counts blocks broken, FARMING counts crops harvested, LOGGING counts logs, FISHING counts catches, ENCHANTING counts levels spent, COMBAT counts hearts of damage to hostile mobs, and FARMPOINTS turns all of them into one score. The objective types, OBJECTIVE_BREAK, MOB_HUNT, EXCAVATION, BARREL_CLAIM and TARGET_HIT, place something in a zone for players to finish.
TypeWhat it countsPoint value comes from
MININGBlocks brokentargets, one value per block
FARMINGCrops harvestedtargets, one value per crop
LOGGINGLogs and stems brokentargets, one value per log
FISHINGThings pulled out of the watertargets, one value per catch
ENCHANTINGEnchants at the table and the anvilLevels spent, or one point per item
COMBATDamage dealt to hostile mobsHearts of damage, times the mob's value
FARMPOINTSAll of the above at oncefarmpoints.yml
OBJECTIVE_BREAKBlocks placed in a zone that get brokenobjective.points
MOB_HUNTObjective mobs killed in a zoneobjective.mobs, a value per mob
EXCAVATIONBrushed relics in a zoneobjective.reward.points
BARREL_CLAIMBarrels opened in a zoneobjective.reward.points
TARGET_HITTarget entities hit in a zoneobjective.reward.points

Every type runs the same fairness checks first. Creative and spectator players, staff with the bypass permission, disabled worlds and blocks placed during the event are all worth nothing, whatever the type. See Scoring rules.

MINING

Counts every block broken that is listed under targets. A block that is not listed is worth default, which the shipped events set to 0 so only the listed blocks score.

type: MINING
targets:
  default: 0
  STONE: 1
  COBBLESTONE: 1
  DIAMOND_ORE: 15

Block names are the ones Minecraft uses, in capitals with underscores. A name the running version does not have stops that event from loading, with a console warning naming the key, and every other event still works.

FARMING

Counts crops harvested. Age based crops such as wheat, carrots, potatoes, beetroot, nether wart and cocoa only count when they are fully grown, so tearing up a seedling scores nothing. Crops with no growth stages, such as sugar cane, cactus, bamboo, melon and pumpkin, count as soon as they are broken.

type: FARMING
settings:
  require-fully-grown: true
targets:
  default: 0
  WHEAT: 2
  NETHER_WART: 3
  MELON: 3
SettingWhat it doesDefault
require-fully-grownAge based crops only count at full growth. Turn it off to count every stage.true

A crop replanted during the event still counts once it has fully regrown, even though a player put it down. That is the one exception to the placed block rule, and it exists so a shared farm does not turn into a field nobody can score from after the first harvest. Bamboo is left out of that exception because it can be placed already at full height.

LOGGING

Counts logs, wood, stems and hyphae broken. The shipped timber_run sets default: 1 so any log not listed still scores one point, and lists the rarer woods at more.

type: LOGGING
targets:
  default: 1
  CHERRY_LOG: 3
  CRIMSON_STEM: 3

FISHING

Counts what a player reels in. Only a real catch counts, not the moment the bobber lands or a bite that got away.

type: FISHING
targets:
  default: 0
  TROPICAL_FISH: 5
  PUFFERFISH: 3
settings:
  count-treasure: false
  count-junk: false
SettingWhat it doesDefault
count-treasureWhether treasure catches can score at all. They still need to be listed under targets.false
count-junkThe same for junk catches.false

Treasure means a bow, an enchanted book, a fishing rod, a name tag, a nautilus shell or a saddle. Junk means a lily pad, a bowl, leather, leather boots, rotten flesh, a stick, string, a potion, a bone, an ink sac or a tripwire hook. Anything else is a fish and only needs to be in targets.

ENCHANTING

Counts enchants done at an enchanting table and at an anvil. At the table the cost is the level cost of the slot the player picked. At the anvil the cost is what the anvil charged, and only a result that adds a new enchantment or raises the level of one counts, so renaming and plain repairs are worth nothing. A shift click that crafts a whole stack counts as one result.

type: ENCHANTING
settings:
  min-levels: 5
  count-anvil: true
  count-table: true
  points-per-level: 1
SettingWhat it doesDefault
min-levelsEnchants that cost fewer levels than this are ignored, so nobody can farm one level enchants in a loop.0
count-anvilWhether the anvil counts.true
count-tableWhether the enchanting table counts.true
points-per-levelPoints for every level spent. Set it to 0 to score one point per item instead.0

An anvil result a player cannot pay for is never taken out of the anvil, so it never scores either. An enchanting event has no targets list.

COMBAT

Counts damage dealt to hostile mobs. What is counted is the damage that actually landed after armour and resistance, and anything past the mob's remaining health is trimmed, so finishing a mob on one heart is worth one heart and not a full hit. Arrows, thrown potions and a tamed pet all count towards the player behind them.

type: COMBAT
settings:
  ignore-spawner-mobs: true
  points-per-damage: 1
targets:
  HOSTILE: 1
SettingWhat it doesDefault
ignore-spawner-mobsSkip mobs that came out of a spawner, so a grinder does not decide the event.false
points-per-damageA multiplier on every heart of damage.1

targets takes either HOSTILE with one value, which covers every hostile mob, or a list of mob names such as ZOMBIE: 1 and CREEPER: 2 to count only those. Players, villagers, armour stands and tamed pets never count whatever is listed. Hostile covers every monster, plus slimes, phantoms, ghasts, hoglins, shulkers, the ender dragon and the wither.

A point is one heart of damage, times the value of that mob, times points-per-damage. Two hearts on a zombie worth 1 with the default multiplier is two points.

FARMPOINTS

The mixed event. Mining, farming, logging, fishing, enchanting and combat all count at once, converted to one score using the values in farmpoints.yml, so a miner and a farmer can compete against each other in the same event. It has no targets and no settings of its own, everything comes from that one file. See FarmPoints.

type: FARMPOINTS

The objective events

The other five types, OBJECTIVE_BREAK, MOB_HUNT, EXCAVATION, BARREL_CLAIM and TARGET_HIT, work differently from the seven above. Instead of counting actions players already take, the plugin places something inside a zone and each one that gets finished is worth points. These types all share three things that the counting types do not use.

  • zones lists one or more zone names from zones.yml. The objectives are placed inside the first zone in the list, the event is dropped at load if it names no zone or names one that is not in zones.yml, and the warning names the missing one.
  • zonePoints names points inside the chosen zone. They are the exact spots some types place things at, and a point that is not in the zone's own list drops the event at load.
  • objective is the block that holds the type specific settings. Its shape depends on the type, and the shared keys are total, spawn, spawnIntervalSeconds, respawnAfterComplete, completion and an optional reward.
Shared objective keyWhat it doesDefault
totalHow many objectives the event makes. It must be 1 or more.none, required
spawnFor OBJECTIVE_BREAK, EXCAVATION and BARREL_CLAIM, ALL lays objectives down at once and PROGRESSIVE brings them out over time.ALL
spawnIntervalSecondsFor progressive block objectives, the seconds between blocks; for TARGET_HIT, the seconds between target spawn attempts.30 for progressive blocks, 0 otherwise
activeCountFor OBJECTIVE_BREAK, EXCAVATION and BARREL_CLAIM, the number of live blocks or barrels at once. Free named points are picked at random and never hold two objective blocks.total
respawnSecondsFor block objectives, how long to wait before a completed objective is replaced. The original block is restored at once; zero disables this delayed replacement.0
respawnAfterCompleteWith completion: FIXED, when set the event does not end the moment every objective is done and instead runs to its timer.false
completionTIMED runs the event to its timer no matter what, FIXED ends it the moment every objective is finished, unless respawnAfterComplete is set.TIMED
rewardAn optional block given to a player the moment they finish one objective, on top of its points. See Rewards for the item and command shapes it shares with the end of event rewards.none

Zones and their points are written with the wand and the zone commands, not by hand in the config. See Commands for how that works.

For OBJECTIVE_BREAK, EXCAVATION and BARREL_CLAIM, activeCount defaults to total. The plugin chooses active named points at random and does not place two objective blocks at the same point. A FIXED event ends after total objectives have been completed, even when activeCount is lower. With respawnSeconds: 0, a completed block has no delayed replacement, though objectives not yet spawned can fill free slots as the event progresses. With a positive delay, the original block is restored immediately and a replacement appears after the delay at a free point, preferring a different point.

Guards

Every objective type can have a guards list under objective. Each entry uses either entity for a normal Minecraft mob or mythic for a MythicMobs mob, plus points, amount per point and respawnSeconds.

objective:
  guards:
    - entity: ZOMBIE
      points: [egg_one, egg_two]
      amount: 2
      respawnSeconds: 30
    - mythic: arena_guard
      points: [egg_one]
      amount: 1
      respawnSeconds: 0

Guards attack players and can be killed, but they give no points, do not count towards total or any other objective cap, and drop no loot or experience. A killed guard returns after respawnSeconds when that value is above zero. All guards are removed when the event ends.

OBJECTIVE_BREAK

The plugin swaps one block at each chosen point for the material under material, and the player who breaks that block takes the objective. A point that has not been broken still sits there as the replacement block, and breaking a block that was never an objective scores nothing.

type: OBJECTIVE_BREAK
zones: [arena]
zonePoints: [egg_one, egg_two]
objective:
  total: 6
  spawn: ALL
  completion: FIXED
  material: TURTLE_EGG
  points: 1
Objective keyWhat it doesDefault
materialThe block placed at each point. A name the running version does not have drops the event at load.required
pointsThe score each broken objective is worth.1

MOB_HUNT

The plugin spawns mobs inside the zone on a timer and the kill of an objective mob takes it. Mobs are listed under mobs, one entry per line, and each entry is picked by its weight when it is time to spawn. A vanilla mob is named with entity, and a MythicMobs mob is named with mythic in place of it. MythicMobs mobs only spawn when that plugin is present and healthy, and otherwise that entry is skipped. An itemDrop on an entry gives that item when the mob is killed, either a vanilla material or an ItemsAdder item.

type: MOB_HUNT
zones: [arena]
objective:
  total: 12
  completion: TIMED
  spawnEverySeconds: 5
  maxActive: 8
  spawnMode: MIXED
  spawnPoints: [hunt_gate, hunt_bridge]
  pointChance: 60
  mobs:
    - entity: SPIDER
      weight: 7
      points: 1
      itemDrop: spider_fang
    - mythic: wolf
      weight: 2
      points: 3
Objective keyWhat it doesDefault
mobsThe weighted list of mobs that can be spawned. An entry without a usable mob is dropped, and if nothing is left the event is dropped at load.required
spawnEverySecondsThe seconds between spawn attempts.5
maxActiveThe most objective mobs that can be live at once.8
huntTotalA kill ceiling the spawner obeys when completion is TIMED, so a short event can end with kills left on the table.0, no ceiling
spawnModeRANDOM uses safe random ground, POINTS uses named points and MIXED chooses between the two.RANDOM
spawnPointsNamed points used by POINTS and MIXED. An empty list falls back to the event's zonePoints, then every point in the zone.empty
pointChanceIn MIXED, the chance out of 100 that a spawn uses a named point.50

When completion is FIXED, the event keeps spawning until the total kills are in, then it ends. maxActive still caps how many are live at once, and once the ceiling is reached no more spawn until one drops.

Random hunt locations are inside loaded chunks of the zone and are only accepted when they have solid ground with two free blocks above. A point spawn is spread by up to 1.5 blocks around the named point, while staying inside the zone.

EXCAVATION

The plugin places suspicious blocks at the chosen points and players brush them open with a vanilla brush. A brushing is counted when the brush action finishes, and the number of full brushings that clears one relic is brushHits. The block comes back as suspicious between brushings. The material must be SUSPICIOUS_SAND or SUSPICIOUS_GRAVEL. A material set to anything else is put back to SUSPICIOUS_SAND with a console note, and the event still runs.

type: EXCAVATION
zones: [arena]
zonePoints: [relic_one, relic_two]
objective:
  total: 6
  spawn: PROGRESSIVE
  spawnIntervalSeconds: 30
  completion: FIXED
  digMaterial: SUSPICIOUS_SAND
  brushHits: 3
Objective keyWhat it doesDefault
digMaterialThe suspicious block placed at each point.SUSPICIOUS_SAND
brushHitsThe full brushings needed to clear one relic.3

Points come from objective.reward.points, the same block the counting and other objective types use.

BARREL_CLAIM

The plugin places barrels, either at the named points or at random spots inside the zone, and the player who right clicks a barrel takes it. The old claim-items list still gives guaranteed items, while loot adds independently rolled entries using the shapes in Rewards. The point value is objective.reward.points.

type: BARREL_CLAIM
zones: [arena]
objective:
  total: 8
  spawn: PROGRESSIVE
  spawnIntervalSeconds: 30
  completion: TIMED
  placement: RANDOM_IN_ZONE
  claim-items:
    - material: GOLD_INGOT
      amount: 2
  loot:
    - type: ITEM
      material: EMERALD
      amount: 1-3
      chance: 25
  guide:
    enabled: true
    format: "&e%arrow% &fNearest barrel &e%distance% &fblocks"
Objective keyWhat it doesDefault
placementAT_POINTS places a barrel at each named point, RANDOM_IN_ZONE places it at a random spot inside the zone.AT_POINTS
claim-itemsGuaranteed vanilla items given on every claim. This older key remains supported.none
lootLoot entries rolled when a player claims a barrel. See Loot entries.none
guide.enabledShows an action bar guide to the nearest barrel to players in the zone's world.false
guide.formatThe action bar text. %arrow% is replaced with the direction arrow and %distance% with the rounded distance in blocks.event.barrel-guide-format

The guide re-aims at the nearest live barrel on every update. It is shown only in the zone's world and is cleared when no barrels remain or the event ends. An empty guide.format uses the event.barrel-guide-format key from the selected language file.

TARGET_HIT

The plugin spawns a target entity inside the zone on a timer and the hit of one takes it. Targets only accept damage from a player's arrow or another projectile shot by a player. The entity, appearance, movement, particle and sound all come from the objective block. A hit sound is played at the target and to the player who shot it.

type: TARGET_HIT
zones: [arena]
objective:
  total: 10
  spawnIntervalSeconds: 5
  completion: TIMED
  entityType: ARMOR_STAND
  model: ""
  headBlock: GOLD_BLOCK
  invisible: false
  particle: HEART
  sound: ENTITY_ARROW_HIT_PLAYER
  activeTargets: 5
  movement:
    enabled: true
    speed: 0.15
    minHeight: 4
    maxHeight: 12
    area: ZONE
    areaPoints: []
Objective keyWhat it doesDefault
entityTypeThe entity spawned as the target. A name with no such entity drops the event at load.ARMOR_STAND
activeTargetsThe maximum number of live targets.total
modelAn optional ItemsAdder item id worn on the head of an armour stand target. Left empty for no ItemsAdder model.empty
headBlockAn optional item worn on the head of an armour stand target when no ItemsAdder model is used.empty
invisibleHides the armour stand body.false
particleThe particle shown when the target is hit.HEART
soundThe sound played when the target is hit. none plays nothing.none
movement.enabledMakes targets drift inside the movement area.false
movement.speedDistance travelled per tick while moving.0.15
movement.minHeightLowest target height measured from the bottom of the zone.4
movement.maxHeightHighest target height measured from the bottom of the zone.12
movement.areaZONE uses the zone bounds; POINTS uses the horizontal box between areaPoints, with height still measured from the zone bottom.ZONE
movement.areaPointsTwo or more named points that define the horizontal movement box when area is POINTS.empty

The point value is objective.reward.points, which defaults to 1 when the reward block or its points key is missing. Every objective type is cleaned up when it ends, blocks restored, guards and objective mobs removed, and placed items cleared, so nothing is left behind.

Solo and team

Every type can run solo or as a team event, where every member of the same island adds to one score. The values above are used the same way in both, a team event simply adds the members' points together. See Team mode.

On this page