Balkan SA:MP

PAWN skriptanje, gamemodovi, filterskripte, include fajlovi, mape, pluginovi => Razgovor u vezi PAWN - skriptanja => Temu započeo: [UG]Cile poslato Januar 29, 2015, 14:26:50 POSLE PODNE

Naslov: [Pomoc] Pada server
Poruka od: [UG]Cile poslato Januar 29, 2015, 14:26:50 POSLE PODNE
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): /
Naslov: Odg: [Pomoc] Pada server
Poruka od: arnel avdic poslato Januar 29, 2015, 14:33:58 POSLE PODNE
pa provjeri ga jesil lijepo  ga napisao taj dialog
Naslov: Odg: [Pomoc] Pada server
Poruka od: [UG]Cile poslato Januar 29, 2015, 14:41:18 POSLE PODNE
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;
}
}
Naslov: Odg: [Pomoc] Pada server
Poruka od: GreenG poslato Januar 29, 2015, 16:44:00 POSLE PODNE
daj funkciju SaveMotor u njoj ti je problem.
Naslov: Odg: [Pomoc] Pada server
Poruka od: [UG]Cile poslato Januar 29, 2015, 16:57:07 POSLE PODNE
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;
}
Naslov: Odg: [Pomoc] Pada server
Poruka od: GreenG poslato Januar 29, 2015, 17:04:44 POSLE PODNE
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...
Naslov: Odg: [Pomoc] Pada server
Poruka od: [UG]Cile poslato Januar 29, 2015, 17:20:47 POSLE PODNE
Nema nikakve greske, javit cu se ako mi server opet padne zbog iste greske..
Naslov: Odg: [Pomoc] Pada server
Poruka od: GreenG poslato Januar 29, 2015, 17:24:13 POSLE PODNE
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.
Naslov: Odg: [Pomoc] Pada server
Poruka od: [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
Naslov: Odg: [Pomoc] Pada server
Poruka od: GreenG poslato Januar 29, 2015, 17:37:03 POSLE PODNE
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..