diff options
-rw-r--r-- | Changelog-SVN.txt | 5 | ||||
-rw-r--r-- | db/Changelog.txt | 8 | ||||
-rw-r--r-- | db/const.txt | 4 | ||||
-rw-r--r-- | db/item_db.txt | 54 | ||||
-rw-r--r-- | doc/item_bonus.txt | 254 | ||||
-rw-r--r-- | src/map/map.h | 3 | ||||
-rw-r--r-- | src/map/pc.c | 45 |
7 files changed, 188 insertions, 185 deletions
diff --git a/Changelog-SVN.txt b/Changelog-SVN.txt index 9ef407649..457e275c7 100644 --- a/Changelog-SVN.txt +++ b/Changelog-SVN.txt @@ -1,6 +1,8 @@ Date Added 04/02 + * Added bonuses bUnstripable[Weapon|Armor|Helm|Shield] + instead of just bUnstripable that worked only for armor [DracoRPG] * Updated Tiger Knucke Fist's 'fixed state' effect [celest] * Allowed people to enable/disable using the online column via 'register_users_online' in the login_athena.conf [Codemaster] @@ -137,7 +139,8 @@ Date Added * Fixed a typo in my fix for Stalk / Tunnel Drive increasing instead of decreasing speed, sorry [DracoRPG] * Rewrote a little bit Improve Dodge [DracoRPG] - The speed bonus does not effect when Cloaked - - Assassins & Rogues get +4 Flee/lv, but all other jobs can get +3/lv if they have the skill (not only Thiefs & Super Novices) + - Assassins & Rogues get +4 Flee/lv, but all other jobs can get +3/lv + if they have the skill (not only Thiefs & Super Novices) * Some minor changes to Sacrifice in battle.c [celest] * Set the Emperium to be immune to Sacrifice [celest] * Set the Emperium to be have max status effects immunity [celest] diff --git a/db/Changelog.txt b/db/Changelog.txt index 9557cb1db..b0a1eab32 100644 --- a/db/Changelog.txt +++ b/db/Changelog.txt @@ -7,6 +7,14 @@ Ayathoya items == 70% Added but no effect ( all are "etc" itens) Einboroch items == 5% Skill databases == celest working on them i believe. + +04/02 + * More new cards and fixes [DracoRPG] + - added Acolyte, Archer and Merchant sets effects + - added Turtle General Card effect + - corrected Job_Super_Novice -> Job_SuperNovice for Lude and Quve Cards + - autospell weapons (except Fireblend, Ice Falchion and Electric Guitar) + give no more the skill so it can't be used when you want 04/01 * New cards updates and additions [DracoRPG] - added Mage and Swordman sets effects diff --git a/db/const.txt b/db/const.txt index f78d10b25..673c5b9de 100644 --- a/db/const.txt +++ b/db/const.txt @@ -255,6 +255,10 @@ bExpAddRace 2030 bSPGainRace 2031 bSPSubRace2 2032 bAddEffWhenHitShort 2033 +bUnstripableWeapon 2034 +bUnstripableArmor 2035 +bUnstripableHelm 2036 +bUnstripableShield 2037 Eff_Stone 0 diff --git a/db/item_db.txt b/db/item_db.txt index 78d05ec32..5f355fcb5 100644 --- a/db/item_db.txt +++ b/db/item_db.txt @@ -498,7 +498,7 @@ 1164,Muramasa,Muramasa,4,20,0,1000,155,,1,0,16514,2,34,4,48,3,{},{ bonus bCritical,30; bonus bAspdAddRate,8; bonus2 bAddEff2,Eff_Curse,200; } 1165,Masamune,Masamune,4,20,0,1000,200,,1,0,16514,2,34,4,48,3,{},{ bonus bFlee,30; bonus bStr,-5; bonus bAspd,2; bonus bDefRate,-50; bonus bDef2Rate,-50; }, 1166,Dragon_Slayer,Dragon Slayer,4,20,0,1300,150,,1,0,16514,2,34,4,48,3,{},{ bonus bIgnoreDefRace,9; bonus2 bAddRace,9,15; } -1167,Schweizersabel,Schweizersabel,4,20,0,1600,160,,1,0,16514,2,34,4,48,3,{},{ bonus bAtkEle,4; skill 20,3; bonus bDef,1; bonus3 bAutoSpell,20,3,25; } +1167,Schweizersabel,Schweizersabel,4,20,0,1600,160,,1,0,16514,2,34,4,48,3,{},{ bonus bAtkEle,4; bonus bDef,1; bonus3 bAutoSpell,20,3,25; } 1168,Zweihander,Zweihander,4,20,0,2200,200,,1,0,16514,2,34,4,48,3,{},{ bonus bUnbreakableWeapon,0; } 1169,Executioner_,Executioner,4,20,0,2200,155,,1,0,16514,2,34,4,48,3,{},{ bonus bIgnoreDefRace,7; bonus2 bAddRace,7,20; bonus2 bSubRace,7,-10; bonus bAtkEle,7; } 1170,Katzbalger,Katzbalger,4,20,0,2000,175,,1,0,16514,2,34,4,48,3,{},{ bonus bVit,10; bonus bDef,10; } @@ -621,10 +621,10 @@ 1465,Halberd__,Halberd,4,54000,0,2500,165,,3,0,16514,2,34,3,33,5,{},{} 1466,Crescent_Scythe,Crescent Scythe,4,20,0,2500,180,,3,0,16514,2,34,4,48,5,{},{ bonus bCritical,30; bonus bHit,10; } 1467,Bill_Guisarme,Bill Guisarme,4,20,0,1000,183,,3,0,16514,2,34,4,48,5,{},{ bonus2 bAddRace,2,10; bonus2 bAddRace,7,5; } -1468,Zephyrus,Zephyrus,4,20,0,2000,170,,3,0,16514,2,34,4,48,5,{},{ bonus bAtkEle,4; skill 21,3; bonus2 bAddEff,Eff_Silence,200; bonus3 bAutoSpell,21,3,25; } +1468,Zephyrus,Zephyrus,4,20,0,2000,170,,3,0,16514,2,34,4,48,5,{},{ bonus bAtkEle,4; bonus2 bAddEff,Eff_Silence,200; bonus3 bAutoSpell,21,3,25; } 1469,Longinus's_Spear,Longinus's Spear,4,20,0,2500,180,,3,0,16514,2,34,4,48,5,{},{ bonus bAtkEle,7; bonus2 bAddRace,7,10; bonus2 bAddRace,8,10; } -1470,Brionac,Brionac,4,20,0,3000,190,,3,0,16514,2,34,4,48,5,{},{ bonus bAtkEle,6; skill 28,5; skill 13,3; bonus3 bAutoSpell,13,3,25; bonus2 bAddRace,10,5; }, -1471,Hellfire,Hellfire,4,20,0,3500,200,,3,0,16514,2,34,4,48,5,{},{ bonus bAtkEle,3; skill 17,3; bonus3 bAutoSpell,17,3,25; bonus bStr,3; } +1470,Brionac,Brionac,4,20,0,3000,190,,3,0,16514,2,34,4,48,5,{},{ bonus bAtkEle,6; skill 28,5; bonus3 bAutoSpell,13,3,25; bonus2 bAddRace,10,5; }, +1471,Hellfire,Hellfire,4,20,0,3500,200,,3,0,16514,2,34,4,48,5,{},{ bonus bAtkEle,3; bonus3 bAutoSpell,17,3,25; bonus bStr,3; } // 2 Handed Staffs 1472,Staff_of_Soul,Soul Staff,4,20,0,1400,25,,1,0,66052,2,34,3,73,10,{},{ bonus bInt,5; bonus bAgi,2; bonus bMatkRate,15; } 1473,Wizardy_Staff,Wizardy Staff,4,20,0,2400,120,,1,0,66052,2,34,4,90,10,{},{ bonus bInt,6; bonus bDex,2; bonus bMatkRate,15; } @@ -656,7 +656,7 @@ 1525,Long_Mace,Long Mace,4,20,0,800,135,,3,0,33040,2,2,4,40,8,{},{ bonus bLongAtkDef,10; } 1526,Slash,Slash,4,20,0,1000,145,,1,0,33040,2,2,4,40,8,{},{ bonus2 bAddRace,1,15; bonus2 bWeaponComaRace,1,50; } 1527,Quadrille,Quadrille,4,20,0,900,165,,1,0,33040,2,2,4,40,8,{},{ bonus2 bAddRace,1,10; bonus2 bAddRace,7,10; bonus2 bAddEle,2,10; } -1528,Grand_Cross,Grand Cross,4,20,0,1500,140,,1,0,33040,2,2,4,40,8,{},{ bonus bAtkEle,6; skill 77,3; bonus3 bAutoSpell,77,3,25; bonus2 bHPDrainRate,100,1; }, +1528,Grand_Cross,Grand Cross,4,20,0,1500,140,,1,0,33040,2,2,4,40,8,{},{ bonus bAtkEle,6; bonus3 bAutoSpell,77,3,25; bonus2 bHPDrainRate,100,1; }, 1529,Iron_Driver,Iron Driver,4,20,0,3000,155,,1,0,33024,2,2,3,78,8,{},{} 1530,Mjolnir,Mjolnir,4,20,0,6000,250,,1,0,8701363,2,2,4,95,8,{},{ bonus bAtkEle,4; bonus bDex,40; bonus bStr,15; bonus bAspdRate,30; } 1531,Spanner,Spanner,4,20,0,2500,115,,1,0,33040,2,2,3,55,8,{},{ bonus2 bAddEff,Eff_Blind,100; bonus2 bAddEff,Eff_Stan,100; bonus2 bAddEff,Eff_Poison,100; bonus2 bAddEff,Eff_Freeze,100; } @@ -1156,7 +1156,7 @@ 4119,Bathory_Card,Bathory Card,6,20,0,10,,,,,,,16,,,,{},{ bonus bDefEle,7; } 4120,Petit__Card,Petit Card,6,20,0,10,,,,,,,32,,,,{},{ bonus2 bSubRace,9,30; } 4121,Phreeoni_Card,Phreeoni Card,6,20,0,10,,,,,,,2,,,,{},{ bonus bHit,100; } -4122,Deviruchi_Card,Deviruchi Card,6,20,0,10,,,,,,,769,,,,{},{ bonus bStr,1; bonus2 bResEff,Eff_Blind,10000; } +4122,Deviruchi_Card,Deviruchi Card,6,20,0,10,,,,,,,769,,,,{},{ bonus bStr,1; bonus2 bResEff,Eff_Blind,10000; } 4123,Eddga_Card,Eddga Card,6,20,0,10,,,,,,,64,,,,{},{ bonus bInfiniteEndure,0; bonus bMaxHPrate,-25; } 4124,Medusa_Card,Medusa Card,6,20,0,10,,,,,,,32,,,,{},{ bonus2 bSubRace,6,15; bonus2 bResEff,Eff_Stone,10000; } 4125,Deviace_Card,Deviace Card,6,20,0,10,,,,,,,2,,,,{},{ bonus2 bAddRace,7,7; bonus2 bAddRace,2,7; bonus2 bAddRace,3,7; bonus2 bAddRace,4,7; } @@ -1186,12 +1186,10 @@ // New Cards // //OK = Tested, Works fine. //??OK = looks right, but not properly tested yet - //bonus2 bAddItemHealRate,n,x; Increases HP recovered by n type items by x% -// n:1=potions 2=herbs 3=fruits 4=meat 5=candy -// 6=juice 7=sashimi -//bonus3 bAddMonsterDropItem,n,x; When pushing down the monster with physical attack, the probability which drops item n +x% (the item which the monster drops unrelated ones) -// 0,Intangibility 1,Immortality 2,Animal 3,Plant 4,Insect 5,Fish and shellfish 6,Demon 7,Human 8,Angel 9,Dragon family 10:Boss monster 11:Other than boss monster (normal monster) +// n:1=potions 2=herbs 3=fruits 4=meat 5=candy 6=juice 7=sashimi +//bonus3 bAddMonsterDropItem,n,x; When killing a monster with physical attack, the probability which drops item n +x% (the item which the monster drops unrelated ones) +//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 //=================================================================== 4149,Gargoyle_Card,Gargoyle Card,6,20,0,10,,,,,,,136,,,,{},{} //missing getitemonkill?? (item not implemented) @@ -1205,7 +1203,7 @@ 4157,Goblin_Archer_Card,Goblin Archer Card,6,20,0,10,,,,,,,2,,,,{},{ bonus bCritAtkRate,10; bonus2 bCriticalAddRace,1,7; } //OK 4158,Sky_Deleter_Card,Sky Deleter Card,6,20,0,10,,,,,,,16,,,,{},{ bonus bNoRegen,1; bonus bHPGainValue,100;} // ??OK 4159,Nine_Tail_Card,Nine Tail Card,6,20,0,10,,,,,,,4,,,,{},{ bonus bAgi,2; if(getrefine>8) bonus bFlee,20; } //OK -4160,Firelock_Soldier_Card,Firelock Soldier Card,6,20,0,10,,,,,,,64,,,,{},{ bonus bStr,2; if(getrefine<=8) end; bonus bMaxHPrate,10; bonus bMaxSPrate,10; } //OK +4160,Firelock_Soldier_Card,Firelock Soldier Card,6,20,0,10,,,,,,,64,,,,{},{ bonus bStr,2; if(getrefine<=8) end; bonus bMaxHPrate,10; bonus bMaxSPrate,10; } //OK 4161,Grand_Peco_Card,Grand Peco Card,6,20,0,10,,,,,,,769,,,,{},{ bonus4 bAutoSpellWhenHit,75,1,1,0; if(!isequipped(4031)) end; bonus bDef,3; bonus bVit,3; } //OK 4162,Grizzly_Card,Grizzly Card,6,20,0,10,,,,,,,16,,,,{},{ bonus bDef,2; if(isequipped(4074)) bonus2 bAddEffWhenHit,Eff_Blind,3000; } //OK 4163,Gryphon_Card,Gryphon Card,6,20,0,10,,,,,,,2,,,,{},{ bonus bFlee,2; bonus bCritical,7; if (callfunc("Is_Sword_Class")!=0) bonus3 bAutoSpell,62,5,1; } //OK @@ -1231,24 +1229,24 @@ 4183,Vagabond_Wolf_Card,Vagabond Wolf Card,6,20,0,10,,,,,,,4,,,,{},{ bonus bStr,1; if(isequipped(4029)) bonus bFlee,18; } //OK 4184,Lava_Golem_Card,Lava Golem Card,6,20,0,10,,,,,,,2,,,,{},{ bonus2 bAddRace2,4,30; } //OK 4185,Rideword_Card,Rideword Card,6,20,0,10,,,,,,,769,,,,{},{ bonus bInt,1; if(callfunc("Is_Holy_Class")) bonus bMdef,1; } //OK -4186,Raggler_Card,Raggler Card,6,20,0,10,,,,,,,64,,,,{},{ bonus bStr,1; bonus bVit,1; } //OK +4186,Raggler_Card,Raggler Card,6,20,0,10,,,,,,,64,,,,{},{ bonus bStr,1; bonus bVit,1; if(!isequipped(4233,4281,4321,4206)) end; bonus bLuk,10; bonus3 bSPDrainValue,100,2,0; bonus2 bSkillAtk,42,20; if(callfunc("Is_Merc_Class")==0) bonus bMagicDamageReturn,20; } //OK 4187,Raydric_Archer_Card,Raydric Archer Card,6,20,0,10,,,,,,,136,,,,{},{} //missing getitemonkill?? (item not implemented) 4188,Leib_Olmai_Card,Leib Olmai Card,6,20,0,10,,,,,,,769,,,,{},{ bonus2 bSubEle,3,10; } //missing getitemonracekill?? 4189,Wraith_Dead_Card,Wraith Dead Card,6,20,0,10,,,,,,,16,,,,{},{ bonus2 bAddEffWhenHit,Eff_Curse,2000; } //missing getitemonracekill?? 4190,Wraith_Card,Wraith Card,6,20,0,10,,,,,,,136,,,,{},{} //missing getitemonkill?? (item not implemented) 4191,Loli_Ruri_Card,Loli Ruri Card,6,20,0,10,,,,,,,16,,,,{},{ bonus4 bAutoSpellWhenHit,28,3,5,0; } //OK 4192,Rotar_Zairo_Card,Rotar Zairo Card,6,20,0,10,,,,,,,2,,,,{},{ bonus bCritAtkRate,10; bonus2 bCriticalAddRace,5,7; } //OK -4193,Lude_Card,Lude Card,6,20,0,10,,,,,,,136,,,,{},{ if(Class==Job_Novice||Class==Job_Super_Novice||Class==4001) bonus3 bAutoSpellWhenHit,8,1,20; if(isequipped(4294)) bonus bMaxHP,300; } //??OK +4193,Lude_Card,Lude Card,6,20,0,10,,,,,,,136,,,,{},{ if(Class==Job_Novice||Class==Job_SuperNovice||Class==4001) bonus3 bAutoSpellWhenHit,8,1,20; if(isequipped(4294)) bonus bMaxHP,300; } //??OK 4194,Rybio_Card,Rybio Card,6,20,0,10,,,,,,,16,,,,{},{ if(readparam(bDex)<=77) bonus2 bAddEffWhenHit,Eff_Stan,1000; if(readparam(bDex)>77) bonus2 bAddEffWhenHit,Eff_Stan,3000; } //??OK 4195,Leaf_Cat_Card,Leaf Cat Card,6,20,0,10,,,,,,,769,,,,{},{ bonus2 bSubEle,1,10; } //missing getitemonracekill?? 4196,Marin_Card,Marin Card,6,20,0,10,,,,,,,136,,,,{},{} //missing bRandomDrop,Item1,Chance,Item2,Chance,etc 4197,Mastering_Card,Mastering Card,6,20,0,10,,,,,,,4,,,,{},{ bonus bLuk,1; if(isequipped(4001)) bonus bFlee,18; } //OK 4198,Maya_Purple_Card,Maya Purple Card,6,20,0,10,,,,,,,136,,,,{},{} //missing bIntravision (always see Cloaked & Hidden) -4199,Merman_Card,Merman Card,6,20,0,10,,,,,,,64,,,,{},{ bonus bHPrecovRate,10; bonus bSPrecovRate,10; } //OK -4200,Megalith_Card,Megalith Card,6,20,0,10,,,,,,,64,,,,{},{ if(getrefine<6) bonus bMdef,7; } //OK +4199,Merman_Card,Merman Card,6,20,0,10,,,,,,,64,,,,{},{ bonus bHPrecovRate,10; bonus bSPrecovRate,10; if(!isequipped(4297,4234,4252,4178)) end; bonus bAgi,5; bonus bDex,3; bonus bLongAtkRate,20; bonus bPerfectHitAddRate,20; if(callfunc("Is_Bow_Class")==0) end; bonus2 bWeaponComaRace,2,500; } // missing increaseexponracekill +4200,Megalith_Card,Megalith Card,6,20,0,10,,,,,,,64,,,,{},{ if(getrefine<6) bonus bMdef,7; } //OK 4201,Majoruros_Card,Majoruros Card,6,20,0,10,,,,,,,16,,,,{},{ bonus2 bAddEffWhenHit,Eff_Stan,2000; } //?OK 4202,Civil_Servant_Card,Civil Servant Card,6,20,0,10,,,,,,,2,,,,{},{ bonus2 bAddEle,8,20; } //OK -4203,Mutant_Dragonoid_Card,Mutant Dragonoid Card,6,20,0,10,,,,,,,2,,,,{},{ bonus bAtk,15; if(getskilllv(17)==10) goto FB_10; bonus3 bAutoSpell,17,3,1; end; FB_10: bonus3 bAutoSpell,17,10,25; } //??OK +4203,Mutant_Dragonoid_Card,Mutant Dragonoid Card,6,20,0,10,,,,,,,2,,,,{},{ bonus bAtk,15; if(getskilllv(17)==10) goto FB_10; bonus3 bAutoSpell,17,3,1; end; FB_10: bonus3 bAutoSpell,17,10,1; } //??OK 4204,Mini_Demon_Card,Mini Demon Card,6,20,0,10,,,,,,,64,,,,{},{ bonus2 bSubRace,2,-20; } //missing increaseexponracekill?? 4205,Mimic_Card,Mimic Card,6,20,0,10,,,,,,,136,,,,{},{} //missing getitemonkill?? 4206,Myst_Case_Card,Mystcase Card,6,20,0,10,,,,,,,769,,,,{},{} //missing getitemonkill?? @@ -1262,8 +1260,8 @@ 4214,Bloody_Murderer_Card,Bloody Murderer Card,6,20,0,10,,,,,,,2,,,,{},{ bonus bCritAtkRate,10; bonus2 bCriticalAddRace,4,7; } //OK 4215,Blazer_Card,Blazer Card,6,20,0,10,,,,,,,136,,,,{},{} //missing getitemonracekill?? 4216,Sasquatch_Card,Sasquatch Card,6,20,0,10,,,,,,,16,,,,{},{ bonus2 bAddEffWhenHit,Eff_Freeze,2000; } //??OK -4217,Enchanted_Peach_Tree_Card,Enchanted Peach Tree Card,6,20,0,10,,,,,,,32,,,,{},{ if(getskilllv(28)==10) goto HE_10; bonus3 bAutoSpell,28,1,1; end; HE_10: bonus3 bAutoSpell,28,10,1; } //??OK -4218,Succubus_Card,Succubus Card,6,20,0,10,,,,,,,16,,,,{},{ bonus bMaxHP,1000; if(isequipped(4268)) goto L_INCUB; bonus bVit,-3; bonus bHPrecovRate,-20; end; L_INCUB: bonus bVit,4; bonus bHPrecovRate,30; } //??OK HpRecoveryRate != +30% when combo +4217,Enchanted_Peach_Tree_Card,Enchanted Peach Tree Card,6,20,0,10,,,,,,,32,,,,{},{ if(!getskilllv(28)==10) bonus3 bAutoSpell,28,1,1; if(getskilllv(28)==10) bonus3 bAutoSpell,28,10,1; if(!isequipped(4280,4185,4293,4312)) end; bonus bVit,10; bonus bCastrate,-10; bonus bUseSPRate,-10; if(callfunc("Is_Holy_Class")==0) end; bonus2 bSubRace,1,30; bonus2 bSubRace,6,30; } // missing increaseexponracekill?? +4218,Succubus_Card,Succubus Card,6,20,0,10,,,,,,,16,,,,{},{ bonus bMaxHP,1000; if(isequipped(4268)) goto L_INCUB; bonus bVit,-3; bonus bHPrecovRate,-20; end; L_INCUB: bonus bVit,4; bonus bHPrecovRate,30; } //??OK HpRecoveryRate != +30% when combo 4219,Sage_Worm_Card,Sage Worm Card,6,20,0,10,,,,,,,136,,,,{},{} //missing getitemonkill?? 4220,Solider_Card,Solider Card,6,20,0,10,,,,,,,16,,,,{},{ bonus bDef,2; bonus bMdef,2; } //OK 4221,Skeleton_General_Card,Skeleton General Card,6,20,0,10,,,,,,,64,,,,{},{ bonus2 bSubRace,4,-20; } //missing increaseexponracekill?? @@ -1278,7 +1276,7 @@ 4230,Shinobi_Card,Shinobi Card,6,20,0,10,,,,,,,136,,,,{},{ bonus bAgi,1; bonus4 bAutoSpellWhenHit,135,5,1,0; } //??OK 4231,Increase_Soil_Card,Increase Soil Card,6,20,0,10,,,,,,,,,,,{},{} 4232,Hermit_Plant_Card,Hermit Plant Card,6,20,0,10,,,,,,,,,,,{},{} -4233,Baby_Leopard_Card,Baby Leopard Card,6,20,0,10,,,,,,,16,,,,{},{ bonus bLuk,3; if(!callfunc("Is_Merc_Class")) end; bonus bUnbreakableArmor,0; bonus bUnstrippable,0; } //??OK +4233,Baby_Leopard_Card,Baby Leopard Card,6,20,0,10,,,,,,,16,,,,{},{ bonus bLuk,3; if(callfunc("Is_Merc_Class")==0) end; bonus bUnbreakableArmor,0; bonus bUnstripableArmor,0; } //??OK 4234,Anolian_Card,Anolian Card,6,20,0,10,,,,,,,16,,,,{},{ if(getskilllv(45)==10) goto IC_10; bonus4 bAutoSpellWhenHit,45,1,1,0; end; IC_10: bonus4 bAutoSpellWhenHit,45,10,1,0; } //??OK 4235,Cookie_Xmas_Card,Cookie Xmas Card,6,20,0,10,,,,,,,64,,,,{},{ bonus2 bSubRace,8,-20; } //missing increaseexponracekill?? 4236,Amon_Ra_Card,Amon Ra Card,6,20,0,10,,,,,,,64,,,,{},{ bonus bAllStats,1; bonus4 bAutoSpellWhenHit,73,10,1+(readparam(bInt)>=99),0; } //??OK (X>=Y) returns 0 or 1 @@ -1321,16 +1319,14 @@ 4273,Shellfish_Card,Shellfish Card,6,20,0,10,,,,,,,2,,,,{},{ bonus bAtk,5; bonus2 bAddDamageClass,1073,30; } //OK 4274,Zombie_Master_Card,Zombie Master Card,6,20,0,10,,,,,,,2,,,,{},{} //missing recoversponracekill?? 4275,Zombie_Prisoner_Card,Zombie Prisoner Card,6,20,0,10,,,,,,,64,,,,{},{ bonus2 bSubRace,1,-20; } //missing increaseexponracekill?? -4276,Lord_of_Death_Card,Lord of Death Card,6,20,0,10,,,,,,,2,,,,{},{ bonus2 bAddEff,Eff_Stan,100; bonus2 bAddEff,Eff_Curse,100; bonus2 bAddEff,Eff_Poison,100; bonus2 bAddEff,Eff_Bleeding,100; } //missing Coma Effect?? +4276,Lord_of_Death_Card,Lord of Death Card,6,20,0,10,,,,,,,2,,,,{},{ bonus2 bAddEff,Eff_Stan,100; bonus2 bAddEff,Eff_Curse,100; bonus2 bAddEff,Eff_Poison,100; bonus2 bAddEff,Eff_Bleeding,100; bonus2 bAddWeaponComaRace,11,30; } //??OK 4277,Zherlthsh_Card,Zherlthsh Card,6,20,0,10,,,,,,,32,,,,{},{ bonus bLuk,2; bonus2 bSkillAtk,316,10; bonus2 bSkillAtk,324,10; } //??OK 4278,Gibbet_Card,Gibbet Card,6,20,0,10,,,,,,,769,,,,{},{ if(getrefine<6) bonus bMdef,5; } //OK 4279,Earth_Deleter_Card,Earth Deleter Card,6,20,0,10,,,,,,,16,,,,{},{ bonus bNoRegen,2; bonus bSPGainValue,15; } //??OK 4280,Geographer_Card,Geographer Card,6,20,0,10,,,,,,,16,,,,{},{ if(getskilllv(34)==10) goto BL_10; bonus4 bAutoSpellWhenHit,34,2,1,0; end; BL_10: bonus4 bAutoSpellWhenHit,34,10,1,0; } //??OK -4281,Zipper_Bear_Card,Zipper Bear Card,6,20,0,10,,,,,,,2,,,,{},{ bonus bAtk,30; bonus3 bSPDrainValue,100,-1,0; if(!callfunc("Is_Merc_Class")) end; bonus bUnbreakableWeapon,0; bonus bUnstrippable,0; } //??OK +4281,Zipper_Bear_Card,Zipper Bear Card,6,20,0,10,,,,,,,2,,,,{},{ bonus bAtk,30; bonus3 bSPDrainValue,100,-1,0; if(callfunc("Is_Merc_Class")==0) end; bonus bUnbreakableWeapon,0; bonus bUnstripableWeapon,0; } //??OK 4282,Tengu_Card,Tengu Card,6,20,0,10,,,,,,,136,,,,{},{} //missing getitemonkill?? -//for testing purpose: -4283,Test_Card,Test Card,6,20,0,10,,,,,,,2,,,,{},{ dispbottom "Test Card OK:"; dispbottom isequipped(4149)+" "+isequippedcnt(4149)+" "+cardscnt(4149)+" "+getrefine; } //For test purposes only -4283,Greatest_General_Card,Greatest General Card,6,20,0,10,,,,,,,,,,,{},{} +4283,Greatest_General_Card,Greatest General Card,6,20,0,10,,,,,,,136,,,,{},{ bonus3 bAutospell,261,1,1+callfunc("Is_Holy_Class"); } //??OK 4284,Chepet_Card,Chepet Card,6,20,0,10,,,,,,,2,,,,{},{ bonus3 bAutoSpell,28,5,5; } //??OK 4285,Choco_Card,Choco Card,6,20,0,10,,,,,,,4,,,,{},{ bonus bFlee2,5; bonus bFlee,10; } //OK 4286,Karakasa_Card,Karakasa Card,6,20,0,10,,,,,,,16,,,,{},{ if(readparam(bStr)<=77) bonus2 bAddEffWhenHit,Eff_Confusion,1000; if(readparam(bStr)>77) bonus2 bAddEffWhenHit,Eff_Confusion,3000; } //??OK @@ -1341,7 +1337,7 @@ 4291,Kobold_Leader_Card,Kobold Leader Card,6,20,0,10,,,,,,,2,,,,{},{ bonus2 bAddRace2,2,30; } //OK 4292,Kobold_Archer_Card,Kobold Archer Card,6,20,0,10,,,,,,,2,,,,{},{ bonus bCritAtkRate,10; bonus2 bCriticalAddRace,3,7; } //OK 4293,Cookie_Card,Cookie Card,6,20,0,10,,,,,,,136,,,,{},{ bonus bLuk,2; bonus2 bSkillAtk,156,10; } //OK -4294,Quve_Card,Quve Card,6,20,0,10,,,,,,,136,,,,{},{ if((Class==Job_Novice)||(Class==Job_Super_Novice)) bonus4 bAutoSpellWhenHit,29,1,20,0; if(isequipped(4193)) bonus bMaxSP,60; } //??OK +4294,Quve_Card,Quve Card,6,20,0,10,,,,,,,136,,,,{},{ if((Class==Job_Novice)||(Class==Job_SuperNovice)||(Class==4001)) bonus4 bAutoSpellWhenHit,29,1,20,0; if(isequipped(4193)) bonus bMaxSP,60; } //??OK 4295,Kraben_Card,Kraben Card,6,20,0,10,,,,,,,16,,,,{},{ bonus2 bAddEffWhenHit,Eff_Blind,2000; } //??OK 4296,Cramp_Card,Cramp Card,6,20,0,10,,,,,,,769,,,,{},{ if(isequipped(4028)) bonus bStr,3; } //missing getzenybychance?? 4297,Cruiser_Card,Cruiser Card,6,20,0,10,,,,,,,2,,,,{},{ bonus bCritAtkRate,10; bonus2 bCriticalAddRace,2,7; } //OK @@ -1352,14 +1348,14 @@ 4302,Tao_Gunka_Card,Tao Gunka Card,6,20,0,10,,,,,,,16,,,,{},{ bonus bMaxHPrate,100; bonus bDef,-50; bonus bMdef,-50; } //??OK //4303,Some_card, Whisper Boss Card,6,20,0,10,,,,,,,4,,,,{},{ bonus bFlee,10; if(readparam(bStr)>80) bonus bAtk,20; if(readparam(bVit)>80) bonus bMaxHPrate,30; if(readparam(bLuk)>80) bonus bCritical,3; }; //Temp ID until the true one is found 4304,Tamruan_Card,Tamruan Card,6,20,0,10,,,,,,,32,,,,{},{ bonus bDef,2; bonus2 bSkillAtk,250,10; bonus2 bSkillAtk,251,10; } //??OK -4305,Turtle_General_Card,Turtle General Card,6,20,0,10,,,,,,,2,,,,{},{ bonus bAtkRate,20; if(callfunc("Is_Sword_Class")!=0) bonus3 bAutoSpell,7,10,1; } //??OK +4305,Turtle_General_Card,Turtle General Card,6,20,0,10,,,,,,,2,,,,{},{ bonus bAtkRate,20; if(callfunc("Is_Sword_Class")) bonus3 bAutoSpell,7,10,1; } //??OK 4306,Toad_Card,Toad Card,6,20,0,10,,,,,,,4,,,,{},{ bonus bFlee2,1; if(isequipped(4014)) bonus bFlee,18; } //OK 4307,Beetle_King_Card,Beetle King Card,6,20,0,10,,,,,,,2,,,,{},{} //missing recoversponracekill?? 4308,Tri_Joint_Card,Tri Joint Card,6,20,0,10,,,,,,,2,,,,{},{} //missing recoversponracekill?? 4309,Parasite_Card,Parasite Card,6,20,0,10,,,,,,,32,,,,{},{ bonus bDef,1; bonus2 bSubEle,0,5; } //OK 4310,Panzer_Goblin_Card,Panzer Goblin Card,6,20,0,10,,,,,,,2,,,,{},{ bonus bCritAtkRate,10; bonus2 bCriticalAddRace,6,7; } //OK 4311,Permeter_Card,Permeter Card,6,20,0,10,,,,,,,769,,,,{},{ bonus2 bSubEle,7,15; bonus2 bSubEle,9,15; } //OK -4312,Seal_Card,Seal Card,6,20,0,10,,,,,,,2,,,,{},{ bonus bFlee,3; bonus bHit,10; if(!callfunc("Is_Holy_Class")) end; bonus2 bCriticalAddRace,1,9; bonus2 bCriticalAddRace,6,9; } //??OK +4312,Seal_Card,Seal Card,6,20,0,10,,,,,,,2,,,,{},{ bonus bFlee,3; bonus bHit,10; if(callfunc("Is_Holy_Class")==0) end; bonus2 bCriticalAddRace,1,9; bonus2 bCriticalAddRace,6,9; } //??OK 4313,Punk_Card,Punk Card,6,20,0,10,,,,,,,4,,,,{},{ if(getskilllv(92)==5) goto QU_5; bonus4 bAutoSpellWhenHit,92,1,1,0; end; QU_5: bonus4 bAutoSpellWhenHit,10,5,1,0; } //??OK 4314,Penomena_Card,Penomena Card,6,20,0,10,,,,,,,32,,,,{},{ bonus2 bSubRace,0,30; } //OK 4315,Pest_Card,Pest Card,6,20,0,10,,,,,,,16,,,,{},{ if(readparam(bInt)<=77) bonus2 bAddEffWhenHit,Eff_Stone,1000; if(readparam(bInt)>77) bonus2 bAddEffWhenHit,Eff_Stone,3000; } //??OK @@ -1372,7 +1368,7 @@ 4322,High_Orc_Card,High Orc Card,6,20,0,10,,,,,,,32,,,,{},{ bonus bDef,1; } //missing damagereturnbychance?? 4323,Garm_Baby_Card,Garm Baby Card,6,20,0,10,,,,,,,2,,,,{},{ if(isequipped(4324)) goto GARM; bonus3 bAutoSpell,15,3,1; end; GARM: bonus3 bAutoSpell,15,3,2; } //??OK 4324,Garm_Card,Garm Card,6,20,0,10,,,,,,,16,,,,{},{ bonus2 bAddEffWhenHit,Eff_Freeze,5000; } //OK -4325,Harpy_Card,Harpy Card,6,20,0,10,,,,,,,4,,,,{},{ bonus2 bSubEle,0,15; bonus2 bSkillAtk,11,5; if(!isequipped(4208,4258,4309,4327)) end; bonus bMaxHP,500; bonus bDef,5; bonus bMDef,5; bonus2 bSkillAtk,14,10; bonus2 bSkillAtk,19,10; bonus2 bSkillAtk,20,10; if(!callfunc("Is_Magic_Class")) end; bonus bMatkRate,3; bonus bCastrate,-15; } //??OK +4325,Harpy_Card,Harpy Card,6,20,0,10,,,,,,,4,,,,{},{ bonus2 bSubEle,0,15; bonus2 bSkillAtk,11,5; if(!isequipped(4208,4258,4309,4327)) end; bonus bMaxHP,500; bonus bDef,5; bonus bMDef,5; bonus2 bSkillAtk,14,10; bonus2 bSkillAtk,19,10; bonus2 bSkillAtk,20,10; if(callfunc("Is_Magic_Class")==0) end; bonus bMatkRate,3; bonus bCastrate,-15; } //??OK 4326,Sea_Otter_Card,Sea Otter Card,6,20,0,10,,,,,,,136,,,,{},{ bonus2 bAddItemHealRate,7,50; bonus3 bAddMonsterDropItem,544,5,5000; bonus3 bAddMonsterDropItem,551,5,5000; } 4327,Bloody_Butterfly_Card,Bloody Butterfly Card,6,20,0,10,,,,,,,136,,,,{},{ bonus bCastrate,30; bonus bNoCastCancel2,0; bonus2 bSkillAtk,18,5; } //??OK 4328,Hyegun_Card,Hyegun Card,6,20,0,10,,,,,,,4,,,,{},{ bonus bFlee,15; bonus bCritical,1; if(isequipped(4090,4212)) bonus bAllStats,1; } //??OK diff --git a/doc/item_bonus.txt b/doc/item_bonus.txt index d0113595d..9560aa53f 100644 --- a/doc/item_bonus.txt +++ b/doc/item_bonus.txt @@ -1,140 +1,119 @@ //eAthena Items Scripting Manual -skill n,x; skill n of level x - -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 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 attack power + n% -bonus bBaseAtk,n; Basic attack power + n -bonus bMatk,n; Magical attack power 1 + n and magical attack power 2 + n -bonus bMatk1,n; Magical attack power 1 + n -bonus bMatk2,n; Magical attack power 2 + n -bonus bMatkRate,n; Magical attack power + n% -bonus bMdef,n; Magical defensive power + n -bonus bDef,n; DEF + n -bonus bHit,n; On-target hit power + n -bonus bCritical,n; Critical + n -bonus bCriticalRate,n; Critical ratio + n% -bonus bFlee,n; Evasion power + n -bonus bFlee2,n; Perfection evasion + n -bonus bSpeed,n; Drift speed + n -bonus bAspd,n; Attack speed + n -bonus bSpeedRate,n; Drift speed + n% (just high ones application) -bonus bAspdRate,n; Attack speed + n% (just high ones application) -bonus bSpeedAddRate drift speed + n% -bonus bAspdAddRate attack speed + n% -bonus bAtkRange,n; Attack Range + n -bonus bCastrate,n; Cast rate + n% -bonus bUseSPrate,n; SP consumption + n% -bonus bHPrecovRate,n; HP automatic recovery ratio + n% (you exclude the recovery with skill) -bonus bSPrecovRate,n; SP automatic recovery ratio + n% (you exclude the recovery with skill) -bonus bDoubleRate,n; attack probability n% (with weapon disregard just high ones application) -bonus bDoubleAddRate,n; Double attack probability + n% (weapon disregard) -bonus bPerfectHitRate,n; On-target impact attack probability n% (just high ones application) -bonus bPerfectHitAddRate,n; On-target impact attack probability +n% -bonus bGetZenyNum,n; When pushing down the monster with physical attack, rand () ?? of %n+1 is obtained, (as for n just high ones application) -bonus bAddGetZenyNum,n; When pushing down the monster with physical attack, rand () ?? of %n+1 is obtained, (n is done +) -bonus bCriticalDef,n; Critical ? and others the trap it is, probability + n% -bonus bNearAtkDef,n; The damage of short-range attack n% reduction (magic and the trap, the ? is excluded) -bonus bLongAtkDef,n; damage of stand off attack n% reduction (magic and the trap, the ? is excluded) -bonus bMagicAtkDef the damage of magical attack n% reduction -bonus bMiscAtkDef MISC attack (the trap and ?) the damage n% reduction - -bonus bIgnoreDefRace,n Defense disregard of enemy of n race - 0,Intangibility 1,Immortality 2,Animal 3,Plant 4,Insect 5,Fish and shellfish 6,Demon 7,Human 8,Angel 9,Dragon family 10:Boss monster 11:Other than (normal monster) boss monster -bonus bIgnoreDefEle,n; Defense disregard of enemy of n attribute - 0,Nothing 1,Water 2,Earth 3,Fire 4,Wind 5,Poison 6,Saint 7,Darkness 8,Sense 9,Immortality -bonus bIgnoreMDefRace n race the magical defensive power disregard damage - 0,Intangibility 1,Immortality 2,Animal 3,Plant 4,Insect 5,Fish and shellfish 6,Demon 7,Human 8,Angel 9,Dragon family 10:Boss monster 11:Other than boss monster (normal monster) -bonus bIgnoreMDefEle n attribute the magical defensive power disregard damage - 0,Nothing 1,Water 2,Earth 3,Fire 4,Wind 5,Poison 6,Saint 7,Darkness 8,Sense 9,Immortality -bonus bDefRatioAtkRace,n; n race if defensive power is high the high extent big damage is given, (defense disregard) - 0,Intangibility 1,Immortality 2,Animal 3,Plant 4,Insect 5,Fish and shellfish 6,Demon 7,Human 8,Angel 9,Dragon family 10:Boss monster 11:Other than boss monster (normal monster) -bonus bDefRatioAtkEle,n; n attribute if defensive power is high the high extent big damage is given, (defense disregard) - 0,Nothing 1,Water 2,Earth 3,Fire 4,Wind 5,Poison 6,Saint 7,Darkness 8,Sense 9,Immortality -bonus bAtkEle,n; Attack with element n - 0,Nothing 1,Water 2,Earth 3,Fire 4,Wind 5,Poison 6,Saint 7,Darkness 8,Sense 9,Immortality -bonus bDefEle,n; Guard against element n - 0,Nothing 1,Water 2,Earth 3,Fire 4,Wind 5,Poison 6,Saint 7,Darkness 8,Sense 9,Immortality -bonus bHitRate,n; on-target hit ratio +n% -bonus bFleeRate,n; evasion ratio +n% -bonus bFlee2Rate,n; complete evasion ratio +n% -bonus bDefRate,n; earned-run average +n% (equipment) -bonus bDef2Rate,n; earned-run average +n% (those due to vit) -bonus bMdefRate,n; magical earned-run average +n% (equipment) -bonus bMdef2Rate,n; magical earned-run average +n% (those due to int) -bonus bSplashRange n; damage is given to the peripheral n cell of the target with usual weapon attack, if (as for n just high ones application, 1 if the 3*3, 2 the 5*5) -bonus bSplashAddRange n; damage is given to the peripheral n cell of the target with usual weapon attack, (range + n) - -bonus bInfiniteEndure,n; Unlimited Endure (n is meaningless) -bonus bRestartFullRecover,n; When reviving, HP and SP all recoveries (non mind there is no n) -bonus bNoCastCancel,n; The casting is not cancelled (non mind there is no n) -bonus bNoCastCancel2,n; The casting is not cancelled (is not cancelled even with GVG, n is meaningless) -bonus bNoSizeFix,n; The attack revision with the size of the monster is not received, (non mind there is no n) -bonus bNoWeaponDamage,n; The damage is not received to physical attack, (non mind there is no n) -bonus bNoMagicDamage,n; The damage is not received to magic, (including also the heel, non mind there is no n) -bonus bNoGemStone,n; When using skill, the gemstone is not consumed (non mind there is no n) - - -bonus2 bAddEff,Eff_Blind,n; With the establishment of n% dark grant -bonus2 bAddEff,Eff_Sleep,n; With the establishment of n% sleep grant -bonus2 bAddEff,Eff_Poison,n; With the establishment of n% poison grant -bonus2 bAddEff,Eff_Freeze,n; With the establishment of n% freezing grant -bonus2 bAddEff,Eff_Silence,n; With the establishment of n% silence grant -bonus2 bAddEff,Eff_Stan,n; With the establishment of n% stun grant -bonus2 bAddEff,Eff_Curse,n; You curse with the establishment of n%, grant -bonus2 bAddEff,Eff_Confusion,n; With the establishment of n% confusion grant -bonus2 bAddEff,Eff_Stone,n; With the establishment of n% petrochemical grant - -bonus2 bResEff,Eff_Blind,n; Dark tolerance + n% -bonus2 bResEff,Eff_Sleep,n; Sleep tolerance + n% -bonus2 bResEff,Eff_Poison,n; Poison tolerance + n% -bonus2 bResEff,Eff_Freeze,n; Freezing tolerance + n% -bonus2 bResEff,Eff_Silence,n; Silence tolerance + n% -bonus2 bResEff,Eff_Stan,n; Stun tolerance + n% -bonus2 bResEff,Eff_Curse,n; Cursing tolerance + n% -bonus2 bResEff,Eff_Confusion,n; Confusion tolerance + n% -bonus2 bResEff,Eff_Stone,n; Petrochemical tolerance + n% - +skill i,n; Gives skill #i at level n + +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 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 Attack power + n% +bonus bBaseAtk,n; Basic attack power + n +bonus bMatk,n; Magical attack power 1 + n and magical attack power 2 + n +bonus bMatk1,n; Magical attack power 1 + n +bonus bMatk2,n; Magical attack power 2 + n +bonus bMatkRate,n; Magical attack power + n% +bonus bDef,n; Equipment DEF + n +bonus bDefRate,n; Equipment DEF + n% +bonus bDef2Rate,n; VIT DEF + n% +bonus bMdef,n; Equipment MDEF + n +bonus bMdefRate,n; Equipment MDEF + n% +bonus bMdef2Rate,n; INT 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; Lucky Flee + n +bonus bFlee2Rate,n; Lucky Flee + n% +bonus bSpeed,n; Moving speed + n +bonus bAspd,n; Attack speed + n +bonus bSpeedRate,n; Moving speed + n% (only the highest among all is applied) +bonus bAspdRate,n; Attack speed + n% (only the highest among all is applied) +bonus bSpeedAddRate Moving speed + n% +bonus bAspdAddRate 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 bGetZenyNum,n; When killing the monster with physical attack, rand () ?? of %n+1 is obtained, (only the highest among all is applied) +bonus bAddGetZenyNum,n; When killing the monster with physical attack, rand () ?? of %n+1 is obtained, (n is done +) +bonus bCriticalDef,n; Critical ? and others the trap it is, probability + n% +bonus bNearAtkDef,n; Adds n% damage reduction against melee physical attacks +bonus bLongAtkDef,n; Adds n% damage reduction against ranged physical attacks +bonus bMagicAtkDef,n; Adds n% damage reduction against magical attacks +bonus bMiscAtkDef,n; Adds n% damage reduction against MISC attacks (traps, falcon, ...) +bonus bIgnoreDefRace,n Disregard DEF against enemies of 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 +bonus bIgnoreDefEle,n; Disregard DEF against enemies of element n + n: 0=Neutral, 1=Water, 2=Earth, 3=Fire, 4=Wind, 5=Poison, 6=Holy, 7=Dark, 8=Spirit, 9=Undead +bonus bIgnoreMDefRace Disregard MDEF against enemies of 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 +bonus bIgnoreMDefEle Disregard MDEF against enemies of element n + n: 0=Neutral, 1=Water, 2=Earth, 3=Fire, 4=Wind, 5=Poison, 6=Holy, 7=Dark, 8=Spirit, 9=Undead +bonus bDefRatioAtkRace,n; n race if defensive power is high the high extent big damage is given, (defense disregard) : + 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 +bonus bDefRatioAtkEle,n; n attribute if defensive power is high the high extent big damage is given, (defense disregard) : + n: 0=Neutral, 1=Water, 2=Earth, 3=Fire, 4=Wind, 5=Poison, 6=Holy, 7=Dark, 8=Spirit, 9=Undead +bonus bAtkEle,n; Gives the player's attacks element n + n: 0=Neutral, 1=Water, 2=Earth, 3=Fire, 4=Wind, 5=Poison, 6=Holy, 7=Dark, 8=Spirit, 9=Undead +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 bInfiniteEndure,n; Unlimited Endure effect, n is meaningless +bonus bRestartFullRecover,n; When reviving, HP and SP all recoveries, 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 any physical damage, n is meaningless +bonus bNoMagicDamage,n; Prevents from receiving any magical effect (Attack, Healing, Support spells are all blocked | n is meaningless) +bonus bNoGemStone,n; Skills requiring Gemstones do no more require them (Hocus Pocus will still require 1 Yellow one | n is meaningless) + +bonus2 bAddEff,e,x; Adds a x/10000 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_Stan, Eff_Curse, Eff_Confusion, Eff_Stone, Eff_Bleeding +bonus2 bResEff,e,x; Adds a x/10000 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_Stan, Eff_Curse, Eff_Confusion, Eff_Stone, Eff_Bleeding bonus2 bAddSize,n,x; In n size the damage addition of x% - 0,Small size 1,Medium size 2,Large size + n: 0=Small 1=Medium 2=Large bonus2 bAddRace,n,x; In n race the damage addition of x% - 0,Intangibility 1,Immortality 2,Animal 3,Plant 4,Insect 5,Fish and shellfish 6,Demon 7,Human 8,Angel 9,Dragon family 10:Boss monster 11:Other than boss monster (normal monster) + 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; Damage x% reduction from n race - 0,Intangibility 1,Immortality 2,Animal 3,Plant 4,Insect 5,Fish and shellfish 6,Demon 7,Human 8,Angel 9,Dragon family 10:Boss monster 11:Other than boss monster (normal monster) + 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; In n race the damage addition of x% (only magical attack) - 0,Intangibility 1,Immortality 2,Animal 3,Plant 4,Insect 5,Fish and shellfish 6,Demon 7,Human 8,Angel 9,Dragon family 10:Boss monster 11:Other than boss monster (normal monster) + 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 bMagicSubRace,n,x; Magical damage x% reduction from n race - 0,Intangibility 1,Immortality 2,Animal 3,Plant 4,Insect 5,Fish and shellfish 6,Demon 7,Human 8,Angel 9,Dragon family 10:Boss monster 11:Other than boss monster (normal monster) + 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; In n attribute the damage addition of x% - 0,Nothing 1,Water 2,Earth 3,Fire 4,Wind 5,Poison 6,Saint 7,Darkness 8,Sense 9,Immortality -bonus2 bMagicAddEle,n,x In n attribute the damage addition of x% (only magical attack) - 0,Nothing 1,Water 2,Earth 3,Fire 4,Wind 5,Poison 6,Saint 7,Darkness 8,Sense 9,Immortality + 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 In n attribute the damage addition of x% (only magical attack) + 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; Damage x% reduction from n attribute - 0,Nothing 1,Water 2,Earth 3,Fire 4,Wind 5,Poison 6,Saint 7,Darkness 8,Sense 9,Immortality + 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; In monster of class n the damage addition of x% (only physical attack), in case of prayer in n occupation the damage addition of x% -bonus2 bAddMagicDamageClass,n,x; In monster of class n in case of the magical damage addition and prayer of x% in n occupation the magical damage addition of x% +bonus2 bAddMagicDamageClass,n,x; In monster of class n in case of the magical damage addition and prayer of x% in n occupation the magical damage addition of x% bonus2 bAddDefClass,n,x; In monster of class n the damage reduction of x% (only physical attack), in case of prayer in n occupation the damage reduction of x% bonus2 bAddMDefClass,n,x; In monster of class n in case of the magical damage reduction and prayer of x% in n occupation the magical damage reduction of x% bonus2 bHPDrainRate,n,x; it obtained to the enemy -- ? ME ? JI -- n % probability -- x % -- HP -- absorption (+ n and x are carried out) bonus2 bSPDrainRate,n,x; it obtained to the enemy -- ? ME ? JI -- n % probability -- x % -- SP -- absorption (+ n and x are carried out) -bonus3 bAddMonsterDropItem,n,x; When pushing down the monster with physical attack, the probability which drops item n +x% (the item which the monster drops unrelated ones) - 0,Intangibility 1,Immortality 2,Animal 3,Plant 4,Insect 5,Fish and shellfish 6,Demon 7,Human 8,Angel 9,Dragon family 10:Boss monster 11:Other than boss monster (normal monster) +bonus3 bAddMonsterDropItem,n,x; When killing the monster with physical attack, the probability which drops item n +x% (the item which the monster drops unrelated ones) + 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 bonus3 bAutoSpell,n,x,y; Auto Spell casting of spell n at level x with y% chance // bAddDamageClass, bAddMagicDamageClass and bAddMonsterDropItem it is setting possible up to 10. Those which exceed 10 are ignored. @@ -145,20 +124,20 @@ bonus3 bAutoSpell,n,x,y; Auto Spell casting of spell n at level x with y% chanc //---- 2/15 new card effects ---- bonus bCritAtkRate,n; Increase critical damage by +n% -bonus bNoRegen,n; Stops regeneration for n. +bonus bNoRegen,n; Stops regeneration for n n: 1=HP, 2=SP -bonus bUnstripable,n; Armor cannot be taken off via Strip skills -bonus bSPGainValue,n; When killing a monster by physical attack - gain n amount of sp -bonus bHPGainValue,n; When killing a monster by physical attack - gain n amount of hp +bonus bUnstripableWeapon,n; Weapon cannot be taken off via Strip skills +bonus bUnstripableArmor,n; Armor cannot be taken off via Strip skills +bonus bUnstripableHelm,n; Helm cannot be taken off via Strip skills +bonus bUnstripableShield,n; Shield cannot be taken off via Strip skills +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 bonus bIgnoreDefMob,n; Ignore monster's DEF when attacking. - n:0=All normal monsters, except Bosses - 1=All monsters -bonus bDamageWhenUnequip,n; Lose n HP when the item is unequipped - -bonus2 bCriticalAddRace,n,x; Increase critical + n vs. enemies of type x -bonus2 bHPLossRate,n,x; Lose n amount of hp every x amount of time + n: 0=All normal monster except Bosses, 1=All monsters +bonus bDamageWhenUnequip,n; You lose n HP when the item is unequipped +bonus2 bCriticalAddRace,n,r; 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 bHPLossRate,n,x; Lose n HP every x milliseconds bonus2 bAddEffWhenHit,n,x; n% chance to cause x state to the enemy when being hit by physical damage bonus2 bAddEffWhenHitShort,n,x; n% chance to cause x state to the enemy when @@ -169,16 +148,16 @@ bonus2 bAddDamageByClass,n,x; When being hit by monster of class n increase bonus2 bAddRace2,n,x; Increase damage by x% vs. enemies of race n (Check db/mob_race2_db.txt) bonus2 bSubSize,n,x; Damage x% reduction from n size - n:0=Small 1=Medium 2=Large + n: 0=Small 1=Medium 2=Large bonus3 bHPLossRate,n,x,y; Lose n amount of hp every x amount of time - y:0=Don't show damage 1=Show damage + y: 0=Don't show damage 1=Show damage bonus3 bAutoSpellWhenHit,x,y,n; n% chance to cast skill x of level y when being hit by physical close range damage bonus3 bSPDrainRate,n,x,y; When attacking there is a n% chance to either gain SP equivalent to x% of damage dealt, OR drain the amount of sp from the enemy. - y:0=gain sp 1:drain enemy sp + y: 0=gain sp 1:drain enemy sp bonus3 bSPDrainValue,n,x,y; When attacking there is a n% chance to either gain x SP, OR drain the amount of sp from the enemy. y:0=gain sp 1:drain enemy sp @@ -192,8 +171,7 @@ bonus4 bAutoSpellWhenHit,x,y,n,i; n% 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% - n:1=potions 2=herbs 3=fruits 4=meat 5=candy - 6=juice 7=sashimi + n: 1=potions, 2=herbs, 3=fruits, 4=meat, 5=candy, 6=juices, 7=sashimi //---- 3/15 new card effects ---- diff --git a/src/map/map.h b/src/map/map.h index ceddea0e8..01d9fef0e 100644 --- a/src/map/map.h +++ b/src/map/map.h @@ -660,7 +660,8 @@ enum { SP_SKILL_ATK, SP_UNSTRIPABLE, SP_ADD_DAMAGE_BY_CLASS, // 2018-2020 SP_SP_GAIN_VALUE, SP_IGNORE_DEF_MOB, SP_HP_LOSS_RATE, SP_ADDRACE2, SP_HP_GAIN_VALUE, // 2021-2025 SP_SUBSIZE, SP_DAMAGE_WHEN_UNEQUIP, SP_ADD_ITEM_HEAL_RATE, SP_LOSESP_WHEN_UNEQUIP, SP_EXP_ADDRACE, // 2026-2030 - SP_SP_GAIN_RACE, SP_SUBRACE2, SP_ADDEFF_WHENHIT_SHORT // 2031-2033 + SP_SP_GAIN_RACE, SP_SUBRACE2, SP_ADDEFF_WHENHIT_SHORT, // 2031-2033 + SP_UNSTRIPABLE_WEAPON,SP_UNSTRIPABLE_ARMOR,SP_UNSTRIPABLE_HELM,SP_UNSTRIPABLE_SHIELD // 2034-2037 }; enum { diff --git a/src/map/pc.c b/src/map/pc.c index b49012e01..16931043b 100644 --- a/src/map/pc.c +++ b/src/map/pc.c @@ -1457,22 +1457,6 @@ int pc_bonus(struct map_session_data *sd,int type,int val) if(sd->state.lr_flag != 2) sd->special_state.infinite_endure = 1; break; - case SP_UNBREAKABLE_WEAPON: - if(sd->state.lr_flag != 2) - sd->unbreakable_equip |= EQP_WEAPON; - break; - case SP_UNBREAKABLE_ARMOR: - if(sd->state.lr_flag != 2) - sd->unbreakable_equip |= EQP_ARMOR; - break; - case SP_UNBREAKABLE_HELM: - if(sd->state.lr_flag != 2) - sd->unbreakable_equip |= EQP_HELM; - break; - case SP_UNBREAKABLE_SHIELD: - if(sd->state.lr_flag != 2) - sd->unbreakable_equip |= EQP_SHIELD; - break; case SP_SPLASH_RANGE: if(sd->state.lr_flag != 2 && sd->splash_range < val) sd->splash_range = val; @@ -1537,6 +1521,22 @@ int pc_bonus(struct map_session_data *sd,int type,int val) sd->unbreakable += val; } break; + case SP_UNBREAKABLE_WEAPON: + if(sd->state.lr_flag != 2) + sd->unbreakable_equip |= EQP_WEAPON; + break; + case SP_UNBREAKABLE_ARMOR: + if(sd->state.lr_flag != 2) + sd->unbreakable_equip |= EQP_ARMOR; + break; + case SP_UNBREAKABLE_HELM: + if(sd->state.lr_flag != 2) + sd->unbreakable_equip |= EQP_HELM; + break; + case SP_UNBREAKABLE_SHIELD: + if(sd->state.lr_flag != 2) + sd->unbreakable_equip |= EQP_SHIELD; + break; case SP_CLASSCHANGE: // [Valaris] if(sd->state.lr_flag !=2){ sd->classchange=val; @@ -1570,10 +1570,23 @@ int pc_bonus(struct map_session_data *sd,int type,int val) if(sd->state.lr_flag != 2) sd->no_regen = val; break; + case SP_UNSTRIPABLE_WEAPON: + if(sd->state.lr_flag != 2) + sd->unstripable_equip |= EQP_WEAPON; + break; case SP_UNSTRIPABLE: + case SP_UNSTRIPABLE_ARMOR: if(sd->state.lr_flag != 2) sd->unstripable_equip |= EQP_ARMOR; break; + case SP_UNSTRIPABLE_HELM: + if(sd->state.lr_flag != 2) + sd->unstripable_equip |= EQP_HELM; + break; + case SP_UNSTRIPABLE_SHIELD: + if(sd->state.lr_flag != 2) + sd->unstripable_equip |= EQP_SHIELD; + break; case SP_SP_GAIN_VALUE: if(!sd->state.lr_flag) sd->sp_gain_value += val; |