Step 1: Creating an XML File for Multisell
Create an XML file for the multisell and place it in the
data/multisell
directory.Name the file uniquely, using the ID of the multisell, for example,
1.xml
for a multisell with ID 1.Make sure that the ID of the multisell is unique for each new exchange list.
Step 2: Structure of the Multisell File
In each multisell file, define the
<list>
container, which will store the items for exchange. Here is the basic structure of the file:
XML:
<list>
<!-- Multisell container settings -->
<config showall="true" notax="false" keepenchanted="false" nokey="false" is_chanced="false"/>
<!-- Example item for exchange -->
<item>
<ingredient id="57" count="100000"/> <!-- Currency: Adena -->
<production id="960" count="1"/> <!-- Result: item with ID 960 -->
</item>
</list>
Parameter Description:
-
<config>
- settings block for the entire multisell:-
showall
: if true
, shows all items in the multisell.-
notax
: if true
, cancels the exchange tax.-
keepenchanted
: if true
, keeps the enchant level of items.-
nokey
: determines the need for a key.-
is_chanced
: specifies if the list is random.-
<item>
- defines one item for exchange:-
<ingredient>
- input item, specified by id
and count
.-
<production>
- item that the player will receive after the exchange.Step 3: Adding Drop Chances to Items! (Classic/Legacy)
How to create chance-based multisells (Classic version)When creating multisells, you can specify the chance to receive an item using the
chance
attribute. For example:
XML:
<item>
<ingredient id="57" count="100000"/>
<production id="960" count="1" chance="50"/> <!-- 50% chance to get the item -->
</item>
Step 4: Adding Attributes to Items
If the multisell allows transferring attributes (e.g., enchantment, elemental attributes), this can be done through additional attributes in
ingredient
or production
:
XML:
<item>
<ingredient id="57" count="100000"/>
<production id="960" count="1" enchant="5" fireAttr="10"/> <!-- item with +5 enchant and fire attribute 10 -->
</item>
-
enchant
- enchant level when creating an item. Applied only to equipment items.Only in Classic and Legacy!
-
fireAttr
- Fire attribute.-
waterAttr
- Water attribute.-
earthAttr
- Earth attribute.-
windAttr
- Wind attribute.-
holyAttr
- Holy attribute.-
unholyAttr
- Unholy attribute.Step 5: Loading and Reloading Multisells
After creating or modifying multisell XML files, you need to reload the data on the server for the updates to take effect. Use the admin command (depending on the server build) to reload multisells:
Code:
//reload multisell
Step 6: Troubleshooting
- Make sure all item IDs and quantity values are correct.
- In case of an error loading the multisell, the server may log them, allowing the administrator to review and fix them.
Useful Tips
- Balancing: Set prices and drop chances according to the game economy to avoid imbalance.
- Flexible Usage: Use different multisells for rare and standard items by changing the
showall
and is_chanced
parameters.- Testing: Always test a new multisell to ensure players can use it correctly.