[Pomoc] Pada server


Započeo [UG]Cile, Januar 29, 2015, 14:26:50 POSLE PODNE

prethodna tema - sledeća tema

0 članova i 1 gost pregledaju ovu temu.

Skripta koju koristim: Moja skripta
Detaljan opis problema: Pa problem je kod spremanja, ne mogu skontat gdje je greska, crash detrctor izbacuje ovo
13:19:49] [debug] Server crashed while executing noviMod.amx
[13:19:49] [debug] AMX backtrace:
[13:19:49] [debug] #0 native fwrite () from samp03svr
[13:19:49] [debug] #1 005c5b50 in SaveMotor (i=169) at C:\Users\Cile\Desktop\UG\gamemodes\noviMod.pwn:93066
[13:19:49] [debug] #2 005743e8 in public OnDialogResponse (playerid=7, dialogid=133, response=1, listitem=7, inputtext[]=@02e5b124 "Kreiraj motocikl") at C:\Users\Cile\Desktop\UG\gamemodes\noviMod.pwn:85980
[13:19:49] [debug] Native backtrace:


i kada padne server, taj id motora sto gore pokazuje bude 0 byte znaci kao da ga obrise..
Dio skripte: pokazao sam gore povis
Neke slike/video za lakse dobivanje pomoci(neobavezno): /
Poslednja Izmena: Januar 29, 2015, 14:29:42 POSLE PODNE od [UG]Cile



pa provjeri ga jesil lijepo  ga napisao taj dialog
~ Server Pernambucho Roleplay ~
Forum : ~ http://pernambucho.com/ ~
Facebook :~ https://www.facebook.com/events/331686430351597 ~

Owner : JA :D

Pa mislim da jesam
case 7://kreiraj
				{
				 if(MInfo[i][Kreirano] == 0)
				 {
				  MInfo[i][Kreirano] = 1;
				  SCM(playerid,COLOR_GREEN," {B7FF00}[Motor] {FFFFFF}Motor kreiran!");
				  new Float:Poz[4];
	 	          GetPlayerPos(playerid, Poz[0], Poz[1], Poz[2]);
	 	          GetVehicleZAngle(GetPlayerVehicleID(playerid), Poz[3]);
				  MInfo[i][mhPozX] = Poz[0];
				  MInfo[i][mhPozY] = Poz[1];
				  MInfo[i][mhPozZ] = Poz[2];
				  MInfo[i][mhPozA] = Poz[3]+1.5;
				  D_SetPlayerPos(playerid, Poz[0]+2.5, Poz[1], Poz[2]);
                  if(odabraovozM[playerid] == 1)
	 	          {
	 	          MInfo[i][mownedvehicle1] = D_KreirajPokretnu(MInfo[i][mhModel], Poz[0], Poz[1], Poz[2], Poz[3]+1.5, MInfo[i][mhBoja1], MInfo[i][mhBoja2], 3000);
	 	          }
                  if(odabraovozM[playerid] == 2)
	 	          {
	 	          MInfo[i][mownedvehicle2] = D_KreirajPokretnu(MInfo[i][mhModel], Poz[0], Poz[1], Poz[2], Poz[3]+1.5, MInfo[i][mhBoja1], MInfo[i][mhBoja2], 3000);
	 	          }
                  if(odabraovozM[playerid] == 3)
	 	          {
	 	          MInfo[i][mownedvehicle3] = D_KreirajPokretnu(MInfo[i][mhModel], Poz[0], Poz[1], Poz[2], Poz[3]+1.5, MInfo[i][mhBoja1], MInfo[i][mhBoja2], 3000);
	 	          }
				  SaveMotor(i);
				 }
				 else
				 {
				   SCM(playerid,COLOR_GREEN," {B7FF00}[Motor Info] {C3C3C3}Vec si kupio motor i stvorio ga, ne mozes opet!");
				   return 1;
				 }
				}



daj funkciju SaveMotor u njoj ti je problem.
Poslednja Izmena: Januar 29, 2015, 16:44:52 POSLE PODNE od Sioux

Evo:
SaveMotor(i)
{
		new string3[256];
		new coordsstring[400];
		format(string3, sizeof(string3), "iMotor/%d.ini", i);
		new File: hFile = fopen(string3, io_write);
		if (hFile)
		{
        format(coordsstring, sizeof(coordsstring), "%d,%f,%f,%f,%f,%d,%d,%s,%d,%d,%d,%d,%d,%.1f,%s,%d\n",
        MInfo[i][mhModel],
        MInfo[i][mhPozX],
        MInfo[i][mhPozY],
        MInfo[i][mhPozZ],
        MInfo[i][mhPozA],
        MInfo[i][mhBoja1],
        MInfo[i][mhBoja2],
        MInfo[i][mhVlasnik],
        MInfo[i][mhCena],
        MInfo[i][mhImaVlasnika],
        MInfo[i][mhProdat],
        MInfo[i][mhZakljucan],
		MInfo[i][Kreirano],
		MInfo[i][mhGorivo],
		MInfo[i][Tablica1],
		MInfo[i][Tablica1T]);
		hFile = fopen(string3, io_write);
		fwrite(hFile, coordsstring);
		fclose(hFile);
		}
        return 1;
}



SaveMotor(i)
{
		new string3[256];
		new coordsstring[400];
		format(string3, sizeof(string3), "iMotor/%d.ini", i);
		new File: hFile = fopen(string3, io_write);
		if (hFile)
		{
	        format(coordsstring, sizeof(coordsstring), "%d,%f,%f,%f,%f,%d,%d,%s,%d,%d,%d,%d,%d,%.1f,%s,%d\n",
	        MInfo[i][mhModel],
	        MInfo[i][mhPozX],
	        MInfo[i][mhPozY],
	        MInfo[i][mhPozZ],
	        MInfo[i][mhPozA],
	        MInfo[i][mhBoja1],
	        MInfo[i][mhBoja2],
	        MInfo[i][mhVlasnik],
	        MInfo[i][mhCena],
	        MInfo[i][mhImaVlasnika],
	        MInfo[i][mhProdat],
	        MInfo[i][mhZakljucan],
			MInfo[i][Kreirano],
			MInfo[i][mhGorivo],
			MInfo[i][Tablica1],
			MInfo[i][Tablica1T]);
			fwrite(hFile, coordsstring);
			fclose(hFile);
		}
        return 1;
}


Pokusaj sa ovim...

Nema nikakve greske, javit cu se ako mi server opet padne zbog iste greske..



Mislim da je greska bila u ovome:
hFile = fopen(string3, io_write);

Treba koristiti:
File:hFile = fopen(string3, io_write);

Ali sam ja samo obrisao jer je vec gore na pocetku fajl otvoren.

Vidit cu ovo mi se desavalo svakih 5-6 sati da padne, i to nadje neki id motora i obori se server ne znam ni sam, pa cu provjerit hocel vise padat isto na spremanju..

Ugl hvala puno na pomoci



Citat: [UG]Cile poslato Januar 29, 2015, 17:32:06 POSLE PODNE
Vidit cu ovo mi se desavalo svakih 5-6 sati da padne, i to nadje neki id motora i obori se server ne znam ni sam, pa cu provjerit hocel vise padat isto na spremanju..

Ugl hvala puno na pomoci

Odradi nesto sto poziva funkciju Spremi(vozilo, motor sta je vec) i vidi  jel ti izbacuje u crash detect.
Ako ti ne bude izbacilo nikakav crash a kasnije ti crashalo, napravi neki debug da vidis koje su ti te varijable koje se pokusavaju spremiti...

Najbolje bi bilo da pozoves taj dialog koji ti je gore izbacen u crash detectu..