Jump to content
  • 0
Rotciv

Player Animation

Question

Hi! I'm extremely new to server configurations and stuff, so I started studying and testing things. I made a custom skill that does same thing as Bash (SM_BASH), with less SP cost and less damage.
But when I use it ingame, the character animation is different from the original Bash: It doesn't make an attack animation like Bash. Instead, the character plays a "First Aid" animation (I assumed it is the default animation).
So the question is: how (or where) can I change it? The wiki doesn't specify it so i'm kinda lost :(

Thanks for the support

Share this post


Link to post
Share on other sites

12 answers to this question

Recommended Posts

  • 0

So my edit may be more useful for you but if you go to your custom skill, in the skill.ca and add this line : 

Quote

clif_specialeffect(src,149,AREA);

      SRC is for self and BL is target,  149 is effect number and area can be left as 0, bash is effect 1 but i dont have anything handy to test how ugly it is cause its a pretty horrendous command.

cause when you miss with this , you still apply the effects.... ugly af and misleading but whatever not like bash ever misses LOL 

 

im gonna leave this here though, 

but honestly pal if your going that for and wanna go the extra couple Kilometres do this, make sm_bash go to level 20 then im sure you could figure out a way to make skilllvls 11-20 deal a custom amount of damage different from the 1-10 levels... that way you can keep them different like for example doing 

skillration+= 100*skillvl - MINUS (skilllvl * 5) Something along these lines 

yeah that part is internal but heres what you can do , i do this for third job skills cause if you add 3rd job to trans class it adds 3rd tab SOOO...

 

   in skill c jump to down here 

		case WM_SEVERE_RAINSTORM_MELEE:
		case WM_GREAT_ECHO:
		case GN_SLINGITEM_RANGEMELEEATK:
		case KO_SETSUDAN:
		case GC_DARKCROW:
   		case LG_OVERBRAND_BRANDISH:
  		case LG_OVERBRAND:
           skill->attack(BF_WEAPON,src,src,bl,skill_id,skill_lv,tick,flag);
        break;

        int skill_castend_damage_id(struct block_list* src, struct block_list *bl, uint16 skill_id, uint16 skill_lv, int64 				tick, int flag);
        case KN_SWAVE:
        skill_attack(BF_WEAPON,src,src,bl,RK_SONICWAVE,skill_lv,tick,flag);
        break;

        int skill_castend_damage_id(struct block_list* src, struct block_list *bl, uint16 skill_id, uint16 skill_lv, int64 				tick, int flag);
        case KN_BLOODSPEAR:
        skill_attack(BF_WEAPON,src,src,bl,RK_HUNDREDSPEAR,skill_lv,tick,flag);
        break;

so add this underneath where i said, and if its magic skill do it with bf_magic or whatever it is....

You might not need the int skill_castend_damage since thats just identifying or whatever, i didnt delete them probably was confused or already achieved my desired results, not gonna matter unless you use those factors and we arent.... LOL sorry 

Quote

        int skill_castend_damage_id(struct block_list* src, struct block_list *bl, uint16 skill_id, uint16 skill_lv, int64 tick, int flag);
        case KN_BLOODSPEAR:
        skill_attack(BF_WEAPON,src,src,bl,RK_HUNDREDSPEAR,skill_lv,tick,flag);
        break;

so now my new custom skills KN_BLOODSPEAR and KN_SWAVE are duplicates hundred spear and sonic wave from RK except for a few things it seems , looks like i take the formulas for battle.c are the same, but since you just wanna make a skill like bash with less sp cost and such... you can easily do that... theres probably a way to fix this but as for me, im not there yet, so i dont have a complete answer for you

Edited by lllaaazzz

Share this post


Link to post
Share on other sites
  • 0
Quote

clif_specialeffect(src,149,AREA);

This code is generating error while I try to compile :( I'm reading about clif function right now to see if I can solve this. But thank you so much for the tip! I was lost and now I kinda know where to look.
Oh and I don't want to use the skill on my server hahahah I created it just to test things. Like I said, i'm still learning. So I created a custom skill for the first time and was like "okay so i KINDA know how to make custom skills now, but the character animation sucks. how can I change that...?"

Share this post


Link to post
Share on other sites
  • 0

okay I got it! turns out the syntax should be 

Quote

clif->specialeffect(params);

So it worked fine. BUT it was the special effect, and not the character animation :/ 
I'll try to explain better: On the bash animation, the character swings his sword (assuming he's using a sword) on the target. The character also shows a glowing effect (and sound). This glowing effect and sound is the special effect, I assume. What I want is the character animation, which is swing its sword towards the target. My new skill doesn't do that. It does make a Bash Special Effect (the glowing thing), but not the animation (swing the sword). It doesn't even show the sword.

Share this post


Link to post
Share on other sites
  • 0

Most of the Sprite animations are handled by client and is hardcoded in client itself.

Share this post


Link to post
Share on other sites
  • 0
27 minutes ago, Dastgir said:

Most of the Sprite animations are handled by client and is hardcoded in client itself.

How? I searched for "sm_bash" in every single file from client, and I didn't find anything relevant that may affect the character animation

Share this post


Link to post
Share on other sites
  • 0
9 minutes ago, Rotciv said:

How? I searched for "sm_bash" in every single file from client, and I didn't find anything relevant that may affect the character animation

hardcoded: fix (data or parameters) in a program in such a way that they cannot be altered without modifying the program.

 

we don't have Client source as such, so if you are not able to achieve via server side editing, it probably isn't possible without any client mod.

 

also be sure that client does not like out of range skill ID's either.

alternatively, you can modify source such that when your new skill is used, trick the client and send bash skill id to client.

Share this post


Link to post
Share on other sites
  • 0
8 hours ago, lllaaazzz said:

You should read the second half of my post and not just the edit, seriously i said that command was horrendous LMAO 

I didn't understand at the first (and second) time I read what you said, i'm so sorry. I read it all over again now and everything made sense. So I went to skill.c and wrote:

Quote

case NV_NEW_SKILL:
    skill->attack(BF_WEAPON,src,src,bl,SM_BASH,skill_lv,tick,flag);

So now the new skill actually makes the character swing his sword, so that's awesome! Thank you so much. But now the skill is dealing double damage (the new skill's + Bash's) lmao
I'll try to figure this out

Share this post


Link to post
Share on other sites
  • 0

OK one final question... I know you guys helped me a lot, I just don't wanna create anoother thread just to ask this... :
Screenshot_1.png.752a63e51dd6e2565a303d318de0841f.png

So this is my skill at skill_db.conf and it's working all fine, but I skill manage to use it with other weapons rather than Daggers or 1Handed Swords (like 1handed axe). I tried removing the "NoWeapon" line, tried putting "1HAxes: false", but it didn't work. I still can use the skill using axes~~ What did I do wrong?

This is my last question in this thread I promise lol

Share this post


Link to post
Share on other sites
  • 0

Hey everyone. I'm back just to post here the resolution of the problem mentioned in the beginning of the thread, just in case someone else has the same problem.
So yeah character animations and stuff~ There's a lua file at data\luafiles514\lua files\skilleffectinfo\skilleffectinfolist.lua. There you can create a block related to the skill you want to edit. At the block, there are two nice functions you can use: beginMotionType and beginEffectID. beginMotionType is used to select what type of animation the character will make the moment the skill is being used. beginEffectID replaces the actual beginning special effect of the skill to the one you specify.
There's a list of Actor State and Special Effects somewhere so you can choose. It's easy to find. So that's it :)

I'm now trying to change the special effect of the target the moment it gets hit by the skill. If someone has any clues, please share <3 

Share this post


Link to post
Share on other sites
  • 0

I managed to change almost all the skilleffectinfolist parameters, the only one that doesn't cause any effect is the beginMotionType. No matter what value I put, it continues to do just the standard FirstAid movement.

[SKID.RM_DISPARORICOCHETE] = {
        beginMotionType = ACTOR_STATE.ST_PICKUP,                   <-- not ok
        targetEffectNum = 2,
        targetEffectID = { EFID.EF_ENERGYDRAIN_BLACK, EFID.EF_SOUL_EXPLOSION },   <-- ok
        targetWaveFileName = "effect\\hunter_landmine.wav",                             <-- ok
    }

Is there anything I need to do to enable this customization?

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...

×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.