
- Added db/re/item_package.txt, imported file for item_group_db.txt - Added doc/item_group.txt for more details about item group - Added new IG_ids on db/const.txt, up to 300 additions - Added 'getgroupitem' script command to get item from specified item group (see doc/script_commands.txt) - Modified 'grouprandomitem', added an optional parameter: 'sub_group' (see doc/script_commands.txt) - Modified 'getrandgroupitem', added an optional parameter: 'sub_group' (see doc/script_commands.txt) - Updated db/re/item_db.txt - Updated sql-files/item_db_re.sql, so for MySQL user, please udate your item db NOTE: - I ocmmented some lines because some items aren't exist yet on rAthena db (or maybe have different name?) - For pre-re, maybe I can do it later, or will someone do it? - If there's something I forget to tell you, it's habit Signed-off-by: Cydh Ramdh <house.bad@gmail.com>
133 lines
4.7 KiB
Plaintext
133 lines
4.7 KiB
Plaintext
//===== rAthena Documentation ================================
|
|
//= Item Database
|
|
//===== By: ==================================================
|
|
//= rAthena Dev Team
|
|
//===== Last Updated: ========================================
|
|
//= 20131223
|
|
//===== Description: =========================================
|
|
//= Explanation of the item_group.txt file and structure.
|
|
//============================================================
|
|
|
|
Items at item group can be used for 'getrandgroupitem' or 'getgroupitem' script.
|
|
See this table below to know which field that influences those scripts.
|
|
|
|
+===============+====================+================+
|
|
| Field | 'getrandgroupitem' | 'getgroupitem' |
|
|
+===============+====================+================+
|
|
| GroupID | YES | YES |
|
|
+===============+====================+================+
|
|
| ItemID | YES | YES |
|
|
+===============+====================+================+
|
|
| Rate | YES | YES |
|
|
+===============+====================+================+
|
|
| Amount | no | YES |
|
|
+===============+====================+================+
|
|
| Random | no | YES |
|
|
+===============+====================+================+
|
|
| isAnnounced | no | YES |
|
|
+===============+====================+================+
|
|
| Duration | no | YES |
|
|
+===============+====================+================+
|
|
| isNamed | no | YES |
|
|
+===============+====================+================+
|
|
| isBound | no | YES |
|
|
+===============+====================+================+
|
|
|
|
---------------------------------------
|
|
|
|
GroupID: See const.txt on 'Item Group ID' section for id. Supports IG_* const.
|
|
|
|
---------------------------------------
|
|
|
|
ItemID: Available item_id that will be obtained from this item group.
|
|
Supports AegisName of the item.
|
|
|
|
---------------------------------------
|
|
|
|
Rate: Probability to get the item. Not a percentage value!
|
|
|
|
Example:
|
|
IG_MyItemGroup,Knife,5
|
|
IG_MyItemGroup,Dagger,1
|
|
|
|
- Knife has chance 5/6 (83.3%) to be obtained
|
|
- Dagger has chance 1/6 (16.7%) to be obtained
|
|
|
|
---------------------------------------
|
|
|
|
Amount: Amount of item that will be obtained.
|
|
|
|
---------------------------------------
|
|
|
|
Random: Set this to '0' and the item always be obtained ("must" item).
|
|
Random value will allocates where the item will be stored at random group.
|
|
(max. random group is 4 a itemdb.c MAX_ITEMGROUP_RANDGROUP)
|
|
|
|
Example:
|
|
IG_MyItemGroup,Knife,0,1,0 //as 'must' item
|
|
IG_MyItemGroup,Dagger,0,1,0 //as 'must' item
|
|
IG_MyItemGroup,Stiletto,5,1,1 //random at group 1
|
|
IG_MyItemGroup,Stiletto_,2,1,1 //random at group 1
|
|
IG_MyItemGroup,Stiletto,5,1,2 //random at group 2
|
|
IG_MyItemGroup,Dagger_,4,1,2 //random at group 2
|
|
|
|
-> usage: 'getgroupitem(IG_MyItemGroup);'
|
|
- Player always get 1x Knife and 1x Dagger
|
|
- Player has chance to get 1x Stiletto by chance 5/7 from group 1
|
|
- Player has chance to get 1x Stiletto_ by chance 2/7 from group 1
|
|
- Player has chance to get 1x Stiletto by chance 5/9 from group 2
|
|
- Player has chance to get 1x Dagger_ by chance 4/9 from group 2
|
|
|
|
-----------------------------------------
|
|
|
|
If the 'Rate' for random '0' is not 0 (more than 0), that means this item
|
|
also can be obtained as random item.
|
|
If you want the "must" item only can be obtained without random chance,
|
|
change the 'Rate' for this item to 0.
|
|
|
|
Example:
|
|
IG_MyItemGroup2,Knife,0,1,0
|
|
IG_MyItemGroup2,Dagger,5,1,0
|
|
IG_MyItemGroup2,Stiletto,2,1,1
|
|
|
|
-> usage: 'getgroupitem(IG_MyItemGroup2);'
|
|
- 1x Knife always be obtained
|
|
- 1x Dagger always be obtained and also has chance to get 1 more by
|
|
chance 5/7
|
|
- 1x Stiletto can be obtained by chance 2/7
|
|
So, player will get 1x Knife, 1x Dagger, and 1x Dagger or 1x Stiletto
|
|
|
|
-> usage: 'getrandgroupitem(IG_MyItemGroup2,1);' (Ignores 'Amount' field)
|
|
- 1x Knife never be obtained!
|
|
- 1x Dagger can be obtained by chance 5/7
|
|
- 1x Stiletto can be obtained by chance 2/7
|
|
So, player will get only 1x Dagger or 1x Stiletto
|
|
|
|
---------------------------------------
|
|
|
|
isAnnounced: If player obtained this item, it will be broadcasted!
|
|
"[Player] has won [Item] from 'Box'"
|
|
|
|
---------------------------------------
|
|
|
|
Duration: Makes the item as rental item, will be removed when it is expire in
|
|
certain minute. If wanted it as hour, just do x*60.
|
|
Better use this for non-stackable item only.
|
|
|
|
---------------------------------------
|
|
|
|
isNamed: Makes the item is marked by the obtainer's name.
|
|
|
|
---------------------------------------
|
|
|
|
isBound: Makes the obtained item as bound item.
|
|
See doc/script_commands.txt at 'getitembound' for valid bound types.
|
|
|
|
---------------------------------------
|
|
|
|
Supports to import other file, usage:
|
|
import: db/path/filename.txt
|
|
|
|
Example:
|
|
import: db/re/item_bluebox.txt
|