Admin- & Registrierungssystem

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
  • was soll das heissen



    C:\Users\manuel\Desktop 2\GeT\pawno\include\dini.inc(24) : fatal error 100: cannot read from file: "dutils"


    Compilation aborted.Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase



    1 Error.



    ?????
    ?(

    Mit Freundlichen Grüßen:
    Manu
    ^^

  • Spoiler anzeigen
    stock IsNumeric(const string[])
    {
    for (new i = 0, j = strlen(string); i < j; i++)
    {
    if (string[i] > '9' || string[i] < '0') return 0;
    }
    return 1;
    }

    Spoiler anzeigen
    stock ReturnUser(text[], playerid = INVALID_PLAYER_ID)
    {
    new pos = 0;
    while (text[pos] < 0x21) // Strip out leading spaces
    {
    if (text[pos] == 0) return INVALID_PLAYER_ID; // No passed text
    pos++;
    }
    new userid = INVALID_PLAYER_ID;
    if (IsNumeric(text[pos])) // Check whole passed string
    {
    // If they have a numeric name you have a problem (although names are checked on id failure)
    userid = strval(text[pos]);
    if (userid >=0 && userid < MAX_PLAYERS)
    {
    if(!IsPlayerConnected(userid))
    {
    /*if (playerid != INVALID_PLAYER_ID)
    {
    SendClientMessage(playerid, 0xFF0000AA, "User not connected");
    }*/
    userid = INVALID_PLAYER_ID;
    }
    else
    {
    return userid; // A player was found
    }
    }
    /*else
    {
    if (playerid != INVALID_PLAYER_ID)
    {
    SendClientMessage(playerid, 0xFF0000AA, "Invalid user ID");
    }
    userid = INVALID_PLAYER_ID;
    }
    return userid;*/
    // Removed for fallthrough code
    }
    // They entered [part of] a name or the id search failed (check names just incase)
    new len = strlen(text[pos]);
    new count = 0;
    new utilsname[MAX_PLAYER_NAME];
    for (new i = 0; i < MAX_PLAYERS; i++)
    {
    if (IsPlayerConnected(i))
    {
    GetPlayerName(i, utilsname,sizeof (utilsname));
    if (strcmp(utilsname, text[pos], true, len) == 0) // Check segment of name
    {
    if (len == strlen(utilsname)) // Exact match
    {
    return i; // Return the exact player on an exact match
    // Otherwise if there are two players:
    // Me and MeYou any time you entered Me it would find both
    // And never be able to return just Me's id
    }
    else // Partial match
    {
    count++;
    userid = i;
    }
    }
    }
    }
    if (count != 1)
    {
    if (playerid != INVALID_PLAYER_ID)
    {
    if (count)
    {
    SendClientMessage(playerid, 0xFF0000AA, "Multiple users found, please narrow earch");
    }
    else
    {
    SendClientMessage(playerid, 0xFF0000AA, "No matching user found");
    }
    }
    userid = INVALID_PLAYER_ID;
    }
    return userid; // INVALID_USER_ID for bad return
    }
    stock strtok(const string[], &index)
    {
    new length = strlen(string);
    while ((index < length) && (string[index] <= ' '))
    {
    index++;
    }

    Spoiler anzeigen
    new offset = index;
    new result[20];
    while ((index < length) && (string[index] > ' ') && ((index - offset) < (sizeof(result) - 1)))
    {
    result[index - offset] = string[index];
    index++;
    }
    result[index - offset] = EOS;
    return result;
    }

    hier ist die include :)

  • So hab jetzt alles gemacht und es klappt.
    Wenn ich den Server starte klappt auch das Register/Login-System nur wenn ich in scriptfiles dann Accounts rein gehe und Admin Level auf 5 setze um mir selbst admin zu geben klappt es nicht :/

  • Also, du musst folgendes tun:
    -Order names "Accounts" bei den Scriptfiles.
    -Server starten & drauf gehen.
    -Ganz wichtig -> Disconnecten nicht den Server stoppen. Bei einem Serverstop wird der Account nicht gespeichert.
    -Dann kannst du dir im Ordner Accounts die .ini Datei mit einem normalen Editor öffnen & dein Adminlevel auf 5 setzen.
    Mit Freundlichen Grüßen,
    NoLimit

  • Also bezüglich des Passwortes: Dein Passwort wird mithilfe von MD5 verschlüsselt, sodass, falls der Server mal gehackt werden sollte, man mit den Passwörtern nichts anfangen kann.
    Bezüglich des Adminlevels: Das kann ich ehrlich gesagt nicht verstehen.. was für eine Meldung bekommst du Ingame?

  • Heio also erst einmal sehr übersichtlich gescriptet gefällt mir. Aber! Wenn du denn Registrierungsvorgang abbrichst bekommst du die Meldung: SendClientMessage(playerid,BLAU,"Du hast den Loginvorgang abgebrochen und wurdest deswegen vom Server gekickt."); Zeile:189. Dann wie ein paar schon vor mir sagten wäre dein Clearchat cmd als Schleife besser (Zeilen sparen).




    Habe es jetzt nicht getestet, also weiss ich nicht was die anderen mit dem der Chat geht nicht mehr meinen, aber ich denke mir einmal das wird dein SendMessageToAdmin sein. Einfach mal schaun.




    Ansonsten 7/10 wegen dini und den ganzen SendClientMessage zum chat clearn.




    Noch eine Anregung wäre vielleicht Whirlpool anstatt MD5 zum hashen der Passwörter zunehmen da es 128 Zeichen + NULL erstellt.

  • Hab ein kleines Problem:
    C:\Users\Zensiert\Desktop\samp03e_svr_R2_win32\filterscripts\adminsystem.pwn(99) : error 017: undefined symbol "DIALOG_STYLE_PASSWORD"
    C:\Users\Zensiert\Desktop\samp03e_svr_R2_win32\filterscripts\adminsystem.pwn(103) : error 017: undefined symbol "DIALOG_STYLE_PASSWORD"
    C:\Users\Zensiert\Desktop\samp03e_svr_R2_win32\filterscripts\adminsystem.pwn(144) : error 017: undefined symbol "DIALOG_STYLE_PASSWORD"
    C:\Users\Zensiert\Desktop\samp03e_svr_R2_win32\filterscripts\adminsystem.pwn(167) : error 017: undefined symbol "DIALOG_STYLE_PASSWORD"
    C:\Users\Zensiert\Desktop\samp03e_svr_R2_win32\filterscripts\adminsystem.pwn(1076) : error 017: undefined symbol "DIALOG_STYLE_PASSWORD"
    (weiss nicht wie man es als pwn quelltext schreibt sry)
    Kam nach ein paar gmx hoffe jemand kann mir helfen


    MfG Shenzo

  • Echt Nice.. ;) 10/10


    Eine Frage.. fals ich es auf meinem Testserver kurz verwenden würde darf ich das wegmachen das da steht Scripted von NoLimit da es miten im Bildschirm stört ??


    Aber ansonsten ist es extrem Nice.. Welcher ARank ist der höchste ??

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