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

Max limit rangi i pytanko


Rekomendowane odpowiedzi

Opublikowano

Siemaneczko :)

 

Kopie na forum jak i grzebie w src od 2 dni i nie mogę znaleźć o tym nawet wzmianki. Otóż chodzi mi o zwiększenie limitu punktów rangi oraz dodanie nowych (chodź to 2 raczej sam znajdę :D), oraz moje pytanko. Jeżeli chce zrobić nowy slot na np nie wiem runę, która będzie możliwa do założenia po uzyskaniu wymaganej ilości rangi osadzonej w nowym oknie to da radę to zrobić w queście czy będę musiał owy slot dodać w src? 

pozdrówki :)

Opublikowano

 --> LOL <--

// Nie pomoge dalej, bo zapmonialem jak to robilem :( Sorry. 

 

 

Otwieramy  locale_game.txt

 

Szukamy = PVP_LEVEL8 Okrutny

Potem dodajemy np.  PVP_LEVEL12 Podly itp.itp.

 

Pakujemy locale. Teraz root.

 

Locale.py

 

Szukaj tego 

  def GetAlignmentTitleName (alignment):
	 if alignment> = 12000:
		 return TITLE_NAME_LIST [0]
	 elif alignment> = 8000:
		 return TITLE_NAME_LIST [1]
	 elif alignment> = 4000:
		 return TITLE_NAME_LIST [2]
	 elif alignment> = 1000:
		 return TITLE_NAME_LIST [3]
	 elif alignment> = 0:
		 return TITLE_NAME_LIST [4]
	 elif alignment> -4000:
		 return TITLE_NAME_LIST [5]
	 elif alignment> -8000:
		 return TITLE_NAME_LIST [6]
	 elif alignment> -12000:
		 return TITLE_NAME_LIST [7]

	 return TITLE_NAME_LIST [8] 

I robisz np takie cos:

 def GetAlignmentTitleName (alignment):
	 if alignment> = 19000:
		 return TITLE_NAME_LIST [12]
	 elif alignment> = 12000:
		 return TITEL_NAME_LIST [0]
	 elif alignment> = 8000:
		 return TITLE_NAME_LIST [1]
	 elif alignment> = 4000:
		 return TITLE_NAME_LIST [2]
	 elif alignment> = 1000:
		 return TITLE_NAME_LIST [3]
	 elif alignment> = 0:
		 return TITLE_NAME_LIST [4]
	 elif alignment> -4000:
		 return TITLE_NAME_LIST [5]
	 elif alignment> -8000:
		 return TITLE_NAME_LIST [6]
	 elif alignment> -12000:
		 return TITLE_NAME_LIST [7]

	 return TITLE_NAME_LIST [8] 

W tym samym dokumencie mamy TITLE_NAME_LIST wyglada to tak

  TITLE_NAME_LIST = (PVP_LEVEL0, PVP_LEVEL1, PVP_LEVEL2, PVP_LEVEL3, PVP_LEVEL4, PVP_LEVEL5, PVP_LEVEL6, PVP_LEVEL7, PVP_LEVEL8,} 

A po edycji

  TITLE_NAME_LIST = (PVP_LEVEL0, PVP_LEVEL1, PVP_LEVEL2, PVP_LEVEL3, PVP_LEVEL4, PVP_LEVEL5, PVP_LEVEL6, PVP_LEVEL7, PVP_LEVEL8, PVP_LEVEL12,) 

Lapiesz bo ja tak ? Chyba to tak robilem nie pamietam. Niech ktos mnie poprawi jak zle cos :)

 

 Bo glebszym mysleniu doszlem ze to co napisalem to dodasz nowe rangi jak sie wbije tyle puntkow itp. To tylko zostalo nam dodac range MAX ILOSC. Damy rade.

Opublikowano

Siemaneczko :)

 

Kopie na forum jak i grzebie w src od 2 dni i nie mogę znaleźć o tym nawet wzmianki. Otóż chodzi mi o zwiększenie limitu punktów rangi oraz dodanie nowych (chodź to 2 raczej sam znajdę :D), oraz moje pytanko. Jeżeli chce zrobić nowy slot na np nie wiem runę, która będzie możliwa do założenia po uzyskaniu wymaganej ilości rangi osadzonej w nowym oknie to da radę to zrobić w queście czy będę musiał owy slot dodać w src? 

 

pozdrówki :)

 

Da się belty tak kiedyś były robiony jak się nie mylę, ale jest to c*****e rozwianie.

#EMERYTURA

Opublikowano

 --> LOL <--

// Nie pomoge dalej, bo zapmonialem jak to robilem :( Sorry. 

 

 

Otwieramy  locale_game.txt

 

Szukamy = PVP_LEVEL8 Okrutny

Potem dodajemy np.  PVP_LEVEL12 Podly itp.itp.

 

Pakujemy locale. Teraz root.

 

Locale.py

 

Szukaj tego 

  def GetAlignmentTitleName (alignment):
	 if alignment> = 12000:
		 return TITLE_NAME_LIST [0]
	 elif alignment> = 8000:
		 return TITLE_NAME_LIST [1]
	 elif alignment> = 4000:
		 return TITLE_NAME_LIST [2]
	 elif alignment> = 1000:
		 return TITLE_NAME_LIST [3]
	 elif alignment> = 0:
		 return TITLE_NAME_LIST [4]
	 elif alignment> -4000:
		 return TITLE_NAME_LIST [5]
	 elif alignment> -8000:
		 return TITLE_NAME_LIST [6]
	 elif alignment> -12000:
		 return TITLE_NAME_LIST [7]

	 return TITLE_NAME_LIST [8] 

I robisz np takie cos:

 def GetAlignmentTitleName (alignment):
	 if alignment> = 19000:
		 return TITLE_NAME_LIST [12]
	 elif alignment> = 12000:
		 return TITEL_NAME_LIST [0]
	 elif alignment> = 8000:
		 return TITLE_NAME_LIST [1]
	 elif alignment> = 4000:
		 return TITLE_NAME_LIST [2]
	 elif alignment> = 1000:
		 return TITLE_NAME_LIST [3]
	 elif alignment> = 0:
		 return TITLE_NAME_LIST [4]
	 elif alignment> -4000:
		 return TITLE_NAME_LIST [5]
	 elif alignment> -8000:
		 return TITLE_NAME_LIST [6]
	 elif alignment> -12000:
		 return TITLE_NAME_LIST [7]

	 return TITLE_NAME_LIST [8] 

W tym samym dokumencie mamy TITLE_NAME_LIST wyglada to tak

  TITLE_NAME_LIST = (PVP_LEVEL0, PVP_LEVEL1, PVP_LEVEL2, PVP_LEVEL3, PVP_LEVEL4, PVP_LEVEL5, PVP_LEVEL6, PVP_LEVEL7, PVP_LEVEL8,} 

A po edycji

  TITLE_NAME_LIST = (PVP_LEVEL0, PVP_LEVEL1, PVP_LEVEL2, PVP_LEVEL3, PVP_LEVEL4, PVP_LEVEL5, PVP_LEVEL6, PVP_LEVEL7, PVP_LEVEL8, PVP_LEVEL12,) 

Lapiesz bo ja tak ? Chyba to tak robilem nie pamietam. Niech ktos mnie poprawi jak zle cos :)

 

 Bo glebszym mysleniu doszlem ze to co napisalem to dodasz nowe rangi jak sie wbije tyle puntkow itp. To tylko zostalo nam dodac range MAX ILOSC. Damy rade.

 

dzięki lecz bardziej się skupiam chwilowo na odnalezieniu podnoszenia max limitu rangi w game ale like leci ! :D

Opublikowano

Poszperalem u siebie i mam :P 

 

GAME SOURCE >>>>> CHAR_BATTLE.CPP

 

Znajdz to !

int iAlignIndex;

Edytuj to dla przykladu 

if (GetRealAlignment() == 350000)
iAlignIndex = 0;
else if (GetRealAlignment() >= 200000)
iAlignIndex = 1;
else if (GetRealAlignment() >= 120000)
iAlignIndex = 2;
else if (GetRealAlignment() >= 80000)
iAlignIndex = 3;
else if (GetRealAlignment() >= 40000)
iAlignIndex = 4;
else if (GetRealAlignment() >= 10000)
iAlignIndex = 5;
else if (GetRealAlignment() >= 0)
iAlignIndex = 6;
else if (GetRealAlignment() > -40000)
iAlignIndex = 7;
else if (GetRealAlignment() > -80000)
iAlignIndex = 8;
else if (GetRealAlignment() > -120000)
iAlignIndex = 9;
else if (GetRealAlignment() > -200000)
iAlignIndex = 10;
else if (GetRealAlignment() > -350000)
iAlignIndex = 11;
else
iAlignIndex = 12;

Teraz szukasz tego:

FPartyAlignmentCompute f(-20000, pkKiller->GetX(), pkKiller->GetY());
pkKiller->GetParty()->ForEachOnlineMember(f);


if (f.m_iCount == 0)
pkKiller->UpdateAlignment(-20000);
else
{
sys_log(0, "ALIGNMENT PARTY count %d amount %d", f.m_iCount, f.m_iAmount);


f.m_iStep = 1;
pkKiller->GetParty()->ForEachOnlineMember(f);
}
}
else
pkKiller->UpdateAlignment(-20000);

Zmieniamy na to

FPartyAlignmentCompute f(-35000, pkKiller->GetX(), pkKiller->GetY());
pkKiller->GetParty()->ForEachOnlineMember(f);


if (f.m_iCount == 0)
pkKiller->UpdateAlignment(-35000);
else
{
sys_log(0, "ALIGNMENT PARTY count %d amount %d", f.m_iCount, f.m_iAmount);


f.m_iStep = 1;
pkKiller->GetParty()->ForEachOnlineMember(f);
}
}
else
pkKiller->UpdateAlignment(-35000);

Teraz szukamy tego;

m_iRealAlignment = MINMAX(-200000, m_iRealAlignment + iAmount, 200000);

Znalazles? Fajnie, jedziem dalej ! Zmien na to!

m_iRealAlignment = MINMAX(-300000, m_iRealAlignment + iAmount, 350000);

Gotowe, ciezkie nie ? :D Musialem troche poszperac u siebie i zobaczyc co edytowalem ale jest. KOMPAJL GEJM. Gotowe.

 

 

#2 Robi sie ciezej, bo teraz edytujemy .bin

 

Otworz InstanceBase.h i znajdz

TITLE_NUM = 9,
TITLE_NONE = 4,

Zamien na

TITLE_NUM = 13,
TITLE_NUM = 6,

Zapisz i gotowe.

 

Otworz teraz InstanceBase.cpp i znajdz

UINT CInstanceBase::GetAlignmentGrade()

Edytuj np tako.

UINT CInstanceBase::GetAlignmentGrade()
{
if (m_sAlignment == 35000)
return 0;
else if (m_sAlignment >= 20000)
return 1;
else if (m_sAlignment >= 12000)
return 2;
else if (m_sAlignment >= 8000)
return 3;
else if (m_sAlignment >= 4000)
return 4;
else if (m_sAlignment >= 1000)
return 5;
else if (m_sAlignment >= 0)
return 6;
else if (m_sAlignment > -4000)
return 7;
else if (m_sAlignment > -8000)
return 8;
else if (m_sAlignment > -12000)
return 9;
else if (m_sAlignment > -20000)
return 10;
else if (m_sAlignment > -35000)
return 11;


return 12;
}

Teraz znajdz

int CInstanceBase::GetAlignmentType()

I tako eedytuj np.

int CInstanceBase::GetAlignmentType()
{
switch (GetAlignmentGrade())
{
case 0:
case 1:
case 2:
case 3:
case 4:
case 5:
{
return ALIGNMENT_TYPE_WHITE;
break;
}


case 7:
case 8:
case 9:
case 10:
case 11:
case 12:
{
return ALIGNMENT_TYPE_DARK;
break;
}


case 6:
{
return ALIGNMENT_TYPE_NORMAL;
break;
}
}
}

Gotowe dodane do source SERVRE i do BINARY Client. 

 

 

Zycze milego dnia.

 

 

Wykonalem 60% tej pracy sam, 40% zostalo wziete( tylko przyklady) od uzytkownika MAFINK2*SX. Dziekuje Mafi :)

Zarchiwizowany

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

×
×
  • Dodaj nową pozycję...