Jump to content
  • 0

soul link effect modification


Question

Posted

can you please help me with this effects when soul linked

 

Stalker :
10% Single Strip using GList coat when linked

 

LK :
Enable parrying with 1 handed sword when linked
 

SG :
Enable Parrying lvl 10 and LOV lvl 10
70 increase damage to all enemy when linked

 

Wizard/Prof:

increase HP when linked

Increase in Hit Points of Gunslinger / High Priest / Whitesmith / Snipers

 

Thank You in advance /thx/no1/kis

13 answers to this question

Recommended Posts

  • 0
Posted (edited)

SG LOV and PARRYING:

 

Go to your trunk/src/map/pc.c and look for:

	for( i = 0; i < MAX_SKILL; i++ ) {
		if( sd->status.skill[i].flag != SKILL_FLAG_PLAGIARIZED && sd->status.skill[i].flag != SKILL_FLAG_PERM_GRANTED ) //Don't touch these
			sd->status.skill[i].id = 0; //First clear skills.
		/* permanent skills that must be re-checked */
		if( sd->status.skill[i].flag == SKILL_FLAG_PERM_GRANTED ) {
			switch( i ) {
				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;
			}
		}
	}

Add this Lines below:

	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; 
			sd->status.skill[356].id = 356;
			sd->status.skill[356].lv = 10;
			sd->status.skill[356].flag = SKILL_FLAG_PERMANENT; 
		} 

LK PARRYING USING 1 Hand:

 

Look for this at the trunk/src/map/skill.c

bool skill_check_condition_castend(struct map_session_data* sd, uint16 skill_id, uint16 skill_lv) {
	struct skill_condition require;
	struct status_data *status;
	int i;
	int index[MAX_SKILL_ITEM_REQUIRE];

Then Add this line below:

	struct status_change *sc = &sd->sc;

2nd step:

 

Look for this at trunk/src/map/skill.c:

if( require.weapon && !pc_check_weapontype(sd,require.weapon) ) {

there are 2 same lines of it and change it to this:

if( require.weapon && !(pc_check_weapontype(sd,require.weapon) || (skill_id = LK_PARRYING && sc && sc->data[SC_SPIRIT] && sc->data[SC_SPIRIT]->val2 == SL_KNIGHT && sd->status.weapon == W_1HSWORD) || (skill_id = LK_PARRYING && sc && sc->data[SC_SPIRIT] && sc->data[SC_SPIRIT]->val2 == SL_STAR && sd->status.weapon == W_BOOK) ) ){ 
Edited by Erba
  • 0
Posted

 

SG LOV and PARRYING:

 

Go to your trunk/src/map/pc.c and look for:

	for( i = 0; i < MAX_SKILL; i++ ) {
		if( sd->status.skill[i].flag != SKILL_FLAG_PLAGIARIZED && sd->status.skill[i].flag != SKILL_FLAG_PERM_GRANTED ) //Don't touch these
			sd->status.skill[i].id = 0; //First clear skills.
		/* permanent skills that must be re-checked */
		if( sd->status.skill[i].flag == SKILL_FLAG_PERM_GRANTED ) {
			switch( i ) {
				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;
			}
		}
	}

Add this Lines below:

	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; 
			sd->status.skill[356].id = 356;
			sd->status.skill[356].lv = 10;
			sd->status.skill[356].flag = SKILL_FLAG_PERMANENT; 
		} 

LK PARRYING USING 1 Hand:

 

Look for this at the trunk/src/map/skill.c

bool skill_check_condition_castend(struct map_session_data* sd, uint16 skill_id, uint16 skill_lv) {
	struct skill_condition require;
	struct status_data *status;
	int i;
	int index[MAX_SKILL_ITEM_REQUIRE];

Then Add this line below:

	struct status_change *sc = &sd->sc;

2nd step:

 

Look for this at trunk/src/map/skill.c:

if( require.weapon && !pc_check_weapontype(sd,require.weapon) ) {

there are 2 same lines of it and change it to this:

if( require.weapon && !(pc_check_weapontype(sd,require.weapon) || (skill_id = LK_PARRYING && sc && sc->data[SC_SPIRIT] && sc->data[SC_SPIRIT]->val2 == SL_KNIGHT && sd->status.weapon == W_1HSWORD) || (skill_id = LK_PARRYING && sc && sc->data[SC_SPIRIT] && sc->data[SC_SPIRIT]->val2 == SL_STAR && sd->status.weapon == W_BOOK) ) ){ 

 

 

Working po ba to sa Latest Revision : 17704 po

  • 0
Posted (edited)

seems like the old code used at the lov and parrying doesn't support on the latest rev, having also the same problem. 

 

 

NOTE: applying another skill like bowling bash works pretty well, but applying a magical skill won't work anymore. not unless u do @reloadskilldb u will be able to use it temporary, as long as u still have soul link.


	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; 

bump, seems like magic type skills is not working anymore in the latest version.

 

TIA.

Edited by Elektrochemiestry

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...