Skip to content

Commit

Permalink
Rebalance of Sage's Endow skills
Browse files Browse the repository at this point in the history
- Fixed casting time reduced: 3s -> 1s
- Variable casting time added: 1s
- Requirement changed to Indigo Point/Yellow Wish Point/Lime Green
  Point/Scarlet Point (based on skill element)
- Now increase correspond element magical damage by 1% per skill level
- Removes skill failure
- Changes duration
  - Old: 20 minutes (Level 1 ~ 4), 30 minutes (Level 5)
  - New: 5 x (Skill Level + 1) minutes

From massive skills rebalance (1st/2nd/transclass) (2018.10.31)
  • Loading branch information
guilherme-gm committed Oct 26, 2023
1 parent 5aabaad commit 5ab76e4
Show file tree
Hide file tree
Showing 6 changed files with 90 additions and 65 deletions.
8 changes: 4 additions & 4 deletions db/pre-re/skill_db.conf
Original file line number Diff line number Diff line change
Expand Up @@ -8381,7 +8381,7 @@ skill_db: (
}
InterruptCast: true
CastTime: 3000
SkillData1: {
SkillData1: { // Endow (SC) duration (in miliseconds)
Lv1: 1200000
Lv2: 1200000
Lv3: 1200000
Expand Down Expand Up @@ -8424,7 +8424,7 @@ skill_db: (
}
InterruptCast: true
CastTime: 3000
SkillData1: {
SkillData1: { // Endow (SC) duration (in miliseconds)
Lv1: 1200000
Lv2: 1200000
Lv3: 1200000
Expand Down Expand Up @@ -8467,7 +8467,7 @@ skill_db: (
}
InterruptCast: true
CastTime: 3000
SkillData1: {
SkillData1: { // Endow (SC) duration (in miliseconds)
Lv1: 1200000
Lv2: 1200000
Lv3: 1200000
Expand Down Expand Up @@ -8510,7 +8510,7 @@ skill_db: (
}
InterruptCast: true
CastTime: 3000
SkillData1: {
SkillData1: { // Endow (SC) duration (in miliseconds)
Lv1: 1200000
Lv2: 1200000
Lv3: 1200000
Expand Down
8 changes: 4 additions & 4 deletions db/re/sc_config.conf
Original file line number Diff line number Diff line change
Expand Up @@ -679,7 +679,7 @@ SC_PROPERTYFIRE: {
Buff: true
}
CalcFlags: {
Atk_Ele: true
All: true
}
Icon: "SI_PROPERTYFIRE"
Skill: "SA_FLAMELAUNCHER"
Expand All @@ -693,7 +693,7 @@ SC_PROPERTYWATER: {
Buff: true
}
CalcFlags: {
Atk_Ele: true
All: true
}
Icon: "SI_PROPERTYWATER"
Skill: "SA_FROSTWEAPON"
Expand All @@ -707,7 +707,7 @@ SC_PROPERTYWIND: {
Buff: true
}
CalcFlags: {
Atk_Ele: true
All: true
}
Icon: "SI_PROPERTYWIND"
Skill: "SA_LIGHTNINGLOADER"
Expand All @@ -721,7 +721,7 @@ SC_PROPERTYGROUND: {
Buff: true
}
CalcFlags: {
Atk_Ele: true
All: true
}
Icon: "SI_PROPERTYGROUND"
Skill: "SA_SEISMICWEAPON"
Expand Down
108 changes: 56 additions & 52 deletions db/re/skill_db.conf
Original file line number Diff line number Diff line change
Expand Up @@ -8609,23 +8609,24 @@ skill_db: (
NoDamage: true
}
InterruptCast: true
SkillData1: {
Lv1: 1200000
Lv2: 1200000
Lv3: 1200000
Lv4: 1200000
Lv5: 1800000
Lv6: 1800000
Lv7: 1800000
Lv8: 1800000
Lv9: 1800000
Lv10: 1800000
SkillData1: { // Endow (SC) duration (in miliseconds)
Lv1: 600_000
Lv2: 900_000
Lv3: 1_200_000
Lv4: 1_500_000
Lv5: 1_800_000
Lv6: 1_800_000
Lv7: 1_800_000
Lv8: 1_800_000
Lv9: 1_800_000
Lv10: 1_800_000
}
FixedCastTime: 3000
FixedCastTime: 1_000
CastTime: 1_000
Requirements: {
SPCost: 40
Items: {
Boody_Red: 1
Scarlet_Pts: 1
}
}
},
Expand All @@ -8651,23 +8652,24 @@ skill_db: (
NoDamage: true
}
InterruptCast: true
SkillData1: {
Lv1: 1200000
Lv2: 1200000
Lv3: 1200000
Lv4: 1200000
Lv5: 1800000
Lv6: 1800000
Lv7: 1800000
Lv8: 1800000
Lv9: 1800000
Lv10: 1800000
SkillData1: { // Endow (SC) duration (in miliseconds)
Lv1: 600_000
Lv2: 900_000
Lv3: 1_200_000
Lv4: 1_500_000
Lv5: 1_800_000
Lv6: 1_800_000
Lv7: 1_800_000
Lv8: 1_800_000
Lv9: 1_800_000
Lv10: 1_800_000
}
FixedCastTime: 3000
FixedCastTime: 1_000
CastTime: 1_000
Requirements: {
SPCost: 40
Items: {
Crystal_Blue: 1
Indigo_Pts: 1
}
}
},
Expand All @@ -8693,23 +8695,24 @@ skill_db: (
NoDamage: true
}
InterruptCast: true
SkillData1: {
Lv1: 1200000
Lv2: 1200000
Lv3: 1200000
Lv4: 1200000
Lv5: 1800000
Lv6: 1800000
Lv7: 1800000
Lv8: 1800000
Lv9: 1800000
Lv10: 1800000
SkillData1: { // Endow (SC) duration (in miliseconds)
Lv1: 600_000
Lv2: 900_000
Lv3: 1_200_000
Lv4: 1_500_000
Lv5: 1_800_000
Lv6: 1_800_000
Lv7: 1_800_000
Lv8: 1_800_000
Lv9: 1_800_000
Lv10: 1_800_000
}
FixedCastTime: 3000
FixedCastTime: 1_000
CastTime: 1_000
Requirements: {
SPCost: 40
Items: {
Wind_Of_Verdure: 1
Yellow_Wish_Pts: 1
}
}
},
Expand All @@ -8735,23 +8738,24 @@ skill_db: (
NoDamage: true
}
InterruptCast: true
SkillData1: {
Lv1: 1200000
Lv2: 1200000
Lv3: 1200000
Lv4: 1200000
Lv5: 1800000
Lv6: 1800000
Lv7: 1800000
Lv8: 1800000
Lv9: 1800000
Lv10: 1800000
SkillData1: { // Endow (SC) duration (in miliseconds)
Lv1: 600_000
Lv2: 900_000
Lv3: 1_200_000
Lv4: 1_500_000
Lv5: 1_800_000
Lv6: 1_800_000
Lv7: 1_800_000
Lv8: 1_800_000
Lv9: 1_800_000
Lv10: 1_800_000
}
FixedCastTime: 3000
FixedCastTime: 1_000
CastTime: 1_000
Requirements: {
SPCost: 40
Items: {
Yellow_Live: 1
Lime_Green_Pts: 1
}
}
},
Expand Down
1 change: 1 addition & 0 deletions src/map/battle.c
Original file line number Diff line number Diff line change
Expand Up @@ -4087,6 +4087,7 @@ static struct Damage battle_calc_magic_attack(struct block_list *src, struct blo
}
}
}

#ifndef HMAP_ZONE_DAMAGE_CAP_TYPE
if (skill_id) {
for(i = 0; i < map->list[target->m].zone->capped_skills_count; i++) {
Expand Down
19 changes: 14 additions & 5 deletions src/map/skill.c
Original file line number Diff line number Diff line change
Expand Up @@ -7262,7 +7262,7 @@ static int skill_castend_nodamage_id(struct block_list *src, struct block_list *
case SA_FLAMELAUNCHER: // added failure chance and chance to break weapon if turned on [Valaris]
case SA_FROSTWEAPON:
case SA_LIGHTNINGLOADER:
case SA_SEISMICWEAPON:
case SA_SEISMICWEAPON: {
if (dstsd) {
if (dstsd->weapontype == W_FIST ||
(dstsd->sc.count && !dstsd->sc.data[type] &&
Expand All @@ -7281,13 +7281,22 @@ static int skill_castend_nodamage_id(struct block_list *src, struct block_list *
break;
}
}
#ifndef RENEWAL
// 100% success rate at lv4 & 5, but lasts longer at lv5
if (!clif->skill_nodamage(src, bl, skill_id, skill_lv, sc_start(src, bl, type, (60 + skill_lv * 10), skill_lv, skill->get_time(skill_id, skill_lv), skill_id))) {
if (sd)
int sc_chance = (60 + skill_lv * 10);
#else
int sc_chance = 100;
#endif
int sc_result = sc_start(src, bl, type, sc_chance, skill_lv, skill->get_time(skill_id, skill_lv), skill_id);
if (clif->skill_nodamage(src, bl, skill_id, skill_lv, sc_result) == 0) {
if (sd != NULL)
clif->skill_fail(sd, skill_id, USESKILL_FAIL_LEVEL, 0, 0);
if (skill->break_equip(bl, EQP_WEAPON, 10000, BCT_PARTY) && sd && sd != dstsd)
clif->message(sd->fd, msg_sd(sd,869)); // "You broke the target's weapon."
#ifndef RENEWAL
if (skill->break_equip(bl, EQP_WEAPON, 10000, BCT_PARTY) != 0 && sd != NULL && sd != dstsd)
clif->message(sd->fd, msg_sd(sd, 869)); // "You broke the target's weapon."
#endif
}
}
break;

case PR_ASPERSIO:
Expand Down
11 changes: 11 additions & 0 deletions src/map/status.c
Original file line number Diff line number Diff line change
Expand Up @@ -2342,6 +2342,17 @@ static int status_calc_pc_(struct map_session_data *sd, enum e_status_calc_opt o
if (sc->data[SC_EARTH_INSIGNIA] && sc->data[SC_EARTH_INSIGNIA]->val1 == 3)
sd->magic_addele[ELE_EARTH] += 25;

#ifdef RENEWAL
if (sc->data[SC_PROPERTYFIRE] != NULL)
sd->magic_atk_ele[ELE_FIRE] += sc->data[SC_PROPERTYFIRE]->val1;
if (sc->data[SC_PROPERTYWATER] != NULL)
sd->magic_atk_ele[ELE_WATER] += sc->data[SC_PROPERTYWATER]->val1;
if (sc->data[SC_PROPERTYWIND] != NULL)
sd->magic_atk_ele[ELE_WIND] += sc->data[SC_PROPERTYWIND]->val1;
if (sc->data[SC_PROPERTYGROUND] != NULL)
sd->magic_atk_ele[ELE_EARTH] += sc->data[SC_PROPERTYGROUND]->val1;
#endif

// Geffen Scrolls
if (sc->data[SC_SKELSCROLL]) {
#ifdef RENEWAL
Expand Down

0 comments on commit 5ab76e4

Please sign in to comment.