[C++] Extended Item Award

  • Metin2 Extended Item Award

    You can store all bonuses and stones for items.

    I wrote that as request from Bitte melden Sie sich an, um diesen Link zu sehen., more informations at repository.

    2018-04-02 14:02:11 Monday

    • Fixed problem with save bonus after reload items.
    • Fixed problem with unknown values.
    • Correction for socket real time and more.
    • Fixed unknown average/skill damage bonus value. player.item_proto.addon_type = -1 (Eg. 189, 199, 299, 1139, 1179, 2159, 2179, 3169, 3219, 5119, 5129, 6019, 6069, 6079, 7169)[+0 - +9] That's for the items which have addon type (-1) and you added them in item shop without bonuses like skill damage or hit damage, value x, y as default, so they'll will be without bonuses and get bugged. Now when the item will be inserted there'll be a check if item doesn't have those bonuses (from query) add a random average/skill damage bonus value.
    SQL
    1. INSERT INTO player.item_award(`login`, `vnum`, `count`, `mall`) VALUES ('account', 189, 1, 1);

    2019-04-12 02:31:18 Friday

    • Fixed unique items based on the real time.
    • Fixed unstackable items.
    • Fixed if item count overflow occured, then set it to maximum.
    • Added support for books. (check skill types, unknown skill), skill vnum need to be saved into socket0, (4=Aura of the Sword < player.skill_proto), if the skill vnum is unknown, there will be a random book based on pc races, excluded skills PASSIVE, GUILD, SUPPORT.
    • Added a to-do for ITEM_BLEND, check if apply_type exists in bonuses, check if apply_value/apply_duration is equal with grades (1/2/3/4/5) from settings, blend.txt
    • Added auto query.
    SQL
    1. # Random book
    2. INSERT INTO player.item_award(`login`, `vnum`, `count`, `mall`) VALUES ('account', 50300, 1, 1); # Specific book by skill vnum
    3. INSERT INTO player.item_award(`login`, `vnum`, `count`, `socket0`, `mall`) VALUES ('account', 50300, 1, 4, 1);

    2019-04-16 14:54:48 Tuesday Bitte melden Sie sich an, um diesen Link zu sehen.

    • Added a check for attr types and values min - max.
    • You can't insert wrong bonuses into a specific item.
    • Eg. Add 2000 MAX_HP on your Sword+9, was possible, now not.
    • Eg. Add +500 INT to your shield, now there's a check for min-max value of player.item_attr Lv.1 - Lv.5 and your 500 INTvalue will be replaced with max value from lvl5 of bonus, like 12 (lv5), that happen with all the bonuses, same thing with the values lower than lvl1, like 5 HP_REGEN on your neck, when the minimum (lv1) is 10, the value will be replaced with 10.
    • If the bonus type can't be added into a specific item, the bonus will be ignored > deleted. (example: critical pct to armor)
    • Refactorized all the code and moved all features into Bitte melden Sie sich an, um diesen Link zu sehen..
    • C++11 or higher is required for checking attributes.

    Bitte melden Sie sich an, um diesen Link zu sehen.


    Bitte melden Sie sich an, um diesen Link zu sehen. Bitte melden Sie sich an, um diesen Link zu sehen.


    Bitte melden Sie sich an, um diesen Link zu sehen. Bitte melden Sie sich an, um diesen Link zu sehen.

    Sockets & attrs

    For those who use Bitte melden Sie sich an, um diesen Link zu sehen. source:

    C
    1. //@Srcs/Server/db/src/ClientManager.cpp
    2. #define ENABLE_ITEMAWARD_REFRESH // Should be enabled

    Github repository or Bitte melden Sie sich an, um diesen Link zu sehen.:

    .

    10 Mal editiert, zuletzt von VegaS () aus folgendem Grund: Updates

  • Dieses Thema enthält 32 weitere Beiträge, die nur für registrierte Benutzer sichtbar sind, bitte registrieren Sie sich oder melden Sie sich an um diese lesen zu können.