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

Błąd HUD


Najlepsza odpowiedź Robiin, 08.08.2019 11:56

Możesz spróbować jeszcze tego, powinno pomóc na /hud i zmniejszyć częstotliwość zanikania hudu.

Przejdź do postu


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

#1 Roughster

    Profesjonalista

  • Użytkownik

Reputacja: 16
Początkujący

  • Postów:180
  • GG:
  • Steam:steam
  • Imię:Damian
  • Lokalizacja:localhost
Offline

Napisano 07.08.2019 11:29

Witam. Mam problem.

Otóż po wgraniu kilku pluginów na serwer w konsoli wyskoczyło mi żeby po rangi_amxx.amxx dodać debug.

Dopisałem to w plugins.ini i teraz w konsoli jest spam z:

 

L 08/07/2019 - 12:28:03: [AMXX] Displaying debug trace (plugin "rangi_amxx.amxx")
L 08/07/2019 - 12:28:03: [AMXX] Run time error 4: index out of bounds
L 08/07/2019 - 12:28:03: [AMXX] [0] rangi_amxx.sma::displayHud (line 102)
L 08/07/2019 - 12:28:04: [AMXX] Displaying debug trace (plugin "rangi_amxx.amxx")
L 08/07/2019 - 12:28:04: [AMXX] Run time error 4: index out of bounds
L 08/07/2019 - 12:28:04: [AMXX] [0] rangi_amxx.sma::displayHud (line 102)
L 08/07/2019 - 12:28:05: [AMXX] Displaying debug trace (plugin "rangi_amxx.amxx")
L 08/07/2019 - 12:28:05: [AMXX] Run time error 4: index out of bounds
L 08/07/2019 - 12:28:05: [AMXX] [0] rangi_amxx.sma::displayHud (line 102)

 

Kod pluginu:

#include <amxmodx>
#include <csx>
#include <fakemeta>

#define ForArray(%1,%2) for(new %1 = 0; %1 < sizeof %2; %1++)

new const rankName[][] =
{
	"Silver I",
	"Silver II",
	"Silver III",
	"Silver IV",
	"Silver Elite",
	"Silver Elite Master",
	"Gold Nova I",
	"Gold Nova II",
	"Gold Nova III",
	"Gold Nova IV",
	"Gold Nova Master",
	"Master Guardian I",
	"Master Guardian II",
	"Master Guardian Elite",
	"Distinguished Master Guardian",
	"Legendary Eagle",
	"Legendary Eagle Master",
	"Supreme Master First Class",
	"The Global Elite"
};

new const rankKills[][] =
{
	{ 0, 29 },
	{ 30, 59 },
	{ 60, 119 },
	{ 120, 209 },
	{ 210, 324 },
	{ 325, 499 },
	{ 500, 729 },
	{ 730, 999 },
	{ 100, 1399 },
	{ 1400, 1849 },
	{ 1850, 2299 },
	{ 2300, 2899 },
	{ 2900, 3549 },
	{ 4200, 4999 },
	{ 5000, 5899 },
	{ 5900, 6899 },
	{ 6900, 7999 },
	{ 8000, 9299 },
	{ 9300, 12000 }
};

new hudObject, bool:EnabledHud[ 33 ];

public plugin_init()
{
	register_plugin("Info Hud I Rangi CsGo", "1.0", "ProToTyp");
	
	register_clcmd("say /hud", "Enable_Disable_Hud");
	register_clcmd("say_team /hud", "Enable_Disable_Hud");
	
	hudObject = CreateHudSyncObj();
}

public client_putinserver(index)
{
	EnabledHud[index]=true;
	set_task(1.0, "displayHud", index, _, _, "b");
}

public client_disconnect(index)
{
	EnabledHud[index]=false;
	remove_task(index);
}

public displayHud(index)
{
	if(!is_user_connected(index) || !EnabledHud[index])
		return;

	new target;
	
	if(!is_user_alive(index))
		target = pev(index, pev_iuser2);	
	else	target = index;
	
	static userName[33],
	requiredKills,
	userPosition,
	userRankIndex,
	userStats[8],
	blank[8];
	
	get_user_name(target, userName, charsmax(userName));
	
	userRankIndex = getRankIndex(target);
	userPosition = get_user_stats(target, userStats, blank);	
	requiredKills = (userRankIndex + 1 == sizeof(rankKills) ? rankKills[userRankIndex][1] : rankKills[userRankIndex + 1][0]);
	
	set_hudmessage(0, 255, 0, 0.01, 0.17, 0, 6.0, 1.0, 0.1, 0.1, -1);
	ShowSyncHudMsg(index, hudObject, "Nick: %s^nRanga: %s^nPostep: %i/%i^nFragi: %i^nRanking: %i/%i^nVip: %s", userName, rankName[userRankIndex], userStats[0], requiredKills, get_user_frags(target), userPosition, get_statsnum(), get_user_flags(target) & ADMIN_LEVEL_H ? "Tak" : "Nie");
}

public getRankIndex(index)
{
	static userStats[8],
	blank[8];
	
	get_user_stats(index, userStats, blank);
	
	ForArray(i, rankKills)
	{
		if(userStats[0] > rankKills[i][0])
		{
			continue;
		}

		return i - 1;
	}
	
	return -1;
}

public Enable_Disable_Hud(index)	
	EnabledHud[index] = !EnabledHud[index]

  • +
  • -
  • 0

#2 wonsz żeczny

    Wszechwidzący

  • Użytkownik

Reputacja: 82
Zaawansowany

  • Postów:254
  • Imię:Wonsz
  • Lokalizacja:Żeka
Offline

Napisano 07.08.2019 12:04

ShowSyncHudMsg(index, hudObject, "Nick: %s^nRanga: %s^nPostep: %i/%i^nFragi: %i^nRanking: %i/%i^nVip: %s", userName, rankName[userRankIndex], userStats[0], requiredKills, get_user_frags(target), userPosition, get_statsnum(), get_user_flags(target) & ADMIN_LEVEL_H ? "Tak" : "Nie");

na

ShowSyncHudMsg(target, hudObject, "Nick: %s^nRanga: %s^nPostep: %i/%i^nFragi: %i^nRanking: %i/%i^nVip: %s", userName, rankName[userRankIndex], userStats[0], requiredKills, get_user_frags(target), userPosition, get_statsnum(), get_user_flags(target) & ADMIN_LEVEL_H ? "Tak" : "Nie");

  • +
  • -
  • 0

#3 Roughster

    Profesjonalista

  • Autor tematu
  • Użytkownik

Reputacja: 16
Początkujący

  • Postów:180
  • GG:
  • Steam:steam
  • Imię:Damian
  • Lokalizacja:localhost
Offline

Napisano 07.08.2019 12:19

Nadal w konsoli są błędy:

L 08/07/2019 - 13:18:12: [AMXX] Displaying debug trace (plugin "rangi_amxx.amxx")
L 08/07/2019 - 13:18:12: [AMXX] Run time error 4: index out of bounds 
L 08/07/2019 - 13:18:12: [AMXX]    [0] rangi_amxx.sma::displayHud (line 102)

  • +
  • -
  • 0

#4 wonsz żeczny

    Wszechwidzący

  • Użytkownik

Reputacja: 82
Zaawansowany

  • Postów:254
  • Imię:Wonsz
  • Lokalizacja:Żeka
Offline

Napisano 07.08.2019 12:33

Problem leży tu:

ShowSyncHudMsg(target, hudObject, "Nick: %s^nRanga: %s^nPostep: %i/%i^nFragi: %i^nRanking: %i/%i^nVip: %s", userName, rankName[userRankIndex], userStats[0], requiredKills, get_user_frags(target), userPosition, get_statsnum(), get_user_flags(target) & ADMIN_LEVEL_H ? "Tak" : "Nie");

Błąd 

Run time error 4: index out of bounds 

Oznacza, że tablica jest zbyt mała.

Prawdopodobnie chodzi o rankName[userRankIndex], wartość userRankIndex jest wyższa niż rozmiar tablicy.

 

Najlepiej sprawdź sobie co zwraca getRankIndex(index)


  • +
  • -
  • 0

#5 Roughster

    Profesjonalista

  • Autor tematu
  • Użytkownik

Reputacja: 16
Początkujący

  • Postów:180
  • GG:
  • Steam:steam
  • Imię:Damian
  • Lokalizacja:localhost
Offline

Napisano 07.08.2019 14:23

Nie rozumiem.

 

Możesz jaśniej mi to wytłumaczyć?

Lub co mam zrobić, żeby to działało?


  • +
  • -
  • 0

#6 Roughster

    Profesjonalista

  • Autor tematu
  • Użytkownik

Reputacja: 16
Początkujący

  • Postów:180
  • GG:
  • Steam:steam
  • Imię:Damian
  • Lokalizacja:localhost
Offline

Napisano 07.08.2019 16:00

Da radę ktoś pomóc?


  • +
  • -
  • 0

#7 wonsz żeczny

    Wszechwidzący

  • Użytkownik

Reputacja: 82
Zaawansowany

  • Postów:254
  • Imię:Wonsz
  • Lokalizacja:Żeka
Offline

Napisano 07.08.2019 21:20

Dodaj to do pluginu

register_clcmd("say /test", "TEST");
public TEST( id )
{
      client_print( id, print_center, "%i",getRankIndex(id) );
}

I powiedz co Ci się wyświetla na środku po wpisaniu tej komendy.


Użytkownik wonsz żeczny edytował ten post 07.08.2019 21:21

  • +
  • -
  • 0

#8 Roughster

    Profesjonalista

  • Autor tematu
  • Użytkownik

Reputacja: 16
Początkujący

  • Postów:180
  • GG:
  • Steam:steam
  • Imię:Damian
  • Lokalizacja:localhost
Offline

Napisano 07.08.2019 22:22

Wyskoczyła "2" mniej więcej na środku ekranu.


  • +
  • -
  • 0

#9 Roughster

    Profesjonalista

  • Autor tematu
  • Użytkownik

Reputacja: 16
Początkujący

  • Postów:180
  • GG:
  • Steam:steam
  • Imię:Damian
  • Lokalizacja:localhost
Offline

Napisano 08.08.2019 10:56

Ktoś coś?


  • +
  • -
  • 0

#10 Rivit

    Godlike

  • Support Team

Reputacja: 1 319
Godlike

  • Postów:4 380
Offline

Napisano 08.08.2019 11:09

a na jakiej randze ci to wystepuje? trzeba by log dodac jak nie wiesz


  • +
  • -
  • 0

#11 Robiin

    Godlike

  • Support Team

Reputacja: 1 107
Super Hero

  • Postów:2 051
  • Imię:Robert
  • Lokalizacja:Wrocław
Online

Napisano 08.08.2019 11:14

Here

Załączone pliki


  • +
  • -
  • 0

Nie dołączam do żadnej sieci, nie pomagam z tworzeniem paczek, nie napisze pluginów za zero.


#12 Roughster

    Profesjonalista

  • Autor tematu
  • Użytkownik

Reputacja: 16
Początkujący

  • Postów:180
  • GG:
  • Steam:steam
  • Imię:Damian
  • Lokalizacja:localhost
Offline

Napisano 08.08.2019 11:34

@aSiorr po zmianie mapy, przez pierwsze kilka sekund bylo ok, a potem nick zmienil się na nazwe serwera, Ranga z Silver III na Silver I Postęp 8/30, chociaz mam 69 fragów i ranking 0/155 chociaż mam powiedzmy 50/155, jedynie co to VIPA dobrze pokazuje (chyba)

I nie działa wyłączenia/włączenie hud'a jak wpiszę na say'u /hud


Użytkownik Roughster edytował ten post 08.08.2019 11:36

  • +
  • -
  • 0

#13 Roughster

    Profesjonalista

  • Autor tematu
  • Użytkownik

Reputacja: 16
Początkujący

  • Postów:180
  • GG:
  • Steam:steam
  • Imię:Damian
  • Lokalizacja:localhost
Offline

Napisano 08.08.2019 11:35

@TibacK na każdej taki bląd występuje


  • +
  • -
  • 0

#14 Robiin

    Godlike

  • Support Team

Reputacja: 1 107
Super Hero

  • Postów:2 051
  • Imię:Robert
  • Lokalizacja:Wrocław
Online

Napisano 08.08.2019 11:49

U mnie w grze wygląda to tak:

 

26ffWxN.jpg

 

Nawet napisałem w pythonie skrypt, żebym czegoś przypadkiem nie przeoczył:

 

fgXpbHR.jpg

 

Jak widzisz, działa dobrze. Pokazuje Ci Silver I i nazwę serwera, bo coś jest powalone z indeksami. Dla indeksu == 0 nick będzie nazwą serwera, a statystyki z get_user_stats będą == 0, więc i funkcja getRankIndex zwróci 0, co za tym idzie wyświetli rangę Silver I.

 

 

 

 

Co do /hud:

set_hudmessage(0, 85, 255, 0.0, 0.17, 0, 6.0, 12.0, 0.1, 0.1);

12.0 odpowiada za czas, jaki wiadomośc będzie się utrzymywała na hudzie.


Użytkownik aSiorr edytował ten post 08.08.2019 11:51

  • +
  • -
  • 1

Nie dołączam do żadnej sieci, nie pomagam z tworzeniem paczek, nie napisze pluginów za zero.


#15 Roughster

    Profesjonalista

  • Autor tematu
  • Użytkownik

Reputacja: 16
Początkujący

  • Postów:180
  • GG:
  • Steam:steam
  • Imię:Damian
  • Lokalizacja:localhost
Offline

Napisano 08.08.2019 11:51

Tutaj jest filmik jak to mniej wiecej wyglada po wgraniu Twojego pluginu @aSiorr

https://www.youtube....h?v=EYjx24r96VA

Co mam w tym przypadku zrobić jak takie coś się dzieje? To wina pluginu, innych pluginów czy samego serwera?


  • +
  • -
  • 0

#16 Robiin

    Godlike

  • Support Team

Reputacja: 1 107
Super Hero

  • Postów:2 051
  • Imię:Robert
  • Lokalizacja:Wrocław
Online

Napisano 08.08.2019 11:56   Najlepsza odpowiedź

Możesz spróbować jeszcze tego, powinno pomóc na /hud i zmniejszyć częstotliwość zanikania hudu.

Załączone pliki


  • +
  • -
  • 1

Nie dołączam do żadnej sieci, nie pomagam z tworzeniem paczek, nie napisze pluginów za zero.





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

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