Equipment Upgrade system (classic/legacy)

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:

  • NPC: Head Blacksmith Ferris (30847)
  • 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.
Each upgrade includes:
  • 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.
2.Server configuration (equipment_upgrade.xml)
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.
3. Client-side settings (UpgradeSystem_Classic.dat)

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.
How it looks in the game:
 
Last edited:
Am I missing something ? HTM upgrade option doesn't open up Upgrade Window. I've made sure client dat is matching xml list. Is there any setting to enable these upgrades ?
 
Am I missing something ? HTM upgrade option doesn't open up Upgrade Window. I've made sure client dat is matching xml list. Is there any setting to enable these upgrades ?
No, I checked before uploading, everything works without problems.
You talk to the NPC Head Blacksmith Ferris (30847)
and click the button
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h npc_%objectId%_EquipmentUpgrade"><font color="LEVEL">"Upgrade equipment."</font></Button>
?

Also, did you shut down the game server, update it, start it up, and check it?
If it's not working for you, you probably haven't updated something.
 
I did update everything but had to add button bypass myself as the npc didnt have the upgrade option after updating server files. I did an update then started server. I'll be looking into it.
 
I did update everything but had to add button bypass myself as the npc didnt have the upgrade option after updating server files. I did an update then started server. I'll be looking into it.
I didn't understand anything at all, it's just a stream of consciousness.
I just checked it on my test environment with the latest files.

 
I didn't understand anything at all, it's just a stream of consciousness.
I just checked it on my test environment with the latest files.

Idk, have the same with npc but still clicking upgrade second time doeesn't show upgrade window, can you share txt file for upgrades dat ?
 
Idk, have the same with npc but still clicking upgrade second time doeesn't show upgrade window, can you share txt file for upgrades dat ?
I didn't update anything in the client and didn't touch this file at all. Updates only concern the server and it works out of the box.
 
Sadly nope, clicking upgrade equipment doesn’t open upgrade screen. I did clean server files download. Will report back if I manage to make it work.
 
Material is only taken when success, when fail you don't loose materials. As per your example, Phoenix Ring +10 and Essence of Ant Queen set to 25% chance, fails, Upgrade Window closes, items stay, you don't loose items. Is this how it's supposed to be ?
 
Back
Top