Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Added multi-hit critical damage display support #2982

Merged
merged 1 commit into from Sep 17, 2019
Merged

Conversation

secretdataz
Copy link
Member

@secretdataz secretdataz commented Mar 14, 2018

  • Addressed Issue(s): #1788

  • Server Mode: Renewal (skill part), Both (clif part)

  • Description of Pull Request:

    • Double Attack and Fear Breeze can now critically strike.
    • Critical damage from those skills will now displayed as critical damage properly (Client date 20161207 or later).
    • The code is hacky and need some tests.
  • To-do:

    • Test interaction with endure'd enemies
    • Test interaction with MVPs
    • Check for position desyncs caused by the new damage type (especially with the two types of enemies above)

@zackdreaver
Copy link
Contributor

@zackdreaver zackdreaver commented Mar 14, 2018

iirc, the client date should be around dec 2016, not 2017.

@secretdataz
Copy link
Member Author

@secretdataz secretdataz commented Mar 14, 2018

@zackdreaver Oh, yeah. I got the year off by one year. Thanks!

@BrOgBr
Copy link
Contributor

@BrOgBr BrOgBr commented Mar 14, 2018

It seems to work. xD

Critical:
zzzz

Normal:
zzzz2

@yashimwong
Copy link
Contributor

@yashimwong yashimwong commented Mar 15, 2018

using your code, auto-counter does not display the crit animation anymore. several changes need to be put. maybe add:

if(skill_id == KN_AUTOCOUNTER)
return true;

at the is_attack_critical line? im not sure if it's just me though

@iubantot
Copy link

@iubantot iubantot commented Mar 15, 2018

im testing this PR, and i tried using snake hat + fear breeze result is the fear breeze is not effect is i think is canceled cause its only double attacks showing.

@talesofragnarok
Copy link

@talesofragnarok talesofragnarok commented Mar 18, 2018

i try this but as i notice critical working 100% but the double attack are gone

@Badarosk0
Copy link

@Badarosk0 Badarosk0 commented Mar 22, 2018

I tested it with all the skills and it seems to work fine. But I found something.

Not working with Raging Trifecta Blow.

@idamonli
Copy link

@idamonli idamonli commented Apr 1, 2018

@BrOgBr
What skills are used?

@idamonli
Copy link

@idamonli idamonli commented Apr 1, 2018

Active attack skills don't seem to support them.

@secretdataz
Copy link
Member Author

@secretdataz secretdataz commented Apr 1, 2018

According to my test results on kRO, triple attack’s change is likely to be reverted or not implemented in the first place.

@BrOgBr
Copy link
Contributor

@BrOgBr BrOgBr commented Apr 2, 2018

@idamonli I didn't understand you. oO
In the SS, I was using Double Attack and it's working.

@erenaryana
Copy link

@erenaryana erenaryana commented Apr 4, 2018

excuse me. sorry but where do i get a client date 2017 as mentioned ? i wanted to test this on the offline rathena

@cydh
Copy link
Contributor

@cydh cydh commented Apr 21, 2018

in skill.hpp, member of struct s_skill_db
please change the uint8 nk; to uint16 nk; at least.

@secretdataz
Copy link
Member Author

@secretdataz secretdataz commented Apr 21, 2018

@cydh Good catch. Thanks

@mazvi
Copy link
Contributor

@mazvi mazvi commented Jul 6, 2018

How about this update?

@Atemo
Copy link
Contributor

@Atemo Atemo commented Jul 6, 2018

See the to-do list above ^

@jezztify
Copy link
Contributor

@jezztify jezztify commented Aug 12, 2018

Tested this PR.

  • Test interaction with endure'd enemies
  • Test interaction with MVPs
    extra:
  • Test interaction in PVP: Doesn't work

@secretdataz
Copy link
Member Author

@secretdataz secretdataz commented Aug 18, 2018

@jezznar Thanks for testing. Do you feel any position desync when critting on endured enemies or MVPs?

@@ -4847,6 +4849,9 @@ int clif_damage(struct block_list* src, struct block_list* dst, unsigned int tic
if(src == dst) {
unit_setdir(src, unit_getdir(src));
}

// In case this assignment is bypassed by DMG_MULTI_HIT_CRITICAL
type = clif_calc_delay(type, div, damage + damage2, ddelay);
Copy link
Member

@Lemongrass3110 Lemongrass3110 Aug 18, 2018

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Shouldnt this be inside an if to avoid multiple calculations for ither types?

@BrOgBr
Copy link
Contributor

@BrOgBr BrOgBr commented Aug 18, 2018

Against MVPs I've already tested it and confirmed that it was working xD

@Atemo
Copy link
Contributor

@Atemo Atemo commented Aug 18, 2018

Yeha the system displays the crit on mvp in this PR. But previously crit + high aspd could 'hit lock' the mob, in vulgar term. The question is: the multi hit crit can 'hit lock' a mvp or a mob under endure on official? The answer will probably be subjective

@redlightliu
Copy link

@redlightliu redlightliu commented Aug 31, 2018

Update those source will let Fist Spell(SO_SPELLFIST) can be crit.
Fist Spell should not crit.

@jezztify
Copy link
Contributor

@jezztify jezztify commented Sep 1, 2018

@secretdataz what do you mean about positional desync? I'm not quite sure about what you mean but now that you mentioned something about positions, I still get to attack a monster when it pushes me off. somehow, the attack became ranged? here's a video. https://www.youtube.com/watch?v=SgaFJAupveI

by the way, I merged my copy with the current master branch.
client: 20180308

@rathena rathena deleted a comment from nutstartza Oct 14, 2018
@AsurielRO
Copy link

@AsurielRO AsurielRO commented Oct 25, 2018

is it normal that when you use a katar the critical wont show and if you use a dagger critical always showing?

@luan122
Copy link
Contributor

@luan122 luan122 commented Nov 13, 2018

is it normal that when you use a katar the critical wont show and if you use a dagger critical always showing?

is the damage different when you do critical and when you don't with katar?

@darhylism
Copy link

@darhylism darhylism commented Dec 15, 2018

is this good to go?

@Miraakol
Copy link

@Miraakol Miraakol commented May 4, 2019

@aleffmoura
Copy link

@aleffmoura aleffmoura commented Aug 31, 2019

Its not working?

@secretdataz
Copy link
Member Author

@secretdataz secretdataz commented Sep 11, 2019

Make sure you are using exe, hexed, or whatever you call your client dated 2016-12-07 or later.
I will not help you if you don't state that you are using client version 2016-12-07 or newer.

* Fixed #1788.
* Double Attack and Fear Breeze can now critically strike.
@secretdataz secretdataz merged commit 08d160a into master Sep 17, 2019
6 checks passed
@secretdataz secretdataz deleted the feature/skill_crit branch Sep 17, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet