ItemDrop

Specific item drops with full control over options, separate from normal monster drops

This configuration file defines specific items that can drop from monsters with full control over their options. This is a separate system from normal monster drops (MonsterItem.txt).

File Location

GameServer/Data/Item/ItemDrop.xml

Dependencies

Depends On
Purpose

ItemOptionRate.xml

Option indices reference rate tables here

ExcellentOptionRate.xml

Determines which excellent bits apply

Item.xml

Item definitions that can be dropped

Depended On By
Purpose

MapManager.xml

ExcItemDropRate affects normal drops, not this system

How It Works

When a monster dies, the server:

  1. Filters by map - RuleDrop MapNumber (-1 = all maps)

  2. Filters by monster - MonsterIndex (-1 = any monster)

  3. Filters by monster level - MonsterMinLevel/MonsterMaxLevel

  4. Rolls against DropRate - Chance out of 1,000,000

  5. Selects item - If multiple items pass, weighted random by inverse DropRate

  6. Resolves options - Uses ItemOptionRate.xml for each option type

  7. Drops item - Creates the item on the ground

circle-info

Weighted Selection: When multiple items pass all filters, items with LOWER DropRate have HIGHER weight. This means rare items are more likely to be selected when the roll succeeds.

Structure

Attributes

RuleDrop Container

Attribute
Type
Values
Description

MapNumber

int/*

-1 or map ID

Map filter (-1 or * = all maps)

Item Attributes

Item Identification

Attribute
Type
Description

Cat

int

Item category (0-15)

Index

int

Item index within category (0-511)

Level

int

Item level (0-15), used when LevelOption=-1

circle-info

Item Index Calculation: Internal index = Cat 512 + Index. For example, Jewel of Bless (Cat=14, Index=13) = 14 512 + 13 = 7181.

Option Indices

These reference sections in ItemOptionRate.xml. Use -1 to disable that option type.

Attribute
Type
Description

LevelOption

int

Level rate table index (-1 = use Level directly)

SkillOption

int

Skill option rate table index

LuckOption

int

Luck option rate table index

JoLOption

int

JoL (additional damage/defense) rate table index

ExcOption

int

Excellent options count rate table index

SetOption

int

Set tier rate table index

SocketOption

int

Socket count rate table index

Common Option Index Values

Value
Effect

-1

Disabled - no option or use default value

0

Common rates (from Index 0 in ItemOptionRate)

1

Excellent rates (typically guaranteed/high quality)

2

Set rates

12-15

Guaranteed 1-4 excellent options (for ExcOption)

circle-exclamation

Drop Filters

Attribute
Type
Default
Description

Duration

int

0

Item duration in seconds (0 = permanent)

MonsterIndex

int/*

-1

Monster class ID (-1 or * = any monster)

MonsterMinLevel

int/*

-1

Minimum monster level (-1 or * = no minimum)

MonsterMaxLevel

int/*

-1

Maximum monster level (-1 or * = no maximum)

DropRate

int/*

Required

Chance out of 1,000,000 (-1 or * = 100% when checked)

DropRate Scale

DropRate
Percentage
Example Use

1000000

100%

Testing / guaranteed drops

100000

10%

Very common drops

10000

1%

Common drops

1000

0.1%

Uncommon drops

100

0.01%

Rare drops

10

0.001%

Very rare drops

circle-info

Crywolf Penalty: Jewel of Chaos, Bless, Soul, Life, Creation, and Guardian are affected by Crywolf occupation state. If Crywolf is occupied by Balgass and penalty is active, these jewels have reduced drop chance.

Examples

All option indices are -1 because jewels don't have options.

Important Behavior

circle-info

Separate from MonsterItem.txt: This system runs independently from the normal monster drop system. Items configured here are additional drop chances, not replacements.

circle-info

Multiple Items Passing: If multiple items pass all filters and their DropRate rolls, ONE is randomly selected. Items with lower DropRate have higher selection weight (inverse weighting).

circle-exclamation

Common Issues

circle-exclamation
circle-exclamation
triangle-exclamation
circle-exclamation

Last updated