Issue information

Issue ID
#7800
Status
Fixed
Severity
None
Started
Wend
Nov 6, 2013 12:51
Last Post
Ind
Nov 9, 2013 19:46
Confirmation
Yes (2)
No (0)

Wend - Nov 6, 2013 12:51

Homunculus skills AfterCastActDelay is reset when you re-summon homunculus and you can use all skills without delay.

Wend - Nov 6, 2013 13:20

[url="http://www.youtube.com/watch?v=_ymf6w13Lsw&feature=youtu.be"]http://www.youtube.com/watch?v=_ymf6w13Lsw&feature=youtu.be[/url]

Ind - Nov 6, 2013 19:43

[code=auto:0] // Homunculus setting (Note 3) // Activates various 'quirks' that makes them behave unlike normal characters. // 0x001: Can't be targetted by support skills (except for their master) // 0x004: Mobs will always go after them instead of players until attacked // 0x008: Copy their master's speed on spawn/map-change // 0x010: They display luk/3+1 instead of their actual critical in the // stat window (by default they don't crit) // 0x020: Their Min-Matk is always the same as their max // 0x040: Skill re-use delay is reset when they are vaporized. hom_setting: 0xFFFF [/code]happens beucase of 0x040 (since its default makes me wonder if officially its like that?)

Wend - Nov 6, 2013 20:20

changing hom_setting and deleting[code=auto:0] if(battle_config.hom_setting&0x40) memset(hd->blockskill, 0, sizeof(hd->blockskill)); [/code]
does not work, homunculus still able to cast skill without delay

Ind - Nov 6, 2013 21:09

[quote name="Wend" timestamp="1383769213"]
changing hom_setting and deleting[code=auto:0] if(battle_config.hom_setting&0x40) memset(hd->blockskill, 0, sizeof(hd->blockskill)); [/code]does not work, homunculus still able to cast skill without delay

[/quote]I'm unable to reproduce, after disabling the setting the skill delays were no longer reset after doing rest+callhomun

Wend - Nov 8, 2013 14:53

for me, on a clean latest revision this setting doesn't work.

I started looking for the problem, and found this:

in function skill_blockhomun_start variable tick always = 0 and here:
[code=auto:0]if (tick < 1) { hd->blockskill[idx] = 0;[/code]
skills block reset when you call a homunculus.

skill.c
[code=auto:0]case HAMI_BLOODLUST: case HFLI_FLEET: case HFLI_SPEED: case HLIF_CHANGE: case MH_ANGRIFFS_MODUS: case MH_GOLDENE_FERSE: clif->skill_nodamage(src,bl,skill_id,skill_lv, sc_start(bl,type,100,skill_lv,skill->get_time(skill_id,skill_lv))); if (hd) skill->blockhomun_start(hd, skill_id, skill->get_delay(skill_id,skill_lv)); break;[/code]

[code=auto:0]skill->blockhomun_start(hd, skill_id, skill->get_time2(skill_id,skill_lv));[/code]

why skill->get_time2 here? replacing it with skill->get_delay solved the problem.

This post has been edited by Wend on Nov 8, 2013 15:07

Ind - Nov 8, 2013 18:34

skill->get_delay is not what you want (delay is what makes you unable to use ANY skills after you cast).
I've made cooldown reset not be default upon vaporising in [url="https://github.com/HerculesWS/Hercules/commit/7803b4e0d437681aa09113b5240363d03d85a1b8"]https://github.com/HerculesWS/Hercules/commit/7803b4e0d437681aa09113b5240363d03d85a1b8[/url] if that still doesn't fix for you I think your db files might be wrong configured (show me your skill_cast_db entries for the homun skills).

Wend - Nov 9, 2013 13:10

[quote name="Ind" timestamp="1383935672"]
skill->get_delay is not what you want (delay is what makes you unable to use ANY skills after you cast).[/quote]

an this is correct, no? for example:

[url="http://irowiki.org/classic/Mental_Charge"]http://irowiki.org/classic/Mental_Charge[/url]

[quote]
Lif cannot use Healing Hands or Urgent Escape while in the duration or the cast delay of Mental Charge.[/quote]

but for now, she can cast all skill (include Mental Change) after vaporize, because get_time2 return Duration2 which equals 0
[code=auto:0]//-- HLIF_CHANGE 8004,0,600000:900000:1200000,0,60000:120000:180000,0,0[/code]

This post has been edited by Wend on Nov 9, 2013 13:31

Ind - Nov 9, 2013 19:46

Fixed in [url="https://github.com/HerculesWS/Hercules/commit/4571a948eea6e082191a530f3f7d3ecb8b4602d1"]https://github.com/HerculesWS/Hercules/commit/4571a948eea6e082191a530f3f7d3ecb8b4602d1[/url]
Thanks for the info