English
Challenges & Rewards
The full player loop covers how a run starts, how limits are counted, how rewards are paid, and what happens when you fail
Entry flow
- Start: first run
/edg listto see available dungeons, then/edg enter <dungeonId>to start a challenge (leader only while in a party) - Pre-checks: the plugin checks dungeon existence, entry permission (
emakidungeon.dungeon.<dungeonId>), party state, capacity, and limits (cooldown, then day, week, month, and time window); the first failing check explains why - Difficulty: a "select difficulty" panel opens and offers the tiers configured under the dungeon's
difficulty - Drop mode: a "select drop distribution mode" panel opens with the modes from
drop.mode-allowed - Ready confirmation: every member confirms with
/edg readyor the confirmation button withinenter.prepare-window-seconds; timing out cancels the challenge - World preparation: the plugin clones the template world and shows progress on
enter.wait-channel(bossbar / scoreboard / chat); any member can/edg cancel, and waiting longer thanenter.wait-timeout-secondscancels automatically - Entry: the party is assigned a pooled world and teleported in, the daily count is charged, and a snapshot is taken at that moment for later rollback
NOTE
Starting requires every member online - a single offline member refuses the start; a party can only have one active challenge at a time
Entry limits
Each dungeon keeps its own limits, always evaluated as month > week > day:
count: 0means unlimited for that tier; failing any tier (exhausted count, wrong weekday, wrong week-of-month, or outside the time window) refuses entry and shows how long until the next chancecooldown-secondsis a hard cooldown between entries and is evaluated on its own- Counts bucket per day using
general.timezone, falling back to the server timezone - Check your day/week/month usage, cooldown, and best result with
/edg stats [player] [dungeonId] - OPs and players holding
emakidungeon.bypass.limitignore all counts and cooldowns
Party rules
- Party size is capped by
party.max-size; joining behavior followsparty.invite-mode(publicdirect join /applyapplication pending approval /inviteinvite only) - Only the leader can start a challenge and pick difficulty and drop mode; the start is refused while any member is offline
- A party that is already in a run does not accept new members and cannot start a second challenge
- The party channel (
/edg party chat) keeps your messages among teammates; dungeon chat stays inside the instance by default,/edg globalchat onbridges it back to the whole server
Command and permission details are on Commands
In-run rewards and settlement
- Routed rewards go to your stash first: loot handled by the distribution modes (roll / contribution pool / share) and items granted by the flow land in your stash with a "stored for this run, paid on clear" message; dungeon reward chests stay locked until settlement
- Only a clear pays out: on completion the stash is paid out, then
settlement.commandsruns line by line (handy for EmakiItem/EmakiLevel items and experience) - The five modes (
drop.default-mode/drop.mode-allowed) decide what monster drops do:freevanilla drops: not intercepted, whoever picks it up keeps it (default)rolldrops are rolled automatically and the winner's share goes to their stash, paid on clearkillerdrops go to the killerscoredrops enter the contribution pool, distributed by score weight on settlement (drop.levelsapplies)sharedrops are split across the party
- Payout is announced as "N items paid from your stash"; with the reward box enabled they land in the box, otherwise in the inventory
- Drop amounts scale with
difficulty.<tier>.drop-multiplier, and waves marked as no-drop produce nothing
Reward box and claiming
With rewardbox.enabled: true (default), clear payouts go to your personal reward box, and chat shows a clickable /edg rewards hint:
| Action | Effect |
|---|---|
/edg rewards | Open the reward box; drag items into your inventory to claim them |
| Click "previous / next page" | Flip pages; the base page count comes from default-pages in gui/rewardbox.yml |
| Click "auto-flow" | On: later rewards go straight to your inventory (they still land in the box if your inventory is full); off: rewards keep accumulating in the box for manual pickup |
Capacity rules (capacity-slots in gui/rewardbox.yml, default 135 slots):
- A full box refuses claims; items stay inside until you free up space
- Rolls skip players whose box is full
- When everyone's box is full, the batch falls to the ground as collectible drops
- With
rewardbox.enabled: falsethe whole feature is off: payouts go straight to the inventory, falling to the ground when it is full
Failure, leaving, and rollback
| Situation | Result |
|---|---|
Voluntary exit (/edg leave) | Type confirm in chat to proceed; inventory and state roll back to the entry snapshot and you return to your origin; the whole run stash is voided |
| Failure / all players dead / timeout destroy | Same void: stashed items, experience, and other outputs are wiped, the player snapshot is restored, and you are sent back |
| Reconnect | Reconnecting returns you into the running instance; if the instance is already gone, the snapshot is restored with a notice |
| Instance lost to a plugin fault | Orphan snapshots restore inventory and state from the entry snapshot automatically |
In short: you only keep rewards by clearing; leaving early costs whatever the run produced
Spectation and survival
- Each death consumes
difficulty.<tier>.respawn-count; every death broadcasts the remaining count - At zero respawns the player moves to spectation: view rotation only, no free flight, unlocked automatically when leaving the dungeon
- Crossing the dungeon boundary pulls you back to the spawn point (
guard.boundary_pullback) - The flow can grant
temp_itemstemporary items: a message appears when your inventory is too full to receive them, and the instance takes them back automatically when the run ends
Scoring and leaderboard
- The run score combines the five
scoreweights (damage, kills, heal, deaths, defense), capped byscore.max - Run
/edg rank <dungeonId>to see the dungeon's top 10 (score, duration, difficulty, party); retention is controlled byleaderboard.max-entries - Countdown reminders are pushed at the
timer.messagesmarks