Jump to content
  • 0

Heal skill bypass Golden thief bug CARD effect.


Question

Posted (edited)

Can anyone help me please. I just want Heal skill  ONLY to bypass GTB card effect. So that even the user is wearing GTB card, he/she can still receive Heal. Thanks a lot. Newbie here (^^,). Thanking in advance.

Edited by JamS

4 answers to this question

Recommended Posts

  • 0
Posted

Go to this directory:

src/map/status.cpp

Search for;

// Status that are blocked by Golden Thief Bug card or Wand of Hermod
	if (status_isimmune(bl)) {
		switch (type) {
			case SC_DECREASEAGI:
			case SC_SILENCE:
			case SC_COMA:
			case SC_INCREASEAGI:
			case SC_BLESSING:
			case SC_SLOWPOISON:
			case SC_IMPOSITIO:
			case SC_AETERNA:
			case SC_SUFFRAGIUM:
			case SC_BENEDICTIO:
			case SC_PROVIDENCE:
			case SC_KYRIE:
			case SC_ASSUMPTIO:
			case SC_ANGELUS:
			case SC_MAGNIFICAT:
			case SC_GLORIA:
			case SC_WINDWALK:
			case SC_MAGICROD:
			case SC_HALLUCINATION:
			case SC_STONE:
			case SC_QUAGMIRE:
			case SC_SUITON:
			case SC_SWINGDANCE:
			case SC_FIRE_INSIGNIA:
			case SC_WATER_INSIGNIA:
			case SC_WIND_INSIGNIA:
			case SC_EARTH_INSIGNIA:
				return 0;
		}
	}

Example:

Let's say you want "Bypass" in COMA, even GTB, COMA is still effective. Just remove it and stay;

// Status that are blocked by Golden Thief Bug card or Wand of Hermod
	if (status_isimmune(bl)) {
		switch (type) {
			case SC_DECREASEAGI:
			case SC_SILENCE:
			case SC_INCREASEAGI:
			case SC_BLESSING:
			case SC_SLOWPOISON:
			case SC_IMPOSITIO:
			case SC_AETERNA:
			case SC_SUFFRAGIUM:
			case SC_BENEDICTIO:
			case SC_PROVIDENCE:
			case SC_KYRIE:
			case SC_ASSUMPTIO:
			case SC_ANGELUS:
			case SC_MAGNIFICAT:
			case SC_GLORIA:
			case SC_WINDWALK:
			case SC_MAGICROD:
			case SC_HALLUCINATION:
			case SC_STONE:
			case SC_QUAGMIRE:
			case SC_SUITON:
			case SC_SWINGDANCE:
			case SC_FIRE_INSIGNIA:
			case SC_WATER_INSIGNIA:
			case SC_WIND_INSIGNIA:
			case SC_EARTH_INSIGNIA:
				return 0;
		}
	}

Then just compile the emulator. You will notice that now with the COMA modification will apply its effect even being with GTB equipped.

  • Like 1
  • 1
Posted (edited)
59 minutes ago, Mahiro said:

Go to this directory:

src/map/status.cpp

Search for;


// Status that are blocked by Golden Thief Bug card or Wand of Hermod
	if (status_isimmune(bl)) {
		switch (type) {
			case SC_DECREASEAGI:
			case SC_SILENCE:
			case SC_COMA:
			case SC_INCREASEAGI:
			case SC_BLESSING:
			case SC_SLOWPOISON:
			case SC_IMPOSITIO:
			case SC_AETERNA:
			case SC_SUFFRAGIUM:
			case SC_BENEDICTIO:
			case SC_PROVIDENCE:
			case SC_KYRIE:
			case SC_ASSUMPTIO:
			case SC_ANGELUS:
			case SC_MAGNIFICAT:
			case SC_GLORIA:
			case SC_WINDWALK:
			case SC_MAGICROD:
			case SC_HALLUCINATION:
			case SC_STONE:
			case SC_QUAGMIRE:
			case SC_SUITON:
			case SC_SWINGDANCE:
			case SC_FIRE_INSIGNIA:
			case SC_WATER_INSIGNIA:
			case SC_WIND_INSIGNIA:
			case SC_EARTH_INSIGNIA:
				return 0;
		}
	}

Example:

Let's say you want "Bypass" in COMA, even GTB, COMA is still effective. Just remove it and stay;


// Status that are blocked by Golden Thief Bug card or Wand of Hermod
	if (status_isimmune(bl)) {
		switch (type) {
			case SC_DECREASEAGI:
			case SC_SILENCE:
			case SC_INCREASEAGI:
			case SC_BLESSING:
			case SC_SLOWPOISON:
			case SC_IMPOSITIO:
			case SC_AETERNA:
			case SC_SUFFRAGIUM:
			case SC_BENEDICTIO:
			case SC_PROVIDENCE:
			case SC_KYRIE:
			case SC_ASSUMPTIO:
			case SC_ANGELUS:
			case SC_MAGNIFICAT:
			case SC_GLORIA:
			case SC_WINDWALK:
			case SC_MAGICROD:
			case SC_HALLUCINATION:
			case SC_STONE:
			case SC_QUAGMIRE:
			case SC_SUITON:
			case SC_SWINGDANCE:
			case SC_FIRE_INSIGNIA:
			case SC_WATER_INSIGNIA:
			case SC_WIND_INSIGNIA:
			case SC_EARTH_INSIGNIA:
				return 0;
		}
	}

Then just compile the emulator. You will notice that now with the COMA modification will apply its effect even being with GTB equipped.

Maybe i got something wrong, but since heal is no SC it shouldnt work that way. Its not even in the first list.

I think you have to change:

skill.cpp at line 6262 (least recent commit)

case AL_HEAL:
	case AB_HIGHNESSHEAL:
		{
			int heal = skill_calc_heal(src, bl, skill_id, skill_lv, true);
			int heal_get_jobexp;

			if (status_isimmune(bl) || (dstmd && (status_get_class(bl) == MOBID_EMPERIUM || status_get_class_(bl) == CLASS_BATTLEFIELD)))
				heal = 0;

To:

case AL_HEAL:
	case AB_HIGHNESSHEAL:
		{
			int heal = skill_calc_heal(src, bl, skill_id, skill_lv, true);
			int heal_get_jobexp;

			if ((dstmd && (status_get_class(bl) == MOBID_EMPERIUM || status_get_class_(bl) == CLASS_BATTLEFIELD)))
				heal = 0;

I did not test it but maybe it helps if the solution by Mahiro did not work.

Edited by Normynator
  • Upvote 2
  • Like 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...