Official Item Group/Package/Chain

Ind

Development Administrator
Staff member
Messages
1,655
Points
113
Official Item Group/Package/Chain
 
Overview

  • Implementation of the official 'Item Packages', 'Item Group' redesign, 'Item Chain' implementation.
item_group.conf : Overview / Sample

  • The file was redesigned to make it attend the official equivalent's and to be more flexible, there are no more limitations on the number of groups or on how many items a group may contain, these limitations were lifted.
  • Old_Card_Album: ( // <= <Container_Item_Name>
        ("Poring_Card",8), // <= entries can be either ( "<Item_Name>", <Repeat_Count> )
        "Sting_Card" // <= or "<Item_Name>" (no repeat)
    )
item_packages.conf : Overview / Sample

  • The file was created to meet the requirements of the official 'Package Item' feature, there are no limitations on how many packages you may add either.
  • Gift_Bundle: { // <= <Container_Item_Name>
        White_Slim_Potion: {// <= <Entry_Item_Name>
            Random: false //May be omit when not false, signs whether a item is random or should be given whenever the packageis consumed.
            Count: 30 //May be omit when not higher than 1, stands for how many <White_Slim_Potion>
        }
        Muffler_: {
            Expire: 2 //May be omit when none, signs how many hours this item will last (makes a rental item)
            Announce: True //May be omit when false, signs whether to relay a special item obtain announce when this item comes out of the package.
            Rate: 50 //May be omit when 'Random' is false, from 1 to 10000 (0.01% - 100%)
            Named: True //May be omit when false, signs whether the item should have the owner's name in it.
        }
    }
item_chain.conf : Overview

  • Officially this thing is called groups too but I found it'd be confuse to have 2 group files with entirely different functionality, named chains because the items in it are chained to each other, this file fixes quite a few stuff, for example before this patch having BS_FINDINGORE drop something was almost twice as rare than on official servers, also fixes Jewel_Sword, Gaia_Sword, Blazzer_Card, Tengu_Card and Bogy_Horn.
New

  • 'packageitem' script command, it has only 1 param which is optional, for the package item id, when not provided it'll try to use the item id from the item it is being used from (if called from an item script), it runs a item package and grants the items accordingly to the attached player.
Changes

  • '#define MAX_RANDITEM' and '#define MAX_ITEMGROUP' were dropped, these limitations no longer exist and the server may support an unlimited number of item groups.
  • 'item_findingore.txt' was dropped, its contents moved into 'item_chain.conf'
  • 'item_bluebox.txt', 'item_cardalbum.txt', 'item_giftbox.txt', 'item_misc.txt', 'item_violetbox.txt' and 'item_group_db.txt' were dropped, its contents moved were updated and moved into 'item_group.conf'
  • 'bonus2 bAddItemHealRate' changed; as group ids no longer exist.
  • 'bAddMonsterDropItemGroup' was renamed to 'bAddMonsterDropChainItem' and changed from bonus 2/3 to bonus (0)/2 as the rate param was dropped because item chains have their own individual rates.
  • Item names are now automatically made constants, so they may be used in any scripts throughout the server e.g. 'getitem Apple,1;', this works for all items except those having ' in their names (e.g. doesn't work for 'Monster's_Feed').
  • 'getrandgroupitem' and 'grouprandomitem' were modified since group ids no longer exist, item ids should be used instead (or constants as the item above mentions), e.g. 'getrandgroupitem Old_Blue_Box,1;' or 'getrandgroupitem 603,1;'
  • Dropped conf/battle/drops.conf 'finding_ore_rate' for it has no place in the official formula (if you'd like to modify finding ore rates, edit them via item_chain.conf)
Special Thanks

  • Beret and hemagx for bringing this change up to discussion, and the data they contributed into it
  • Yommy and Muad_Dib for all the new item data implemented in this commit (a hell of stuff! THANK YOU BOTH <3)
  • Streusel for all the over 100 new items he converted
  • Gepard for the group item repeat info
  • Masao for his debugging of the monster spawn issue
  • Mysterious for updating the documentation
Link~u!

 
Last edited by a moderator:
I am happy to help the community. Let's turn the aegis xD.

 
I cant open some boxes like Special_Box, Pet_Egg_Scroll9 etc etc.?

 
I cant open some boxes like Special_Box, Pet_Egg_Scroll9 etc etc.?
The item scripts for some of these boxes are not yet (even though its just a 'createpackage();'), I'll see that it gets updated today.
I cant open some boxes like Special_Box, Pet_Egg_Scroll9 etc etc.?
 i confirming it.
 its because this items dont  have a script command , they are just items ^^
 Even if there are script in the items like "packageitem();" its not working.
Can you tell me a example so I can try to reproduce? I tested with 12542 (fortune cookie) and I got the items
 
By the way I've fixed the problem with the random package rates (thanks to Beret!), also added the missing +130 items (thanks to Streusel!): https://github.com/HerculesWS/Hercules/commit/045c1a44df08c1472f5a95742628a2765c1be9d1
Thanks!
default_smile.png


Can you confirm this? the reward item in my screen it showunknown item? 

Im testing the announcement xD

untitled.JPG

 
Last edited by a moderator:
whats your client date? When I tested that it was totally different (message was way shorter for starters), and in your case the item name and the reward name appear to be swapped

 
whats your client date? When I tested that it was totally different (message was way shorter for starters), and in your case the item name and the reward name appear to be swapped
Im using 2012-04-17ragexe

You mean this?

pRO line 1629:

Citizens of Midgard, Lady Luck shines upon [%s] !! [%s] has awarded the player with '%s' !!#

iRO line 1629:

[%s] has won [%s] from '%s'.#

 
Last edited by a moderator:
whats your client date? When I tested that it was totally different (message was way shorter for starters), and in your case the item name and the reward name appear to be swapped
Ok i understand now because of my msgstringtable but why still showing Unknown Item?

 
Last edited by a moderator:
Can't seem to get custom additions to the Old_Card_Album to load in-game.

 
Back
Top