1. General Information
The upgrade system allows players to improve their equipment by exchanging an item with a certain enhancement level, materials, and adena for a new item. Upgrades can be configured in two places:
The file data/equipment_upgrade.xml.
XML format
Each upgrade is described by the <upgradesystem_begin> tag inside the root tag. Example:
Field descriptions
The file GameClient/system_ru/UpgradeSystem_Classic.dat is responsible for displaying upgrades in the game client. Its format differs from the server-side XML, but the data must match.
File format
Each upgrade is described in a block between upgradesystem_begin and upgradesystem_end. Example:
Field description
The upgrade system allows players to improve their equipment by exchanging an item with a certain enhancement level, materials, and adena for a new item. Upgrades can be configured in two places:
- On the server: Via the data/equipment_upgrade.xml file.
- In the client: Via the GameClient/system_ru/UpgradeSystem_Classic.dat file, which determines how upgrades are displayed in the game.
- Unique ID (upgrade_id).
- Required item with a sharpening level (upgrade_item).
- List of materials and their quantities (material_items).
- Cost in Aden (commission).
- Percentage chance of success.
- The resulting item with a sharpening level (result_item).
- Countries where the upgrade is available (applycountry). You can specify anything; it doesn't matter, only the value specified in the client is important.
The file data/equipment_upgrade.xml.
XML format
Each upgrade is described by the <upgradesystem_begin> tag inside the root tag. Example:
XML:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE upgrades SYSTEM "equipment_upgrade.dtd">
<upgrades>
<upgradesystem_begin
upgrade_id="1"
upgrade_item="91244;5"
material_items="1459;200"
chance="100"
commission="2000000"
result_item="91245;0"
applycountry="all" />
</upgrades>
Field descriptions
- upgrade_id: Unique upgrade number (e.g., 1, 10041). Do not repeat the ID!
- upgrade_item: The item to be upgraded. Format: item_id;enchant_level. For example, 91244;5 - item with ID 91244 and +5 enchantment.
- material_items: List of materials. Format: item_id;count. For example, 1459;200 - 200 units of item with ID 1459. If there are no materials, specify an empty string: material_items="".
- chance: Upgrade success chance in percent (0–100). For example, 100 — always success, 20 - 20% chance. If not specified, defaults to 100.
- commission: Upgrade cost in adena. For example, 2000000 - 2 million adena.
- result_item: Resulting item. Format: item_id;enchant_level. For example, 91245;0 - item with ID 91245 without enchantment.
- applycountry: Countries where the upgrade is available. Specify all for all countries or country codes separated by semicolons, for example, kr;j (for Korea and Japan). If not specified, defaults to all.
The file GameClient/system_ru/UpgradeSystem_Classic.dat is responsible for displaying upgrades in the game client. Its format differs from the server-side XML, but the data must match.
File format
Each upgrade is described in a block between upgradesystem_begin and upgradesystem_end. Example:
Code:
upgradesystem_begin upgrade_id=10041 upgrade_item={70295;9} material_items={{71752;70}} commission=10000 result_item={71746;0} applycountry={all} upgradesystem_end
Field description
- upgrade_id: The same ID as in equipment_upgrade.xml. Must match!
- upgrade_item: Item to upgrade. Format: {item_id;enchant_level}. For example, {70295;9} — item ID 70295 with +9 enchantment.
- material_items: Materials. Format: {{item_id;count}}. For example, {{71752;70}} — 70 units of item ID 71752. For multiple materials: {{71752;70}{71753;10}}. If there are no materials, specify {}.
- commission: Cost in adena. For example, 10000. Must match the server.
- result_item: Resulting item. Format: {item_id;enchant_level}. For example, {71746;0}.
- applycountry: Countries. Format: {all} or {kr;j}. Must match the server.
- chance: Not specified in the client file, as the chance is processed on the server.