Jump to content

Unlimited Arrows


Recommended Posts

Hi dev's i am new here aand i want to start with a tutorial for unlimited Arrows

First we need to edit in game->cahr_battle.cpp

Search this function

void CHARACTER::UseArrow(LPITEM pkArrow, DWORD dwArrowCount)

Now replace all function with this:

void CHARACTER::UseArrow(LPITEM pkArrow, DWORD dwArrowCount)
{

    if(pkArrow->GetValue(5)!=1)
    {
        int iCount = pkArrow->GetCount();
        DWORD dwVnum = pkArrow->GetVnum();
        iCount = iCount - MIN(iCount, dwArrowCount);
        pkArrow->SetCount(iCount);
        if (iCount == 0)
        {
            LPITEM pkNewArrow = FindSpecifyItem(dwVnum);
            sys_log(0, "UseArrow : FindSpecifyItem %u %p", dwVnum, get_pointer(pkNewArrow));
            if (pkNewArrow)
                EquipItem(pkNewArrow);
        }
    }

}

Done with source. Now python

Search in uitooltip.py

 

Spoiler

		if item.ITEM_TYPE_WEAPON == itemType:
			self.__AppendLimitInformation()
			self.AppendSpace(5)
			if item.WEAPON_FAN == itemSubType:
				self.__AppendMagicAttackInfo()
				self.__AppendAttackPowerInfo()
			else:
				self.__AppendAttackPowerInfo()
				self.__AppendMagicAttackInfo()
 
			self.__AppendAffectInformation()
			self.__AppendAttributeInformation(attrSlot)
 
			self.AppendWearableInformation()

 

And delete this line : self.__AppendMetinSlotInfo(metinSlot)

And add after: 

Spoiler

			if itemSubType == item.WEAPON_ARROW and itemvalue5 == 1:
				bHasRealtimeFlag = 0
				for i in xrange(item.LIMIT_MAX_NUM):
					(limitType, limitValue) = item.GetLimit(i)
					if item.LIMIT_REAL_TIME == limitType:
						bHasRealtimeFlag = 1
 
				if bHasRealtimeFlag == 1:
					self.AppendMallItemLastTime(metinSlot[0])
			else:
				self.__AppendMetinSlotInfo(metinSlot)

 

Ok all its ready now protos.

Item_proto.txt :

Spoiler

79501	화살표 화살통1	ITEM_WEAPON	WEAPON_ARROW	1	ANTI_MUSA | ANTI_SURA | ANTI_MUDANG | ANTI_WOLFMAN | ANTI_DROP | ANTI_GIVE | ANTI_MYSHOP | ANTI_SAFEBOX	ITEM_STACKABLE | ITEM_SLOW_QUERY	WEAR_ARROW	NONE	100000	0	0	0	0	REAL_TIME	86400	LIMIT_NONE	0	APPLY_NONE	0	APPLY_NONE	0	APPLY_NONE	0	17	4	0	25	0	1	0	0	0
79502	화살표 화살통7	ITEM_WEAPON	WEAPON_ARROW	1	ANTI_MUSA | ANTI_SURA | ANTI_MUDANG | ANTI_WOLFMAN | ANTI_DROP | ANTI_GIVE | ANTI_MYSHOP | ANTI_SAFEBOX	ITEM_STACKABLE | ITEM_SLOW_QUERY	WEAR_ARROW	NONE	550000	0	0	0	0	REAL_TIME	604800	LIMIT_NONE	0	APPLY_NONE	0	APPLY_NONE	0	APPLY_NONE	0	17	4	0	25	0	1	0	0	0
79503	화살표 화살통15	ITEM_WEAPON	WEAPON_ARROW	1	ANTI_MUSA | ANTI_SURA | ANTI_MUDANG | ANTI_WOLFMAN | ANTI_DROP | ANTI_GIVE | ANTI_MYSHOP | ANTI_SAFEBOX	ITEM_STACKABLE | ITEM_SLOW_QUERY	WEAR_ARROW	NONE	0	0	0	0	0	REAL_TIME	1296000	LIMIT_NONE	0	APPLY_NONE	0	APPLY_NONE	0	APPLY_NONE	0	17	4	0	25	0	1	0	0	0
79504	화살표 화살통30	ITEM_WEAPON	WEAPON_ARROW	1	ANTI_MUSA | ANTI_SURA | ANTI_MUDANG | ANTI_WOLFMAN | ANTI_DROP | ANTI_GIVE | ANTI_MYSHOP | ANTI_SAFEBOX	ITEM_STACKABLE | ITEM_SLOW_QUERY	WEAR_ARROW	NONE	0	0	0	0	0	REAL_TIME	2592000	LIMIT_NONE	0	APPLY_NONE	0	APPLY_NONE	0	APPLY_NONE	0	17	4	0	25	0	1	0	0	0

 

Item_names.txt: 

Spoiler

79501	Tolba Arcasului
79502	Tolba Arcasului
79503	Tolba Arcasului
79504	Tolba Arcasului

 

Or simply put on value5 from an arrow 1. That's All :D

Link to comment
Share on other sites

  • 3 months later...
On ٧‏/٥‏/١٤٣٧ هـ at 9:30 PM, Alucardo said:

Hi dev's i am new here aand i want to start with a tutorial for unlimited Arrows

First we need to edit in game->cahr_battle.cpp

Search this function

void CHARACTER::UseArrow(LPITEM pkArrow, DWORD dwArrowCount)

Now replace all function with this:

void CHARACTER::UseArrow(LPITEM pkArrow, DWORD dwArrowCount)
{

    if(pkArrow->GetValue(5)!=1)
    {
        int iCount = pkArrow->GetCount();
        DWORD dwVnum = pkArrow->GetVnum();
        iCount = iCount - MIN(iCount, dwArrowCount);
        pkArrow->SetCount(iCount);
        if (iCount == 0)
        {
            LPITEM pkNewArrow = FindSpecifyItem(dwVnum);
            sys_log(0, "UseArrow : FindSpecifyItem %u %p", dwVnum, get_pointer(pkNewArrow));
            if (pkNewArrow)
                EquipItem(pkNewArrow);
        }
    }

}

Done with source. Now python

Search in uitooltip.py

This: http://pastebin.com/8LeuC9Cq

And delete this line : self.__AppendMetinSlotInfo(metinSlot)

And add after: http://pastebin.com/7rGVjLP9

Ok all its ready now protos.

Item_proto.txt : http://pastebin.com/nwWqiid7

Item_names.txt: http://pastebin.com/b9p3GFLa

Or simply put on value5 from an arrow 1. That's All :D

Problem

1 -

62d2b63805.jpg

fc34c4a05e.png

 

2 -

7a9605c4ea.jpg

bitter  ? :()

3 - No Effict

 

 

 

Edited by Metin2 Dev
Core X - External 2 Internal
  • Love 1
Link to comment
Share on other sites

  • 3 months later...
  • 1 year later...
  • 2 years later...

Announcements



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