Nach dem Einloggen sofort Kick

Wichtiger Hinweis: Bitte ändert nicht manuell die Schriftfarbe auf schwarz sondern belasst es bei der Standardeinstellung. Somit tragt ihr dazu bei dass euer Text auch bei Verwendung unseren dunklen Forenstils noch lesbar ist!

Tipp: Ihr wollt längere Codeausschnitte oder Logfiles bereitstellen? Benutzt unseren eigenen PasteBin-Dienst Link
  • Hallo Communty,


    Ich habe in meinem Selfmade ein kleines Problem.
    Direkt Nach dem Login/der Registration closed der Server die Connection...


    Hier mein OnPlayerConnect:



    public OnPlayerConnect(playerid)
    {


    //Join Message
    new dsc[128];
    format(dsc, sizeof dsc, "<< %s hat den Server Betreten. >>", Spielername(playerid));
    SendClientMessageToAll(0xFFFFFFFF,dsc);
    player[playerid][k_zeit] = -1;
    TalkingLive[playerid] = 255;
    MultipleEnter[playerid] = -1;
    CheckPointing[playerid] = 1;
    CheckPointShown[playerid] = 0;
    gSpeedo[playerid] = 0;
    donate[playerid][dinput] = 0;
    donate[playerid][dcode] = 0;
    donate[playerid][dtyp] = 0;
    TextDrawShowForPlayer(playerid, Time);
    TextDrawShowForPlayer(playerid, Date);
    Spectating[playerid][0]=-1;
    #if defined CARSELL
    bietetAn[playerid]={-1,0};
    bietetAnWen[playerid]={-1};
    #endif
    Freeze(playerid);
    if(mysql_CheckAccount(playerid) == 1)
    {
    ShowPlayerDialog(playerid,DIAG_LOGIN,3,"Login",LOGIN_TEXT,"Login","Abbrechen");
    }
    else
    {
    ShowPlayerDialog(playerid,DIAG_REG,3,"Registrieren",REG_TEXT,"Registrieren","Abbrechen");
    }
    return 1;
    }


    ich hoffe das mir da jemand helfen kann.


    Greetz,
    Mythen

  • kann es sein das eine deiner variabelen anderswo zum kicken benutzt wird villeicht auch versehentlich


    oder haste beim einloggen wenn man auf abbrechen klickt dass man denn gekickt wird und denn abbrechen und login vertauscht das hatte ich mal

  • in meinem Script exestiert zurzeit überhaupt keine Kick Funktion^^

    • Du meintest, dass der Server die Connection closed, also abstürtzt - schonmal die server-log gecheckt?
    • Du sagtest, dass nach dem Login bzw. der Registration der Server abstürtzt, demnach ist der obrige Ausschnitt nicht korrekt/hilfreich.
  • Also erstmal paar Sachen:


    • Der oben stehende Code ist nicht hilfreich, da du wenn schon nur die Dialogs posten müsstest (ist aber nicht notwendig)
    • Ehm, bist du sicher, dass der gesamte Server abschmiert, es kann gut sein, dass du gekickt wirst, nämlich dann, wenn du SpawnPlayer verwendest...
      Es ist allerdings notwendig, dass du auch SetSpawnInfo verwendest... Ohne diesen Code wirst du sonst beim "spawnen" gekickt ;)


    mfg. :thumbup:

    ast2ufdyxkb1.png


    Leute, lernt scripten und versucht mal lieber etwas selber zu schreiben, als es aus einem GF zu kopieren. :S

  • Die Dialoge:

    case DIAG_LOGIN:
    {
    if(!strlen(inputtext))
    {
    ShowPlayerDialog(playerid,DIAG_LOGIN,1,"Login",LOGIN_TEXT,"Login","Abbrechen");
    return SendClientMessage(playerid,ROT,"Kein Passwort angegeben...");
    }
    if(!strcmp(MD5_Hash(inputtext), mysql_ReturnPasswort(Spielername(playerid)), true))
    {
    LoadPlayer(playerid);
    for(new i = 0; i < Max_Player_Cars; i++)
    {
    Carlist[playerid][i][Typ]=-1; Carlist[playerid][i][Xx]=0.0; Carlist[playerid][i][Yy]=0.0; Carlist[playerid][i][Zz]=0.0;
    Carlist[playerid][i][Rotation]=0.0; Carlist[playerid][i][Status]=0; Carlist[playerid][i][Lock]=0; Carlist[playerid][i][Carid]=-1;
    Carlist[playerid][i][Farbe1]=-1; Carlist[playerid][i][Farbe2]=-1; Carlist[playerid][i][mod1]=-1; Carlist[playerid][i][mod2]=-1;
    Carlist[playerid][i][mod3]=-1; Carlist[playerid][i][mod4]=-1; Carlist[playerid][i][mod5]=-1; Carlist[playerid][i][mod6]=-1;
    Carlist[playerid][i][mod7]=-1; Carlist[playerid][i][mod8]=-1; Carlist[playerid][i][mod9]=-1; Carlist[playerid][i][mod10]=-1;
    Carlist[playerid][i][mod11]=-1; Carlist[playerid][i][mod12]=-1; Carlist[playerid][i][mod13]=-1; Carlist[playerid][i][mod14]=-1;
    Carlist[playerid][i][mod15]=-1; Carlist[playerid][i][mod16]=-1; Carlist[playerid][i][mod17]=-1; Carlist[playerid][i][Paintjob]=-1;
    LoadPlayerCar(playerid);
    if(Carlist[playerid][i][Typ]!=-1 && Carlist[playerid][i][Status]==1)
    {
    Carlist[playerid][i][Carid]=CreateTunedCar(playerid, i);
    }
    SetTimerEx("playercarzu",1000,1,"i",playerid);
    SetTimerEx("DelaySetVehicleParams",10000,0,"i",playerid);
    }
    player[playerid][eingeloggt] = 1;
    SendClientMessage(playerid,GRUEN,"Du wurdest erfolgreich eingeloggt.");
    }
    else
    {
    ShowPlayerDialog(playerid,DIAG_LOGIN,1,"Login",LOGIN_TEXT,"Login","Abbrechen");
    SendClientMessage(playerid,ROT,"Das Passwort war Falsch!");
    }
    }
    case DIAG_REG:
    {
    if(!strlen(inputtext) || strlen(inputtext) < 6)
    {
    ShowPlayerDialog(playerid,DIAG_REG,3,"Registrieren",REG_TEXT,"Registrieren","Abbrechen");
    return SendClientMessage(playerid,ROT,"Das Passwort ist zu kurz!");
    }
    CreateAccount(playerid, inputtext);
    player[playerid][fahr_lizenz] = 1;
    SetPlayerScore(playerid, 1);
    player[playerid][level] = 1;
    player[playerid][hauskey] = 255;
    player[playerid][eingeloggt] = 1;
    SendClientMessage(playerid,GRUEN,"Dein Account wurd angelegt und du wurdest Automatisch eingeloggt.");
    SendClientMessage(playerid,GRUEN,"Bitte fahre nun zu dem Angegebenen Checkpoint!");
    SetPlayerCheckpoint(playerid, -2198.1755,-2264.0996,30.6250, 5.0);
    }


    SpawnPlayer wird im Script nur hier benutzt.

    public Spawn(playerid)
    {
    SpawnPlayer(playerid);
    return 1;
    }
    public OnPlayerRequestClass(playerid, classid)
    {
    SetTimerEx("Spawn",50,0,"i",playerid);
    return 1;
    }


    Und ich habe nie gesagt das der Server aus geht......
    Sondern lediglich die Connection closed.

  • Schreibe deinen Spawn Callback so:


    public Spawn(playerid)
    {
    SetSpawnInfo(playerid, 0, 0, 0.00, 0.00, 0.00, 0.00, 0, 0, 0, 0, 0, 0 );
    SpawnPlayer(playerid);
    return 1;
    }


    mfg. :thumbup:


    PS: Das habe ich in meinem Beitrag vorher eigentlich doch schon erwähnt :whistling:

    ast2ufdyxkb1.png


    Leute, lernt scripten und versucht mal lieber etwas selber zu schreiben, als es aus einem GF zu kopieren. :S


  • Danke ;)
    Hat geholfen.

  • do.de - Domain-Offensive - Domains für alle und zu super Preisen