Linkin Park Posted August 18, 2012 Group: Members Topic Count: 42 Topics Per Day: 0.01 Content Count: 227 Reputation: 11 Joined: 11/16/11 Last Seen: November 7, 2015 Share Posted August 18, 2012 I know Devotion and reflect damage is not bugged, I just want to modify it to work to what I want, Scenario ChampA and ChampB are both devoted by PallyA and PallyB ChampA casted Asura Strike on ChampB with reflect set / reflect skill from PallyB *** The Reflected damage on ChampA should be absorbed by PallyA and not the ChampA *** Bold Texts:That's what I want to do. The current one is the reflected damage is absorbed by ChampA. Anyone can help? anyone please? Quote Link to comment Share on other sites More sharing options...
Dinze Posted August 18, 2012 Group: Members Topic Count: 2 Topics Per Day: 0.00 Content Count: 34 Reputation: 4 Joined: 11/09/11 Last Seen: August 4, 2016 Share Posted August 18, 2012 (edited) Check revision 14400, 14406, 14410 and revert it back to the old devotion/reflect effect. Edited August 18, 2012 by Genuine Quote Link to comment Share on other sites More sharing options...
Linkin Park Posted August 23, 2012 Group: Members Topic Count: 42 Topics Per Day: 0.01 Content Count: 227 Reputation: 11 Joined: 11/16/11 Last Seen: November 7, 2015 Author Share Posted August 23, 2012 I did a revert on the part of the codes for devo and reflect damage but it doesn't work. The reflected damage still goes to the devotee instead to the paladin who devo the champ. Anyone can help please? Quote Link to comment Share on other sites More sharing options...
Cookie Posted August 24, 2012 Group: Members Topic Count: 20 Topics Per Day: 0.00 Content Count: 213 Reputation: 109 Joined: 05/21/12 Last Seen: December 27, 2014 Share Posted August 24, 2012 If you revert back before my revision, all damage will be reflected to the Paladin itself. Quote Link to comment Share on other sites More sharing options...
Linkin Park Posted August 25, 2012 Group: Members Topic Count: 42 Topics Per Day: 0.01 Content Count: 227 Reputation: 11 Joined: 11/16/11 Last Seen: November 7, 2015 Author Share Posted August 25, 2012 If you revert back before my revision, all damage will be reflected to the Paladin itself. What revision? Quote Link to comment Share on other sites More sharing options...
Mystery Posted August 25, 2012 Group: Members Topic Count: 94 Topics Per Day: 0.02 Content Count: 2192 Reputation: 253 Joined: 11/11/11 Last Seen: June 24, 2020 Share Posted August 25, 2012 r16676: http://trac.rathena....t/16676/rathena or could be referred to http://trac.rathena.org/changeset/15185/rathena this one was 8 months ago.. while in r16676, it was 4 days ago. Quote Link to comment Share on other sites More sharing options...
Linkin Park Posted August 28, 2012 Group: Members Topic Count: 42 Topics Per Day: 0.01 Content Count: 227 Reputation: 11 Joined: 11/16/11 Last Seen: November 7, 2015 Author Share Posted August 28, 2012 I tried reverting 16676 and 15185 at the same time, result = there is no reflect damage at all. Tried reverting just 16676 and it still reflects to the devotee / attacker. I want it to be the pally who casted devotion on the attacker will absorb the reflected damage. Still no luck Quote Link to comment Share on other sites More sharing options...
jutaysxd Posted November 27, 2012 Group: Members Topic Count: 63 Topics Per Day: 0.01 Content Count: 134 Reputation: 1 Joined: 09/29/12 Last Seen: June 27, 2015 Share Posted November 27, 2012 Bump Is this topic Fix ? Sorry for my bad english Quote Link to comment Share on other sites More sharing options...
markiez22 Posted March 14, 2013 Group: Members Topic Count: 11 Topics Per Day: 0.00 Content Count: 126 Reputation: 5 Joined: 10/31/12 Last Seen: June 7, 2023 Share Posted March 14, 2013 (edited) Try.http://www.eathena.ws/board/index.php?autocom=bugtracker&showbug=4957 Edited March 14, 2013 by markiez22 Quote Link to comment Share on other sites More sharing options...
markiez22 Posted March 15, 2013 Group: Members Topic Count: 11 Topics Per Day: 0.00 Content Count: 126 Reputation: 5 Joined: 10/31/12 Last Seen: June 7, 2023 Share Posted March 15, 2013 Cyrix made Index: src/map/battle.c =================================================================== --- src/map/battle.c (revision 15817) +++ src/map/battle.c (working copy) @@ -233,10 +233,8 @@ nullpo_ret(target); sc = status_get_sc(target); - - if( sc && sc->data[sC_DEVOTION] && damage > 0 && skill_id != PA_PRESSURE && skill_id != CR_REFLECTSHIELD ) + //devotion patch by Cyrix (rathena) ([email protected]) +//https://www.facebook.com/ragdb.ragnarok +if( sc && sc->data[sC_DEVOTION] && damage > 0 && skill_id != PA_PRESSURE && skill_id != CR_REFLECTSHIELD ) damage = 0; - if ( !battle_config.delay_battle_damage || amotion <= 1 ) { map_freeblock_lock(); status_fix_damage(src, target, damage, ddelay); // We have to seperate here between reflect damage and others [icescope] @@ -4186,7 +4184,7 @@ } else status_change_end(target, SC_DEVOTION, INVALID_TIMER); - } + } if (sc && sc->data[sC_AUTOSPELL] && rnd()0 < sc->data[sC_AUTOSPELL]->val4) { int sp = 0; Index: src/map/pc.c =================================================================== --- src/map/pc.c (revision 15817) +++ src/map/pc.c (working copy) @@ -6078,8 +6078,7 @@ for(k = 0; k < 5; k++) if (sd->devotion[k]){ struct map_session_data *devsd = map_id2sd(sd->devotion[k]); - if (devsd) - status_change_end(&devsd->bl, SC_DEVOTION, INVALID_TIMER); + //devotion patch by Cyrix (rathena) ([email protected]) +//https://www.facebook.com/ragdb.ragnarok + if (devsd) status_change_end(&devsd->bl,SC_DEVOTION,-1); sd->devotion[k] = 0; } Index: src/map/status.c =================================================================== --- src/map/status.c (revision 15817) +++ src/map/status.c (working copy) @@ -1015,31 +1015,43 @@ // if (!target->prev && !(flag&2)) // return 0; //Cannot damage a bl not on a map, except when "charging" hp/sp - sc = status_get_sc(target); - if( hp && battle_config.invincible_nodamage && src && sc && sc->data[sC_INVINCIBLE] && !sc->data[sC_INVINCIBLEOFF] ) - hp = 1; + //devotion patch by Cyrix (rathena) ([email protected]) +//https://www.facebook.com/ragdb.ragnarok + sc = status_get_sc(target); + - if( hp && !(flag&1) ) { + if( hp && !(flag&(1|8)) ) { if( sc ) { struct status_change_entry *sce; + if( (sce = sc->data[sC_DEVOTION]) && src && battle_getcurrentskill(src) != PA_PRESSURE ) + { // Devotion prevents any of the other ailments from ending. + struct block_list *d_bl = map_id2bl(sce->val1); + + if( d_bl && ( + (d_bl->type == BL_MER && ((TBL_MER*)d_bl)->master && ((TBL_MER*)d_bl)->master->bl.id == target->id) || + (d_bl->type == BL_PC && ((TBL_PC*)d_bl)->devotion[sce->val2] == target->id) + ) && check_distance_bl(target, d_bl, sce->val3) ) + { + clif_damage(d_bl, d_bl, gettick(), 0, 0, hp, 0, 0, 0); + status_fix_damage(NULL, d_bl, hp, 0); + return 0; + } + + status_change_end(target, SC_DEVOTION, -1); + } if (sc->data[sC_STONE] && sc->opt1 == OPT1_STONE) - status_change_end(target, SC_STONE, INVALID_TIMER); - status_change_end(target, SC_FREEZE, INVALID_TIMER); - status_change_end(target, SC_SLEEP, INVALID_TIMER); - status_change_end(target, SC_WINKCHARM, INVALID_TIMER); - status_change_end(target, SC_CONFUSION, INVALID_TIMER); - status_change_end(target, SC_TRICKDEAD, INVALID_TIMER); - status_change_end(target, SC_HIDING, INVALID_TIMER); - status_change_end(target, SC_CLOAKING, INVALID_TIMER); - status_change_end(target, SC_CHASEWALK, INVALID_TIMER); - status_change_end(target, SC_CAMOUFLAGE, INVALID_TIMER); - status_change_end(target, SC__INVISIBILITY, INVALID_TIMER); - status_change_end(target, SC_DEEPSLEEP, INVALID_TIMER); + status_change_end(target,SC_STONE,-1); + status_change_end(target,SC_FREEZE,-1); + status_change_end(target,SC_SLEEP,-1); + status_change_end(target,SC_WINKCHARM,-1); + status_change_end(target,SC_CONFUSION,-1); + status_change_end(target,SC_TRICKDEAD,-1); + status_change_end(target,SC_HIDING,-1); + status_change_end(target,SC_CLOAKING,-1); + status_change_end(target,SC_CHASEWALK,-1); if ((sce=sc->data[sC_ENDURE]) && !sce->val4) { //Endure count is only reduced by non-players on non-gvg maps. //val4 signals infinite endure. [skotlex] if (src && src->type != BL_PC && !map_flag_gvg(target->m) && !map[target->m].flag.battleground && --(sce->val2) < 0) - status_change_end(target, SC_ENDURE, INVALID_TIMER); + status_change_end(target, SC_ENDURE, -1); } if ((sce=sc->data[sC_GRAVITATION]) && sce->val3 == BCT_SELF) { struct skill_unit_group* sg = skill_id2group(sce->val4); @@ -8235,14 +8247,14 @@ for( i = 0; i < 5; i++ ) { if( sd->devotion && (tsd = map_id2sd(sd->devotion)) && tsd->sc.data[type] ) - status_change_end(&tsd->bl, type, INVALID_TIMER); + status_change_end(&tsd->bl, type, -1); } } else if( bl->type == BL_MER && ((TBL_MER*)bl)->devotion_flag ) { // Clear Status from Master tsd = ((TBL_MER*)bl)->master; if( tsd && tsd->sc.data[type] ) - status_change_end(&tsd->bl, type, INVALID_TIMER); + status_change_end(&tsd->bl, type, -1); } } break; @@ -8258,10 +8270,10 @@ clif_devotion(d_bl, NULL); } - status_change_end(bl, SC_AUTOGUARD, INVALID_TIMER); - status_change_end(bl, SC_DEFENDER, INVALID_TIMER); - status_change_end(bl, SC_REFLECTSHIELD, INVALID_TIMER); - status_change_end(bl, SC_ENDURE, INVALID_TIMER); + status_change_end(bl,SC_AUTOGUARD,-1); + status_change_end(bl,SC_DEFENDER,-1); + status_change_end(bl,SC_REFLECTSHIELD,-1); + status_change_end(bl,SC_ENDURE,-1); } break; Quote Link to comment Share on other sites More sharing options...
Question
Linkin Park
I know Devotion and reflect damage is not bugged, I just want to modify it to work to what I want,
Scenario
ChampA and ChampB are both devoted by PallyA and PallyB
ChampA casted Asura Strike on ChampB with reflect set / reflect skill from PallyB
*** The Reflected damage on ChampA should be absorbed by PallyA and not the ChampA ***
Bold Texts:That's what I want to do. The current one is the reflected damage is absorbed by ChampA.
Anyone can help?
anyone please?
Link to comment
Share on other sites
9 answers to this question
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.