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
JailBreak

[JailBreak Cypis] Naprawa Crashy po zakończeniu rundy.

jailbreak cypis crash jb

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

#1 Droso

    Dawniej HubertTM

  • Support Team

Reputacja: 1 291
Godlike

  • Postów:2 371
  • Steam:steam
  • Imię:Hubert
  • Lokalizacja:Wrocław
Offline

Napisano 12.10.2013 20:57

*
Popularny

Witajcie!

 

Naprawdę sporo godzin spędziłem, żeby to rozwiązać i prawdopodobnie to jest rozwiązanie!

 

Aby usunąć crashe należy:

 

  • Krok 1: Usunąć w piłce Cypisia usuwanie piłki przy życzeniu.

Otwieramy jail_ball.sma i usuwamy z .sma:

public OnLastPrisonerShowWish(id)
{
	if(g_CreateBall)
	{
		if(pev_valid(g_ball))
			remove_entity(g_ball);
	}
}

Kompilujemy i wgrywamy na serwer.

  • Krok 2: Podmień funkcję w jail_api_jailbreak.sma (patrz poradnik niżej).

 

To:


public RoundRestart()
{
#if defined DEBUG
	log_to_file("jail_api_jailbreak.log", "RoundRestart");
#endif
	usuwanie_ustawien = true;
}

public RoundEnd()
{
#if defined DEBUG
	log_to_file("jail_api_jailbreak.log", "RoundEnd");
#endif
	end_usun = true;
	czas_bronie = false;
}

public PreRoundStart()
{	
#if defined DEBUG
	log_to_file("jail_api_jailbreak.log", "PreRoundStart pre");
#endif
	UsuwanieWydarzen();
	if(usuwanie_ustawien)
	{
		jail_day = 0;
		usuwanie_ustawien = false;
	}
	else
		jail_day++;

	
	if(jail_day)
	{
		gTimeStart = get_systime();
		ForwardDayStartPre(jail_day%7);
	}
#if defined DEBUG
	log_to_file("jail_api_jailbreak.log", "PreRoundStart post");
#endif
}

UsuwanieWydarzen()
{
	//end_usun = true;
#if defined DEBUG
	log_to_file("jail_api_jailbreak.log", "UsuwanieWydarzen pre");
#endif
	szInfo = "";
	szInfoPosz = "";
	szPoszukiwani = "";
	ostatni_wiezien = 0;
	prowadzacy = 0;
	
	obsluga_dala = false;
	pokaz_raz = false;
	czas_bronie = false;
	zabawa_wybrana = false;
	zyczenie_wybrane = false
		
	mode_gracza[WALKA] = false;

	mode_gracza[MIKRO] = (get_pcvar_num(pCvarMikro) == 1? true: false);
	
	mode_gracza[FF_TT] = false;
	mode_gracza[TT_GOD] = false;
	mode_gracza[CT_GOD] = false;
	mode_gracza[CT_NIE_MOZE_TT] = false;
	mode_gracza[TT_NIE_MOZE_CT] = false
	
	if(task_exists(ID_DZWIEK_POSZ))
		remove_task(ID_DZWIEK_POSZ);
	
	if(task_exists(ID_LOS_PROWADZACY))
		remove_task(ID_LOS_PROWADZACY);
		
	if(task_exists(ID_CZAS))
		remove_task(ID_CZAS);
	
	if(task_exists(ID_FREZZ))
		remove_task(ID_FREZZ);
	
	if(task_exists(ID_SPEED_FZ))
		remove_task(ID_SPEED_FZ);
	
	for(new i=0; i<sizeof dane_dnia; i++)
		dane_dnia[i] = 0;
	
	for(new i=1; i<=MAX; i++)
	{
		array_graczy[WSZYSCY][i] = 0;
		array_graczy[ZYWI][i] = 0;
		
		user_speed[i] = 0.0;
		pojedynek[i] = false;
		
		bronie_menu[i][0] = false;
		bronie_menu[i][1] = false;
		
		if(ustaw_freeday[i])
		{
			ustaw_freeday[i] = false;
			free_day[i] = true;
		}
		else
			free_day[i] = false;
			
		if(ustaw_duszka[i])
		{
			ustaw_duszka[i] = false;
			user_duszek[i] = true;
		}
		else
			user_duszek[i] = false;
	}
	
	ilosc_graczy[WSZYSCY] = 0;
	ilosc_graczy[ZYWI] = 0;
	
	new iRet;
	ExecuteForward(fRemoveData, iRet, id_zabawa);
	
#if defined DEBUG
	log_to_file("jail_api_jailbreak.log", "UsuwanieWydarzen post");
#endif
}

public PostRoundStart()
{
#if defined DEBUG
	log_to_file("jail_api_jailbreak.log", "PostRoundStart pre");
#endif
	end_usun = false;
	set_task(60.0, "koniec_czasu", ID_CZAS);
	
	if(!jail_day)
	{
		gTimeStart = get_systime()-g_FreezeTime;
		ForwardDayStartPre(jail_day%7);
	}
	if(!prowadzacy && !dane_dnia[1])
		set_task(15.0, "LosujProwadzacego", ID_LOS_PROWADZACY);
#if defined DEBUG
	log_to_file("jail_api_jailbreak.log", "PostRoundStart post");
#endif
}

ForwardDayStartPre(zabawa)
{
#if defined DEBUG
	log_to_file("jail_api_jailbreak.log", "ForwardDayStartPre pre");
#endif
	new iRet, is_frezz = g_FreezeTime-(get_systime()-gTimeStart);
	ExecuteForward(fDayStartPre, iRet, zabawa, PrepareArray(szInfo, 256, 1), PrepareArray(szInfoPosz, 512, 1), PrepareArray(dane_dnia, 10, 1), g_RoundTime+min(is_frezz, 0));
	id_zabawa = zabawa;
	
	new dane[1]
	dane[0] = zabawa;
	if(is_frezz)
		set_task(is_frezz+0.1, "ForwardDayStartPost", ID_FREZZ, dane, 1);
	else
		ForwardDayStartPost(dane);

#if defined DEBUG
	log_to_file("jail_api_jailbreak.log", "ForwardDayStartPre post");
#endif		
}

Zamień na:


public RoundRestart()
{
	
	usuwanie_ustawien = true;
	end_usun = true;
	UsuwanieWydarzen();
}

public RoundEnd()
{
	
	end_usun = true;
	czas_bronie = false;
	UsuwanieWydarzen();
}



public PreRoundStart()
{	
	end_usun = true;
	szInfo = "";
	szInfoPosz = "";
	szPoszukiwani = "";
	ostatni_wiezien = 0;
	prowadzacy = 0;
	
	obsluga_dala = false;
	pokaz_raz = false;
	czas_bronie = false;
	zabawa_wybrana = false;
	zyczenie_wybrane = false;
	
	mode_gracza[WALKA] = false;
	mode_gracza[MIKRO] = bool:get_pcvar_num(pCvarMikro);
	mode_gracza[FF_TT] = false;
	mode_gracza[TT_GOD] = false;
	mode_gracza[CT_GOD] = false;
	mode_gracza[CT_NIE_MOZE_TT] = false;
	mode_gracza[TT_NIE_MOZE_CT] = false
	
	if(task_exists(ID_DZWIEK_POSZ))
		remove_task(ID_DZWIEK_POSZ);
	
	if(task_exists(ID_LOS_PROWADZACY))
		remove_task(ID_LOS_PROWADZACY);
	
	if(task_exists(ID_CZAS))
		remove_task(ID_CZAS);
	
	if(task_exists(ID_FREZZ))
		remove_task(ID_FREZZ);
	
	if(task_exists(ID_SPEED_FZ))
		remove_task(ID_SPEED_FZ);
	
	if(task_exists(2761234, 1))
		remove_task(2761234, 1);
	
	for(new i=0; i<=10; i++)
		dane_dnia[i] = 0;
	
	if(usuwanie_ustawien)
	{
		jail_day = 0;
		usuwanie_ustawien = false;
	}
	else
		jail_day++;
	
	if(jail_day)
	{
		gTimeStart = get_systime();
		ForwardDayStartPre(jail_day%7);
	}
	
}

UsuwanieWydarzen()
{
for(new i=1; i<=32; i++)
{
	if(is_user_connected(i))
		cs_reset_user_model(i);
		
		pojedynek[i] = false;
		
		user_speed[i] = 0.0;
		array_graczy[WSZYSCY][i] = 0;
		array_graczy[ZYWI][i] = 0;
		
		pojedynek[i] = false;
		
		bronie_menu[i][0] = false;
		bronie_menu[i][1] = false;
		
		if(ustaw_freeday[i])
		{
			ustaw_freeday[i] = false;
			free_day[i] = true;
		}
		else
			free_day[i] = false;
		
		if(ustaw_duszka[i])
		{
			ustaw_duszka[i] = false;
			user_duszek[i] = true;
		}
		else
			user_duszek[i] = false;
		
	}
	
	ilosc_graczy[WSZYSCY] = 0;
	ilosc_graczy[ZYWI] = 0;
	
	new Return_F
	if(fRemoveData)
		ExecuteForward(fRemoveData, Return_F, id_zabawa);
}

public PostRoundStart()
{
	end_usun = false;
	set_task(60.0, "koniec_czasu", ID_CZAS);
	
	if(!jail_day)
	{
		gTimeStart = get_systime()-g_FreezeTime;
		ForwardDayStartPre(jail_day%7);
	}
	if(!prowadzacy && !dane_dnia[1])
		set_task(15.0, "LosujProwadzacego", ID_LOS_PROWADZACY);
}

ForwardDayStartPre(zabawa)
{
new iRet
new is_frezz = g_FreezeTime-(get_systime()-gTimeStart);
new czas = g_RoundTime+min(is_frezz, 0);

ExecuteForward(fDayStartPre, iRet, zabawa, PrepareArray(szInfo, 256, 1), PrepareArray(szInfoPosz, 512, 1), PrepareArray(dane_dnia, 10, 1), czas);
id_zabawa = zabawa;

new dane[1]
dane[0] = zabawa;
if(is_frezz)
	set_task(is_frezz+0.1, "ForwardDayStartPost", ID_FREZZ, dane, 1);
	else
		ForwardDayStartPost(dane);
	
}

Zapisujemy, kompilujemy i wgrywamy na serwer!


Użytkownik HubertTM edytował ten post 19.10.2013 08:14

  • +
  • -
  • 10

Piszę pluginy pod: AMX MOD X oraz SOURCE MOD!

Na zlecenie i bez zlecenia zresztą też!


#2 sNH.

    Czy MisieQ ukradł ciasteczko?

  • Power User

Reputacja: 299
Wszechwidzący

  • Postów:1 070
  • Steam:steam
  • Imię:Bartek
  • Lokalizacja:Ełk
Offline

Napisano 12.10.2013 21:17

So pro. Nice :P


  • +
  • -
  • 0

#3 eSkaa

    Zaawansowany

  • Zbanowany

Reputacja: 4
Nowy

  • Postów:113
  • Lokalizacja:Kielce
Offline

Napisano 12.10.2013 21:34

Posiadam, piłke by Cypis, i nie mam żadnych crashów czyściutko.


Zapraszam na CodMod 301 LvL FD UNIKAT!

IP: 31.186.87.54:27024

                                                                                                              b_350_20_FFFFFF_FFFFFF_0081D1_FFFFFF.png


#4 Zabijaka Gryps

    Wszechwiedzący

  • Power User

Reputacja: 266
Wszechwidzący

  • Postów:563
  • GG:
  • Steam:steam
  • Imię:Rafał
  • Lokalizacja:Świdnica
Offline

Napisano 14.10.2013 06:13

Noo, nareszcie ten długo oczekiwany przeze mnie poradnik :)

Na prawdę

Tylko taki malutki błąd - powinno być "Naprawdę" (wiem że się czepiam) :D
  • +
  • -
  • 0

#5 .Etc

    Zaawansowany

  • Zbanowany

Reputacja: 32
Życzliwy

  • Postów:96
  • GG:
  • Imię:Mateusz
  • Lokalizacja:Osterdam
Offline

Napisano 14.10.2013 19:27

W której linijce jest usuwanie piłki przy życzeniu ;P ?



#6 susel

    Pomocny

  • Użytkownik

Reputacja: 3
Nowy

  • Postów:45
  • Lokalizacja:Pisz
Offline

Napisano 16.10.2013 14:39

I jak pomogło dla tych co sprawdzali ?:D


  • +
  • -
  • 0

b_350_20_385732_224320_33F115_111111.png


#7 Droso

    Dawniej HubertTM

  • Autor tematu
  • Support Team

Reputacja: 1 291
Godlike

  • Postów:2 371
  • Steam:steam
  • Imię:Hubert
  • Lokalizacja:Wrocław
Offline

Napisano 16.10.2013 14:41

W której linijce jest usuwanie piłki przy życzeniu ;P ?

Otwieramy jail_ball.sma

 

Usuwamy:

public OnLastPrisonerShowWish(id)
{
	if(g_CreateBall)
	{
		if(pev_valid(g_ball))
			remove_entity(g_ball);
	}
}

I jak pomogło dla tych co sprawdzali ? :D

Wiesz ja mam taki kod i crashy nie mam ;)


  • +
  • -
  • 0

Piszę pluginy pod: AMX MOD X oraz SOURCE MOD!

Na zlecenie i bez zlecenia zresztą też!


#8 Zabijaka Gryps

    Wszechwiedzący

  • Power User

Reputacja: 266
Wszechwidzący

  • Postów:563
  • GG:
  • Steam:steam
  • Imię:Rafał
  • Lokalizacja:Świdnica
Offline

Napisano 16.10.2013 17:57

I jak pomogło dla tych co sprawdzali ? :D

Ja zastosowałem się do powyższego poradnika oraz sposobu podanego przez cypisa: http://amxx.pl/topic...zycje/?p=575477
Rezultat? OSZAŁAMIAJĄCY! Normalnie mój serwer padał kilkanaście / kilkadziesiąt razy dziennie (nie przesadzam, naprawdę tak było), teraz jest to albo TOTALNE ZERO, albo max jeden crash dziennie od wielkiego święta!
Jak najbardziej potwierdzam skuteczność.
  • +
  • -
  • 0

#9 Droso

    Dawniej HubertTM

  • Autor tematu
  • Support Team

Reputacja: 1 291
Godlike

  • Postów:2 371
  • Steam:steam
  • Imię:Hubert
  • Lokalizacja:Wrocław
Offline

Napisano 16.10.2013 18:11

 

I jak pomogło dla tych co sprawdzali ? :D

Ja zastosowałem się do powyższego poradnika oraz sposobu podanego przez cypisa: http://amxx.pl/topic...zycje/?p=575477
Rezultat? OSZAŁAMIAJĄCY! Normalnie mój serwer padał kilkanaście / kilkadziesiąt razy dziennie (nie przesadzam, naprawdę tak było), teraz jest to albo TOTALNE ZERO, albo max jeden crash dziennie od wielkiego święta!
Jak najbardziej potwierdzam skuteczność.

 

Raf w jakim momencie masz crashe? Bo ja na swoim serwerze mam tylko crashe, może raz na 3 dni + tylko przy zmianie mapy (co jest dziwne zresztą xD i pewnie nie jest winą nawet JB Engine Cypisia)


  • +
  • -
  • 0

Piszę pluginy pod: AMX MOD X oraz SOURCE MOD!

Na zlecenie i bez zlecenia zresztą też!


#10 Zabijaka Gryps

    Wszechwiedzący

  • Power User

Reputacja: 266
Wszechwidzący

  • Postów:563
  • GG:
  • Steam:steam
  • Imię:Rafał
  • Lokalizacja:Świdnica
Offline

Napisano 16.10.2013 18:34

I jak pomogło dla tych co sprawdzali ? :D

Ja zastosowałem się do powyższego poradnika oraz sposobu podanego przez cypisa: http://amxx.pl/topic...zycje/?p=575477
Rezultat? OSZAŁAMIAJĄCY! Normalnie mój serwer padał kilkanaście / kilkadziesiąt razy dziennie (nie przesadzam, naprawdę tak było), teraz jest to albo TOTALNE ZERO, albo max jeden crash dziennie od wielkiego święta!
Jak najbardziej potwierdzam skuteczność.

Raf w jakim momencie masz crashe? Bo ja na swoim serwerze mam tylko crashe, może raz na 3 dni + tylko przy zmianie mapy (co jest dziwne zresztą xD i pewnie nie jest winą nawet JB Engine Cypisia)

No ja też tak można powiedzieć, z raz na 3 dni, a w jakim momencie to nie wiem, widzę tylko w debug.log że był, ale to godziny nocne, koło północy.
Ja kiedyś miałem przy zmianie mapy, lecz uciążliwe bo praktycznie co kilka mapek. Pomogło mapchangecfgfile "server.cfg"
  • +
  • -
  • 0

#11 susel

    Pomocny

  • Użytkownik

Reputacja: 3
Nowy

  • Postów:45
  • Lokalizacja:Pisz
Offline

Napisano 16.10.2013 18:38

 

 

 

I jak pomogło dla tych co sprawdzali ? :D

Ja zastosowałem się do powyższego poradnika oraz sposobu podanego przez cypisa: http://amxx.pl/topic...zycje/?p=575477
Rezultat? OSZAŁAMIAJĄCY! Normalnie mój serwer padał kilkanaście / kilkadziesiąt razy dziennie (nie przesadzam, naprawdę tak było), teraz jest to albo TOTALNE ZERO, albo max jeden crash dziennie od wielkiego święta!
Jak najbardziej potwierdzam skuteczność.

 

Raf w jakim momencie masz crashe? Bo ja na swoim serwerze mam tylko crashe, może raz na 3 dni + tylko przy zmianie mapy (co jest dziwne zresztą xD i pewnie nie jest winą nawet JB Engine Cypisia)

 

No ja też tak można powiedzieć, z raz na 3 dni, a w jakim momencie to nie wiem, widzę tylko w debug.log że był, ale to godziny nocne, koło północy.
Ja kiedyś miałem przy zmianie mapy, lecz uciążliwe bo praktycznie co kilka mapek. Pomogło mapchangecfgfile "server.cfg"

 

Skoro to działa to Bomba :D W sumie to cypis nie ma co pisać 2 silnika tylko zrobić aktualizacje ;d


  • +
  • -
  • 0

b_350_20_385732_224320_33F115_111111.png


#12 .Etc

    Zaawansowany

  • Zbanowany

Reputacja: 32
Życzliwy

  • Postów:96
  • GG:
  • Imię:Mateusz
  • Lokalizacja:Osterdam
Offline

Napisano 17.10.2013 23:46

Mi dużo na crashe pomogło też zmiana na metamod-p i wrzucenie orpheu



#13 .Etc

    Zaawansowany

  • Zbanowany

Reputacja: 32
Życzliwy

  • Postów:96
  • GG:
  • Imię:Mateusz
  • Lokalizacja:Osterdam
Offline

Napisano 18.10.2013 18:33

Nie wiem jak u was ale u mnie nie wyłącza duszka / free po nowej rundzie i w sumie jak patrze na sma to nie ma tego w UsuwanieWydarzen() ?



#14 Droso

    Dawniej HubertTM

  • Autor tematu
  • Support Team

Reputacja: 1 291
Godlike

  • Postów:2 371
  • Steam:steam
  • Imię:Hubert
  • Lokalizacja:Wrocław
Offline

Napisano 19.10.2013 08:15

Zapomniałem..., u siebie mam trochę to inaczej zrobione (zabieram duszka/fd w innym miejscu), już pierwszy post poprawiłem dzięki.

 

Zamień:

for(new i=1; i<=MAX; i++)
	{
		array_graczy[WSZYSCY][i] = 0;
		array_graczy[ZYWI][i] = 0;
		
		user_speed[i] = 0.0;
		pojedynek[i] = false;
		
		bronie_menu[i][0] = false;
		bronie_menu[i][1] = false;
		
	}

na

for(new i=1; i<=MAX; i++)
	{
		array_graczy[WSZYSCY][i] = 0;
		array_graczy[ZYWI][i] = 0;
		
		user_speed[i] = 0.0;
		pojedynek[i] = false;
		
		bronie_menu[i][0] = false;
		bronie_menu[i][1] = false;
		
		if(ustaw_freeday[i])
		{
			ustaw_freeday[i] = false;
			free_day[i] = true;
		}
		else
			free_day[i] = false;
			
		if(ustaw_duszka[i])
		{
			ustaw_duszka[i] = false;
			user_duszek[i] = true;
		}
		else
			user_duszek[i] = false;
	}

  • +
  • -
  • 3

Piszę pluginy pod: AMX MOD X oraz SOURCE MOD!

Na zlecenie i bez zlecenia zresztą też!


#15 .Etc

    Zaawansowany

  • Zbanowany

Reputacja: 32
Życzliwy

  • Postów:96
  • GG:
  • Imię:Mateusz
  • Lokalizacja:Osterdam
Offline

Napisano 19.10.2013 10:09

Ja u siebie już poprawiłem , napisałem to tak dla innych ;P a ma ktoś może rozwiązanie na zawieszanie CS'a po zmianie mapki?  W konsoli serwa pisze że wszyscy mają timeout ale serwer sie nie restartuje, wywaliłem "gong" na początku freedaya i dalej to samo.







Również z jednym lub większą ilością słów kluczowych: jailbreak, cypis, crash, jb

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

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