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

Losowy bonus w itemie


Rekomendowane odpowiedzi

Opublikowano

Witam gdzie w source zapisany jest losowy bonus?
Pamiętacie jak na PLu podnosiło sie itemy żeby sprawdzić czy nie posiada on jakiegoś pż lub czegoś takiego gdzie to się znajduję w source?

Opublikowano

Czemu nie zaczniesz sam szukac? Masz w item_proto ustawianie szansy na wystąpienie takiego bonusu.

Wklejasz to w wyszukiwarce przy otwartym całym src i znajdziesz na 100%

ITEM_ALTER_TO_MAGIC_ITEM_PERCENT

zandia_sygna.png

Opublikowano

Czemu nie zaczniesz sam szukac? Masz w item_proto ustawianie szansy na wystąpienie takiego bonusu.

Wklejasz to w wyszukiwarce przy otwartym całym src i znajdziesz na 100%

ITEM_ALTER_TO_MAGIC_ITEM_PERCENT

source ma wiele wiele plików nie ogarniam jeszcze wszystkich a że korzystam z mainline sg nie zawsze poradniki z neta dla mnie działają po ludzie zalecają novaline

 

co masz na mysli mówiąc przy otwartym CAŁYM source :D

 

 

EDIT: WINRAR nie wyszukuje danego tekstu w plikach ;/

Opublikowano

 

Czemu nie zaczniesz sam szukac? Masz w item_proto ustawianie szansy na wystąpienie takiego bonusu.

Wklejasz to w wyszukiwarce przy otwartym całym src i znajdziesz na 100%

ITEM_ALTER_TO_MAGIC_ITEM_PERCENT

source ma wiele wiele plików nie ogarniam jeszcze wszystkich a że korzystam z mainline sg nie zawsze poradniki z neta dla mnie działają po ludzie zalecają novaline

 

co masz na mysli mówiąc przy otwartym CAŁYM source :D

 

 

EDIT: WINRAR nie wyszukuje danego tekstu w plikach ;/

 

wchodzisz w game/src bierzesz cirtl+a potem prawym i edit with notepadd++ (lub jakis inny edytor) potem ciskasz cirt+f i wpisujesz fraze a następnie "szukaj we wszystkich otwartych plikach" i na dole jest pokazane gdzie i w jakiej linijce jest ta fraza.

Opublikowano

 

 

Czemu nie zaczniesz sam szukac? Masz w item_proto ustawianie szansy na wystąpienie takiego bonusu.

Wklejasz to w wyszukiwarce przy otwartym całym src i znajdziesz na 100%

ITEM_ALTER_TO_MAGIC_ITEM_PERCENT

source ma wiele wiele plików nie ogarniam jeszcze wszystkich a że korzystam z mainline sg nie zawsze poradniki z neta dla mnie działają po ludzie zalecają novaline

 

co masz na mysli mówiąc przy otwartym CAŁYM source :D

 

 

EDIT: WINRAR nie wyszukuje danego tekstu w plikach ;/

 

wchodzisz w game/src bierzesz cirtl+a potem prawym i edit with notepadd++ (lub jakis inny edytor) potem ciskasz cirt+f i wpisujesz fraze a następnie "szukaj we wszystkich otwartych plikach" i na dole jest pokazane gdzie i w jakiej linijce jest ta fraza.

 

notepad także nic nie wyszkuje ;)

Opublikowano

 

 

 

Czemu nie zaczniesz sam szukac? Masz w item_proto ustawianie szansy na wystąpienie takiego bonusu.

Wklejasz to w wyszukiwarce przy otwartym całym src i znajdziesz na 100%

ITEM_ALTER_TO_MAGIC_ITEM_PERCENT

source ma wiele wiele plików nie ogarniam jeszcze wszystkich a że korzystam z mainline sg nie zawsze poradniki z neta dla mnie działają po ludzie zalecają novaline

 

co masz na mysli mówiąc przy otwartym CAŁYM source :D

 

 

EDIT: WINRAR nie wyszukuje danego tekstu w plikach ;/

 

wchodzisz w game/src bierzesz cirtl+a potem prawym i edit with notepadd++ (lub jakis inny edytor) potem ciskasz cirt+f i wpisujesz fraze a następnie "szukaj we wszystkich otwartych plikach" i na dole jest pokazane gdzie i w jakiej linijce jest ta fraza.

 

notepad także nic nie wyszkuje ;)

 

A więc taki mały tutorial.

0) Otwierasz wszystkie pliki z: common, db, game

1) Jeśli szukasz kolumny, która jest w item_proto a nie możesz jej znaleźć w plikach powyżej.

- odpalasz navicat bo być może w navicat inaczej kolumna może się nazywać.

2) Tym tropem dochodzimy do tego, że w navicat kolumna nazywa się nie:

ITEM_ALTER_TO_MAGIC_ITEM_PERCENT

Tylko:

magic_pct

3) Skoro już wiemy czego szukać to wrzucamy to w wyszukiwarkę notepada++

4) Po wyszukaniu dostajemy jeden rekord.

sys_log(1, "ITEM: #%-5lu %-24s %-24s VAL: %ld %ld %ld %ld %ld %ld WEAR %lu ANTI %lu IMMUNE %lu REFINE %lu REFINE_SET %u MAGIC_PCT %u", 
				item_table->dwVnum,
				item_table->szName,
				item_table->szLocaleName,
				item_table->alValues[0],
				item_table->alValues[1],
				item_table->alValues[2],
				item_table->alValues[3],
				item_table->alValues[4],
				item_table->alValues[5],
				item_table->dwWearFlags,
				item_table->dwAntiFlags,
				item_table->dwImmuneFlag,
				item_table->dwRefinedVnum,
				item_table->wRefineSet,
				item_table->bAlterToMagicItemPct);

5) Nasze magic_pct jest ostatnie. Oznacza to, że wybieramy ostatni "odnośnik"

item_table->bAlterToMagicItemPct);

6) Szukamy w notepad tego wyrażenia:

bAlterToMagicItemPct

7) Szukamy czegoś co ma związek z tworzeniem/podnoszeniem itemów. Bo wtedy ten bonus jest aplikowany.

8) Trafiamy na:

LPITEM ITEM_MANAGER::CreateItem(DWORD vnum, DWORD count, DWORD id, bool bTryMagic, int iRarePct, bool bSkipSave)

Który mówi nam, że:

		if (bTryMagic)
		{
			if (iRarePct == -1)
				iRarePct = table->bAlterToMagicItemPct;

			if (number(1, 100) <= iRarePct)
				item->AlterToMagicItem();
		}

Interesuje nas drugi if, ponieważ pierwszy odpowiada za dodawanie średnich do broni 30/75 itp.

9) Więc szukamy tego:

AlterToMagicItem

10) Dochodzimy do:

void CItem::AlterToMagicItem()

Mili koreańczycy dostarczyli nam informacji na ten temat:

	//      Appeariance Second Third
	// Weapon 50        20     5
	// Armor  30        10     2
	// Acc    20        10     1

Jeśli chcesz, aby można było zdobyć przedmiot z 4 bonusami robisz taki myk:

 

 

Pod tym:

int iSecondPct;
int iThirdPct;

Dopisujesz to:

	int iFourthPct;

Zmieniasz procent jaki ma być na dodanie się bonusu podczas tworzenia przedmiotu.

 

 

if (g_iUseLocale)
	{
		switch (GetType())
		{
			case ITEM_WEAPON:
				iSecondPct = 20;
				iThirdPct = 5;
				break;

			case ITEM_ARMOR:
			case ITEM_COSTUME:
				if (GetSubType() == ARMOR_BODY)
				{
					iSecondPct = 10;
					iThirdPct = 2;
				}
				else
				{
					iSecondPct = 10;
					iThirdPct = 1;
				}
				break;

			default:
				return;
		}
	} 

np jeśli chcemy z możliwością 4 bonusów:

				iSecondPct = 75;
				iThirdPct = 50;
				iFourthPct = 25;

 

 

Skoro procenty już zmieniłeś to teraz dodajesz pod:
	if (number(1, 100) <= iThirdPct)
		PutAttribute(aiItemMagicAttributePercentLow);

To:

	if (number(1, 100) <= iFourthPct)
		PutAttribute(aiItemMagicAttributePercentLow);

Oczywiście warunkiem nadania bonusu jest posiadanie wartości !=0 w item_proto.
Mowa oczywiście o kolumnie:
ITEM_ALTER_TO_MAGIC_ITEM_PERCENT - dla proto txt
magic_pct - dla proto no txt
 
Kompilowanko i powinno banglać.

zandia_sygna.png

Zarchiwizowany

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

×
×
  • Dodaj nową pozycję...