ChaosMixOptions.xml
Three preset tables that recipes reference to gate what items can enter the chaos box:
MixOption- which item categories are allowed/blocked as sourcesCharmOption- whether luck charms apply and how manyChaosCharmOption- whether chaos charms apply and how many
Each preset has a unique Id. Recipes reference options by Id in their <Options> element.
File Location#
Data/Plugins/Items/ChaosMix/ChaosMix_Options.xml
Loaded once at GameServer startup. Hot reloadable via the ChaosMix plugin admin command.
MixOption#
Controls which item categories can be placed in the chaos box for this recipe.
<MixOption Id="..." Char="..." Name="..."
ExcludeChaosItems="..." Exclude380="..." ExcludeFenrir="..."
UpgradableOnly="..." RefiningStoneOnly="..."
NoArmor="..." NoWeapons="..." />
| Attribute | Default | Effect |
|---|---|---|
Id | (required) | Preset ID referenced by recipes |
Char | A | Single-letter tag sent to the client alongside the recipe. Drives the client-side chaos box UI gates; the server validator also enforces the boolean flags below independently |
Name | (empty) | Human-readable label shown in logs and used for admin tooling |
ExcludeChaosItems | 0 | When 1, the server rejects Jewel of Chaos placed in the chaos box for this recipe |
Exclude380 | 0 | When 1, the server rejects any +380 item |
ExcludeFenrir | 0 | When 1, the server rejects Fenrir-family items |
UpgradableOnly | 0 | When 1, the server rejects items that are not upgradable equipment |
RefiningStoneOnly | 0 | When 1 and the source is equipment, the server only accepts Harmony Refining Stone inputs |
NoArmor | 0 | When 1, the server rejects armor pieces |
NoWeapons | 0 | When 1, the server rejects weapons |
Shipped MixOption presets#
| Id | Char | Name | Server enforced | Client-driven behavior (via Char) |
|---|---|---|---|---|
1 | A | DEFAULT | none | No filters; any item category accepted |
2 | E | UPGRADABLE_ONLY | UpgradableOnly=1 | Only upgradable items (Plus Item, +15 recipes) |
3 | F | OPTION_F | none | Reserved for custom use |
4 | D | NO_FENRIR_ITEMS | ExcludeFenrir=1 | Blocks Fenrir-family items |
5 | B | NO_CHAOS_ITEMS | ExcludeChaosItems=1 | Blocks Jewel of Chaos as a source |
6 | C | NO_380_ITEMS | Exclude380=1 | Blocks +380 items |
7 | G | REFINING_STONE_SOURCE | RefiningStoneOnly=1 | Harmony Refining Stone only |
8 | H | SEED_SPHERE_NO_ARMOR | NoArmor=1 | Seed Sphere recipes; no armor |
9 | I | SEED_SPHERE_NO_WEAPONS | NoWeapons=1 | Seed Sphere recipes; no weapons |
CharmOption#
Controls how Luck Charms (success-rate boosters) appear in the chaos box UI for the recipe.
<CharmOption Id="..." Char="..." Name="..."
MaxCharms="..." BonusPerCharm="..." />
| Attribute | Default | Effect |
|---|---|---|
Id | (required) | Preset ID referenced by recipes |
Char | A | Single-letter tag sent to the client. A marks the preset as "charms allowed"; other letters (for example U) mark it as disallowed in the client UI |
Name | (empty) | Human-readable label |
MaxCharms | 10 | Upper bound on charms accepted per mix, surfaced to the client |
BonusPerCharm | 1 | Success-rate bonus intended per charm, surfaced to the client |
Shipped CharmOption presets#
| Id | Char | Name | MaxCharms | BonusPerCharm |
|---|---|---|---|---|
1 | A | CHARMS_ALLOWED | 10 | 1 |
2 | U | NO_CHARMS | 0 | 0 |
ChaosCharmOption#
Same idea as CharmOption, but for Chaos Charms (the separate, rarer charm slot).
<ChaosCharmOption Id="..." Char="..." Name="..." MaxChaosCharms="..." />
| Attribute | Default | Effect |
|---|---|---|
Id | (required) | Preset ID referenced by recipes |
Char | A | Single-letter tag sent to the client. Drives whether the chaos charm slot is surfaced in the UI |
Name | (empty) | Human-readable label |
MaxChaosCharms | 1 | Maximum chaos charms accepted, surfaced to the client. Not enforced server-side |
Shipped ChaosCharmOption presets#
| Id | Char | Name | MaxChaosCharms |
|---|---|---|---|
1 | U | NO_CHAOS_CHARM | 0 |
2 | A | CHAOS_CHARM_ALLOWED | 1 |
MixItemValue#
The value an item contributes to a recipe's success-rate formula (ITEM, NONJEWELITEM, WING, EXCELLENT, EQUIP, SET tokens). Items not listed use their shop price from ItemValue.xml / Item.xml.
Values are per single item. A stack counts as many items as it holds: a stack of 8 Jewels of Bless adds 8 times the Bless value, not 1 time. This applies to both listed values and shop prices.
The shop price only grows with +Option up to +16 (Option 4). For the mix rate, an item with a higher +Option is valued at least as its +16 price, so a higher option never lowers the success rate. NPC prices are not changed.
<MixItemValue Index="..." Value="..." Name="..." />
| Attribute | Default | Effect |
|---|---|---|
Index | (required) | Item index (Category * 512 + Index) |
Value | (required) | Value used by rate formulas. 0 removes the entry so the item falls back to shop price |
Name | (empty) | Comment only |
Vanilla chaos mix never prices jewels at shop value. With a shop price of 810,000 a single Jewel of Chaos would give the chaos weapon mix (ITEM/20000) 40% on its own instead of 2%. These five are built in and always active, even if the section is missing; list them to change them, add more entries to extend:
| Index | Item | Value |
|---|---|---|
6159 | Jewel of Chaos | 40000 |
7181 | Jewel of Bless | 100000 |
7182 | Jewel of Soul | 70000 |
7184 | Jewel of Life | 450000 |
7190 | Jewel of Creation | 450000 |
Cross-File Dependencies#
| Attribute | Related in |
|---|---|
MixOptionId, CharmOptionId, ChaosCharmOptionId, LuckBonus | ChaosMix_Recipes.xml <Options> block |
MixItemValue fallback prices | ItemValue.xml |
| Source item definitions used by the recipes these presets apply to | Item.xml |
| Parent plugin overview | ChaosMix plugin README |
Common Issues#
- Player adds the wrong item and it's accepted - recipe's
MixOptionisDEFAULT, or the preset's boolean flag isn't set for the category you want blocked. Set the matching flag (ExcludeChaosItems,Exclude380,ExcludeFenrir,UpgradableOnly,RefiningStoneOnly,NoArmor,NoWeapons) and alignCharso the client UI shows the same gate - Luck charm has no effect - the server does not currently apply
BonusPerCharm; set up success rate via the formula (for example by leaning onLUCKOPTorITEM-based tokens) instead of expecting the charm preset to add a bonus - Chaos charm behaves unexpectedly - the server does not apply
MaxChaosCharms; the preset only drives the client-side UI viaChar - New preset not picked up -
Idmismatch between new preset and recipe references, or a missing hot reload (restart or the ChaosMix admin reload is required)