🎁 Drop Table

The Drop Table System in nwMVP is a core reward engine designed to handle all reward distributions in a flexible, reusable, and highly configurable way.

This system allows server owners to design complex reward logic using:

  • Conditions

  • Chances

  • Nested tables

  • Multiple reward sources

  • Player performance data

Drop tables are used across:

  • Boss rewards

  • Territory rewards

  • Season rewards

  • Participation rewards

  • Achievement-based rewards


πŸ“Œ Core Concept

A Drop Table is a reusable reward definition that can be executed when a player qualifies for a reward.

Instead of defining rewards directly inside bosses or territories, nwMVP uses drop tables as a centralized reward system.

Why Drop Tables?

βœ… Reusable βœ… Easy to balance βœ… Supports complex logic βœ… Works with all major plugins βœ… Clean configuration structure


🧠 High-Level Execution Flow

When a drop table is executed:

  1. Table Lookup

    • System checks whether the drop table exists

  2. Condition Validation

    • All defined conditions are evaluated

    • Uses AND logic

    • If any condition fails, the table stops immediately

  3. Entry Processing

    • Each entry inside lists is processed sequentially

  4. Chance Roll

    • Each entry rolls its own chance independently

  5. Reward Execution

    • If chance succeeds, reward is given

    • Items are added to inventory or dropped if full


πŸ“ File Structure

Location

Example Structure

Why Multiple Files?

  • Easier organization

  • Better maintainability

  • Clear reward tiers


🧩 Basic YAML Structure

Root Elements

Key
Description

tables

Root container for all drop tables

table_name

Unique identifier (case-insensitive)

conditions

Optional execution conditions

lists

Reward entries


βš™οΈ Conditions System

Conditions define who is allowed to receive rewards from a drop table.

⚠️ All conditions use AND logic Every condition must pass.


πŸ” Permission Condition

βœ” Player must have the permission ❌ Otherwise, table does not execute


🌍 World Condition

βœ” Player must be inside one of the listed worlds


πŸ“ Radius Condition

βœ” Player must be within X blocks of the boss death location βœ” Only works when location context exists (boss rewards)


βš” Damage Conditions

Minimum Damage

Maximum Damage

βœ” Filters players based on contribution βœ” Used for tiered reward logic


πŸ”Ž Placeholder Conditions (Advanced)

Supported Operators

βœ” Uses PlaceholderAPI βœ” Supports numeric & string comparisons βœ” Case-insensitive string matching


πŸ† Reward-Type Conditions

Available Flags:

  • top

  • firststrike

  • finalblow

  • top_damage_dealer

  • top_support_healer

  • top_damage_taken

βœ” Only executes if player received that reward type


πŸ“œ Drop Entries (lists)

Each entry defines what is given and how often.

Entry Syntax

Part
Description

value

Reward definition

chance

0.0 β†’ 1.0

`

`

If chance is omitted β†’ defaults to 1.0


🎲 Chance System

Each entry rolls independently:

Chance
Meaning

1.0

Always

0.5

50%

0.1

10%

0.0

Never

βœ” Multiple rewards can succeed βœ” Order does not affect probability


🎁 Supported Entry Types


1️⃣ Vanilla Items

βœ” Supports random ranges βœ” Drops on ground if inventory full


2️⃣ MMOItems

βœ” TYPE;ID;AMOUNT βœ” Requires MMOItems


3️⃣ MythicMobs Drop Tables

βœ” Executes MythicMobs drop tables βœ” Requires MythicMobs


4️⃣ EliteMobs Items

βœ” Matches EliteMobs item ID


5️⃣ Custom Items

(Supported plugins)

  • ItemsAdder

  • Nexo

  • CraftEngine

βœ” Auto-detection βœ” Amount optional


6️⃣ Economy / Currency

Supported:

  • Vault

  • PlayerPoints

  • BeastTokens

  • CoinsEngine


7️⃣ Nested Drop Tables

βœ” Executes another drop table βœ” Conditions are checked recursively βœ” Unlimited depth (avoid loops)


8️⃣ Commands

βœ” Default execution: console βœ” Placeholders auto-replaced


πŸ”„ Nested Drop Table Example

βœ” Builds reward tiers cleanly βœ” Highly reusable


🧠 Execution Logic Summary

  • Conditions β†’ checked once

  • Entries β†’ processed sequentially

  • Each entry β†’ independent chance

  • Rewards β†’ stackable

  • Inventory overflow β†’ auto-drop


πŸ§ͺ Best Practices

βœ… Use multiple files βœ… Name tables clearly βœ… Use nested tables βœ… Balance chances carefully βœ… Comment complex logic


πŸ” Reloading Drop Tables

βœ” Applies instantly βœ” No server restart


🎯 Where Drop Tables Are Used

  • Boss rewards

  • Territory rewards

  • Season rewards

  • Participation rewards

  • Achievement rewards

Anywhere a reward is needed β†’ Drop Table

Last updated