Jump to content
Forgot your email address? ×
×
×
  • Create New...

Dif / C++ - Invisible Bug Fix 34k


Recommended Posts

  • Moon

Hey i found a Dif by Inverss that should fix the invisibility bug on 34083 game.
Even though there is the fact its not made by me i want to release it here because its so important and belongs to the MUST HAVE stuff.
 

Dif

Spoiler

 

Here is it:

00025B1E: D7 CB
data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==

It changes an affect casted on the character on appearing (login, revive)

 

 

C++

Spoiler

Well, this is just a workaround, if you want to fix it correctly just open char.cpp, search for void CHARACTER::OnMove(bool bIsAttack)

and delete or comment these two strings:
 

if (IsAffectFlag(AFF_REVIVE_INVISIBLE))
RemoveAffect(AFFECT_REVIVE_INVISIBLE);

 

 

  • Love 2
Link to comment

Well, this is just a workaround, if you want to fix it correctly just open char.cpp, search for void CHARACTER::OnMove(bool bIsAttack)

 

7xjN5.png

 and delete or comment these two strings:
if (IsAffectFlag(AFF_REVIVE_INVISIBLE))

RemoveAffect(AFFECT_REVIVE_INVISIBLE);
 
7xjRL.png
 
  • Love 6
Link to comment

 

Well, this is just a workaround, if you want to fix it correctly just open char.cpp, search for void CHARACTER::OnMove(bool bIsAttack)

 

7xjN5.png

 and delete or comment these two strings:

if (IsAffectFlag(AFF_REVIVE_INVISIBLE))

RemoveAffect(AFFECT_REVIVE_INVISIBLE);

 

7xjRL.png

 

 

 

I tried it with IDA:

7xoDY.png

 

Diff:

This difference file is created by The Interactive Disassembler

game_r34083_32_striped
00027479: E8 90
0002747A: 82 90
0002747B: 60 90
0002747C: 01 90
0002747D: 00 90
00027480: 75 90
00027481: 20 90

Till now I wasn't invisible.

  • Love 1
Link to comment
  • 1 month later...

And what about char_skill.cpp ?

if ((0 != pkSk->dwAffectFlag || pkSk->dwVnum == SKILL_MUYEONG) && (pkSk->dwFlag & SKILL_FLAG_TOGGLE) && RemoveAffect(pkSk->dwVnum))
	{
		return true;
	}

	 if (IsAffectFlag(AFF_REVIVE_INVISIBLE))
		RemoveAffect(AFFECT_REVIVE_INVISIBLE); 

$ uptime
1:26AM  up 732 days,  8:29, 1 user, load averages: 0.38, 0.31, 0.22

$ uname -srp
FreeBSD 9.1-RELEASE amd64

Link to comment

 

And what about char_skill.cpp ?

if ((0 != pkSk->dwAffectFlag || pkSk->dwVnum == SKILL_MUYEONG) && (pkSk->dwFlag & SKILL_FLAG_TOGGLE) && RemoveAffect(pkSk->dwVnum))
	{
		return true;
	}

	 if (IsAffectFlag(AFF_REVIVE_INVISIBLE))
		RemoveAffect(AFFECT_REVIVE_INVISIBLE); 

 

Already you are deleted in char.cpp invisibility bug fixed and this line not work if you want, you can remove it.

 

Best Regards

Aveline

Plain logic saves lives.

Link to comment

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

Announcements

  • -15% Discount in Metin2 Dev Store (01/10/2021 => 31/12/2021) => Code => 15_PCT_OCT_TO_DEC_2021


  • Read our Rules
  • Activity

    1. 7

      PHOENIX2 !OLDSCHOOL SERVER, PAYTOWIN REMOVED!

    2. 0

      special_item_group and chest apprentice

    3. 2

      Alternative Alternative Zodiac Suit - Ninja M

    4. 0

      character details negative bonus

    5. 0

      Questlib mysql_query function problem

  • Recently Browsing

    • No registered users viewing this page.

Important Information

Terms of Use / Privacy Policy / Guidelines / We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.