[Cash Shop] How to add an item to the shop of rarities

Status
Not open for further replies.

Сорок два

Administrator
Staff member
#1
To add an item to the Cash Shop, insert the data into two tables of the database "allods_billing_rc_4_0_02"
  • item
  • item_price
Suppose we need to add "Quick". To do this, we need to know the category ID, for example, of a mount.
We will find it in the section "category" of the database "allods_billing_rc_4_0_02"

1540413068144.png

Determined - Mounts ID = 13

Next, we need to know the resource id of the mount, let's choose the manabike. Open the file:
server/game/data/Packs/XDB_Mechanics.Server.pak/Mechanics/Mounts/5thGrade/Items/ManaBikeStandart.xdb
XML:
<?xml version="1.0" encoding="UTF-8" ?>
<gameMechanics.constructor.schemes.item.ItemResource>
  <Header>
       <resourceId>353753098</resourceId>
   </Header>
  ...
Determined - Resource ID = 353753098

All required values are defined, we will start inserting data into the "item" section:
Open phpMyAdmin (WAMP server)
Go ahead: WAMP> phpMyAdmin> allods_billing_rc_4_0_02> item> SQL

We press the button: "INSERT" - clear the field from the template data:

1540413294962.png
and add:
SQL:
INSERT INTO `item` (`id`, `res_id`, `stack_count`, `category_id`, `position`, `is_activated`, `type`, `bundle_id`, `event_res_id`) VALUES
(387, 353753098, 1, 13, 77, 1, 'ITEM', NULL, 0);
then execute the query and the result should look like this:
1540413419040.png

Consider the meaning:
id, res_id, stack_count, category_id, position, is_activated, type, bundle_id, event_res_id
387, 353753098, 1, 13, 77, 1, ITEM, NULL, 0
---

id
= (387) - serial number
res_id = (353753098) - Resource ID (defined previously)
stack_count = (1) - the number of pieces in one lot
category_id = (13) - Category ID (defined previously)
position = (77) - slot number in the rarity section
is_activated = (1) - is active
type = (ITEM) - item type
bundle_id = (NULL) - Bundle id
event_res_id = (0) - Event Resource ID

Let's start inserting data into the section "item_price":
Open
phpMyAdmin (WAMP server)
We go further: WAMP > phpMyAdmin > allods_billing_rc_4_0_02 > item_price > SQL
We press the button: "INSERT" - clear the field from the template data:


and add:

SQL:
INSERT INTO `item_price` (`id`, `item_id`, `price`, `currency_id`, `type`) VALUES
(623, 387, 5000, 1, 'BUYONLY'),
(624, 387, 5000, 2, 'BUYONLY');
then execute the query


The result should look like this:


Consider the meaning:
id, item_id, price, currency_id, type
623, 387, 5000, 1, BUYONLY
624, 387, 5000, 2, BUYONLY

---
id = (623)|(624) - serial number
item_id = (387) - Item ID (defined previously)
price = (5000) - added item price
currency_id = (1)|(2) - Value id (1 = Standard Crystals)|(2 = Premium Crystals)
type = (BUYONLY) - тип

Editing database is over. Stayed last step.

You need to insert our new item into the file: ItemMallWhiteListRegistry.xdb
Open the file: server/game/data/Itemmall/ItemMallWhiteListRegistry.xdb
and add

Code:
<Item href="/Mechanics/Mounts/5thGrade/Items/ManaBikeStandart.xdb#xpointer(/gameMechanics.constructor.schemes.item.ItemResource)" />
Example:
Code:
<?xml version="1.0" encoding="UTF-8" ?>
<itemService.basicInterfaces.itemmall.resources.ItemMallWhiteListRegistry>
   <Header>
       <resourceId>366652419</resourceId>
   </Header>
   <allowedItems>
       <Item href="/Mechanics/Mounts/5thGrade/Items/ManaBikeStandart.xdb#xpointer(/gameMechanics.constructor.schemes.item.ItemResource)" />
...
The result of our efforts can be estimated in the game:


 
Last edited:
Status
Not open for further replies.