diff options
author | Jesusaves <cpntb1@ymail.com> | 2018-07-18 11:40:46 -0300 |
---|---|---|
committer | Jesusaves <cpntb1@ymail.com> | 2018-07-18 11:40:46 -0300 |
commit | 88c0c988a6232bc1cb6447487bcc6311f32e8112 (patch) | |
tree | 8f31b8671522714b1d4218557e65dbb9016ba656 | |
parent | 29837f227c364f760b765bf4c638916006ce9c94 (diff) | |
download | serverdata-88c0c988a6232bc1cb6447487bcc6311f32e8112.tar.gz serverdata-88c0c988a6232bc1cb6447487bcc6311f32e8112.tar.bz2 serverdata-88c0c988a6232bc1cb6447487bcc6311f32e8112.tar.xz serverdata-88c0c988a6232bc1cb6447487bcc6311f32e8112.zip |
Fix bugs, and add an extra skill to Berserk
-rw-r--r-- | db/re/skill_db.conf | 20 | ||||
-rw-r--r-- | npc/003-0/berserk.txt | 120 | ||||
-rw-r--r-- | npc/003-0/paladin.txt | 6 |
3 files changed, 88 insertions, 58 deletions
diff --git a/db/re/skill_db.conf b/db/re/skill_db.conf index fd2c662cb..48d670c1e 100644 --- a/db/re/skill_db.conf +++ b/db/re/skill_db.conf @@ -2211,16 +2211,16 @@ skill_db: ( FixedCastTime: 0 Requirements: { SPCost: { - Lv1: 14 - Lv2: 18 - Lv3: 22 - Lv4: 26 - Lv5: 30 - Lv6: 34 - Lv7: 38 - Lv8: 42 - Lv9: 46 - Lv10: 50 + Lv1: 140 + Lv2: 180 + Lv3: 220 + Lv4: 260 + Lv5: 300 + Lv6: 340 + Lv7: 380 + Lv8: 420 + Lv9: 460 + Lv10: 500 } WeaponTypes: { 2HSwords: true diff --git a/npc/003-0/berserk.txt b/npc/003-0/berserk.txt index 15adc331b..b4e4ad806 100644 --- a/npc/003-0/berserk.txt +++ b/npc/003-0/berserk.txt @@ -43,6 +43,7 @@ L_Missing: // Ragger // KN_AUTOCOUNTER (Counter any attack with 2x critical rate and block attack for 0.5s) // SM_ENDURE (deny stun penalty when hit, and MDEF bonus, for 10s) +// KN_TWOHANDQUICKEN (raise attack speed in 30%, if you are with a 2-hands sword) (30s/level) L_Member: mesn; @@ -51,6 +52,7 @@ L_Member: rif(sk_intcost(SM_BASH) && getskilllv(SM_BASH) < (3+degree_subclass()), l("Improve Bash Skill")), rif(sk_intcost(SM_ENDURE) && sk_canlvup(SM_ENDURE), l("Improve Endure Skill")), rif(sk_intcost(KN_AUTOCOUNTER) && sk_canlvup(KN_AUTOCOUNTER), l("Improve Counter Defense")), + rif(sk_intcost(KN_TWOHANDQUICKEN) && sk_canlvup(KN_TWOHANDQUICKEN), l("Improve Two Hands Quicken")), l("Leave Subclass"), l("Nothing at the moment."); mes ""; @@ -61,22 +63,22 @@ L_Member: mes ""; mesn; mesq l("This useful skill will only require:"); - mesc l("@@/@@ @@", countitem(ManaPiouFeathers), (getskilllv(SM_ENDURE)+1)*15, getitemlink(ManaPiouFeathers)); - mesc l("@@/@@ @@", countitem(CaveSnakeSkin), (getskilllv(SM_ENDURE)+1)*4, getitemlink(CaveSnakeSkin)); - mesc l("@@/@@ @@", countitem(RubyPowder), (getskilllv(SM_ENDURE)+1)*2, getitemlink(RubyPowder)); - mesc l("@@/@@ @@", countitem(StrengthPotion), (getskilllv(SM_ENDURE)+1)*2, getitemlink(StrengthPotion)); + mesc l("@@/@@ @@", countitem(ManaPiouFeathers), (getskilllv(SM_BASH)+1)*15, getitemlink(ManaPiouFeathers)); + mesc l("@@/@@ @@", countitem(CaveSnakeSkin), (getskilllv(SM_BASH)+1)*4, getitemlink(CaveSnakeSkin)); + mesc l("@@/@@ @@", countitem(RubyPowder), (getskilllv(SM_BASH)+1)*2, getitemlink(RubyPowder)); + mesc l("@@/@@ @@", countitem(StrengthPotion), (getskilllv(SM_BASH)+1)*2, getitemlink(StrengthPotion)); next; if (askyesno() == ASK_YES) { if ( - countitem(ManaPiouFeathers) < (getskilllv(SM_ENDURE)+1)*15 || - countitem(CaveSnakeSkin) < (getskilllv(SM_ENDURE)+1)*4 || - countitem(RubyPowder) < (getskilllv(SM_ENDURE)+1)*2 || - countitem(StrengthPotion) < (getskilllv(SM_ENDURE)+1)*2) goto L_Missing; + countitem(ManaPiouFeathers) < (getskilllv(SM_BASH)+1)*15 || + countitem(CaveSnakeSkin) < (getskilllv(SM_BASH)+1)*4 || + countitem(RubyPowder) < (getskilllv(SM_BASH)+1)*2 || + countitem(StrengthPotion) < (getskilllv(SM_BASH)+1)*2) goto L_Missing; - delitem PiberriesInfusion, (getskilllv(SM_ENDURE)+1)*15; - delitem BlackMambaEgg, (getskilllv(SM_ENDURE)+1)*4; - delitem MoubooSteak, (getskilllv(SM_ENDURE)+1)*2; - delitem IronIngot, (getskilllv(SM_ENDURE)+1)*2; + delitem PiberriesInfusion, (getskilllv(SM_BASH)+1)*15; + delitem CaveSnakeSkin, (getskilllv(SM_BASH)+1)*4; + delitem RubyPowder, (getskilllv(SM_BASH)+1)*2; + delitem StrengthPotion, (getskilllv(SM_BASH)+1)*2; sk_lvup(SM_BASH); @@ -89,24 +91,24 @@ L_Member: mes ""; mesn; mesq l("This useful skill will only require:"); - mesc l("@@/@@ @@", countitem(PiberriesInfusion), (getskilllv(KN_AUTOCOUNTER)+1)*10, getitemlink(PiberriesInfusion)); - mesc l("@@/@@ @@", countitem(BlackMambaEgg), (getskilllv(KN_AUTOCOUNTER)+1)*2, getitemlink(BlackMambaEgg)); - mesc l("@@/@@ @@", countitem(MoubooSteak), (getskilllv(KN_AUTOCOUNTER)+1)*4, getitemlink(MoubooSteak)); - mesc l("@@/@@ @@", countitem(IronIngot), (getskilllv(KN_AUTOCOUNTER)+1)*1, getitemlink(IronIngot)); + mesc l("@@/@@ @@", countitem(PiberriesInfusion), (getskilllv(SM_ENDURE)+1)*10, getitemlink(PiberriesInfusion)); + mesc l("@@/@@ @@", countitem(BlackMambaEgg), (getskilllv(SM_ENDURE)+1)*2, getitemlink(BlackMambaEgg)); + mesc l("@@/@@ @@", countitem(MoubooSteak), (getskilllv(SM_ENDURE)+1)*4, getitemlink(MoubooSteak)); + mesc l("@@/@@ @@", countitem(IronIngot), (getskilllv(SM_ENDURE)+1)*1, getitemlink(IronIngot)); next; if (askyesno() == ASK_YES) { if ( - countitem(PiberriesInfusion) < (getskilllv(KN_AUTOCOUNTER)+1)*10 || - countitem(BlackMambaEgg) < (getskilllv(KN_AUTOCOUNTER)+1)*2 || - countitem(MoubooSteak) < (getskilllv(KN_AUTOCOUNTER)+1)*4 || - countitem(IronIngot) < (getskilllv(KN_AUTOCOUNTER)+1)*1) goto L_Missing; + countitem(PiberriesInfusion) < (getskilllv(SM_ENDURE)+1)*10 || + countitem(BlackMambaEgg) < (getskilllv(SM_ENDURE)+1)*2 || + countitem(MoubooSteak) < (getskilllv(SM_ENDURE)+1)*4 || + countitem(IronIngot) < (getskilllv(SM_ENDURE)+1)*1) goto L_Missing; - delitem PiberriesInfusion, (getskilllv(KN_AUTOCOUNTER)+1)*10; - delitem BlackMambaEgg, (getskilllv(KN_AUTOCOUNTER)+1)*2; - delitem MoubooSteak, (getskilllv(KN_AUTOCOUNTER)+1)*4; - delitem IronIngot, (getskilllv(KN_AUTOCOUNTER)+1)*1; + delitem PiberriesInfusion, (getskilllv(SM_ENDURE)+1)*10; + delitem BlackMambaEgg, (getskilllv(SM_ENDURE)+1)*2; + delitem MoubooSteak, (getskilllv(SM_ENDURE)+1)*4; + delitem IronIngot, (getskilllv(SM_ENDURE)+1)*1; - sk_lvup(KN_AUTOCOUNTER); + sk_lvup(SM_ENDURE); next; } @@ -117,35 +119,63 @@ L_Member: mes ""; mesn; mesq l("This useful skill will only require:"); - mesc l("@@/@@ @@", countitem(Cheese), (getskilllv(CR_TRUST)+1)*50, getitemlink(Cheese)); - mesc l("@@/@@ @@", countitem(Coral), (getskilllv(CR_TRUST)+1)*30, getitemlink(Coral)); - mesc l("@@/@@ @@", countitem(PiberriesInfusion), (getskilllv(CR_TRUST)+1)*20, getitemlink(PiberriesInfusion)); - mesc l("@@/@@ @@", countitem(HastePotion), (getskilllv(CR_TRUST)+1)*10, getitemlink(HastePotion)); - mesc l("@@/@@ @@", countitem(DiamondPowder), (getskilllv(CR_TRUST)+1)*3, getitemlink(DiamondPowder)); - mesc l("@@/@@ @@", countitem(ElixirOfLife), (getskilllv(CR_TRUST)+1)*1, getitemlink(ElixirOfLife)); + mesc l("@@/@@ @@", countitem(PinkAntenna), (getskilllv(KN_AUTOCOUNTER)+1)*10, getitemlink(ManaPiouFeathers)); + mesc l("@@/@@ @@", countitem(CaveSnakeSkin), (getskilllv(KN_AUTOCOUNTER)+1)*4, getitemlink(CaveSnakeSkin)); + mesc l("@@/@@ @@", countitem(RubyPowder), (getskilllv(KN_AUTOCOUNTER)+1)*2, getitemlink(RubyPowder)); + mesc l("@@/@@ @@", countitem(StrengthPotion), (getskilllv(KN_AUTOCOUNTER)+1)*2, getitemlink(StrengthPotion)); next; if (askyesno() == ASK_YES) { if ( - countitem(Cheese) < (getskilllv(CR_TRUST)+1)*50 || - countitem(Coral) < (getskilllv(CR_TRUST)+1)*30 || - countitem(PiberriesInfusion) < (getskilllv(CR_TRUST)+1)*20 || - countitem(HastePotion) < (getskilllv(CR_TRUST)+1)*10 || - countitem(DiamondPowder) < (getskilllv(CR_TRUST)+1)*3 || - countitem(ElixirOfLife) < (getskilllv(CR_TRUST)+1)*1) goto L_Missing; - - delitem Cheese, (getskilllv(CR_TRUST)+1)*50; - delitem Coral, (getskilllv(CR_TRUST)+1)*30; - delitem PiberriesInfusion, (getskilllv(CR_TRUST)+1)*20; - delitem HastePotion, (getskilllv(CR_TRUST)+1)*10; - delitem DiamondPowder, (getskilllv(CR_TRUST)+1)*3; - delitem ElixirOfLife, (getskilllv(CR_TRUST)+1)*1; + countitem(PinkAntenna) < (getskilllv(KN_AUTOCOUNTER)+1)*10 || + countitem(CaveSnakeSkin) < (getskilllv(KN_AUTOCOUNTER)+1)*4 || + countitem(RubyPowder) < (getskilllv(KN_AUTOCOUNTER)+1)*2 || + countitem(StrengthPotion) < (getskilllv(KN_AUTOCOUNTER)+1)*2) goto L_Missing; - sk_lvup(SM_ENDURE); + delitem PinkAntenna, (getskilllv(KN_AUTOCOUNTER)+1)*10; + delitem CaveSnakeSkin, (getskilllv(KN_AUTOCOUNTER)+1)*4; + delitem RubyPowder, (getskilllv(KN_AUTOCOUNTER)+1)*2; + delitem StrengthPotion, (getskilllv(KN_AUTOCOUNTER)+1)*2; + + sk_lvup(KN_AUTOCOUNTER); next; } break; case 4: + mesc l("[Two Hands Quicken]"); + mesc l("Triggers an attack speed buff when using two swords."); + mes ""; + mesn; + mesq l("This useful skill will only require:"); + mesc l("@@/@@ @@", countitem(Cheese), (getskilllv(KN_TWOHANDQUICKEN)+1)*50, getitemlink(Cheese)); + mesc l("@@/@@ @@", countitem(Coral), (getskilllv(KN_TWOHANDQUICKEN)+1)*30, getitemlink(Coral)); + mesc l("@@/@@ @@", countitem(PiberriesInfusion), (getskilllv(KN_TWOHANDQUICKEN)+1)*20, getitemlink(PiberriesInfusion)); + mesc l("@@/@@ @@", countitem(HastePotion), (getskilllv(KN_TWOHANDQUICKEN)+1)*10, getitemlink(HastePotion)); + mesc l("@@/@@ @@", countitem(DiamondPowder), (getskilllv(KN_TWOHANDQUICKEN)+1)*3, getitemlink(DiamondPowder)); + mesc l("@@/@@ @@", countitem(ElixirOfLife), (getskilllv(KN_TWOHANDQUICKEN)+1)*1, getitemlink(ElixirOfLife)); + next; + if (askyesno() == ASK_YES) { + if ( + countitem(Cheese) < (getskilllv(KN_TWOHANDQUICKEN)+1)*50 || + countitem(Coral) < (getskilllv(KN_TWOHANDQUICKEN)+1)*30 || + countitem(PiberriesInfusion) < (getskilllv(KN_TWOHANDQUICKEN)+1)*20 || + countitem(HastePotion) < (getskilllv(KN_TWOHANDQUICKEN)+1)*10 || + countitem(DiamondPowder) < (getskilllv(KN_TWOHANDQUICKEN)+1)*3 || + countitem(ElixirOfLife) < (getskilllv(KN_TWOHANDQUICKEN)+1)*1) goto L_Missing; + + delitem Cheese, (getskilllv(KN_TWOHANDQUICKEN)+1)*50; + delitem Coral, (getskilllv(KN_TWOHANDQUICKEN)+1)*30; + delitem PiberriesInfusion, (getskilllv(KN_TWOHANDQUICKEN)+1)*20; + delitem HastePotion, (getskilllv(KN_TWOHANDQUICKEN)+1)*10; + delitem DiamondPowder, (getskilllv(KN_TWOHANDQUICKEN)+1)*3; + delitem ElixirOfLife, (getskilllv(KN_TWOHANDQUICKEN)+1)*1; + + sk_lvup(KN_TWOHANDQUICKEN); + + next; + } + break; + case 5: // All skills related may include the basic class skills if they're related. mesc l("WARNING: If you leave the subclass, you'll lose all skills related to it!"), 1; mesc l("This cannot be undone. Are you sure?"), 1; diff --git a/npc/003-0/paladin.txt b/npc/003-0/paladin.txt index ff79a3765..ed7cec91e 100644 --- a/npc/003-0/paladin.txt +++ b/npc/003-0/paladin.txt @@ -84,9 +84,9 @@ L_Member: countitem(StrengthPotion) < (getskilllv(SM_BASH)+1)*2) goto L_Missing; delitem PiberriesInfusion, (getskilllv(SM_BASH)+1)*15; - delitem BlackMambaEgg, (getskilllv(SM_BASH)+1)*4; - delitem MoubooSteak, (getskilllv(SM_BASH)+1)*2; - delitem IronIngot, (getskilllv(SM_BASH)+1)*2; + delitem CaveSnakeSkin, (getskilllv(SM_BASH)+1)*4; + delitem RubyPowder, (getskilllv(SM_BASH)+1)*2; + delitem StrengthPotion, (getskilllv(SM_BASH)+1)*2; sk_lvup(SM_BASH); |