Jump to content
  • 0

SL Modification[Magic skills not working anymore?]


Han25

Question


  • Group:  Members
  • Topic Count:  16
  • Topics Per Day:  0.00
  • Content Count:  67
  • Reputation:   2
  • Joined:  08/09/13
  • Last Seen:  

	if( sd->sc.count && sd->sc.data[SC_SPIRIT] && sd->sc.data[SC_SPIRIT]->val2 == SL_STAR)
		{
			sd->status.skill[85].id = 85;
			sd->status.skill[85].lv = 10;
			sd->status.skill[85].flag = SKILL_FLAG_PERMANENT; 

the skill "85 LOV" was showing under skill tree, but you can't use it. not unless you will perform a reloadskilldb.

 

TIA.

Edited by Elektrochemiestry
Link to comment
Share on other sites

14 answers to this question

Recommended Posts

  • 0

  • Group:  Members
  • Topic Count:  16
  • Topics Per Day:  0.00
  • Content Count:  67
  • Reputation:   2
  • Joined:  08/09/13
  • Last Seen:  

no one has a clue where to get this working? bumping again :D

note: actually im not just waiting here trying to get an answer from someone who knows this but, yes im also figuring out it myself what really happen why this code isn't working anymore.. (some of skills are working like attack skills(not magic ones or buff ones.) ) or does this affect with the updates on INF2_AUTOSHADOWSPELL not very sure cause i tried some svn does have this update aswell but it works on other svn with the updates of INF2_AUTOSHADOWSPELL so i guess INF2_AUTOSHADOWSPELL has nothing to do with this.. p.s im kinda desperate to fix this. HELP PLS THANKS in advanced.

Link to comment
Share on other sites

  • 0

  • Group:  Members
  • Topic Count:  47
  • Topics Per Day:  0.01
  • Content Count:  374
  • Reputation:   46
  • Joined:  03/27/13
  • Last Seen:  

	if( sd->sc.count && sd->sc.data[SC_SPIRIT] && sd->sc.data[SC_SPIRIT]->val2 == SL_STAR)
		{
			sd->status.skill[85].id = 85;
			sd->status.skill[85].lv = 10;
			sd->status.skill[85].flag = SKILL_FLAG_PERMANENT; 

the skill "85 LOV" was showing under skill tree, but you can't use it. not unless you will perform a reloadskilldb.

 

TIA.

 

 

Is that the whole src code you modified for that line?

Link to comment
Share on other sites

  • 0

  • Group:  Members
  • Topic Count:  16
  • Topics Per Day:  0.00
  • Content Count:  67
  • Reputation:   2
  • Joined:  08/09/13
  • Last Seen:  

 

	if( sd->sc.count && sd->sc.data[SC_SPIRIT] && sd->sc.data[SC_SPIRIT]->val2 == SL_STAR)
		{
			sd->status.skill[85].id = 85;
			sd->status.skill[85].lv = 10;
			sd->status.skill[85].flag = SKILL_FLAG_PERMANENT; 

the skill "85 LOV" was showing under skill tree, but you can't use it. not unless you will perform a reloadskilldb.

 

TIA.

 

 

Is that the whole src code you modified for that line?

 

what do you mean? i got those piece of code somewhere provided by i forgot the name.. but this piece of code is working before.. but up to the latest version of rA now, it is not working anymore..

Link to comment
Share on other sites

  • 0

  • Group:  Members
  • Topic Count:  47
  • Topics Per Day:  0.01
  • Content Count:  374
  • Reputation:   46
  • Joined:  03/27/13
  • Last Seen:  

 

 

	if( sd->sc.count && sd->sc.data[SC_SPIRIT] && sd->sc.data[SC_SPIRIT]->val2 == SL_STAR)
		{
			sd->status.skill[85].id = 85;
			sd->status.skill[85].lv = 10;
			sd->status.skill[85].flag = SKILL_FLAG_PERMANENT; 

the skill "85 LOV" was showing under skill tree, but you can't use it. not unless you will perform a reloadskilldb.

 

TIA.

 

 

Is that the whole src code you modified for that line?

 

what do you mean? i got those piece of code somewhere provided by i forgot the name.. but this piece of code is working before.. but up to the latest version of rA now, it is not working anymore..

 

 

So which line did you put this under skill.c?

Link to comment
Share on other sites

  • 0

  • Group:  Members
  • Topic Count:  16
  • Topics Per Day:  0.00
  • Content Count:  67
  • Reputation:   2
  • Joined:  08/09/13
  • Last Seen:  

 

 

 

	if( sd->sc.count && sd->sc.data[SC_SPIRIT] && sd->sc.data[SC_SPIRIT]->val2 == SL_STAR)
		{
			sd->status.skill[85].id = 85;
			sd->status.skill[85].lv = 10;
			sd->status.skill[85].flag = SKILL_FLAG_PERMANENT; 

the skill "85 LOV" was showing under skill tree, but you can't use it. not unless you will perform a reloadskilldb.

 

TIA.

 

 

Is that the whole src code you modified for that line?

 

what do you mean? i got those piece of code somewhere provided by i forgot the name.. but this piece of code is working before.. but up to the latest version of rA now, it is not working anymore..

 

 

So which line did you put this under skill.c?

 

it's under pc.c below this line

pc.c

			switch (sk_id) {
				case NV_TRICKDEAD:
					if( (sd->class_&MAPID_UPPERMASK) != MAPID_NOVICE ) {
						sd->status.skill[i].id = 0;
						sd->status.skill[i].lv = 0;
						sd->status.skill[i].flag = SKILL_FLAG_PERMANENT;
					}
					break;
			}
		}
	}
	
	if( sd->sc.count && sd->sc.data[SC_SPIRIT] && sd->sc.data[SC_SPIRIT]->val2 == SL_STAR ) {
		sd->status.skill[85].id = 85;
		sd->status.skill[85].lv = 10;
		sd->status.skill[85].flag = SKILL_FLAG_PERMANENT;
	}
Link to comment
Share on other sites

  • 0

  • Group:  Members
  • Topic Count:  47
  • Topics Per Day:  0.01
  • Content Count:  374
  • Reputation:   46
  • Joined:  03/27/13
  • Last Seen:  

Try replacing:

sd->status.skill[85].flag = SKILL_FLAG_PERMANENT;

into:

sd->status.skill[85].flag = SKILL_FLAG_TEMPORARY;
Link to comment
Share on other sites

  • 0

  • Group:  Members
  • Topic Count:  16
  • Topics Per Day:  0.00
  • Content Count:  67
  • Reputation:   2
  • Joined:  08/09/13
  • Last Seen:  

 

Try replacing:

sd->status.skill[85].flag = SKILL_FLAG_PERMANENT;

into:

sd->status.skill[85].flag = SKILL_FLAG_TEMPORARY;

actually, i did that already alot of times. but still nothing changed at all still cannot cast on to the ground

Link to comment
Share on other sites

  • 0

  • Group:  Members
  • Topic Count:  47
  • Topics Per Day:  0.01
  • Content Count:  374
  • Reputation:   46
  • Joined:  03/27/13
  • Last Seen:  

 

 

Try replacing:

sd->status.skill[85].flag = SKILL_FLAG_PERMANENT;

into:

sd->status.skill[85].flag = SKILL_FLAG_TEMPORARY;

actually, i did that already alot of times. but still nothing changed at all still cannot cast on to the ground

 

 

Or i guess you put it on the wrong line, mine worked in 2nd try by putting it under this line:

			//Link Bard skills to dancer.
			else {
				if( sd->status.skill[i].lv < 10 )
					continue;
				sd->status.skill[i-8].id = skill_id - 8;
				sd->status.skill[i-8].lv = sd->status.skill[i].lv; // Set the level to the same as the linking skill
				sd->status.skill[i-8].flag = SKILL_FLAG_TEMPORARY; // Tag it as a non-savable, non-uppable, bonus skill
			}
		}
	}

So that'll be like this:

			//Link Bard skills to dancer.
			else {
				if( sd->status.skill[i].lv < 10 )
					continue;
				sd->status.skill[i-8].id = skill_id - 8;
				sd->status.skill[i-8].lv = sd->status.skill[i].lv; // Set the level to the same as the linking skill
				sd->status.skill[i-8].flag = SKILL_FLAG_TEMPORARY; // Tag it as a non-savable, non-uppable, bonus skill
			}
		}
	}

	if( sd->sc.count && sd->sc.data[SC_SPIRIT] && sd->sc.data[SC_SPIRIT]->val2 == SL_STAR ) {
		sd->status.skill[85].id = 85;
		sd->status.skill[85].lv = 10;
		sd->status.skill[85].flag = SKILL_FLAG_TEMPORARY;
	}

Try that one.

Edited by Mary Magdalene
Link to comment
Share on other sites

  • 0

  • Group:  Members
  • Topic Count:  16
  • Topics Per Day:  0.00
  • Content Count:  67
  • Reputation:   2
  • Joined:  08/09/13
  • Last Seen:  

 

 

 

Try replacing:

sd->status.skill[85].flag = SKILL_FLAG_PERMANENT;

into:

sd->status.skill[85].flag = SKILL_FLAG_TEMPORARY;

actually, i did that already alot of times. but still nothing changed at all still cannot cast on to the ground

 

 

Or i guess you put it on the wrong line, mine worked in 2nd try by putting it under this line:

			//Link Bard skills to dancer.
			else {
				if( sd->status.skill[i].lv < 10 )
					continue;
				sd->status.skill[i-8].id = skill_id - 8;
				sd->status.skill[i-8].lv = sd->status.skill[i].lv; // Set the level to the same as the linking skill
				sd->status.skill[i-8].flag = SKILL_FLAG_TEMPORARY; // Tag it as a non-savable, non-uppable, bonus skill
			}
		}
	}

So that'll be like this:

			//Link Bard skills to dancer.
			else {
				if( sd->status.skill[i].lv < 10 )
					continue;
				sd->status.skill[i-8].id = skill_id - 8;
				sd->status.skill[i-8].lv = sd->status.skill[i].lv; // Set the level to the same as the linking skill
				sd->status.skill[i-8].flag = SKILL_FLAG_TEMPORARY; // Tag it as a non-savable, non-uppable, bonus skill
			}
		}
	}

	if( sd->sc.count && sd->sc.data[SC_SPIRIT] && sd->sc.data[SC_SPIRIT]->val2 == SL_STAR ) {
		sd->status.skill[85].id = 85;
		sd->status.skill[85].lv = 10;
		sd->status.skill[85].flag = SKILL_FLAG_TEMPORARY;
	}

Try that one.

 

tried it and it doesn't work, where did u test it? in the latest version? currently im doing it on the latest version.

Edited by Elektrochemiestry
Link to comment
Share on other sites

  • 0

  • Group:  Members
  • Topic Count:  47
  • Topics Per Day:  0.01
  • Content Count:  374
  • Reputation:   46
  • Joined:  03/27/13
  • Last Seen:  

 

 

 

 

Try replacing:

sd->status.skill[85].flag = SKILL_FLAG_PERMANENT;

into:

sd->status.skill[85].flag = SKILL_FLAG_TEMPORARY;

actually, i did that already alot of times. but still nothing changed at all still cannot cast on to the ground

 

 

Or i guess you put it on the wrong line, mine worked in 2nd try by putting it under this line:

			//Link Bard skills to dancer.
			else {
				if( sd->status.skill[i].lv < 10 )
					continue;
				sd->status.skill[i-8].id = skill_id - 8;
				sd->status.skill[i-8].lv = sd->status.skill[i].lv; // Set the level to the same as the linking skill
				sd->status.skill[i-8].flag = SKILL_FLAG_TEMPORARY; // Tag it as a non-savable, non-uppable, bonus skill
			}
		}
	}

So that'll be like this:

			//Link Bard skills to dancer.
			else {
				if( sd->status.skill[i].lv < 10 )
					continue;
				sd->status.skill[i-8].id = skill_id - 8;
				sd->status.skill[i-8].lv = sd->status.skill[i].lv; // Set the level to the same as the linking skill
				sd->status.skill[i-8].flag = SKILL_FLAG_TEMPORARY; // Tag it as a non-savable, non-uppable, bonus skill
			}
		}
	}

	if( sd->sc.count && sd->sc.data[SC_SPIRIT] && sd->sc.data[SC_SPIRIT]->val2 == SL_STAR ) {
		sd->status.skill[85].id = 85;
		sd->status.skill[85].lv = 10;
		sd->status.skill[85].flag = SKILL_FLAG_TEMPORARY;
	}

Try that one.

 

tried it and it doesn't work, where did u test it? in the latest version? currently im doing it on the latest version.

 

 

Oh i see, sorry dunno what's wrong now, dunno my version since it does not show on my map-server but I've downloaded this like 5 - 6 months ago.

Link to comment
Share on other sites

  • 0

  • Group:  Members
  • Topic Count:  16
  • Topics Per Day:  0.00
  • Content Count:  67
  • Reputation:   2
  • Joined:  08/09/13
  • Last Seen:  

 

 

 

 

 

Try replacing:

sd->status.skill[85].flag = SKILL_FLAG_PERMANENT;

into:

sd->status.skill[85].flag = SKILL_FLAG_TEMPORARY;

actually, i did that already alot of times. but still nothing changed at all still cannot cast on to the ground

 

 

Or i guess you put it on the wrong line, mine worked in 2nd try by putting it under this line:

			//Link Bard skills to dancer.
			else {
				if( sd->status.skill[i].lv < 10 )
					continue;
				sd->status.skill[i-8].id = skill_id - 8;
				sd->status.skill[i-8].lv = sd->status.skill[i].lv; // Set the level to the same as the linking skill
				sd->status.skill[i-8].flag = SKILL_FLAG_TEMPORARY; // Tag it as a non-savable, non-uppable, bonus skill
			}
		}
	}

So that'll be like this:

			//Link Bard skills to dancer.
			else {
				if( sd->status.skill[i].lv < 10 )
					continue;
				sd->status.skill[i-8].id = skill_id - 8;
				sd->status.skill[i-8].lv = sd->status.skill[i].lv; // Set the level to the same as the linking skill
				sd->status.skill[i-8].flag = SKILL_FLAG_TEMPORARY; // Tag it as a non-savable, non-uppable, bonus skill
			}
		}
	}

	if( sd->sc.count && sd->sc.data[SC_SPIRIT] && sd->sc.data[SC_SPIRIT]->val2 == SL_STAR ) {
		sd->status.skill[85].id = 85;
		sd->status.skill[85].lv = 10;
		sd->status.skill[85].flag = SKILL_FLAG_TEMPORARY;
	}

Try that one.

 

tried it and it doesn't work, where did u test it? in the latest version? currently im doing it on the latest version.

 

 

Oh i see, sorry dunno what's wrong now, dunno my version since it does not show on my map-server but I've downloaded this like 5 - 6 months ago.

 

np, 

Link to comment
Share on other sites

  • 0

  • Group:  Members
  • Topic Count:  21
  • Topics Per Day:  0.01
  • Content Count:  53
  • Reputation:   0
  • Joined:  12/13/12
  • Last Seen:  

bump

Link to comment
Share on other sites

  • 0

  • Group:  Members
  • Topic Count:  45
  • Topics Per Day:  0.01
  • Content Count:  715
  • Reputation:   83
  • Joined:  01/05/12
  • Last Seen:  

Any solution for this issue?

Link to comment
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.   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.

×
×
  • Create New...