Server nimmt Gamemode nicht an!

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
  • Heyho leute...
    Habe bei meinem Server nen Unknown Gamemode bekommen, absolut keine Ahnung wieso!
    Eine ältere Version desselben Scripts funktioniert, jedoch nicht die aktuelle...
    Natürlich könnt ich die änderungen einfach nochmal schritt für schritt beim alten einfügen, aber da es wirklich VIELE änderungen sind, würd ich lieber so nach einer lösung suchen...
    btw, ist ein Reallife Roleplay Script (Ein editiertes Godfather von GnE)


    Zu den änderungen Zählen ein neuer Teleport aufs Fahrschul-Dach (CreatePickup etc.) sowie neue Cars für die Fraktionen, einige Text-Änderungen... Könnte es daran liegen? Ne oder?
    Und Filterscripts hab ich auch keine, zumindest braucht das script keine. Plugins etc. sind gleich wie beim letzten Start, und da ging alles...


    Hier mal der server.log

    Code
    SA-MP Dedicated Server----------------------v0.3e, (C)2005-2012 SA-MP Team[08:43:52][08:43:52] Server Plugins[08:43:52] --------------[08:43:52]  Loading plugin: streamer.so[08:43:52] *** Streamer Plugin v2.5.2 by Incognito loaded ***[08:43:52]   Loaded.[08:43:52]  Loading plugin: sscanf.so[08:43:52] [08:43:52]  ===============================[08:43:52]       sscanf plugin loaded.     [08:43:52]    (c) 2009 Alex "Y_Less" Cole[08:43:52]  ===============================[08:43:52]   Loaded.[08:43:52]  Loading plugin: audio.so[08:43:52] *** Audio Plugin v0.4 by Incognito loaded ***[08:43:52]   Loaded.[08:43:52]  Loaded 3 plugins.[08:43:52] [08:43:52] Ban list[08:43:52] --------[08:43:52]  Loaded: samp.ban[08:43:52][08:43:52][08:43:52] Filterscripts[08:43:52] ---------------[08:43:52]   Loaded 0 filterscripts.[08:43:52]   '0' Fraktionsfahrzeuge wurden geladen & erstellt.[08:43:52] _______________________________________[08:43:52] Das Script wurde Vollständig geladen![08:43:52] NeoGaming German Reallife[08:43:52] _______________________________________[08:43:52][08:43:52] Number of vehicle models: 14


    server.cfg
    echo Executing Server Config...lanmode 0rcon_password changememaxplayers 50port 7000hostname NeoGaming German Reallifegamemode0 NeoGamingRL 1filterscriptsplugins streamer.so sscanf.so audio.soannounce 1query 1weburl www.NeoGaming.demaxnpc 0onfoot_rate 40incar_rate 40weapon_rate 40stream_distance 300.0stream_rate 1000logtimeformat [%H:%M:%S]

    -> Wobei ich anmerken muss, das ich bei den vorigen Starts immer die Filterscripts FGPS und FractionCars verwendet habe, aber (!) egal ob sie dabei sind oder nicht, alles bleibt gleich auf dem server...


    Hier noch ein paar vielleicht wichtige Zeilen aus dem gamemode

    GamemodeText
    format(string, sizeof(string), "NG Reallife %s", VERSION);SetGameModeText(string);//

    Gamemode init/exit
    Function GameModeInitExitFunc(){ new string[128]; format(string, sizeof(string), "Beenden..."); for(new i = 0; i < MAX_PLAYERS; i++) { if(IsPlayerConnected(i)) { DisablePlayerCheckpoint(i); gPlayerCheckpointStatus[i] = CHECKPOINT_NONE; GameTextForPlayer(i, string, 4000, 5); SetPlayerCameraPos(i,1004.4079,-1134.7224,27.3548); SetPlayerCameraLookAt(i,1004.9364,-1136.0869,27.3548); PlayerUpdate(i); gPlayerLogged[i] = 0; } } SetTimer("GameModeExitFunc", 4000, 0); return 1;}
    Function GameModeExitFunc(){ STOP_FRAC(); KillTimer(synctimer); KillTimer(newmistimer); KillTimer(unjailtimer); KillTimer(othtimer); KillTimer(cartimer); KillTimer(checkgastimer); KillTimer(idletimer); KillTimer(pickuptimer); KillTimer(productiontimer); KillTimer(stoppedvehtimer); GameModeExit();}


    PS: Fragt mich nicht wieso.... aber es lässt sich grad iwie nicht ordnen...
    Hab im Anhang nochmal alle in ne .pwn gesteckt

    Mit freundlichen Grüßen,
    Neo

    Einmal editiert, zuletzt von Neo_Johnson ()

  • das liegt an sscanf mach an besten das plugin weg und verwende es so in dein script ;)



    stock sscanf(string[], format[], {Float,_}:...)
    {
    #if defined isnull
    if (isnull(string))
    #else
    if (string[0] == 0 || (string[0] == 1 && string[1] == 0))
    #endif
    {
    return format[0];
    }
    #pragma tabsize 4
    new
    formatPos = 0,
    stringPos = 0,
    paramPos = 2,
    paramCount = numargs(),
    delim = ' ';
    while (string[stringPos] && string[stringPos] <= ' ')
    {
    stringPos++;
    }
    while (paramPos < paramCount && string[stringPos])
    {
    switch (format[formatPos++])
    {
    case '\0':
    {
    return 0;
    }
    case 'i', 'd':
    {
    new
    neg = 1,
    num = 0,
    ch = string[stringPos];
    if (ch == '-')
    {
    neg = -1;
    ch = string[++stringPos];
    }
    do
    {
    stringPos++;
    if ('0' <= ch <= '9')
    {
    num = (num * 10) + (ch - '0');
    }
    else
    {
    return -1;
    }
    }
    while ((ch = string[stringPos]) > ' ' && ch != delim);
    setarg(paramPos, 0, num * neg);
    }
    case 'h', 'x':
    {
    new
    num = 0,
    ch = string[stringPos];
    do
    {
    stringPos++;
    switch (ch)
    {
    case 'x', 'X':
    {
    num = 0;
    continue;
    }
    case '0' .. '9':
    {
    num = (num << 4) | (ch - '0');
    }
    case 'a' .. 'f':
    {
    num = (num << 4) | (ch - ('a' - 10));
    }
    case 'A' .. 'F':
    {
    num = (num << 4) | (ch - ('A' - 10));
    }
    default:
    {
    return -1;
    }
    }
    }
    while ((ch = string[stringPos]) > ' ' && ch != delim);
    setarg(paramPos, 0, num);
    }
    case 'c':
    {
    setarg(paramPos, 0, string[stringPos++]);
    }
    case 'f':
    {


    new changestr[16], changepos = 0, strpos = stringPos;
    while(changepos < 16 && string[strpos] && string[strpos] != delim)
    {
    changestr[changepos++] = string[strpos++];
    }
    changestr[changepos] = '\0';
    setarg(paramPos,0,_:floatstr(changestr));
    }
    case 'p':
    {
    delim = format[formatPos++];
    continue;
    }
    case '\'':
    {
    new
    end = formatPos - 1,
    ch;
    while ((ch = format[++end]) && ch != '\'') {}
    if (!ch)
    {
    return -1;
    }
    format[end] = '\0';
    if ((ch = strfind(string, format[formatPos], false, stringPos)) == -1)
    {
    if (format[end + 1])
    {
    return -1;
    }
    return 0;
    }
    format[end] = '\'';
    stringPos = ch + (end - formatPos);
    formatPos = end + 1;
    }
    case 'u':
    {
    new
    end = stringPos - 1,
    id = 0,
    bool:num = true,
    ch;
    while ((ch = string[++end]) && ch != delim)
    {
    if (num)
    {
    if ('0' <= ch <= '9')
    {
    id = (id * 10) + (ch - '0');
    }
    else
    {
    num = false;
    }
    }
    }
    if (num && IsPlayerConnected(id))
    {
    setarg(paramPos, 0, id);
    }
    else
    {
    #if !defined foreach
    #define foreach(%1,%2) for (new %2 = 0; %2 < MAX_PLAYERS; %2++) if (IsPlayerConnected(%2))
    #define __SSCANF_FOREACH__
    #endif
    string[end] = '\0';
    num = false;
    new
    name[MAX_PLAYER_NAME];
    id = end - stringPos;
    foreach (Player, playerid)
    {
    GetPlayerName(playerid, name, sizeof (name));
    if (!strcmp(name, string[stringPos], true, id))
    {
    setarg(paramPos, 0, playerid);
    num = true;
    break;
    }
    }
    if (!num)
    {
    setarg(paramPos, 0, INVALID_PLAYER_ID);
    }
    string[end] = ch;
    #if defined __SSCANF_FOREACH__
    #undef foreach
    #undef __SSCANF_FOREACH__
    #endif
    }
    stringPos = end;
    }
    case 's', 'z':
    {
    new
    i = 0,
    ch;
    if (format[formatPos])
    {
    while ((ch = string[stringPos++]) && ch != delim)
    {
    setarg(paramPos, i++, ch);
    }
    if (!i)
    {
    return -1;
    }
    }
    else
    {
    while ((ch = string[stringPos++]))
    {
    setarg(paramPos, i++, ch);
    }
    }
    stringPos--;
    setarg(paramPos, i, '\0');
    }
    default:
    {
    continue;
    }
    }
    while (string[stringPos] && string[stringPos] != delim && string[stringPos] > ' ')
    {
    stringPos++;
    }
    while (string[stringPos] && (string[stringPos] == delim || string[stringPos] <= ' '))
    {
    stringPos++;
    }
    paramPos++;
    }
    do
    {
    if ((delim = format[formatPos++]) > ' ')
    {
    if (delim == '\'')
    {
    while ((delim = format[formatPos++]) && delim != '\'') {}
    }
    else if (delim != 'z')
    {
    return delim;
    }
    }
    }
    while (delim > ' ');
    return 0;
    }

  • nein pack es einfach irgendwo rein an besten da wo auch die anderen stock sind und dann f5 fertig plugin austragen und spaß haben ;)

  • mach mal die kack sicheit runter das dauert mir zu lang