Hast du auch die richtige Version als Plugin auf dem Server?
Gegebenenfalls Plugin nochmal neu Runterladen, includes ersetzten, neu Kompilern und dann nochmal versuchen.
Beiträge von wepper
-
-
Unter OnGamemodeInit,
such mal nach CreateVehicle, AddStaticVehicle und AddStaticVehicleEx.
Dann musst du nur noch schauen, welcher Code die Fahrzeuge in der Groove erstellt -
-
-
Überall, wo die Ungültige Killerid ungeprüft verwendet wird, z.B. Zeile 42, 59,85 ...
-
Lad dir mal das Crashdetect - Plugin runter und lass es als erstes Plugin laden.
Starte dann den Server neu, nun sollte es im Log einen genaueren Fehler geben.Zu deiner 2.ten Frage:
-
-
Zeig uns mal den Code, mit dem du dem Spieler das Geld abziehst, wenn er z.B. etwas kauft.
-
public OnPlayerDeath(playerid, killerid, reason){ //Beispielcode if(killerid != INVALID_PLAYER_ID) { PlayerInfo[killerid][pKills]++; GivePlayerMoney(killerid, 10); PlayerInfo[killerid][pMoney] += 10; if(PlayerInfo[killerid][pKills] > 3) { PlayerInfo[killerid][pLevel] = 1; } } PlayerInfo[playerid][pDeaths]++; return 1;}
Hier soll dem Toten 10$ abgezogen werden und dem Mörder 10$ gutgeschrieben werden. Funktioniert wird aber nicht gespeichert in der Datenbank
Du gibst in dem Fall aber nur dem Killer 10$, dem Totem wird aber nichts abgezogen.
Machs mal so:Code
Alles anzeigenpublic OnPlayerDeath(playerid, killerid, reason) { //Beispielcode if(killerid != INVALID_PLAYER_ID) { PlayerInfo[killerid][pKills]++; GivePlayerMoney(killerid, 10); //Geld dem Killer geben PlayerInfo[killerid][pMoney] += 10; //Geld dem Killer geben GivePlayerMoney(playerid, -10); //Geld dem Opfer nehmen PlayerInfo[playerid][pMoney] -= 10; //Geld dem Opfer nehmen if(PlayerInfo[killerid][pKills] > 3) { PlayerInfo[killerid][pLevel] = 1; } } PlayerInfo[playerid][pDeaths]++; return 1; }
-
-
Server_log.txt mal manuell anlegen.
Wo / Wann genau disconnecten die Bots?
Arbeite im Zweifel mit Debugmeldungen.
Bots in ein bestehendes System zu integrieren ist meist nicht ohne.
Falls du ein Loginsystem nutzt, vergewissere dich, dass der sich nicht einloggen muss oder ein festes "Botkennwort" verwendet wird.
Denke auch daran, dass sich Bots schwer tun, Dialoge auszufüllen und Textdraws anzuklicken.Wenn du selbst keinen Anhaltspunkt für den Disconnect findest, poste mal dein OnPlayerConnect Callback.
-
Das englishe Forum sagt zum Runtime Error 17 folgendes:
Zitat
Runtime error 17
Your .AMX file is corrupt and contains an invalid P-code format. This
can be caused by trying to run the server while the script is compiling.Solution: Shut the server off and compile the script again. If you've uploaded the .amx file, then upload it again.
Hier ist auch ne Problemlösung angegeben (Erste beiden Posts)
-
Zeig mal deine Deklarationen von ADUTYName und String.
-
Hm, anscheinend wird die Datei nicht richtig geöffnet.
Aber das Log und die Bots haben in der hinsicht nichts miteinander zu tun.
Hast du in der Serverconfig auch genug Slots für die NPCs?Benutze Testweise mal folgende Log Function:
Code
Alles anzeigenstock Log(log[],text[]) { new string[1000],File:hFile; hFile = fopen(log,io_append); if(!hFile)) return printf("[DEBUG] Stock Log: Datei kann nicht geöffnet werden, hFile=%d", hFile); gettime(stunde,minute,sekunde); getdate(jahr,monat,tag); format(string,sizeof(string),"%02d/%02d/%04d-%02d:%02d:%02d | %s\r\n",tag,monat,jahr,stunde,minute,sekunde,text); fwrite(hFile,string); fclose(hFile); return 1; }
Eventuell auch mal schauen, ob die Berechtigungen richtig gesetzt sind (0644 oder 0750).
-
Dann ändere doch einfach mal .txd zu .txt.
Mehr als abstürzen kann der Server nicht tun.Ich würde auch für Debugzwecke mal folgendes vor fwrite(...) setzten (Im Stock Log)
if(!hFile)) return printf("[DEBUG] Stock Log: hFile=%d", hFile);
Damit unterbindest du, dass wenn ein Problem mit dem Filehandler auftritt, der Server abstürtzt. -
Hm, sieht soweit eigentlich alles korrekt aus.
Ich würde jetzt mal prüfen, ob er die Datei korrekt öffnet (printf("Dateihandler: %d", hFile))Passiert das bei jedem Logfile oder nur bei dem spezifischen?
-
Erstelle im Verzeichnis des pawno editors eine Datei mit dem Namen pawn.cfg und füge folgendes ein:
Kompile danach das Script erneut und starte den Server nochmal.
Dann steht die genaue Scriptzeile ebenfalls im Log.
Poste dann den Ausschnitt aus deinem Script.Das Problem kommt an einer fwrite() Funktion im Callback OnPlayerConnect zustande
-
[22:21:24] Failed (libmysqlclient_r.so.16: cannot open shared object file: No such file or directory)
Oh je, ich steh auf Kriegsfuß mit dem Fehler.
Sofern du keine statische Version hast, wird dir in diesem Fall nur der Nitrado Support weiterhelfen können.Schau auch mal hier:
http://forum.sa-mp.com/showpost.php?p=521284&postcount=553
http://forum.sa-mp.com/showthread.php?t=348761Hier noch ein Lösungsansatz (für den Hoster, da Root Rechte benötigt werden)
http://forum.sa-mp.com/showthread.php?t=522611 -
Gleicher Fehler ist welcher Fehler?
Wenn der Server nicht startet, ist ein Server log für die Fehleranalyse unabdingbar! -
Hm, hast du den Gamemode runtergeladen?
Ansich sind da dann alle wichtigen Daten & Plugins dabei, auch für Linux.Kompilere nochmal mit der alten Version und schicke nochmal das Server log. (Bitte davor löschen, damit wir auch die aktuelle Ausgabe haben und uns nicht durch 30K Zeilen durchlesen müssen)