Zaključano

[Pomoc] Padanje servera, greške u ondialogresponse

pre 11 godina
367
pregleda
7
postova
Ova tema je zaključana. Samo moderatori i administratori mogu odgovarati.
Jovic016
Street Runner
pre 11 godina
Skripta koju koristim: NL
Detaljan opis problema: Dešava se da server često pada, skinuo sam crashdetect plugin, ubacio ga, compile sa -d3 parametrom i dobio sam gde je greška u server log fajlu. Ne znam kako bih to ispravio, tačnije i ne primećujem grešku nigde, iako kaže da je na toj liniji
Dio skripte: Ispod
Neke slike/video za lakse dobivanje pomoci(neobavezno):

Znači ovako, evo greški iz loga
[15:42:30] Server crashed while executing NLRP.amx
[15:42:30] AMX backtrace:
[15:42:30] #0 native format () from samp03svr
[15:42:30] #1 00289164 in SCMF (playerid=0, color=-86, fstring[]=@0x02fe3024 "Dobrodosli na Detroit City Rol...", ... <2 arguments>) at C:\Users\Nikola\Desktop\Detroit City RP - v2.0J\gamemodes\NLRP.pwn:30378
[15:42:30] #2 003b80e4 in public OnDialogResponse (playerid=0, dialogid=318, response=1, listitem=-1, inputtext[]=@0x03076740 "šifra") at C:\Users\Nikola\Desktop\Detroit City RP - v2.0J\gamemodes\NLRP.pwn:56348
[15:42:30] Native backtrace:
[15:42:30] #0 f738d936 in _ZN10StackTraceC2EPv () from plugins/crashdetect.so
[15:42:30] #1 f7388f33 in _ZN11CrashDetect20PrintNativeBacktraceERSoPv () from plugins/crashdetect.so
[15:42:30] #2 f7389a62 in _ZN11CrashDetect20PrintNativeBacktraceEPv () from plugins/crashdetect.so
[15:42:30] #3 f7389f63 in _ZN11CrashDetect11OnExceptionEPv () from plugins/crashdetect.so
[15:42:30] #4 f738d63d in ?? () from plugins/crashdetect.so
[15:42:30] #5 f7705410 in ?? ()
[15:42:30] #6 080a3357 in ?? () from ./samp03svr
[15:42:30] #7 080d3899 in ?? () from ./samp03svr
[15:42:30] #8 080d9b40 in ?? () from ./samp03svr
[15:42:30] #9 08093f54 in ?? () from ./samp03svr
[15:42:30] #10 f73869f1 in _ZN11CrashDetect13DoAmxCallbackEiPiS0_ () from plugins/crashdetect.so


Dialog id 318 je dialog za login, a ovo što piše "šifra" je šifra od acca sa servera koju sam sklonio.
Linija 30378 je deo SCMF stocka, dok je linja 56348 u ondialogresponse baš deo u kome piše ovo "Dobrodosli na Detroit City Rol..." iz koda
Evo linija tih kodova ako neko ume prepoznati greÅ¡ku poÅ¡to meni stvarno nije jasno, a server konstantno pada ☹️
stock SCMF(playerid,color,fstring[],{Float, _}:...)
{
  new n=(numargs()-3)*4;
  if(n)
  {
      new message,arg_start,arg_end;
      #emit CONST.alt                fstring
      #emit LCTRL                    5
      #emit ADD
      #emit STOR.S.pri              arg_start
      #emit LOAD.S.alt              n
      #emit ADD
      #emit STOR.S.pri              arg_end
      do
  {
        #emit LOAD.I
        #emit PUSH.pri
        arg_end-=4;
        #emit LOAD.S.pri          arg_end
      }
      while(arg_end>arg_start);
      #emit PUSH.S                  fstring
      #emit PUSH.C                  255
      #emit PUSH.ADR                message
      n+=4*3;
      #emit PUSH.S                  n
      #emit SYSREQ.C                format
30378. n+=4;
      #emit LCTRL                    4
      #emit LOAD.S.alt              n
      #emit ADD
      #emit SCTRL                    4
      return SCM(playerid,color,message);
  }
  else return SCM(playerid,color,fstring);
}

SCMF(playerid,BELA,"Dobrodosli na Detroit City RolePlay. | Sada je %d sati i %d minuta.", hour, minuite);


Takođe u kodu se pominje šifra (inputtext) evo i tog dela
if(dialogid == DIALOG_LOGIN)
{
if(!response) { Kicksaporukom(playerid); return 1; }
if(response)
{
  KillTimer(poslije);
if(strlen(inputtext))
{
if(!strcmp(inputtext, PlayerInfo, false))
{
IgracLogovan = 1;
///// KREIRANJE OWNERSHIPA
KreirajSkuter(playerid);
  KreirajBiciklo(playerid);
  KreirajVozilonovo(playerid)
  KreirajLetjelicu(playerid);
  KreirajDrugovozilo(playerid);
  ...
James_SmithXDl
OG Legend
pre 11 godina
Ja mislim da nije problem u ovome sto si nam dao.
Jovic016
Street Runner
pre 11 godina
Stvarno mi nije jasno, to su te linije koje ispisuje log, i dok je upaljen crashdetect, svaki put kad se neko loguje i kad upiše šifru padne server..
James_SmithXDl
OG Legend
pre 11 godina
Брат Јоле wrote on June 14, 2014, 2:10 pm:
Stvarno mi nije jasno, to su te linije koje ispisuje log, i dok je upaljen crashdetect, svaki put kad se neko loguje i kad upiše šifru padne server..

daj mi citav response za kucanje sifre.
Jovic016
Street Runner
pre 11 godina
Eo 😄
if(response)
{
  KillTimer(poslije);
if(strlen(inputtext))
{
if(!strcmp(inputtext, PlayerInfo, false))
{
IgracLogovan = 1;
///// KREIRANJE OWNERSHIPA
KreirajSkuter(playerid);
  KreirajBiciklo(playerid);
  KreirajVozilonovo(playerid)
  KreirajLetjelicu(playerid);
  KreirajDrugovozilo(playerid);
  //////
new stringnj;
new year, month,day;
getdate(year, month, day);
new hour,minuite;
gettime(hour,minuite);
FixHour(hour);
hour = shifthour;
new pip;
    GetPlayerIp(playerid, pip, sizeof(pip));
format(stringnj, sizeof(stringnj), "%d.%d.%d | %d:%d | %s se konektovao na server | IP: %s\n",day,month,year,hour,minuite,GetPlayerNameEx(playerid),pip);
logovanjelog(stringnj);
ClearChatbox(playerid, 8);
GetPlayerName(playerid,sendername,sizeof(sendername));
ClearAnimations(playerid);
GivePlayerMoney (playerid,PlayerInfo);
SpawnPlayer(playerid);
imeigraca(playerid,sendername);
new asfgasg;
new playersip;
GetPlayerIp(playerid,playersip,sizeof(playersip));
format(asfgasg,sizeof(asfgasg),"%s",playersip);
strmid(PlayerInfo, asfgasg, 0, strlen(asfgasg), 255);
new stringv;
new stringa;

format(stringv, sizeof(stringv), "/Korisnici/Aktivnost/%s.ini", sendername);
if(!fexist(stringv))
{
dini_Create(stringv);
}
format(stringa,sizeof(stringa),"%d.%d.%d, %d:%d",day,month,year,hour,minuite);
dini_Set(stringv,"Login", stringa);
strmid(PlayerInfo, stringa, 0, strlen(stringa), 255);
foreach(Player, i)
{
if (PlayerInfo == 1)
{
  new abc;
  format(abc, sizeof(abc),"{FFFF00} Adm| {00C0FF}Igrac {FFFFFF}%s(%d) {00C0FF}se konektovao na server!",sendername,playerid);
SCM(i,WHITE,abc);
}
}
SCMF(playerid,BELA,"Dobrodosli na Detroit City RolePlay. | Sada je %d sati i %d minuta.", hour, minuite);
SCMF(playerid,BELA,"Vas nivo je %d i proveli ste %d sati igre na serveru",PlayerInfo,PlayerInfo);
SetPlayerColor(playerid,0xFFFFFFFF);
if (PlayerInfo > 0)
{
SCMF(playerid,BELA,"{FFFF00}Logovan si kao Administrator %d", PlayerInfo);
}
if (PlayerInfo > 0)
{
SCMF(playerid,BELA,"{FFFF00}Logovan si kao GameXpert {FFFF00}%d", PlayerInfo);
}
if(PlayerInfo != 0)
{
PlayerInfo = PlayerInfo;
}
if(PlayerInfo == 5)
{
PlayerInfo = PlayerInfo;
}

if(PlayerInfo == 1)
{
PlayerInfo = 1;
PlayerInfo = 20*60;
PlayerInfo = 0;
SCM(playerid,WHITE,": {FFFF00}Prebaceni ste u zatvor na 20 minuta!");
SCM(playerid,WHITE,": {FFFF00}Otisli ste sa servera tazovani, sa potjerom, zavezani ili niste platili kaznu!");
}
}
else
{
new loginname;
new mesage2;
new mesage3;
GetPlayerName(playerid,loginname,sizeof(loginname));
format(mesage2, sizeof(mesage2),  "{FFFF00}Pogrijesili ste lozinku korisnika {EA0C0C}%s",loginname);
format(mesage3, sizeof(mesage3),  "\n{FFFF00} Imate %d pokusaja za logiranje!",gPlayerLogTries);
format(loginname, 840," %s%s",mesage2,mesage3);
ShowPlayerDialog(playerid, DIALOG_LOGIN,DIALOG_STYLE_PASSWORD, "{EA0C0C}Pogresna sifra!!!", loginname, "Prijava", "Izadji");
new abc;
format(abc, sizeof(abc),"{FFFF00} Adm| {00C0FF}Igrac {FFFFFF}%s(%d) {00C0FF}je pogrijesio sifru pri logovanju na server!",loginname,playerid);
ABroadCast(COLOR_LIGHTRED,abc,1);
gPlayerLogTries--;
if(gPlayerLogTries == 0)
{
Kicksaporukom(playerid);
}
}
}


Pošto izbacuje error i kod ovog SCMFa, možda mi SCMF stock nije pravilno napisan?
James_SmithXDl
OG Legend
pre 11 godina
scfm je uredu.

covjece stvarno lose kodiras uradi ispocetka logovanje tu mu samo proveri tacnost sifre i onda kad proveris pokrenes mu timer i citas vlasnistva a ne ovako.
Jovic016
Street Runner
pre 11 godina
Nisam ja to kodirao, kao što rekoh gore mod je NL, mogu da napravim tajmer tu i da prebacim sve ovo ostalo u njega, al ne verujem da će to rešiti stvar, evo sad ću probati

ÄŒim sam ugasio deo koda
SCMF(playerid,BELA,"Dobrodosli na Detroit City RolePlay. | Sada je %d sati i %d minuta.", hour, minuite);
SCMF(playerid,BELA,"Vas nivo je %d i proveli ste %d sati igre na serveru",PlayerInfo,PlayerInfo);

sve radi kako treba.. btw tajmer nije rešio prob

Može lock

Morate biti prijavljeni da biste odgovorili na ovu temu.

Prijava