Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
29 changes: 23 additions & 6 deletions db/re/skill_db.yml
Original file line number Diff line number Diff line change
Expand Up @@ -36004,7 +36004,17 @@ Body:
Time: 6000
- Level: 5
Time: 7000
Cooldown: 1500
Cooldown:
- Level: 1
Time: 1800
- Level: 2
Time: 1600
- Level: 3
Time: 1400
- Level: 4
Time: 1200
- Level: 5
Time: 1000
Requires:
SpCost:
- Level: 1
Expand Down Expand Up @@ -36070,7 +36080,7 @@ Body:
SplashArea: 4
AfterCastActDelay: 500
Duration1: 150000
Cooldown: 5000
Cooldown: 3500
Requires:
SpCost: 100
ApCost: 12
Expand Down Expand Up @@ -41775,7 +41785,7 @@ Body:
FixedCastTime: 2000
Requires:
SpCost: 150
ApCost: 150
ApCost: 125
Status: Hidden_Card
- Id: 5415
Name: NW_MISSION_BOMBARD
Expand Down Expand Up @@ -43679,7 +43689,7 @@ Body:
Time: 900000
Requires:
SpCost: 100
ApCost: 150
ApCost: 120
Status: Sky_Enchant
- Id: 5476
Name: SS_TOKEDASU
Expand Down Expand Up @@ -44010,6 +44020,7 @@ Body:
Range: 9
Hit: Multi_Hit
HitCount: -3
GiveAp: 1
Element: Weapon
SplashArea: 2
ActiveInstance: 13
Expand Down Expand Up @@ -44102,6 +44113,7 @@ Body:
Range: 1
Hit: Multi_Hit
HitCount: -3
GiveAp: 1
Element: Weapon
DamageFlags:
IgnoreFlee: true
Expand Down Expand Up @@ -44152,6 +44164,7 @@ Body:
Range: 1
Hit: Single
HitCount: 1
GiveAp: 1
Element: Weapon
DamageFlags:
Splash: true
Expand Down Expand Up @@ -44205,6 +44218,7 @@ Body:
Hit: Multi_Hit
HitCount: -3
ActiveInstance: 7
GiveAp: 1
Element: Fire
DamageFlags:
Splash: true
Expand Down Expand Up @@ -44266,6 +44280,7 @@ Body:
Range: 9
Hit: Multi_Hit
HitCount: -6
GiveAp: 1
Element: Water
DamageFlags:
Splash: true
Expand Down Expand Up @@ -44328,6 +44343,7 @@ Body:
Hit: Multi_Hit
HitCount: -2
ActiveInstance: 13
GiveAp: 1
Element: Wind
DamageFlags:
Splash: true
Expand Down Expand Up @@ -44389,6 +44405,7 @@ Body:
Range: 9
Hit: Single
HitCount: 1
GiveAp: 1
Element: Earth
DamageFlags:
Splash: true
Expand Down Expand Up @@ -44615,7 +44632,7 @@ Body:
Area: 3
- Level: 5
Area: 3
GiveAp: 2
GiveAp: 3
AfterCastActDelay: 1000
Cooldown: 750
CastCancel: true
Expand Down Expand Up @@ -44662,7 +44679,7 @@ Body:
Area: 3
- Level: 5
Area: 3
GiveAp: 2
GiveAp: 3
AfterCastActDelay: 1000
Cooldown: 700
CastCancel: true
Expand Down
3 changes: 2 additions & 1 deletion src/map/skills/acolyte/massiveflameblaster.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,8 @@ void SkillMassiveFlameBlaster::calculateSkillRatio(const Damage* wd, const block
const status_data* sstatus = status_get_status_data(*src);
const status_data* tstatus = status_get_status_data(*target);

skillratio += -100 + 2300 * skill_lv + 15 * sstatus->pow;
skillratio += -100 + 2500 * skill_lv;
skillratio += 15 * sstatus->pow;
if (tstatus->race == RC_BRUTE || tstatus->race == RC_DEMON)
skillratio += 150 * skill_lv;
RE_LVL_DMOD(100);
Expand Down
2 changes: 1 addition & 1 deletion src/map/skills/acolyte/thirdconsecration.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ SkillThirdConsecration::SkillThirdConsecration() : SkillImplRecursiveDamageSplas
void SkillThirdConsecration::calculateSkillRatio(const Damage* wd, const block_list* src, const block_list* target, uint16 skill_lv, int32& skillratio, int32 mflag) const {
const status_data* sstatus = status_get_status_data(*src);

skillratio += -100 + 1200 * skill_lv;
skillratio += -100 + 1250 * skill_lv;
skillratio += 10 * sstatus->pow;

RE_LVL_DMOD(100);
Expand Down
2 changes: 1 addition & 1 deletion src/map/skills/gunslinger/midnightfallen.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ void SkillMidnightFallen::calculateSkillRatio(const Damage* wd, const block_list
const status_change* sc = status_get_sc(src);
const status_data* sstatus = status_get_status_data(*src);

skillratio += -100 + 2400 + 800 * skill_lv;
skillratio += -100 + 2500 + 850 * skill_lv;
if (sd != nullptr && sc != nullptr && sc->hasSCE(SC_HIDDEN_CARD)) {
if (sd->weapontype1 == W_GATLING)
skillratio += 200 * skill_lv;
Expand Down
4 changes: 2 additions & 2 deletions src/map/skills/gunslinger/thevigilanteatnight.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -49,11 +49,11 @@ void SkillTheVigilanteAtNight::calculateSkillRatio(const Damage* wd, const block
const status_data* sstatus = status_get_status_data(*src);

if (sd && sd->weapontype1 == W_GATLING) {
skillratio += -100 + 300 * skill_lv;
skillratio += -100 + 350 * skill_lv;
if (sc && sc->getSCE(SC_INTENSIVE_AIM_COUNT))
skillratio += sc->getSCE(SC_INTENSIVE_AIM_COUNT)->val1 * 100 * skill_lv;
} else {
skillratio += -100 + 800 + 700 * skill_lv;
skillratio += -100 + 850 + 800 * skill_lv;
if (sc && sc->getSCE(SC_INTENSIVE_AIM_COUNT))
skillratio += sc->getSCE(SC_INTENSIVE_AIM_COUNT)->val1 * 200 * skill_lv;
}
Expand Down
7 changes: 5 additions & 2 deletions src/map/skills/gunslinger/wildfire.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -32,11 +32,14 @@ void SkillWildFire::calculateSkillRatio(const Damage* wd, const block_list* src,
const status_change* sc = status_get_sc(src);
const status_data* sstatus = status_get_status_data(*src);

skillratio += -100 + 1500 + 3000 * skill_lv;
skillratio += -100 + 1500 + 3450 * skill_lv;
skillratio += 5 * sstatus->con;

if (sc && sc->getSCE(SC_INTENSIVE_AIM_COUNT))
skillratio += sc->getSCE(SC_INTENSIVE_AIM_COUNT)->val1 * 500 * skill_lv;

if (sd && sd->weapontype1 == W_SHOTGUN)
skillratio += 200 * skill_lv;
skillratio += 100 * skill_lv;

RE_LVL_DMOD(100);
}
6 changes: 3 additions & 3 deletions src/map/skills/gunslinger/wildshot.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -34,12 +34,12 @@ void SkillWildShot::calculateSkillRatio(const Damage* wd, const block_list* src,
const status_change* sc = status_get_sc(src);
const status_data* sstatus = status_get_status_data(*src);

skillratio += -100 + 870 + 180 * skill_lv;
skillratio += -100 + 850 + 230 * skill_lv;
if (sd != nullptr && sc != nullptr && sc->hasSCE(SC_HIDDEN_CARD)) {
if (sd->weapontype1 == W_REVOLVER)
skillratio += 60 * skill_lv;
else if (sd->weapontype1 == W_RIFLE)
skillratio += 100 * skill_lv;
else if (sd->weapontype1 == W_RIFLE)
skillratio += 150 * skill_lv;
}
skillratio += 5 * sstatus->con; //!TODO: check con ratio
RE_LVL_DMOD(100);
Expand Down
2 changes: 1 addition & 1 deletion src/map/skills/ninja/darkdragonnightmare.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ void SkillDarkDragonNightmare::applyAdditionalEffects(block_list *src, block_lis
void SkillDarkDragonNightmare::calculateSkillRatio(const Damage *wd, const block_list *src, const block_list *target, uint16 skill_lv, int32 &skillratio, int32 mflag) const {
const status_data* sstatus = status_get_status_data(*src);

skillratio += -100 + 15500 * skill_lv;
skillratio += -100 + 17500 * skill_lv;
skillratio += 5 * sstatus->spl;
RE_LVL_DMOD(100);
}
Expand Down
3 changes: 2 additions & 1 deletion src/map/skills/ninja/kunainightmare.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,8 @@ void SkillKunaiNightmare::calculateSkillRatio(const Damage *wd, const block_list
const status_data* sstatus = status_get_status_data(*src);
const status_change *tsc = status_get_sc(target);

skillratio += -100 + 18000 + 5 * sstatus->pow;
skillratio += -100 + 22500;
skillratio += 5 * sstatus->pow;

if( tsc != nullptr && tsc->getSCE( SC_NIGHTMARE ) != nullptr ){
skillratio += skillratio / 2;
Expand Down
2 changes: 1 addition & 1 deletion src/map/skills/ninja/kunairefraction.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ void SkillKunaiRefraction::calculateSkillRatio(const Damage *wd, const block_lis
const status_data* sstatus = status_get_status_data(*src);
const map_session_data* sd = BL_CAST(BL_PC, src);

skillratio += -100 + 250 + 420 * skill_lv;
skillratio += -100 + 300 + 450 * skill_lv;
skillratio += pc_checkskill( sd, SS_KUNAIKAITEN ) * 10 * skill_lv;
skillratio += 5 * sstatus->pow;
RE_LVL_DMOD(100);
Expand Down
2 changes: 1 addition & 1 deletion src/map/skills/ninja/kunairotation.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ void SkillKunaiRotation::calculateSkillRatio(const Damage *wd, const block_list
const status_data* sstatus = status_get_status_data(*src);
const map_session_data* sd = BL_CAST(BL_PC, src);

skillratio += -100 + 950 + 1050 * skill_lv;
skillratio += -100 + 1000 + 1350 * skill_lv;
skillratio += pc_checkskill( sd, SS_KUNAIWAIKYOKU ) * 100 * skill_lv;
skillratio += 5 * sstatus->pow;
RE_LVL_DMOD(100);
Expand Down
3 changes: 2 additions & 1 deletion src/map/skills/ninja/shadownightmare.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,8 @@ void SkillShadowNightmare::calculateSkillRatio(const Damage *wd, const block_lis
const status_data* sstatus = status_get_status_data(*src);
const status_change *tsc = status_get_sc(target);

skillratio += -100 + 18000 + 5 * sstatus->pow;
skillratio += -100 + 22500;
skillratio += 5 * sstatus->pow;

if( tsc != nullptr && tsc->getSCE( SC_NIGHTMARE ) != nullptr ){
skillratio += skillratio / 2;
Expand Down
4 changes: 2 additions & 2 deletions src/map/skills/taekwon/dawnbreak.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -22,12 +22,12 @@ void SkillDawnBreak::calculateSkillRatio(const Damage* wd, const block_list* src
const status_change* sc = status_get_sc(src);
const status_data* sstatus = status_get_status_data(*src);

skillratio += -100 + 600 + 700 * skill_lv;
skillratio += -100 + 750 + 850 * skill_lv;
skillratio += pc_checkskill(sd, SKE_SKY_MASTERY) * 5 * skill_lv;
skillratio += 5 * sstatus->pow;

if (sc != nullptr && (sc->getSCE(SC_DAWN_MOON) != nullptr || sc->getSCE(SC_SKY_ENCHANT) != nullptr)) {
skillratio += 200 * skill_lv;
skillratio += 200 + 200 * skill_lv;
}

RE_LVL_DMOD(100);
Expand Down
4 changes: 2 additions & 2 deletions src/map/skills/taekwon/midnightkick.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -22,12 +22,12 @@ void SkillMidnightKick::calculateSkillRatio(const Damage* wd, const block_list*
const status_change* sc = status_get_sc(src);
const status_data* sstatus = status_get_status_data(*src);

skillratio += -100 + 800 + 1500 * skill_lv;
skillratio += -100 + 850 + 1700 * skill_lv;
skillratio += pc_checkskill(sd, SKE_SKY_MASTERY) * 5 * skill_lv;
skillratio += 5 * sstatus->pow;

if (sc != nullptr && (sc->getSCE(SC_MIDNIGHT_MOON) != nullptr || sc->getSCE(SC_SKY_ENCHANT) != nullptr)) {
skillratio += 950 + 250 * skill_lv;
skillratio += 950 + 300 * skill_lv;
}

RE_LVL_DMOD(100);
Expand Down
2 changes: 1 addition & 1 deletion src/map/skills/taekwon/noonblast.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ void SkillNoonBlast::calculateSkillRatio(const Damage* wd, const block_list* src
const map_session_data* sd = BL_CAST(BL_PC, src);
const status_data* sstatus = status_get_status_data(*src);

skillratio += -100 + 1500 + 1250 * skill_lv;
skillratio += -100 + 1750 + 1550 * skill_lv;
skillratio += pc_checkskill(sd, SKE_SKY_MASTERY) * 5 * skill_lv;
skillratio += 5 * sstatus->pow;
RE_LVL_DMOD(100);
Expand Down
2 changes: 1 addition & 1 deletion src/map/skills/taekwon/skymoon.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ void SkillSkyMoon::calculateSkillRatio(const Damage* wd, const block_list* src,
const map_session_data* sd = BL_CAST(BL_PC, src);
const status_data* sstatus = status_get_status_data(*src);

skillratio += -100 + 1200 + 450 * skill_lv;
skillratio += -100 + 1250 + 500 * skill_lv;
skillratio += skill_lv * 9 * pc_checkskill(sd, SKE_SKY_MASTERY);
skillratio += 5 * sstatus->pow;
RE_LVL_DMOD(100);
Expand Down
2 changes: 1 addition & 1 deletion src/map/skills/taekwon/skysun.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ void SkillSkySun::calculateSkillRatio(const Damage* wd, const block_list* src, c
const map_session_data* sd = BL_CAST(BL_PC, src);
const status_data* sstatus = status_get_status_data(*src);

skillratio += -100 + 1500 * skill_lv;
skillratio += -100 + 250 + 1650 * skill_lv;
skillratio += skill_lv * 7 * pc_checkskill(sd, SKE_SKY_MASTERY);
skillratio += 5 * sstatus->pow;
RE_LVL_DMOD(100);
Expand Down
2 changes: 1 addition & 1 deletion src/map/skills/taekwon/sunsetblast.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ void SkillSunsetBlast::calculateSkillRatio(const Damage* wd, const block_list* s
const map_session_data* sd = BL_CAST(BL_PC, src);
const status_data* sstatus = status_get_status_data(*src);

skillratio += -100 + 950 + 400 * skill_lv;
skillratio += -100 + 1200 + 500 * skill_lv;
skillratio += pc_checkskill(sd, SKE_SKY_MASTERY) * 5 * skill_lv;
skillratio += 5 * sstatus->pow;
RE_LVL_DMOD(100);
Expand Down
Loading