Skocz do zawartości
  • 👋 Witaj na MPCForum!

    Przeglądasz forum jako gość, co oznacza, że wiele świetnych funkcji jest jeszcze przed Tobą! 😎

    • Pełny dostęp do działów i ukrytych treści
    • Możliwość pisania i odpowiadania w tematach
    • System prywatnych wiadomości
    • Zbieranie reputacji i rozwijanie swojego profilu
    • Członkostwo w jednej z największych społeczności graczy

    👉 Dołączenie zajmie Ci mniej niż minutę – a zyskasz znacznie więcej!

    Zarejestruj się teraz

C++ Więcej niż 7 atrybutów w przedmiocie.


Rekomendowane odpowiedzi

Opublikowano

Nie pogrążaj się już.

@Erados Takie sprawy załatwiamy na PW. A tak poza tematem, kim Ty jesteś? Bo tylko się napinasz, a nic tutaj nie znaczysz, więc grzecznie wypie*** od niego :). Elo kumplu.

Przydatne np. na nową zmianke do pasów czytającą z tabeli item_attr, dającą 4 bonusy :).

 

EDIT:

Widzę tak serwer za 30koła euro.

 

EDIT2:

@Erados, autor tematu nie jest nawet moim znajomym, wręcz nie wiem kim jest nie znam go. Tylko zobaczyłem, że zacząłeś za dużo cwaniakować, a sam jesteś nikim. Więc napisałem swoją opinię, przyjmuj ją na klatę, a nie jakiś bulwers.

Ps: W moim poście była zawarta ironia, nt. kwoty za serwer Twój, więc proszę Cię nie zarzucaj mi niczego.


Omnes puerum deriserunt.

Opublikowano

@Erados Takie sprawy załatwiamy na PW. A tak poza tematem, kim Ty jesteś? Bo tylko się napinasz, a nic tutaj nie znaczysz, więc grzecznie wypie*** od niego :). Elo kumplu.

Przydatne np. na nową zmianke do pasów czytającą z tabeli item_attr, dającą 4 bonusy :).

 

EDIT:

Widzę tak serwer za 30koła euro.

 

Kurde, chciałem na początku pocisnąć z Was zwyczajnie bekę, ale teraz muszę się załamać, bo ani Ty ani Twój ograniczony umysłowo przyjaciel nie potraficie wykryć ironii.

 

EDIT:

@Munir nie widzę sensu w prowadzeniu rozmowy z kimś kto nawet nie potrafi poprawnie składać zdań i wmawia innym, że są nikim i nic nie potrafią (co za hipokryzja), więc zwyczajnie odbij lub daj dostęp do swojego konta komuś kompetentnemu żeby się dalej nie ośmieszać.

1977114309277781373321.png


 


Protected by system-dev


GG: 28952858

Opublikowano

 

No i kupiliśmy jeszcze system, który pozwala odróżnić głupotę od ironii, jak chcesz to mogę dać kontakt do sprzedawcy, również Niemiec.

z tego co czytam to chyba musisz mu wyslać kontakt jak najszybciej. 

  • 3 miesiące temu...
Opublikowano

Why am I getting this error?


 


 


1017 20:26:26200 :: Traceback (most recent call last):

 

1017 20:26:26200 ::   File "game.py", line 1941, in BINARY_ServerCommand_Run

 

1017 20:26:26200 ::   File "stringCommander.py", line 63, in Run

 

1017 20:26:26200 ::   File "stringCommander.py", line 31, in __call__

 

1017 20:26:26200 ::   File "stringCommander.py", line 20, in __call__

 

1017 20:26:26200 ::   File "game.py", line 1987, in __PrivateShop_PriceList

 

1017 20:26:26200 ::   File "uiPrivateShopBuilder.py", line 43, in SetPrivateShopItemPrice

 

1017 20:26:26200 :: ValueError

1017 20:26:26200 :: : 

1017 20:26:26200 :: int() literal too large: 2359427072

1017 20:26:26200 :: 

 

1017 20:26:26200 :: Unknown Server Command MyShopPriceList 2359427072 22063 | MyShopPriceList

  • 11 miesięcy temu...
Opublikowano

­Cześć.

 

 

~~~Zaczynamy od Common~~

 

1.Otwieramy common/item_length.h i szukamy :

ITEM_ATTRIBUTE_MAX_NUM  = 7,

Zamieniamy "7" na "9".

 

 

~~~Game~~~

 

1.Otwieramy game/item_manager.h i szukamy:

const static int MAX_RARE_ATTR_NUM = 2;

Zamieniamy "2" na "4".

 

2.Otwieramy game/item_attribute.cpp i szukamy :

int CItem::GetRareAttrCount()

Edytujemy to:

int CItem::GetRareAttrCount()
{
	int ret = 0;

	if (m_aAttr[5].bType != 0)
		ret++;

	if (m_aAttr[6].bType != 0)
		ret++;

	return ret;
}

w taki sposób:

int CItem::GetRareAttrCount()
{
	int ret = 0;

	if (m_aAttr[5].bType != 0)
		ret++;

	if (m_aAttr[6].bType != 0)
		ret++;

	if (m_aAttr[7].bType != 0)
		ret++;

	if (m_aAttr[8].bType != 0)
		ret++;

	return ret;
}

2.1. Teraz szukamy:

bool CItem::AddRareAttribute()

Zamieniamy "2" na "4" tutaj:

	if (count >= 2)
		return false;

~~~DB~~~

 

1.Otwieramy db/AuctionManager.cpp i szukamy:

void AuctionManager::LoadAuctionItem()

I dopisujemy do tego:

void AuctionManager::LoadAuctionItem()
{
	char szQuery[512];
	snprintf(szQuery, sizeof(szQuery), 
		"SELECT id,	owner_id, count, vnum, socket0, socket1, socket2, "
		"attrtype0, attrvalue0, "
		"attrtype1, attrvalue1, "
		"attrtype2, attrvalue2, "
		"attrtype3, attrvalue3, "
		"attrtype4, attrvalue4, "
		"attrtype5, attrvalue5, "
		"attrtype6, attrvalue6  "

"attrtype7, attrvalue7 " i "attrtype8, attrvalue8 "

 

2.Otwieramy db/cache.cpp i szukamy :

attrtype4, attrvalue4, attrtype5, attrvalue5, attrtype6, attrvalue6");

Edytujemy to w taki sposób:

					", attrtype4, attrvalue4, attrtype5, attrvalue5, attrtype6, attrvalue6, attrtype7, attrvalue7"
					", attrtype8, attrvalue8");

Aby dorównać attrtype 7 i 8 do tych dwóch wpisów.

 

2.1. Poniżej mamy taki kod:

", %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d",

Zamieniamy na:

", %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d",

2.2. Poniżej mamy taki kod:

					p->aAttr[0].bType, p->aAttr[0].sValue,
					p->aAttr[1].bType, p->aAttr[1].sValue,
					p->aAttr[2].bType, p->aAttr[2].sValue,
					p->aAttr[3].bType, p->aAttr[3].sValue,
					p->aAttr[4].bType, p->aAttr[4].sValue,
					p->aAttr[5].bType, p->aAttr[5].sValue,
					p->aAttr[6].bType, p->aAttr[6].sValue);

Zamieniamy go na taki:

					p->aAttr[0].bType, p->aAttr[0].sValue,
					p->aAttr[1].bType, p->aAttr[1].sValue,
					p->aAttr[2].bType, p->aAttr[2].sValue,
					p->aAttr[3].bType, p->aAttr[3].sValue,
					p->aAttr[4].bType, p->aAttr[4].sValue,
					p->aAttr[5].bType, p->aAttr[5].sValue,
					p->aAttr[6].bType, p->aAttr[6].sValue,
					p->aAttr[7].bType, p->aAttr[7].sValue,
					p->aAttr[8].bType, p->aAttr[8].sValue);

2.3. Tuż poniżej jest coś takiego:

					", attrtype0=%d, attrvalue0=%d"
					", attrtype1=%d, attrvalue1=%d"
					", attrtype2=%d, attrvalue2=%d"
					", attrtype3=%d, attrvalue3=%d"
					", attrtype4=%d, attrvalue4=%d"
					", attrtype5=%d, attrvalue5=%d"
					", attrtype6=%d, attrvalue6=%d",
					p->aAttr[0].bType, p->aAttr[0].sValue,
					p->aAttr[1].bType, p->aAttr[1].sValue,
					p->aAttr[2].bType, p->aAttr[2].sValue,
					p->aAttr[3].bType, p->aAttr[3].sValue,
					p->aAttr[4].bType, p->aAttr[4].sValue,
					p->aAttr[5].bType, p->aAttr[5].sValue,
					p->aAttr[6].bType, p->aAttr[6].sValue);

To też zamieniamy na :

					", attrtype0=%d, attrvalue0=%d"
					", attrtype1=%d, attrvalue1=%d"
					", attrtype2=%d, attrvalue2=%d"
					", attrtype3=%d, attrvalue3=%d"
					", attrtype4=%d, attrvalue4=%d"
					", attrtype5=%d, attrvalue5=%d"
					", attrtype6=%d, attrvalue6=%d"
					", attrtype7=%d, attrvalue7=%d"
					", attrtype8=%d, attrvalue8=%d",
					p->aAttr[0].bType, p->aAttr[0].sValue,
					p->aAttr[1].bType, p->aAttr[1].sValue,
					p->aAttr[2].bType, p->aAttr[2].sValue,
					p->aAttr[3].bType, p->aAttr[3].sValue,
					p->aAttr[4].bType, p->aAttr[4].sValue,
					p->aAttr[5].bType, p->aAttr[5].sValue,
					p->aAttr[6].bType, p->aAttr[6].sValue,
					p->aAttr[7].bType, p->aAttr[7].sValue,
					p->aAttr[8].bType, p->aAttr[8].sValue);

3. Otwieramy db/ClientManager.cpp i szukamy:

"SELECT id, window+0, pos, count, vnum, socket0, socket1, socket2, "

Do tej części kodu:

				"attrtype0, attrvalue0, "
				"attrtype1, attrvalue1, "
				"attrtype2, attrvalue2, "
				"attrtype3, attrvalue3, "
				"attrtype4, attrvalue4, "
				"attrtype5, attrvalue5, "
				"attrtype6, attrvalue6 "

Dopisujemy value7 i value8 w ten sposób:

				"attrtype0, attrvalue0, "
				"attrtype1, attrvalue1, "
				"attrtype2, attrvalue2, "
				"attrtype3, attrvalue3, "
				"attrtype4, attrvalue4, "
				"attrtype5, attrvalue5, "
				"attrtype6, attrvalue6, "
				"attrtype7, attrvalue7, "
				"attrtype8, attrvalue8 "

3.1. Szukamy:

"REPLACE INTO item%s (id, owner_id, window, pos, count, vnum, socket0, socket1, socket2, "

Tutaj również dopisujemy value 7 i 8.

			"attrtype0, attrvalue0, "
			"attrtype1, attrvalue1, "
			"attrtype2, attrvalue2, "
			"attrtype3, attrvalue3, "
			"attrtype4, attrvalue4, "
			"attrtype5, attrvalue5, "
			"attrtype6, attrvalue6) "

W taki sposób:

			"attrtype0, attrvalue0, "
			"attrtype1, attrvalue1, "
			"attrtype2, attrvalue2, "
			"attrtype3, attrvalue3, "
			"attrtype4, attrvalue4, "
			"attrtype5, attrvalue5, "
			"attrtype6, attrvalue6, "
			"attrtype7, attrvalue7, "
			"attrtype8, attrvalue8) "

3.2.Poniżej mamy:

"VALUES(%u, %u, %d, %d, %u, %u, %ld, %ld, %ld, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d)",

Zamieniamy na :

"VALUES(%u, %u, %d, %d, %u, %u, %ld, %ld, %ld, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d)",

3.3. Poniżej mamy:

			p->aAttr[0].bType, p->aAttr[0].sValue,
			p->aAttr[1].bType, p->aAttr[1].sValue,
			p->aAttr[2].bType, p->aAttr[2].sValue,
			p->aAttr[3].bType, p->aAttr[3].sValue,
			p->aAttr[4].bType, p->aAttr[4].sValue,
			p->aAttr[5].bType, p->aAttr[5].sValue,
			p->aAttr[6].bType, p->aAttr[6].sValue);

Zamieniamy to na :

			p->aAttr[0].bType, p->aAttr[0].sValue,
			p->aAttr[1].bType, p->aAttr[1].sValue,
			p->aAttr[2].bType, p->aAttr[2].sValue,
			p->aAttr[3].bType, p->aAttr[3].sValue,
			p->aAttr[4].bType, p->aAttr[4].sValue,
			p->aAttr[5].bType, p->aAttr[5].sValue,
			p->aAttr[6].bType, p->aAttr[6].sValue,
			p->aAttr[7].bType, p->aAttr[7].sValue,
			p->aAttr[8].bType, p->aAttr[8].sValue);

4. Otwieramy db/ClientManagerPlayer.cpp i szukamy:

"SELECT id,window+0,pos,count,vnum,socket0,socket1,socket2,attrtype0,attrvalue0,attrtype1,attrvalue1,attrtype2,attrvalue2,attrtype3,attrvalue3,attrtype4,attrvalue4,attrtype5,attrvalue5,attrtype6,attrvalue6 "

Zamieniamy na :

"SELECT id,window+0,pos,count,vnum,socket0,socket1,socket2,attrtype0,attrvalue0,attrtype1,attrvalue1,attrtype2,attrvalue2,attrtype3,attrvalue3,attrtype4,attrvalue4,attrtype5,attrvalue5,attrtype6,attrvalue6,attrtype7,attrvalue7,attrtype8,attrvalue8 "

~~~Binka~~~

1. Otwieramy UserInterface/GameType.h i szukamy:

ITEM_ATTRIBUTE_SLOT_MAX_NUM = 7,

Zamieniamy "7" na "9".

 

~~~MySQL~~~

 

1.Edytujemy design table tabelki Item@player.

Musimy dodać pola poprzez "AddField" z attrtype7/8 i attrvalue7/8.

 

Thanks

(71113,39035 itemvnum) problem fix

 

root.epk&root.eix

 

uiToolTip.py

class HyperlinkItemToolTip(ItemToolTip):

 

def SetHyperlinkItem(self, tokens): search

 

maxTokenCount = minTokenCount + 2 * player.ATTRIBUTE_SLOT_MAX_NUM

problem itemvnum Hyperlink

 

maxTokenCount = minTokenCount + 2 * player.ATTRIBUTE_SLOT_MAX_NUM

#ATTRIBUTE = 6

maxTokenCount = minTokenCount + 3 * player.ATTRIBUTE_SLOT_MAX_NUM

#ATTRIBUTE = 7

6and7 ATTRIBUTE FIX

 

maxTokenCount = minTokenCount + 5 * player.ATTRIBUTE_SLOT_MAX_NUM

fix

  • 1 miesiąc temu...

Zarchiwizowany

Ten temat przebywa obecnie w archiwum. Dodawanie nowych odpowiedzi zostało zablokowane.

×
×
  • Dodaj nową pozycję...