Jump to content

Recommended Posts

  • Premium

well in general it works perfect but there is some bugs

70063 can also add ATTRIBUTE like 70064 but when i had changed

70063	transform_costume	ITEM_USE	USE_CHANGE_ATTRIBUTE	1	ANTI_DROP | ANTI_SELL | ANTI_GIVE | ANTI_MYSHOP	ITEM_STACKABLE | LOG	NONE	NONE	0	0	0	0	0	LIMIT_NONE	0	LIMIT_NONE	0	APPLY_NONE	0	APPLY_NONE	0	APPLY_NONE	0	0	0	0	0	0	0	0	0	0

with

70063	transform_costume	ITEM_USE	USE_ADD_ATTRIBUTE	1	ANTI_DROP | ANTI_SELL | ANTI_GIVE | ANTI_MYSHOP	ITEM_STACKABLE | LOG	NONE	NONE	0	0	0	0	0	LIMIT_NONE	0	LIMIT_NONE	0	APPLY_NONE	0	APPLY_NONE	0	APPLY_NONE	0	0	0	0	0	0	0	0	0	0

it can add 4 bounses not 3

and Costume bounses changer works perfect btw

waiting for your reply

king regards

The "Vegas System" is made by me.. and... it's not full.

Here is the full tut, but is in Romanian, use Google Translate.

 

https://www.metin2zone.org/topic517.html#p1154

Edited by Morphe
  • Metin2 Dev 3
  • Love 1
  • 2 weeks later...

error uiinventory.py

 

0912 13:23:08972 :: 
networkModule.py(line:200) SetSelectCharacterPhase
system.py(line:144) __pack_import
system.py(line:124) _process_result
introSelect.py(line:31) ?
system.py(line:144) __pack_import
system.py(line:124) _process_result
interfaceModule.py(line:14) ?
system.py(line:144) __pack_import

networkModule.SetSelectCharacterPhase - exceptions.IndentationError:expected an indented block (line 993)

0912 13:23:08972 :: ============================================================================================================
0912 13:23:08972 :: Abort!!!!

:D

  • Honorable Member

#nosupport #noreply #nopm #doityourself :)

Here is mine with new use subtypes, Official like:

This is the hidden content, please

#Edit: I will not edit the download but here is a little fix, about ymir's fail:

Search these lines in uiInventory.py:

if player.GetItemAttribute(dstSlotPos, i) != 0:

And replace with:

if player.GetItemAttribute(dstSlotPos, i)[0] != 0:

Why?
Easy, because the player.GetItemAttribute give back 2 values as always in standard case (0, 0) which is a tuple, the comparison is return true every times.

Edited by xP3NG3Rx
little fix added | download modified
  • Metin2 Dev 19
  • Confused 1
  • Good 7
  • Love 14

#nosupport #noreply #nopm #doityourself :)

Here is mine with new use subtypes, Official like:

This is the hidden content, please

 

Please check it, USE_RESET_COSTUME_ATTR    not work.

CHANGE work , RESET don't work,

  • Metin2 Dev 2
  • Premium

#nosupport #noreply #nopm #doityourself :)

Here is mine with new use subtypes, Official like:

This is the hidden content, please

 

For me it is all fine when compiling but ingame

i can't add or change the costume bounses

https://metin2.download/picture/3RyB6fnz4QtwzbdGV1N5nQMUDO3crD8l/.jpg

Edited by Metin2 Dev
Core X - External 2 Internal
  • Metin2 Dev 2
  • Good 1
  • Honorable Member

Hmm, yes, I forgot the GameLib> ItemData.cpp, sorry and I'll edit the download with this:

const char* CItemData::GetUseTypeString() const
{
	if (GetType() != CItemData::ITEM_TYPE_USE)
		return "NOT_USE_TYPE";

	switch (GetSubType())
	{
		case USE_TUNING:
			return DEF_STR(USE_TUNING);
		case USE_DETACHMENT:
			return DEF_STR(USE_DETACHMENT);
		case USE_CLEAN_SOCKET:
			return DEF_STR(USE_CLEAN_SOCKET);
		case USE_CHANGE_ATTRIBUTE:
			return DEF_STR(USE_CHANGE_ATTRIBUTE);
		case USE_ADD_ATTRIBUTE:
			return DEF_STR(USE_ADD_ATTRIBUTE);
		case USE_ADD_ATTRIBUTE2:
			return DEF_STR(USE_ADD_ATTRIBUTE2);
		case USE_ADD_ACCESSORY_SOCKET:
			return DEF_STR(USE_ADD_ACCESSORY_SOCKET);
		case USE_PUT_INTO_ACCESSORY_SOCKET:
			return DEF_STR(USE_PUT_INTO_ACCESSORY_SOCKET);
		case USE_PUT_INTO_BELT_SOCKET:
			return DEF_STR(USE_PUT_INTO_BELT_SOCKET);
		case USE_PUT_INTO_RING_SOCKET:
			return DEF_STR(USE_PUT_INTO_RING_SOCKET);
		case USE_CHANGE_COSTUME_ATTR:
			return DEF_STR(USE_CHANGE_COSTUME_ATTR);
		case USE_RESET_COSTUME_ATTR:
			return DEF_STR(USE_RESET_COSTUME_ATTR);
	}
	return "USE_UNKNOWN_TYPE";
}

 

  • Love 1
  • Premium

Hmm, yes, I forgot the GameLib> ItemData.cpp, sorry and I'll edit the download with this:

const char* CItemData::GetUseTypeString() const
{
	if (GetType() != CItemData::ITEM_TYPE_USE)
		return "NOT_USE_TYPE";

	switch (GetSubType())
	{
		case USE_TUNING:
			return DEF_STR(USE_TUNING);
		case USE_DETACHMENT:
			return DEF_STR(USE_DETACHMENT);
		case USE_CLEAN_SOCKET:
			return DEF_STR(USE_CLEAN_SOCKET);
		case USE_CHANGE_ATTRIBUTE:
			return DEF_STR(USE_CHANGE_ATTRIBUTE);
		case USE_ADD_ATTRIBUTE:
			return DEF_STR(USE_ADD_ATTRIBUTE);
		case USE_ADD_ATTRIBUTE2:
			return DEF_STR(USE_ADD_ATTRIBUTE2);
		case USE_ADD_ACCESSORY_SOCKET:
			return DEF_STR(USE_ADD_ACCESSORY_SOCKET);
		case USE_PUT_INTO_ACCESSORY_SOCKET:
			return DEF_STR(USE_PUT_INTO_ACCESSORY_SOCKET);
		case USE_PUT_INTO_BELT_SOCKET:
			return DEF_STR(USE_PUT_INTO_BELT_SOCKET);
		case USE_PUT_INTO_RING_SOCKET:
			return DEF_STR(USE_PUT_INTO_RING_SOCKET);
		case USE_CHANGE_COSTUME_ATTR:
			return DEF_STR(USE_CHANGE_COSTUME_ATTR);
		case USE_RESET_COSTUME_ATTR:
			return DEF_STR(USE_RESET_COSTUME_ATTR);
	}
	return "USE_UNKNOWN_TYPE";
}

 

Same thing man

can't add any ATTR to the Costume

  • Honorable Member

There is the right place, but the client part is wrong, it does not send the packet to use item on item because ignore it. As you can see on the picture it cannot handle the scroll as usable item on another item.

  • Premium
70063	ؤع½؛ئ¬ ¼س¼؛ ہüأ¼ ؛¯°و	ITEM_USE	USE_RESET_COSTUME_ATTR	1	NONE	ITEM_STACKABLE | LOG	NONE	NONE	200000	200000	0	0	0	LIMIT_NONE	0	LIMIT_NONE	0	APPLY_NONE	0	APPLY_NONE	0	APPLY_NONE	0	0	0	0	0	0	0	0	0	0
70064	ؤع½؛ئ¬ ¼س¼؛ ء¾·ù ؛¯°و	ITEM_USE	USE_CHANGE_COSTUME_ATTR	1	NONE	ITEM_STACKABLE | LOG	NONE	NONE	400000	400000	0	0	0	LIMIT_NONE	0	LIMIT_NONE	0	APPLY_NONE	0	APPLY_NONE	0	APPLY_NONE	0	0	0	0	0	0	0	0	0	0

 

  • 2 weeks later...

#nosupport #noreply #nopm #doityourself :)

Here is mine with new use subtypes, Official like:

This is the hidden content, please

#Edit: I will not edit the download but here is a little fix, about ymir's fail:

Search these lines in uiInventory.py:

if player.GetItemAttribute(dstSlotPos, i) != 0:

And replace with:

if player.GetItemAttribute(dstSlotPos, i)[0] != 0:

Why?
Easy, because the player.GetItemAttribute give back 2 values as always in standard case (0, 0) which is a tuple, the comparison is return true every times.

sorry for doublepost, I corrected something and the system works.

Good job Penger.

Edited by Tasho
  • Honorable Member

There is an "if-statement" which blocks the usage with non-costumes O.o

The changes need to looks like this:

8e464cb504.jpg

Edited by Metin2 Dev
Core X - External 2 Internal
  • Love 1

Don't use any images from : imgur, turkmmop, freakgamers, inforge, hizliresim... Or your content will be deleted without notice...
Use : https://metin2.download/media/add/

Please use https://metin2.download/ when uploading files smaller than 100MB, otherwise the approval will take longer due to manual upload.

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
×
×
  • Create New...

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.