summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--conf/atcommand.conf7
-rw-r--r--db/castle_db.txt102
-rw-r--r--db/pre-re/item_chain.conf11
-rw-r--r--db/pre-re/item_group.conf11
-rw-r--r--db/pre-re/item_packages.conf16
-rw-r--r--db/re/item_chain.conf11
-rw-r--r--db/re/item_group.conf11
-rw-r--r--db/re/item_packages.conf16
-rw-r--r--doc/item_bonus.txt222
-rw-r--r--doc/script_commands.txt42
10 files changed, 270 insertions, 179 deletions
diff --git a/conf/atcommand.conf b/conf/atcommand.conf
index 6e35d5327..3b3a156eb 100644
--- a/conf/atcommand.conf
+++ b/conf/atcommand.conf
@@ -14,8 +14,7 @@ atcommand_symbol : "@"
charcommand_symbol: "#"
/* Command aliases
-You can define aliases for any command. Aliases work just like original
-command.
+You can define aliases for any command. Aliases work just like the original command.
Format is
<commandname>: ["<alias>", ...]
*/
@@ -59,8 +58,8 @@ aliases: {
channel: ["main"]
}
-/* list of commands that should not be logged at all */
-/* add as many commands as you like */
+/* List of commands that should not be logged at all */
+/* Add as many commands as you like */
nolog: {
iteminfo: 1
mobinfo: 1
diff --git a/db/castle_db.txt b/db/castle_db.txt
index 45a1443d5..12e222eb6 100644
--- a/db/castle_db.txt
+++ b/db/castle_db.txt
@@ -3,44 +3,72 @@
// Structure of Database:
// CastleID,MapName,CastleName,OnGuildBreakEventName,Flag
//
-// 01. CastleID Unique ID of the castle. Must remain unique across all map-servers.
-// 02. MapName Map name to be considered as the castle map.
-// 03. CastleName Name of the castle (used by scripts and guardian name tags).
-// 04. OnGuildBreakEventName NPC unique name to invoke ::OnGuildBreak on, when a occupied
-// castle is abandoned during guild break.
-// 05. Flag Switch flag (reserved as of athena-dev mod0796~0801, not used by server).
-
-0,aldeg_cas01,Neuschwanstein,Agit#aldeg_cas01,1 // kRO : Noisyubantian
-1,aldeg_cas02,Hohenschwangau,Agit#aldeg_cas02,1 // kRO : Hohensyubangawoo
-2,aldeg_cas03,Nuernberg,Agit#aldeg_cas03,1 // kRO : Nyirenverk
-3,aldeg_cas04,Wuerzburg,Agit#aldeg_cas04,1 // kRO : Byirtsburi
-4,aldeg_cas05,Rothenburg,Agit#aldeg_cas05,1 // kRO : Rotenburk
-5,gefg_cas01,Repherion,Agit#gefg_cas01,1 // kRO : Reprion
-6,gefg_cas02,Eeyolbriggar,Agit#gefg_cas02,1 // kRO : Yolbriger
-7,gefg_cas03,Yesnelph,Agit#gefg_cas03,1 // kRO : Isinlife
-8,gefg_cas04,Bergel,Agit#gefg_cas04,1 // kRO : Berigel
-9,gefg_cas05,Mersetzdeitz,Agit#gefg_cas05,1 // kRO : Melsedetsu
-10,payg_cas01,Bright Arbor,Agit#payg_cas01,1 // kRO : Mingting
-11,payg_cas02,Scarlet Palace,Agit#payg_cas02,1 // kRO : Tiantan
-12,payg_cas03,Holy Shadow,Agit#payg_cas03,1 // kRO : Fuying
-13,payg_cas04,Sacred Altar,Agit#payg_cas04,1 // kRO : Honglou
-14,payg_cas05,Bamboo Grove Hill,Agit#payg_cas05,1 // kRO : Zhulinxian
-15,prtg_cas01,Kriemhild,Agit#prtg_cas01,1 // kRO : Creamhilt
-16,prtg_cas02,Swanhild,Agit#prtg_cas02,1 // kRO : Sbanhealt
-17,prtg_cas03,Fadhgridh,Agit#prtg_cas03,1 // kRO : Lazrigees
-18,prtg_cas04,Skoegul,Agit#prtg_cas04,1 // kRO : Squagul
-19,prtg_cas05,Gondul,Agit#prtg_cas05,1 // kRO : Guindull
+// 01. CastleID Unique ID of the castle. Must remain unique across all map-servers.
+// 02. MapName Map name to be considered as the castle map.
+// 03. CastleName Name of the castle (used by scripts and guardian name tags).
+// 04. OnGuildBreakEventName NPC unique name to invoke ::OnGuildBreak on, when a occupied
+// castle is abandoned during guild break.
+// 05. Flag Switch flag (reserved as of athena-dev mod0796~0801, not used by server).
+
+
+//================
+// Al De Baran
+//================
+0,aldeg_cas01,Neuschwanstein,Agit#aldeg_cas01,1 // kRO : Noisyubantian
+1,aldeg_cas02,Hohenschwangau,Agit#aldeg_cas02,1 // kRO : Hohensyubangawoo
+2,aldeg_cas03,Nuernberg,Agit#aldeg_cas03,1 // kRO : Nyirenverk
+3,aldeg_cas04,Wuerzburg,Agit#aldeg_cas04,1 // kRO : Byirtsburi
+4,aldeg_cas05,Rothenburg,Agit#aldeg_cas05,1 // kRO : Rotenburk
+
+//================
+// Geffen
+//================
+5,gefg_cas01,Repherion,Agit#gefg_cas01,1 // kRO : Reprion
+6,gefg_cas02,Eeyolbriggar,Agit#gefg_cas02,1 // kRO : Yolbriger
+7,gefg_cas03,Yesnelph,Agit#gefg_cas03,1 // kRO : Isinlife
+8,gefg_cas04,Bergel,Agit#gefg_cas04,1 // kRO : Berigel
+9,gefg_cas05,Mersetzdeitz,Agit#gefg_cas05,1 // kRO : Melsedetsu
+
+//================
+// Payon
+//================
+10,payg_cas01,Bright Arbor,Agit#payg_cas01,1 // kRO : Mingting
+11,payg_cas02,Scarlet Palace,Agit#payg_cas02,1 // kRO : Tiantan
+12,payg_cas03,Holy Shadow,Agit#payg_cas03,1 // kRO : Fuying
+13,payg_cas04,Sacred Altar,Agit#payg_cas04,1 // kRO : Honglou
+14,payg_cas05,Bamboo Grove Hill,Agit#payg_cas05,1 // kRO : Zhulinxian
+
+//================
+// Prontera
+//================
+15,prtg_cas01,Kriemhild,Agit#prtg_cas01,1 // kRO : Creamhilt
+16,prtg_cas02,Swanhild,Agit#prtg_cas02,1 // kRO : Sbanhealt
+17,prtg_cas03,Fadhgridh,Agit#prtg_cas03,1 // kRO : Lazrigees
+18,prtg_cas04,Skoegul,Agit#prtg_cas04,1 // kRO : Squagul
+19,prtg_cas05,Gondul,Agit#prtg_cas05,1 // kRO : Guindull
+
+//================
+// Novice Guilds
+//================
20,nguild_alde,Earth,Agit_N01,2
21,nguild_gef,Air,Agit_N02,2
22,nguild_pay,Water,Agit_N03,2
23,nguild_prt,Fire,Agit_N04,2
-24,schg_cas01,Himinn,Manager#schg_cas01,1 // kRO : Himinn
-25,schg_cas02,Andlangr,Manager#schg_cas02,1 // kRO : Andlangr
-26,schg_cas03,Viblainn,Manager#schg_cas03,1 // kRO : Viblainn
-27,schg_cas04,Hljod,Manager#schg_cas04,1 // kRO : Hljod
-28,schg_cas05,Skidbladnir,Manager#schg_cas05,1 // kRO : Skidbladnir
-29,arug_cas01,Mardol,Manager#arug_cas01,1 // kRO : Mardol
-30,arug_cas02,Cyr,Manager#arug_cas02,1 // kRO : Cyr
-31,arug_cas03,Horn,Manager#arug_cas03,1 // kRO : Horn
-32,arug_cas04,Gefn,Manager#arug_cas04,1 // kRO : Gefn
-33,arug_cas05,Bandis,Manager#arug_cas05,1 // kRO : Bandis
+
+//================
+// Yuno
+//================
+24,schg_cas01,Himinn,Manager#schg_cas01,1 // kRO : Himinn
+25,schg_cas02,Andlangr,Manager#schg_cas02,1 // kRO : Andlangr
+26,schg_cas03,Viblainn,Manager#schg_cas03,1 // kRO : Viblainn
+27,schg_cas04,Hljod,Manager#schg_cas04,1 // kRO : Hljod
+28,schg_cas05,Skidbladnir,Manager#schg_cas05,1 // kRO : Skidbladnir
+
+//================
+// Rachel
+//================
+29,arug_cas01,Mardol,Manager#arug_cas01,1 // kRO : Mardol
+30,arug_cas02,Cyr,Manager#arug_cas02,1 // kRO : Cyr
+31,arug_cas03,Horn,Manager#arug_cas03,1 // kRO : Horn
+32,arug_cas04,Gefn,Manager#arug_cas04,1 // kRO : Gefn
+33,arug_cas05,Bandis,Manager#arug_cas05,1 // kRO : Bandis
diff --git a/db/pre-re/item_chain.conf b/db/pre-re/item_chain.conf
index 795c2f700..f7591b934 100644
--- a/db/pre-re/item_chain.conf
+++ b/db/pre-re/item_chain.conf
@@ -8,8 +8,17 @@
//=
//= http://hercules.ws/board/
//================= More Information =================
-// <link~u> <desc~!>
+// http://hercules.ws/board/topic/1244-official-item-grouppackagechain
//====================================================
+// Structure of file:
+/*
+
+ ITMCHAIN_<Name>: {
+ <Item_Name>: <chance>
+ }
+
+*/
+
ITMCHAIN_ORE: {
Iron_Ore: 600
Iron: 380
diff --git a/db/pre-re/item_group.conf b/db/pre-re/item_group.conf
index 533e2f0ae..b2f4b1ac4 100644
--- a/db/pre-re/item_group.conf
+++ b/db/pre-re/item_group.conf
@@ -8,9 +8,16 @@
//=
//= http://hercules.ws/board/
//================= More Information =================
-// <link~u> <desc~!>
+// http://hercules.ws/board/topic/1244-official-item-grouppackagechain
//====================================================
-// <Container_Item_Name>: ( <...> "Item_Name" or ("Item_Name",Repeat_Count) )
+// Structure of file:
+/*
+ <Container_Item_Name>: (
+ "Item_Name" or
+ ("Item_Name",Repeat_Count)
+ )
+*/
+
Old_Card_Album: (
("Poring_Card",8),
("Fabre_Card",10),
diff --git a/db/pre-re/item_packages.conf b/db/pre-re/item_packages.conf
index f2f467681..acbd88752 100644
--- a/db/pre-re/item_packages.conf
+++ b/db/pre-re/item_packages.conf
@@ -8,8 +8,22 @@
//=
//= http://hercules.ws/board/
//================= More Information =================
-// <link~u> <desc~!>
+// http://hercules.ws/board/topic/1244-official-item-grouppackagechain
//====================================================
+// Structure of file:
+/*
+<Container_Item_Name>: {
+ <Entry_Item_Name>: {
+ Random: True/False - Signs whether a item is randomed or should be given whenever the packageis consumed.
+ Count: 30 - Stands for how much <Entry_Item_Name> will be obtained.
+ Expire: 2 - Signs how many hours this item will last (makes a rental item).
+ Announce: True/False - Signs whether to relay a special item obtain announcement when this item comes out of the package.
+ Rate: 50 - If 'Random' is True, a rate from 1 to 10000 (0.01% - 100%) will be given.
+ Named: True/False - Signs whether the item should have the owner's name in it.
+ }
+}
+*/
+
Special_Box: {
Wrapped_Mask: {
Rate: 3
diff --git a/db/re/item_chain.conf b/db/re/item_chain.conf
index 795c2f700..f7591b934 100644
--- a/db/re/item_chain.conf
+++ b/db/re/item_chain.conf
@@ -8,8 +8,17 @@
//=
//= http://hercules.ws/board/
//================= More Information =================
-// <link~u> <desc~!>
+// http://hercules.ws/board/topic/1244-official-item-grouppackagechain
//====================================================
+// Structure of file:
+/*
+
+ ITMCHAIN_<Name>: {
+ <Item_Name>: <chance>
+ }
+
+*/
+
ITMCHAIN_ORE: {
Iron_Ore: 600
Iron: 380
diff --git a/db/re/item_group.conf b/db/re/item_group.conf
index 3308cd96c..e392ae2b6 100644
--- a/db/re/item_group.conf
+++ b/db/re/item_group.conf
@@ -8,9 +8,16 @@
//=
//= http://hercules.ws/board/
//================= More Information =================
-// <link~u> <desc~!>
+// http://hercules.ws/board/topic/1244-official-item-grouppackagechain
//====================================================
-// <Container_Item_Name>: ( <...> "Item_Name" or ("Item_Name",Repeat_Count) )
+// Structure of file:
+/*
+ <Container_Item_Name>: (
+ "Item_Name" or
+ ("Item_Name",Repeat_Count)
+ )
+*/
+
Old_Card_Album: (
("Poring_Card",8),
("Fabre_Card",10),
diff --git a/db/re/item_packages.conf b/db/re/item_packages.conf
index d0a13e290..c4c782d0f 100644
--- a/db/re/item_packages.conf
+++ b/db/re/item_packages.conf
@@ -8,8 +8,22 @@
//=
//= http://hercules.ws/board/
//================= More Information =================
-// <link~u> <desc~!>
+// http://hercules.ws/board/topic/1244-official-item-grouppackagechain
//====================================================
+// Structure of file:
+/*
+<Container_Item_Name>: {
+ <Entry_Item_Name>: {
+ Random: True/False - Signs whether a item is randomed or should be given whenever the packageis consumed.
+ Count: 30 - Stands for how much <Entry_Item_Name> will be obtained.
+ Expire: 2 - Signs how many hours this item will last (makes a rental item).
+ Announce: True/False - Signs whether to relay a special item obtain announcement when this item comes out of the package.
+ Rate: 50 - If 'Random' is True, a rate from 1 to 10000 (0.01% - 100%) will be given.
+ Named: True/False - Signs whether the item should have the owner's name in it.
+ }
+}
+*/
+
Special_Box: {
Wrapped_Mask: {
Rate: 3
diff --git a/doc/item_bonus.txt b/doc/item_bonus.txt
index ada0cf8ec..7545016b5 100644
--- a/doc/item_bonus.txt
+++ b/doc/item_bonus.txt
@@ -3,60 +3,60 @@
//===== By: ==================================================
//= Hercules Dev Team
//===== Current Version: =====================================
-//= 20121219
+//= 20130623
//===== Description: =========================================
//= List of script instructions used in item bonuses,
//= mainly bonus/bonus2/bonus3/bonus4/bonus5 arguments.
//============================================================
-skill i,n; Gives skill #i at level n (supports skill names)
+skill i,n; Gives skill #i at level n (supports skill names)
-bonus bStr,n; STR + n
-bonus bAgi,n; AGI + n
-bonus bVit,n; VIT + n
-bonus bInt,n; INT + n
-bonus bDex,n; DEX + n
-bonus bLuk,n; LUK + n
-bonus bAllStats,n; STR + n, AGI + n, VIT + n, INT + n, DEX + n, LUK + n
-bonus bAgiVit,n; AGI + n, VIT + n
-bonus bAgiDexStr,n; STR + n, AGI + n, DEX + n
-bonus bMaxHP,n; MaxHP + n
-bonus bMaxSP,n; MaxSP + n
-bonus bMaxHPrate,n; MaxHP + n%
-bonus bMaxSPrate,n; MaxSP + n%
-bonus bAtk,n; ATK + n
-bonus bAtk2,n; ATK2 + n
-bonus bAtkRate,n; Attack power + n%
-bonus bBaseAtk,n; Basic attack power + n
-bonus bMatk,n; Magical attack power + n
-bonus bMatkRate,n; Magical attack power + n%
-bonus bDef,n; Equipment DEF + n
-bonus bDef2,n; VIT based DEF + n
-bonus bDefRate,n; Equipment DEF + n%
-bonus bDef2Rate,n; VIT based DEF + n%
-bonus bMdef,n; Equipment MDEF + n
-bonus bMdef2,n; INT based MDEF + n
-bonus bMdefRate,n; Equipment MDEF + n%
-bonus bMdef2Rate,n; INT based MDEF + n%
-bonus bHit,n; Hit + n
-bonus bHitRate,n; Hit + n%
-bonus bCritical,n; Critical + n
-bonus bCriticalRate,n; Critical + n%
-bonus bFlee,n; Flee + n
-bonus bFleeRate,n; Flee + n%
-bonus bFlee2,n; Perfect Dodge + n
-bonus bFlee2Rate,n; Perfect Dodge + n%
-bonus bSpeedRate,n; Moving speed + n% (only the highest among all is applied)
-bonus bSpeedAddRate,n; Moving speed + n%
-bonus bAspd,n; Attack speed + n
-bonus bAspdRate,n; Attack speed + n%
-bonus bAtkRange,n; Attack range + n
-bonus bCastrate,n; Skill casting time rate + n%
-bonus bUseSPrate,n; SP consumption + n%
-bonus bHPrecovRate,n; Natural HP recovery ratio + n%
-bonus bSPrecovRate,n; Natural SP recovery ratio + n%
-bonus bDoubleRate,n; Double Attack probability n% (works with all weapons | only the highest among all is applied)
-bonus bDoubleAddRate,n; Double Attack probability + n% (works with all weapons)
+bonus bStr,n; STR + n
+bonus bAgi,n; AGI + n
+bonus bVit,n; VIT + n
+bonus bInt,n; INT + n
+bonus bDex,n; DEX + n
+bonus bLuk,n; LUK + n
+bonus bAllStats,n; STR + n, AGI + n, VIT + n, INT + n, DEX + n, LUK + n
+bonus bAgiVit,n; AGI + n, VIT + n
+bonus bAgiDexStr,n; STR + n, AGI + n, DEX + n
+bonus bMaxHP,n; MaxHP + n
+bonus bMaxSP,n; MaxSP + n
+bonus bMaxHPrate,n; MaxHP + n%
+bonus bMaxSPrate,n; MaxSP + n%
+bonus bAtk,n; ATK + n
+bonus bAtk2,n; ATK2 + n
+bonus bAtkRate,n; Attack power + n%
+bonus bBaseAtk,n; Basic attack power + n
+bonus bMatk,n; Magical attack power + n
+bonus bMatkRate,n; Magical attack power + n%
+bonus bDef,n; Equipment DEF + n
+bonus bDef2,n; VIT based DEF + n
+bonus bDefRate,n; Equipment DEF + n%
+bonus bDef2Rate,n; VIT based DEF + n%
+bonus bMdef,n; Equipment MDEF + n
+bonus bMdef2,n; INT based MDEF + n
+bonus bMdefRate,n; Equipment MDEF + n%
+bonus bMdef2Rate,n; INT based MDEF + n%
+bonus bHit,n; Hit + n
+bonus bHitRate,n; Hit + n%
+bonus bCritical,n; Critical + n
+bonus bCriticalRate,n; Critical + n%
+bonus bFlee,n; Flee + n
+bonus bFleeRate,n; Flee + n%
+bonus bFlee2,n; Perfect Dodge + n
+bonus bFlee2Rate,n; Perfect Dodge + n%
+bonus bSpeedRate,n; Moving speed + n% (only the highest among all is applied)
+bonus bSpeedAddRate,n; Moving speed + n%
+bonus bAspd,n; Attack speed + n
+bonus bAspdRate,n; Attack speed + n%
+bonus bAtkRange,n; Attack range + n
+bonus bCastrate,n; Skill casting time rate + n%
+bonus bUseSPrate,n; SP consumption + n%
+bonus bHPrecovRate,n; Natural HP recovery ratio + n%
+bonus bSPrecovRate,n; Natural SP recovery ratio + n%
+bonus bDoubleRate,n; Double Attack probability n% (works with all weapons | only the highest among all is applied)
+bonus bDoubleAddRate,n; Double Attack probability + n% (works with all weapons)
bonus bPerfectHitRate,n; On-target impact attack probability n% (only the highest among all is applied)
bonus bPerfectHitAddRate,n; On-target impact attack probability + n%
bonus bCriticalDef,n; Critical ? and others the trap it is, probability + n%
@@ -89,70 +89,70 @@ bonus bDefEle,n; Gives the player's defense element n
n: 0=Neutral, 1=Water, 2=Earth, 3=Fire, 4=Wind, 5=Poison, 6=Holy, 7=Dark, 8=Spirit, 9=Undead
bonus bSplashRange,n; Splash attack radius + n (e.g. n=1 makes a 3*3 cells area, n=2 a 5*5 area, etc)
Only the highest among all is applied
-bonus bSplashAddRange,n; Splash attack radius + n (e.g. n=1 makes a 3*3 cells area, n=2 a 5*5 area, etc)
-bonus bRestartFullRecover,n; When reviving, HP and SP are fully healed (n is meaningless)
-bonus bNoCastCancel,n; Prevents casting from being interrupted when hit (does not work in GvG | n is meaningless)
-bonus bNoCastCancel2,n; Prevents casting from being interrupted when hit (works even in GvG | n is meaningless)
-bonus bNoSizeFix,n; The attack revision with the size of the monster is not received (n is meaningless)
-bonus bNoWeaponDamage,n; Prevents from receiving n% physical damage
-bonus bNoMagicDamage,n; Prevents from receiving n% magical effect (Attack, Healing, Support spells are all blocked)
-bonus bNoGemStone,n; Skills requiring Gemstones do no require them (Hocus Pocus will still require 1 Yellow Gemstone | n is meaningless)
-bonus bIntravision,n; Always see Hiding and Cloaking players/mobs (n is meaningless)
-bonus bHealPower,n; Increase heal amount of all heal skills by n%
-bonus bHealPower2,n; Increase heal amount if you are healed by any skills by n%
-bonus2 bAddEff,e,x; Adds a x/100 chance to cause effect e to the target when attacking (e.g. x=100 makes 1% chance, x=10000 makes 100% chance, etc)
+bonus bSplashAddRange,n; Splash attack radius + n (e.g. n=1 makes a 3*3 cells area, n=2 a 5*5 area, etc)
+bonus bRestartFullRecover,n; When reviving, HP and SP are fully healed (n is meaningless)
+bonus bNoCastCancel,n; Prevents casting from being interrupted when hit (does not work in GvG | n is meaningless)
+bonus bNoCastCancel2,n; Prevents casting from being interrupted when hit (works even in GvG | n is meaningless)
+bonus bNoSizeFix,n; The attack revision with the size of the monster is not received (n is meaningless)
+bonus bNoWeaponDamage,n; Prevents from receiving n% physical damage
+bonus bNoMagicDamage,n; Prevents from receiving n% magical effect (Attack, Healing, Support spells are all blocked)
+bonus bNoGemStone,n; Skills requiring Gemstones do no require them (Hocus Pocus will still require 1 Yellow Gemstone | n is meaningless)
+bonus bIntravision,n; Always see Hiding and Cloaking players/mobs (n is meaningless)
+bonus bHealPower,n; Increase heal amount of all heal skills by n%
+bonus bHealPower2,n; Increase heal amount if you are healed by any skills by n%
+bonus2 bAddEff,e,x; Adds a x/100 chance to cause effect e to the target when attacking (e.g. x=100 makes 1% chance, x=10000 makes 100% chance, etc)
e: Eff_Blind, Eff_Sleep, Eff_Poison, Eff_Freeze, Eff_Silence, Eff_Stun, Eff_Curse, Eff_Confusion, Eff_Stone, Eff_Bleeding
-bonus2 bResEff,e,x; Adds a x/100 tolerance to effect e (e.g. x=100 makes 1% tolerance, x=10000 makes 100% tolerance, etc)
+bonus2 bResEff,e,x; Adds a x/100 tolerance to effect e (e.g. x=100 makes 1% tolerance, x=10000 makes 100% tolerance, etc)
e: Eff_Blind, Eff_Sleep, Eff_Poison, Eff_Freeze, Eff_Silence, Eff_Stun, Eff_Curse, Eff_Confusion, Eff_Stone, Eff_Bleeding
-bonus2 bCastrate,n,x; Adjust casting time of skill n by x% (supports skill names)
-bonus2 bAddSize,n,x; +x% physical damage against size n.
+bonus2 bCastrate,n,x; Adjust casting time of skill n by x% (supports skill names)
+bonus2 bAddSize,n,x; +x% physical damage against size n.
n: 0=Small 1=Medium 2=Large
-bonus2 bMagicAddSize,n,x; +x% magical damage against size n.
+bonus2 bMagicAddSize,n,x; +x% magical damage against size n.
n: 0=Small 1=Medium 2=Large
-bonus2 bSubSize,n,x; x% Damage reduction against size n.
+bonus2 bSubSize,n,x; x% Damage reduction against size n.
n: 0=Small 1=Medium 2=Large
-bonus2 bAddRace,n,x; +x% physical damage against race n
+bonus2 bAddRace,n,x; +x% physical damage against race n
n: 0=Formless, 1=Undead, 2=Brute, 3=Plant, 4=Insect,
5=Fish, 6=Demon, 7=Demi-Human, 8=Angel, 9=Dragon,
10=Boss monster, 11=Other than (normal monster) boss monster
-bonus2 bMagicAddRace,n,x; +x% magical damage against race n
+bonus2 bMagicAddRace,n,x; +x% magical damage against race n
n: 0=Formless, 1=Undead, 2=Brute, 3=Plant, 4=Insect,
5=Fish, 6=Demon, 7=Demi-Human, 8=Angel, 9=Dragon,
10=Boss monster, 11=Other than (normal monster) boss monster
-bonus2 bSubRace,n,x; +x% damage reduction against race n
+bonus2 bSubRace,n,x; +x% damage reduction against race n
n: 0=Formless, 1=Undead, 2=Brute, 3=Plant, 4=Insect,
5=Fish, 6=Demon, 7=Demi-Human, 8=Angel, 9=Dragon,
10=Boss monster, 11=Other than (normal monster) boss monster
-bonus2 bAddEle,n,x; +x% physical damage against element n
+bonus2 bAddEle,n,x; +x% physical damage against element n
n: 0=Neutral, 1=Water, 2=Earth, 3=Fire, 4=Wind, 5=Poison,
6=Holy, 7=Dark, 8=Spirit, 9=Undead
-bonus2 bMagicAddEle,n,x; +x% magical damage against element n
+bonus2 bMagicAddEle,n,x; +x% magical damage against element n
n: 0=Neutral, 1=Water, 2=Earth, 3=Fire, 4=Wind, 5=Poison,
6=Holy, 7=Dark, 8=Spirit, 9=Undead
-bonus2 bSubEle,n,x; x% Damage reduction against element n.
+bonus2 bSubEle,n,x; x% Damage reduction against element n.
n: 0=Neutral, 1=Water, 2=Earth, 3=Fire, 4=Wind, 5=Poison,
6=Holy, 7=Dark, 8=Spirit, 9=Undead
-bonus2 bMagicAtkEle,n,x; Increases damage of n element magic by x%.
+bonus2 bMagicAtkEle,n,x; Increases damage of n element magic by x%.
n: 0=Neutral, 1=Water, 2=Earth, 3=Fire, 4=Wind, 5=Poison,
6=Holy, 7=Dark, 8=Spirit, 9=Undead
-bonus2 bAddDamageClass,n,x; +x% extra physical damage against monsters of class n
+bonus2 bAddDamageClass,n,x; +x% extra physical damage against monsters of class n
Against players, n is their job id
-bonus2 bAddMagicDamageClass,n,x; +x% extra magical damage against monsters of class n
+bonus2 bAddMagicDamageClass,n,x; +x% extra magical damage against monsters of class n
Against players, n is their job id.
-bonus2 bAddDefClass,n,x; x% physical damage reduction against monsters of class n
+bonus2 bAddDefClass,n,x; x% physical damage reduction against monsters of class n
Against players, n is their job id.
-bonus2 bAddMDefClass,n,x; x% magical damage reduction against monsters of class n
+bonus2 bAddMDefClass,n,x; x% magical damage reduction against monsters of class n
Against players, n is their job id.
-bonus2 bIgnoreMdefRate,n,x; Disregard x% of the target's MDEF if the target belongs to race n;
-bonus2 bHPDrainRate,n,x; n/10 % probability to drain x% HP when attacking
-bonus2 bSPDrainRate,n,x; n/10 % probability to drain x% SP when attacking
-bonus2 bSPVanishRate,n,x; Add the (n/10)% chance of decreasing enemy's SP (player) amount by x% when attacking
-bonus2 bAddMonsterDropItem,n,x; Adds a x/100% chance for item n to be dropped, when killing any monster.
+bonus2 bIgnoreMdefRate,n,x; Disregard x% of the target's MDEF if the target belongs to race n;
+bonus2 bHPDrainRate,n,x; n/10 % probability to drain x% HP when attacking
+bonus2 bSPDrainRate,n,x; n/10 % probability to drain x% SP when attacking
+bonus2 bSPVanishRate,n,x; Add the (n/10)% chance of decreasing enemy's SP (player) amount by x% when attacking
+bonus2 bAddMonsterDropItem,n,x; Adds a x/100% chance for item n to be dropped, when killing any monster.
If 'x' is negative value, then it's a part of formula
chance = -x*(killed_mob_level/10)+1
-bonus2 bGetZenyNum,n,x; When killing a monster, there is a x% chance of gaining 1~n zeny (only the highest among all is applied).
+bonus2 bGetZenyNum,n,x; When killing a monster, there is a x% chance of gaining 1~n zeny (only the highest among all is applied).
If n < 0, the max zeny to gain is -n*monster level.
-bonus2 bAddGetZenyNum,n,x; Same as bGetZenyNum, but the rates and zeny to gain stack.
+bonus2 bAddGetZenyNum,n,x; Same as bGetZenyNum, but the rates and zeny to gain stack.
bonus3 bAddMonsterDropItem,n,x,y; Adds a y/100% chance for item n to be dropped, when killing any monster of race x.
0=Formless, 1=Undead, 2=Brute, 3=Plant, 4=Insect,
@@ -170,27 +170,27 @@ bonus3 bAutoSpell,n,x,y; Auto Spell casting on attack of spell n at level x wit
//---- 2/15 new card effects ----
-bonus bCritAtkRate,n; Increase critical damage by +n%
-bonus bNoRegen,n; Stops regeneration for n
- n: 1=HP, 2=SP
-bonus bUnstripableWeapon,n; Weapon cannot be taken off via Strip skills (n is meaningless)
-bonus bUnstripableArmor,n; Armor cannot be taken off via Strip skills (n is meaningless)
-bonus bUnstripableHelm,n; Helm cannot be taken off via Strip skills (n is meaningless)
-bonus bUnstripableShield,n; Shield cannot be taken off via Strip skills (n is meaningless)
-bonus bSPGainValue,n; When killing a monster by physical attack, you gain n SP
-bonus bHPGainValue,n; When killing a monster by physical attack, you gain n HP
-bonus2 bCriticalAddRace,r,n; Critical + n vs. enemies of race r
+bonus bCritAtkRate,n; Increase critical damage by +n%
+bonus bNoRegen,n; Stops regeneration for n
+ n: 1=HP, 2=SP
+bonus bUnstripableWeapon,n; Weapon cannot be taken off via Strip skills (n is meaningless)
+bonus bUnstripableArmor,n; Armor cannot be taken off via Strip skills (n is meaningless)
+bonus bUnstripableHelm,n; Helm cannot be taken off via Strip skills (n is meaningless)
+bonus bUnstripableShield,n; Shield cannot be taken off via Strip skills (n is meaningless)
+bonus bSPGainValue,n; When killing a monster by physical attack, you gain n SP
+bonus bHPGainValue,n; When killing a monster by physical attack, you gain n HP
+bonus2 bCriticalAddRace,r,n; Critical + n vs. enemies of race r
r:
0=Formless, 1=Undead, 2=Brute, 3=Plant, 4=Insect,
5=Fish, 6=Demon, 7=Demi-Human, 8=Angel, 9=Dragon,
10=Boss monster, 11=Other than (normal monster) boss monster
-bonus2 bHPRegenRate,n,x; Gain n HP every x milliseconds
-bonus2 bHPLossRate,n,x; Lose n HP every x milliseconds
-bonus2 bAddEffWhenHit,n,x; x/100% chance to cause n state to the enemy when being hit by physical damage
-bonus2 bSkillAtk,n,x; Increase damage of skill n by x% (supports skill names)
-bonus2 bSkillHeal,n,x; Increase heal amount of skill n by x% (supports skill names)
-bonus2 bSkillHeal2,n,x; Increase heal amount if you are healed by skill n by x% (supports skill names)
-bonus2 bAddRace2,n,x; Increase damage by x% vs. enemies of race n (Check db/mob_race2_db.txt)
+bonus2 bHPRegenRate,n,x; Gain n HP every x milliseconds
+bonus2 bHPLossRate,n,x; Lose n HP every x milliseconds
+bonus2 bAddEffWhenHit,n,x; x/100% chance to cause n state to the enemy when being hit by physical damage
+bonus2 bSkillAtk,n,x; Increase damage of skill n by x% (supports skill names)
+bonus2 bSkillHeal,n,x; Increase heal amount of skill n by x% (supports skill names)
+bonus2 bSkillHeal2,n,x; Increase heal amount if you are healed by skill n by x% (supports skill names)
+bonus2 bAddRace2,n,x; Increase damage by x% vs. enemies of race n (Check db/mob_race2_db.txt)
y: 0=Don't show damage 1=Show damage
bonus3 bAutoSpellWhenHit,x,y,n; n/10% chance to cast skill x of level y on attacker (unless it is a self or support skill) when being hit by a
direct attack. (supports skill names)
@@ -257,21 +257,19 @@ bonus5 bAutoSpellWhenHit,x,y,n,t,i; n/10% chance to cast skill x of level y when
//---- 2/22 new card effects ----
bonus2 bAddItemHealRate,n,x; Increases HP recovered by n type items by x%, you can also use direct item IDs instead of group values.
- (Check db/item_group_db.txt)
+ (Check db/(pre-)re/item_group.conf)
//---- 3/15 new card effects ----
-bonus2 bSPRegenRate,n,x; Gain n SP every x milliseconds
-bonus2 bSPLossRate,n,x; Lose n SP every x milliseconds
-bonus2 bExpAddRace,n,x; Increase exp gained by x% vs. enemies of race n
-bonus2 bSPGainRace,n,x; When killing a monster of race n by physical attack gain x amount of sp
-bonus2 bSubRace2,n,x; Damage x% reduction from enemies of race n (Check db/mob_race2_db.txt)
+bonus2 bSPRegenRate,n,x; Gain n SP every x milliseconds
+bonus2 bSPLossRate,n,x; Lose n SP every x milliseconds
+bonus2 bExpAddRace,n,x; Increase exp gained by x% vs. enemies of race n
+bonus2 bSPGainRace,n,x; When killing a monster of race n by physical attack gain x amount of sp
+bonus2 bSubRace2,n,x; Damage x% reduction from enemies of race n (Check db/(Pre-Re)RE/mob_race2_db.txt)
-bonus2 bAddMonsterDropItemGroup,n,x; Adds a x/100% chance to get an item of group type n when you kill a monster (Check db/item_group_db.txt)
- If 'x' is negative value, then it's a part of formula
- chance = -x*(killed_mob_level/10)+1
+bonus bAddMonsterDropChainItem,n; Able to get item of chain type n (only constant applicable) when you kill a monster (Check db/(pre-)re/item_group.conf)
-bonus3 bAddEff,n,x,y; Adds a x/100 chance to cause effect n to the target when attacking (e.g. x=100 makes 1% chance, x=10000 makes 100% chance, etc).
+bonus3 bAddEff,n,x,y; Adds a x/100 chance to cause effect n to the target when attacking (e.g. x=100 makes 1% chance, x=10000 makes 100% chance, etc).
y is the trigger criteria:
ATF_SELF: Trigger effect on self.
ATF_TARGET: Trigger effect on target (default)
@@ -285,12 +283,10 @@ bonus3 bAddEffWhenHit,n,x,y; x/100 chance to cause n state to the enemy when be
ATF_SHORT: Trigger on melee attacks
ATF_LONG: Trigger in ranged attacks (default: trigger on all attacks)
-bonus3 bAddMonsterDropItemGroup,n,x,y; Adds a y/100% chance to get an item of group type n when you kill a monster of race x (Check db/item_group_db.txt)
+bonus2 bAddMonsterDropChainItem,n,x; Able to get item of chain type n (only constant applicable) when you kill a monster of race x (Check db/(pre-)re/item_group.conf)
0=Formless, 1=Undead, 2=Brute, 3=Plant, 4=Insect,
5=Fish, 6=Demon, 7=Demi-Human, 8=Angel, 9=Dragon,
10=Boss monster, 11=Other than (normal monster) boss monster
- If 'y' is negative value, then it's a part of formula
- chance = -y*(killed_mob_level/10)+1
bonus2 bWeaponComaRace,x,y; y/100% chance to cause Coma when attacking a monster of race x with a normal attack
0=Formless, 1=Undead, 2=Brute, 3=Plant, 4=Insect,
diff --git a/doc/script_commands.txt b/doc/script_commands.txt
index f6de42316..f718298a2 100644
--- a/doc/script_commands.txt
+++ b/doc/script_commands.txt
@@ -182,8 +182,8 @@ There are two optional fields for monster size and AI. Size can be 0
(medium), 1 (small), or 2 (big). AI can be 0 (default), 1
(attack/friendly), 2 (sphere), 3 (flora), or 4 (zanzou).
-Alternately, a monster spawned using 'boss_monster' instead of 'monster' is able
-to be detected on the map with the SC_CASH_BOSS_ALARM status (used by Convex Mirror, item ID# 12214).
+Alternately, a monster spawned using 'boss_monster' instead of 'monster' is able to be
+detected on the map with the SC_CASH_BOSS_ALARM status (used by Convex Mirror, item ID# 12214).
** NPC names
@@ -4533,29 +4533,37 @@ Check 'getitem2' to understand the arguments of the function.
---------------------------------------
-*groupranditem <group id>;
+*groupranditem <item_id/constant>;
-Returns the item_id of a random item picked from the group specified. The
-different groups and their group number are specified in
-'db/(pre-)re/item_group_db.txt'.
+Returns the item_id of a random item picked from the item container specified. There
+are different item containers and they are specified in 'db/(pre-)re/item_group.conf'.
-When used in conjunction with other functions, you can get a random item.
-For example, for a random pet lure:
-
-getitem groupranditem(15),1;
+Example:
+ getitem groupranditem 603,1;
+ getitem groupranditem Old_Blue_Box,1;
---------------------------------------
-*getrandgroupitem <group id>,<quantity>;
+*getrandgroupitem <item_id/constant>,<quantity>;
+
+Similar to the above example, this command allows players to obtain the specified
+quantity of a random item from the container. The different containers
+are specified in 'db/(pre-)re/item_group.conf'.
+
+Example:
+ getrandgroupitem Old_Blue_Box,1;
+ getrandgroupitem 603,1;
+
+---------------------------------------
-Similar to the above example, this command allows players to obtain the
-specified quantity of a random item from the group "<group id>". The
-different groups and their group number are specified in
-db/(pre-)re/item_group_db.txt
+*packageitem
-For example, obtaining three of the same random item from Old Blue Box:
+This command has only 1 param which is optional. If the package item_id is not provided, it
+will 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.
-getrandgroupitem(1,3);
+Example:
+ 12281,Tresure_Box_WoE,Event Treasure Box,2,20,,150,,,,,0xFFFFFFFF,7,2,,,,,,{ packageitem(); },{},{}
---------------------------------------