Jump to content
  • 0

10% Fixed Cast Time Request


Question

Posted (edited)

Untitled_zpse35fd476.png

^ Guys I wanted to achieve that setup on my server. How can I do it? I tried to look arround but I didn't manage to get a solution. 

 

NOTE : I want only 3rd job to have renewal cast

Edited by esquilla13

10 answers to this question

Recommended Posts

Posted

You'll have to do a source edit and recompile to do what you're talking about.

 

It would be easier to manually edit all of the skills.

 

You're looking for the Fixed Casting Time, which is at the end of the line.

 

skill_cast_db.txt

// SkillID,CastingTime,AfterCastActDelay,AfterCastWalkDelay,Duration1,Duration2,Cool Down,Fixed Casting Time

 

Unless you are asking for someone to do this for you, then best of luck.

Posted

Editing all of skills is a lot of work/time to do. While editing it on src would be more easier. I only need the idea on where to include that condition that will check if it is a 3rd Class, if its yes Then Renewal Cast will affect only all 3rd Jobs Skills. ~


uppppppppp

Posted

If u want 3rd Class skill that only has fixed cast time, the gives all fixed cast time value for non-3rd skill to -1 on db/re/skill_cast_db.txt. /heh

 

If u want every 3rd Class casts any skill, it has fixed cast time, example Creator casts AM_POTIONPITCHER (db value: 0), it doesn't get Fixed Cast time. But when Genetic casts the same skill with same db value, it has 20% fixed cast time. maybe...

 

diff --git a/src/map/skill.c b/src/map/skill.c
index f9b6297..4069135 100755
--- a/src/map/skill.c
+++ b/src/map/skill.c
@@ -15474,10 +15474,14 @@ int skill_vfcastfix(struct block_list *bl, double time, uint16 skill_id, uint16
  if( bl->type == BL_MOB )
  return (int)time;
 
- if( fixed == 0 ){
- fixed = (int)time * 20 / 100; // fixed time
- time = time * 80 / 100; // variable time
- }else if( fixed < 0 ) // no fixed cast time
+ if (!sd || (sd && sd->class_&JOBL_THIRD)) {
+ if( fixed == 0 ){
+ fixed = (int)time * 20 / 100; // fixed time
+ time = time * 80 / 100; // variable time
+ }else if( fixed < 0 ) // no fixed cast time
+ fixed = 0;
+ }
+ else
  fixed = 0;
 
  if(sd  && !(skill_get_castnodex(skill_id, skill_lv)&4) ){ // Increases/Decreases fixed/variable cast time of a skill by item/card bonuses.
 
 

 

if u want change the 20% to 10%, just change

 

diff --git a/src/map/skill.c b/src/map/skill.c
index f9b6297..efdb192 100755
--- a/src/map/skill.c
+++ b/src/map/skill.c
@@ -15475,8 +15475,8 @@ int skill_vfcastfix(struct block_list *bl, double time, uint16 skill_id, uint16
  return (int)time;
 
  if( fixed == 0 ){
- fixed = (int)time * 20 / 100; // fixed time
- time = time * 80 / 100; // variable time
+ fixed = (int)time * 10 / 100; // fixed time
+ time = time * 90 / 100; // variable time
  }else if( fixed < 0 ) // no fixed cast time
  fixed = 0;
 
Posted

Is Renewal Casting time reduce-able by cast-time modifiers (berzebub, etc, etc) ?


If u want 3rd Class skill that only has fixed cast time, the gives all fixed cast time value for non-3rd skill to -1 on db/re/skill_cast_db.txt. /heh
 
If u want every 3rd Class casts any skill, it has fixed cast time, example Creator casts AM_POTIONPITCHER (db value: 0), it doesn't get Fixed Cast time. But when Genetic casts the same skill with same db value, it has 20% fixed cast time. maybe...
 

diff --git a/src/map/skill.c b/src/map/skill.c
index f9b6297..4069135 100755
--- a/src/map/skill.c
+++ b/src/map/skill.c
@@ -15474,10 +15474,14 @@ int skill_vfcastfix(struct block_list *bl, double time, uint16 skill_id, uint16
  if( bl->type == BL_MOB )
  return (int)time;
 
- if( fixed == 0 ){
- fixed = (int)time * 20 / 100; // fixed time
- time = time * 80 / 100; // variable time
- }else if( fixed < 0 ) // no fixed cast time
+ if (!sd || (sd && sd->class_&JOBL_THIRD)) {
+ if( fixed == 0 ){
+ fixed = (int)time * 20 / 100; // fixed time
+ time = time * 80 / 100; // variable time
+ }else if( fixed < 0 ) // no fixed cast time
+ fixed = 0;
+ }
+ else
  fixed = 0;
 
  if(sd  && !(skill_get_castnodex(skill_id, skill_lv)&4) ){ // Increases/Decreases fixed/variable cast time of a skill by item/card bonuses.
 
 
 
if u want change the 20% to 10%, just change
 
diff --git a/src/map/skill.c b/src/map/skill.c
index f9b6297..efdb192 100755
--- a/src/map/skill.c
+++ b/src/map/skill.c
@@ -15475,8 +15475,8 @@ int skill_vfcastfix(struct block_list *bl, double time, uint16 skill_id, uint16
  return (int)time;
 
  if( fixed == 0 ){
- fixed = (int)time * 20 / 100; // fixed time
- time = time * 80 / 100; // variable time
+ fixed = (int)time * 10 / 100; // fixed time
+ time = time * 90 / 100; // variable time
  }else if( fixed < 0 ) // no fixed cast time
  fixed = 0;
 

Should I enable renewal casting?


UP

Posted

you request bit confused me

if you want fixed cast just add fixed cast time like this

 

You'll have to do a source edit and recompile to do what you're talking about.

 

It would be easier to manually edit all of the skills.

 

You're looking for the Fixed Casting Time, which is at the end of the line.

 

skill_cast_db.txt

// SkillID,CastingTime,AfterCastActDelay,AfterCastWalkDelay,Duration1,Duration2,Cool Down,Fixed Casting Time

 

Unless you are asking for someone to do this for you, then best of luck.

 

and remove all non 3rd job fixed cast if any

  • Upvote 1

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.   Paste as plain text instead

  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.

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...