Skocz do zawartości

Witamy w Nieoficjalnym polskim support'cie AMX Mod X

Witamy w Nieoficjalnym polskim support'cie AMX Mod X, jak w większości społeczności internetowych musisz się zarejestrować aby móc odpowiadać lub zakładać nowe tematy, ale nie bój się to jest prosty proces w którym wymagamy minimalnych informacji.
  • Rozpoczynaj nowe tematy i odpowiedaj na inne
  • Zapisz się do tematów i for, aby otrzymywać automatyczne uaktualnienia
  • Dodawaj wydarzenia do kalendarza społecznościowego
  • Stwórz swój własny profil i zdobywaj nowych znajomych
  • Zdobywaj nowe doświadczenia

Dołączona grafika Dołączona grafika

Guest Message by DevFuse
 

Zdjęcie
CoD Nowy

Za duzo expa

cod nowy

  • Nie możesz napisać tematu
  • Zaloguj się, aby dodać odpowiedź
6 odpowiedzi w tym temacie

#1 maska1

    Życzliwy

  • Użytkownik

Reputacja: 4
Nowy

  • Postów:29
  • Imię:mateusz
  • Lokalizacja:tychy
Offline

Napisano 19.11.2019 21:15

Witam mam serwer cod mod 45k lvl z tabelka expa i gdy powiedzmy ktos ma 40000 lvl wejdzie nowy gracz i zabije takiego gracza to dostaje ponad 40000lvl jak to zmienic?


  • +
  • -
  • 0

#2 Aexis

    Pomocny

  • Użytkownik

Reputacja: 35
Życzliwy

  • Postów:59
  • GG:
  • Imię:Paweł
  • Lokalizacja:Wrocław
Offline

Napisano 19.11.2019 21:34

Rozumiem że COD nowy ?

To jeżeli nie masz osobnych pluginów dających dodatkowy exp, to wystarczy odpowiednio zmienić cvary:
 

cod_killxp  //Doswiadczenie za zabojstwo.
cod_winxp  //Doswiadczenie za wygrana.
cod_damagexp  //Doswiadczenie za 20 obrazen.

  • +
  • -
  • 1

1228979531_oie_291885ZfujEGiH(1).png.af1


#3 maska1

    Życzliwy

  • Autor tematu
  • Użytkownik

Reputacja: 4
Nowy

  • Postów:29
  • Imię:mateusz
  • Lokalizacja:tychy
Offline

Napisano 19.11.2019 21:46

No tak to wiem ale to nie chodzi o to powiedzmy jest gracz ktory ma 20000 my wchodzimy z 1LVL zabijamy go i dostajemy powiedzmy 22000 gdzie jest to nie mozliwe aby tyle sie uzbieralo z tych obrazen killa itd poprostu im wyzszy level gracz ma tym dostajemy wiecej tych tego expa nie wiem dlaczego


  • +
  • -
  • 0

#4 Aexis

    Pomocny

  • Użytkownik

Reputacja: 35
Życzliwy

  • Postów:59
  • GG:
  • Imię:Paweł
  • Lokalizacja:Wrocław
Offline

Napisano 19.11.2019 21:56

public SmiercGraczaPost(id, attacker, shouldgib)
{	
	if(!is_user_connected(attacker))
		return HAM_IGNORED;
		
	if(get_user_team(id) != get_user_team(attacker) && klasa_gracza[attacker])
	{
		new doswiadczenie_za_zabojstwo = get_pcvar_num(cvar_doswiadczenie_za_zabojstwo);
		new nowe_doswiadczenie = get_pcvar_num(cvar_doswiadczenie_za_zabojstwo);
		
		if(poziom_gracza[id] > poziom_gracza[attacker])
			nowe_doswiadczenie += (poziom_gracza[id]-poziom_gracza[attacker])*(doswiadczenie_za_zabojstwo/10);
			
		if(!perk_gracza[attacker])
			UstawPerk(attacker, -1, -1, 1);
		doswiadczenie_gracza[attacker] += nowe_doswiadczenie;
	}
	
	SprawdzPoziom(attacker);
	
	return HAM_IGNORED;
}

Znajdź taki fragment w sma silnika.
Chodzi tutaj głownie o ten fragment:
 

nowe_doswiadczenie += (poziom_gracza[id]-poziom_gracza[attacker])*(doswiadczenie_za_zabojstwo/10);

Doświadczenie które dostaje gracz, jeżeli zabija gracza z wyższym poziomem jest równe=
[(lvl gracza z wyższym lvl) - (lvl gracza z niższym lvl)] * (wartość cvara cod_killxp)/10

 

np. gracz z lvl 5000 został zabity przez gracza z lvl 10:
doświadczenie=(5000-10)*cod_killxp/10

Więc generalnie musisz sobie pokombinowac tak z tym algorytmem jak Ci odpowiada.
Jak bedziesz miał jakis problem pisz, spróbuję pomóć.


Użytkownik Aexis edytował ten post 19.11.2019 21:58

  • +
  • -
  • 1

1228979531_oie_291885ZfujEGiH(1).png.af1


#5 maska1

    Życzliwy

  • Autor tematu
  • Użytkownik

Reputacja: 4
Nowy

  • Postów:29
  • Imię:mateusz
  • Lokalizacja:tychy
Offline

Napisano 19.11.2019 22:08

dzięki a mozna to jakos usunac? zeby niezaleznie jaki poziom dawalo expa tylko za kille i obrazenia?


  • +
  • -
  • 0

#6 Aexis

    Pomocny

  • Użytkownik

Reputacja: 35
Życzliwy

  • Postów:59
  • GG:
  • Imię:Paweł
  • Lokalizacja:Wrocław
Offline

Napisano 19.11.2019 22:13

Jak zamienisz na coś takiego bedzie przyznawana tylko wartośc z cod_killxp:

public SmiercGraczaPost(id, attacker, shouldgib)
{	
	if(!is_user_connected(attacker))
		return HAM_IGNORED;
		
	if(get_user_team(id) != get_user_team(attacker) && klasa_gracza[attacker])
	{
		new doswiadczenie_za_zabojstwo = get_pcvar_num(cvar_doswiadczenie_za_zabojstwo);
		new nowe_doswiadczenie = get_pcvar_num(cvar_doswiadczenie_za_zabojstwo);
		
		if(poziom_gracza[id] > poziom_gracza[attacker])
			nowe_doswiadczenie += (doswiadczenie_za_zabojstwo);
			
		if(!perk_gracza[attacker])
			UstawPerk(attacker, -1, -1, 1);
		doswiadczenie_gracza[attacker] += nowe_doswiadczenie;
	}
	
	SprawdzPoziom(attacker);
	
	return HAM_IGNORED;
}

Natomiast doświadczenie za obrazenia nie zależy od różnicy lvl, nic nie musisz zmieniać

 


  • +
  • -
  • 1

1228979531_oie_291885ZfujEGiH(1).png.af1


#7 maska1

    Życzliwy

  • Autor tematu
  • Użytkownik

Reputacja: 4
Nowy

  • Postów:29
  • Imię:mateusz
  • Lokalizacja:tychy
Offline

Napisano 21.11.2019 22:28

Zmienilem na to ale nadal jest to samo w tabelce expa na 45k mam ponac 360000000 po zabiciu gracza 45k lvl dostaje 45k lvl cvary 3k za 20 obrazen 100k za killa i 100k za wygrana runde dziwne


  • +
  • -
  • 0





Również z jednym lub większą ilością słów kluczowych: cod nowy

Użytkownicy przeglądający ten temat: 0

0 użytkowników, 0 gości, 0 anonimowych