DUXPLIMA Documentation

Action types

All thirty behaviours a price table may name, and what the target word means for each.

The first word under actions is one of these. The target word under it is a material, an entity type, an enchantment, a job, a visitor number or a placeholder, depending on the type. A material or entity is written as the server names it, in lower case; a custom item plugin's item is written in its own spelling (oraxen:ruby).

TypePaid whenTarget
mineA block is brokenThe block
block_dropA broken block drops itemsEach dropped item
placeA block is placedThe block
stripA log is stripped with an axeThe log
waxCopper is waxed with a honeycombThe block
scrapeWax or oxidation is scraped off with an axeThe block
brushAn archaeology block is brushedThe block
killA creature is killedThe entity type
mob_dropA killed creature drops itemsEach dropped item
kill_jobA player who works a job is killedThe victim's job id
breedTwo animals are bredThe entity type
tameAn animal is tamedThe entity type
milkA cow or a goat is milkedThe entity type
shearA sheep is shearedThe wool that came off
dyeA sheep is dyedThe dye
fish_itemAn item is pulled out of the waterThe item
fish_mobA creature is hookedThe entity type
bucket_fillA bucket is filled with a creatureThe filled bucket
receiveAn item is received from a source the operator pricesThe item
craftOne craft, not one crafted itemThe result
smeltAn item is taken out of a furnaceThe item
campfireAn item is taken off a campfireThe item
brewA potion is brewedThe potion item
enchantAn enchantment is appliedThe enchantment
repairAn anvil restores durability; a rename never paysThe item
smithA smithing table upgradeThe result
grindA grindstone useThe item
tradeA villager tradeWhat was bought
exploreA chunk is visited for the first timeThe visitor index: "1" for the first player into it
placeholderA number another plugin publishes risesThe placeholder

Priced apart

A broken block and what fell out of it are two rows (mine and block_drop), so silk touch and fortune price correctly with no special case. A kill and its drops are the same (kill and mob_drop).

Ledger

mine, block_drop, strip, wax, scrape and brush ask the placed block ledger, so a block a player placed pays nothing. place is the one action whose payment the ledger records rather than refuses, so a spot that already paid for a placement pays nothing again inside ledger.retention-days. See Protections.

explore

Ships off in every file. A chunk visited for the first time pays by the visitor index: the first player earns the most. The table writes a row per chunk per player, bounded by explore.rows-per-player (5000) and explore.retention-days (30).

explore {
  "1" { money = "3.0", experience = "2.0" }
  "2" { money = "1.5", experience = "1.0" }
}

placeholder

A placeholder is not a payment and cannot be trusted, so it is read at most every placeholder-actions.minimum-seconds (5) per player, and one reading pays for at most maximum-step (100) of rise:

placeholder {
  "%theirplugin_blocks_walked%" { money = "%amount% * 0.01" }
}

Stacks

With RoseStacker, a kill that takes a stack pays for every creature in it. The bound applies per creature and the multiplication after it.

Related: Jobs and prices, Protections