Skip to content

Award Events

Caltinor edited this page Mar 30, 2023 · 6 revisions

Award Events are all the different gameplay actions that PMMO watches for and provides XP to the player for. In all cases, the xp awarded is based on the configuration of the item/block/entity relevant to that event. Below are all of the events in PMMO.

Event Configuration

Event names are used to both define when XP is awarded but also may be gated by requirements. For more information on requirements, see HERE. For this page they are just listed for information. The below list will provide the name of the requirement followed by which of item/block/entity is being checked.

Event Key Description Requirements Xp Awarded
ANVIL_REPAIR When an Item is repaired in an anvil None From item config.
BLOCK_BREAK When a block is actually broken (not when it is in the process of being broken) BREAK(block) from block config.
BREAK_SPEED Controls how fast a block can be broken and also checks requirements in advance of the block being broken TOOL(item) and BLOCK(block) None
BLOCK_PLACE When a block is placed in the world PLACE(block) from block config
  • BREATH_CHANGE: when the player's breath increases or decreases

    • Requirements: None
    • Xp Awarded: from ServerConfig
  • EFFECT: when the player has any active potion effects

    • Requirements: None
    • Xp Awarded: from effect config
  • BREED: when animals are bred to make a baby animal

    • Requirements: BREED(entity)
    • Xp Awarded: from entity config
  • BREW: when a potion is brewed

    • Requirements: None
    • Xp Awarded: from item config (for output item, not the materials used)
  • CRAFT: when an item is crafted

    • Requirements: None
    • Xp Awarded: from item config
  • RECEIVE_DAMAGE: when the player receives damage that isn't captured by any of the below events

    • Requirements: None
    • Xp Awarded: from ServerConfig
  • FROM_MOBS: when the player receives damage from an entity that is in the "pmmo:mobs" EntityTag.

    • Requirements: None
    • Xp Awarded: from entity config
  • FROM_PLAYERS: when the player receives damage from another player.

    • Requirements: None
    • Xp Awarded: from "minecraft:player" entity config
  • FROM_ANIMALS: when the player receives damage from an entity that is in the "pmmo:animals" EntityTag

    • Requirements: None
    • Xp Awarded: from entity config
  • FROM_PROJECTILES: when the player receives damage from a projectile

    • Requirements: None
    • Xp Awarded: from projectile's entity config
  • FROM_MAGIC: when the player receives damage from a damage source marked as magic. this is potions in vanilla, but may be used by mods

    • Requirements: None
    • Xp Awarded: from ServerConfig
  • FROM_ENVIRONMENT: when the player takes environmental damage such as burning, cold, lightning, berry bushes, anvils, etc.

    • Requirements: None
    • Xp Awarded: from ServerConfig
  • FROM_IMPACT: when the player takes damage from hitting things to hard such as falling or flying into a wall

    • Requirements: None
    • Xp Awarded: from ServerConfig
  • DEAL_MELEE_DAMAGE: when the player deals melee damage that is not captured by one of the below melee events

    • Requirements: WEAPON(item) and KILL(entity)
    • Xp Awarded: from ServerConfig
  • MELEE_TO_MOBS: when the player deals melee damage to an entity in the "pmmo:mobs" EntityTag

    • Requirements: WEAPON(item) and KILL(entity)
    • Xp Awarded: from entity config
  • MELEE_TO_PLAYERS: when the player deals damage to another player

    • Requirements: WEAPON(item) and KILL(entity)
    • Xp Awarded: from "minecraft:player" entity config
  • MELEE_TO_ANIMALS: when the player deals damage to an entity in the "pmmo:animals" EntityTag

    • Requirements: WEAPON(item) and KILL(entity)
    • Xp Awarded: from entity config
  • DEAL_RANGED_DAMAGE: when the player deals damage via ranged/projectiles that is not captured by any of the below ranged events

    • Requirements: WEAPON(item) and KILL(entity)
    • Xp Awarded: from Server Config
  • RANGED_TO_MOBS: when a player deals ranged damage to an entity in the "pmmo:mobs" EntityTag

    • Requirements: WEAPON(item) and KILL(entity)
    • Xp Awarded: from entity config
  • RANGED_TO_PLAYERS: when a player deals ranged damage to another player

    • Requirements: WEAPON(item) and KILL(entity)
    • Xp Awarded: from "minecraft:player" entity config
  • RANGED_TO_ANIMALS: when a player deals ranged damage to an entity in the "pmmo:animals" EntityTag

    • Requirements: WEAPON(item) and KILL(entity)
    • Xp Awarded: from entity config
  • DEATH: when an entity dies from a player (notice that damage and death will both fire and may have different settings)

    • Requirements: WEAPON(item) and KILL(entity)
    • Xp Awarded: from entity config
  • ENCHANT: when an item is enchanted in a crafting table

    • Requirements: None
    • Xp Awarded: from item config (the config setting will be scaled according to the max enchant level of the enchantment for every enchantment. So if the config setting is 100 xp and you get mending, which has one level, you get 100 xp. However, if you get Efficiency 1 which has a max of 3, you get 33 experience instead. If both enchantments were added, you would get 133)
  • FISH: when an item is obtained from fishing

    • Requirements: TOOL(item)
    • Xp Awarded: from item config
  • SMELT: when an item is smelted

    • Requirements: the player who placed the furnace gets the experience
    • Xp Awarded: from the ingredient item config
  • GROW: when a crop's age increases by one

    • Requirements: the player who placed the crop gets the experience
    • Xp Awarded: from block config
  • HEALTH_CHANGE: when the players health increases or decreases

    • Requirements: None
    • Xp Awarded: from ServerConfig
  • JUMP: when the player performs a regular jump.

    • Requirements: None
    • Xp Awarded: from ServerConfig
  • SPRINT_JUMP: when the player performs a regular jump while sprinting.

    • Requirements: None
    • Xp Awarded: from ServerConfig
  • CROUCH_JUMP: when the player performs a regular jump from a crouch.

    • Requirements: None
    • Xp Awarded: from ServerConfig
  • HIT_BLOCK: occurs when a player hits the block. This works similarly to the breakspeed event except that you cannot modify the break speed and also captures creative mode player breaks before they happen.

    • Requirements: INTERACT(block) and INTERACT(item)
    • Xp Awarded: from block config
  • ACTIVATE_BLOCK: occurs when a block is interacted with to activate such as pushing a button of flipping a lever.

    • Requirements: INTERACT(block) and INTERACT(item)
    • Xp Awarded: from block config
  • ACTIVATE_ITEM: occurs when an item is right-clicked (or activated). This can be used to deny food eating.

    • Requirements: INTERACT(item)
    • Xp Awarded: from item config
  • ENTITY: experience for interacting with an entity, such as shearing a sheep, or talking to a villager

    • Requirements: ENTITY_INTERACT(entity)
    • Xp Awarded: from entity config
  • RESPAWN: not used for XP but is used for Perks.

  • RIDING: while riding in any vehicle (horses, boats, minecarts, etc) earn xp every 10 ticks for the entity you are riding

    • Requirements: None (though you can gate mounting the entity with an interact check)
    • Xp Awarded: from entity config
  • SHIELD_BLOCK: earn xp when damage is successfully blocked by your shield

    • Requirements: WEAPON(item)
    • Xp Awarded: from entity item config
  • SKILL_UP: whenever a player's level increases. this is not used to award XP but is used by Perks.

  • SLEEP: when a sleep cycle successfully completes and changes the night to day. is only used by Perks.

  • SPRINTING: xp earned every 10 ticks while sprinting

    • Requirements: None
    • Xp Awarded: from ServerConfig

= SUBMERGED: xp earned every 10 ticks while underwater but not sinking or surfacing and proportionate to your travel speed

  • Requirements: None

  • Xp Awarded: from ServerConfig

  • SWIMMING: xp earned every 10 ticks while swimming above water and proportionate to your travel speed

    • Requirements: None
    • Xp Awarded: from ServerConfig
  • DIVING: xp earned every 10 ticks while submerged and sinking deeper. experience is proportionate to travel speed.

    • Requirements: None
    • Xp Awarded: from ServerConfig
  • SURFACING: xp earned every 10 ticks while submerged but rising to the surface. experience is proportionate to travel speed.

    • Requirements: None
    • Xp Awarded: from ServerConfig
  • SWIM_SPRINTING: xp earned every 10 ticks while submerged and swimming at a sprint. experience is proportionate to travel speed.

    • Requirements: None
    • Xp Awarded: from ServerConfig
  • TAMING: awarded for successfully taming an animal.

    • Requirements: TAME(entity)
    • Xp Awarded: from entity config
  • DISABLE_PERK: used by the perk system to revert effects such as modifiers.