Arty Nope, Klammerfehler werden ausgeworfen.
Mr.Undercover: Wie gravierend muss denn der Error sein bzw. die Errors sein, dass mein Compiler abstürzt?
Arty Nope, Klammerfehler werden ausgeworfen.
Mr.Undercover: Wie gravierend muss denn der Error sein bzw. die Errors sein, dass mein Compiler abstürzt?
Dann würde ich Errors bzw. Warnungen im Compiler bekommen. Außerdem wird ja eine neue .amx Datei meines Scriptes erstellt, das heißt alles ist okay.
Hey Com,
immer wenn ich mein Script compilen möchte, stürzt mein compiler ab. Ich bekomme trotzdem 0 Errors 0 Warnings, kann aber den Server nicht starten.
Fenster das sich beim compilen öffnet:
Wenn ich dann den Server straten möchte steht in meiner Console folgendes:
Script[gamemodes/Tutorial.amx]: Run time error 17: "Invalid/unsupported P-code file format"
Failed to load ´gamemodes/Tutorial.amx´script.
"Tutorial.amx" = Scriptname
Da ich mit den Deutschen Compiler von Trooper geholt habe, dachte ich ich muss ihn neu installieren, das hat aber auch nicht geholfen.
Was ist zu tun?
MfG.
Ahh, die Frakdefines unter die Abfragen machen ... ich probiers mal aus.
//edit: Immer noch der selbe Fehler
//edit2: Neuer Versuch! Klappt alles super. Vielen Dank!
Ich bräuchte nochmal Hilfe zum /makeleader-Befehl.
Wenn ich "/makeleader 0 0" eingebe (Also mich zum Zivi mache) ist alles ok. Wenn ich dann aber
"/makeleader 0 1" (Regierung) eingeben steht da das ich mich Zivilist gemacht hab. Wenn ich nochmal eingebe "/makeleader 0 1" dann steht da ich bin Regierung.
ocmd:makeleader(playerid,params[])
{
new pID,fID;
new string[128];
new fraktname[128];
switch(GetPVarInt(playerid,"Fraktion"))
{
**FRAKTIONSDEFINES**
}
if(!IsPlayerAnAdmin(playerid,6))return SendClientMessage(playerid,ROT,"Dein Adminrang ist zu niedrig!");
if(sscanf(params,"ui",pID,fID))return SendClientMessage(playerid,ROT,"/makeleader [ID] [Fraktions ID] (/fraks)");
if(fID<0||fID>11)return SendClientMessage(playerid,ROT,"Bitte gültige Fraktion angeben (0-11).");
SetPVarInt(pID,"Fraktion",fID);
SetPVarInt(pID,"Leader",1);
SpielerSpeichern(pID);
format(string,sizeof(string),"Du hast %s Leader der Fraktion %s gemacht",SpielerName(pID),fraktname);
SendClientMessage(playerid,HBLAU,string);
format(string,sizeof(string),"%s hat dich Leader der Fraktion %s gemacht",SpielerName(playerid),fraktname);
SendClientMessage(playerid,HBLAU,string);
format(string,sizeof(string),"AdmCmd: %s hat %s Leader der Fraktion %s gemacht",SpielerName(playerid),SpielerName(pID),fraktname);
SendClientMessageToAll(ADMROT,string);
return 1;
}
Der Fehler kommt aber auch erst seit gerade eben. Vorher hat alles super funktioniert. Ich habe nichts an dem Befehl oder den Fraktionsdefines geändert.
Nein, funktioniert noch nicht.
//edit: Wenn ich die Messages ändere auf:
format(string,sizeof(string),"Du hast %s Leader der Fraktion %i (%s) gemacht",SpielerName(pID),fID,fraktname);
SendClientMessage(playerid,HBLAU,string);
format(string,sizeof(string),"%s hat dich Leader der Fraktion %i (%s) gemacht",SpielerName(playerid),fID,fraktname);
SendClientMessage(pID,HBLAU,string);
format(string,sizeof(string),"AdmCmd: %s hat %s Leader der Fraktion %i (%s) gemacht",SpielerName(playerid),SpielerName(pID),fID,fraktname);
SendClientMessageToAll(ADMROT,string);
Dann gibt er mir die richtige ID (%i) an aber nicht den Fraktionsnamen (fraktname).
Ja die Fraktion wird richtig gesetzt, nur die Nachricht ist falsch.
Jetzt funktionierts danke!
Ich bräuchte aber nochmal fix Hilfe zum /makeleader-Befehl. Der Fehler ist mir gerade aufgefallen.
Wenn ich "/makeleader 0 0" eingebe (Also mich zum Zivi mache) ist alles ok. Wenn ich dann aber
"/makeleader 0 1" (Regierung) eingeben steht da das ich mich Zivilist gemacht hab. Wenn ich nochmal eingebe "/makeleader 0 1" dann steht da ich bin Regierung.
ocmd:makeleader(playerid,params[])
{
new pID,fID;
new string[128];
new fraktname[128];
switch(GetPVarInt(playerid,"Fraktion"))
{
**FRAKTIONSDEFINES**
}
if(!IsPlayerAnAdmin(playerid,6))return SendClientMessage(playerid,ROT,"Dein Adminrang ist zu niedrig!");
if(sscanf(params,"ui",pID,fID))return SendClientMessage(playerid,ROT,"/makeleader [ID] [Fraktions ID] (/fraks)");
if(fID<0||fID>11)return SendClientMessage(playerid,ROT,"Bitte gültige Fraktion angeben (0-11).");
SetPVarInt(pID,"Fraktion",fID);
SetPVarInt(pID,"Leader",1);
SpielerSpeichern(pID);
format(string,sizeof(string),"Du hast %s Leader der Fraktion %s gemacht",SpielerName(pID),fraktname);
SendClientMessage(playerid,HBLAU,string);
format(string,sizeof(string),"%s hat dich Leader der Fraktion %s gemacht",SpielerName(playerid),fraktname);
SendClientMessage(playerid,HBLAU,string);
format(string,sizeof(string),"AdmCmd: %s hat %s Leader der Fraktion %s gemacht",SpielerName(playerid),SpielerName(pID),fraktname);
SendClientMessageToAll(ADMROT,string);
return 1;
}
Der Fehler kommt aber auch erst seit gerade eben. Vorher hat alles super funktioniert. Ich habe nichts an dem Befehl oder den Fraktionsdefines geändert.
GetPVarInt(playerid,"Fraktion");
Oder?
du setzt Fraktion auf fID
Aber woher kommt das fID?
SetPVarInt(pID,"Fraktion",fID);
Die PVar Fraktion hab ich in meinem Befehl doch gesetzt. Ich versteh nicht ganz worauf du hinaus willst.
Hey Com,
ich habe mir einen Selfmade /invite Befehl gemacht und komme da an folgendes Problem:
Wenn ich mir selber in eine Fraktion invite, also sozusagen in meine eigene Fraktion, werde ich immer wieder auf Zivilist gesetzt.
ocmd:invite(playerid,params[])
{
new pID,fID;
new string[128];
new fraktname[128];
switch(GetPVarInt(playerid,"Fraktion"))
{
**FRAKTIONSDEFINES**
}
if(!IsPlayerAnLeader(playerid))return SendClientMessage(playerid,ROT,"Du bist kein Leader.");
if(sscanf(params,"u",pID))return SendClientMessage(playerid,ROT,"/invite [ID]");
GetPVarInt(playerid,"Fraktion");
SetPVarInt(pID,"Fraktion",fID);
SetPVarInt(pID,"Leader",0);
format(string,sizeof(string),"Du hast %s in die Fraktion %s invitet.",SpielerName(pID),fraktname);
SendClientMessage(playerid,HBLAU,string);
format(string,sizeof(string),"%s hat dich in seine Fraktion %s invitet",SpielerName(playerid),fraktname);
SendClientMessage(playerid,HBLAU,string);
return 1;
}
Eigentlich klappt alles, bis auf das Problem mit dem Setzen der Fraktion.
MfG.
Versuchs mal so:
#define fraktname0 "NAME DER FRAK"
#define fraktname1 "NAME DER FRAK"
#define fraktname2 "NAME DER FRAK"
#define fraktname3 "NAME DER FRAK"
#define fraktname4 "NAME DER FRAK"
#define fraktname5 "NAME DER FRAK"
#define fraktname6 "NAME DER FRAK"
#define fraktname7 "NAME DER FRAK"
#define fraktname8 "NAME DER FRAK"
#define fraktname9 "NAME DER FRAK"
#define fraktname10 "NAME DER FRAK"
#define fraktname11 "NAME DER FRAK"
Und dann beim Befehl das:
new fraktname[128];
switch(GetPVarInt(playerid,"Fraktion"))
{
case 0:{fraktname=fraktname0;}
case 1:{fraktname=fraktname1;}
case 2:{fraktname=fraktname2;}
case 3:{fraktname=fraktname3;}
case 4:{fraktname=fraktname4;}
case 5:{fraktname=fraktname5;}
case 6:{fraktname=fraktname6;}
case 7:{fraktname=fraktname7;}
case 8:{fraktname=fraktname8;}
case 9:{fraktname=fraktname9;}
case 10:{fraktname=fraktname10;}
case 11:{fraktname=fraktname11;}
}
MfG.
"ui" steht doch soweit ich weiß für "user & integer" also damit ich die ID oder den namen eingeben kann, oder vertu ich mich gerade?
/edit
Nein habe mich vertan, läuft alles, vielen Dank
Hey Com,
ich habe mich mal an die 3 o.g. Befehle gesetzt und folgendes geschrieben:
ocmd:spawn(playerid,params[])
{
if(!IsPlayerAnAdmin(playerid,1))return SendClientMessage(playerid,ROT,"Du bist kein Admin!");
new pID;
new string[128];
if(sscanf(params,"ui",pID))return SendClientMessage(playerid,ROT,"/spawn [ID]");
format(string,sizeof(string),"Der Admin %s hat den Spieler %s gespawnt",SpielerName(playerid),SpielerName(pID));
SendClientMessageToAll(ADMROT,string);
SpawnPlayer(pID);
return 1;
}
ocmd:freeze(playerid,params[])
{
if(!IsPlayerAnAdmin(playerid,1))return SendClientMessage(playerid,ROT,"Du bist kein Admin!");
new pID;
new string[128];
if(sscanf(params,"ui",pID))return SendClientMessage(playerid,ROT,"/freeze [ID]");
TogglePlayerControllable(pID,0);
format(string,sizeof(string),"Du wurdest von %s gefreezed.",SpielerName(playerid));
SendClientMessage(pID,ROT,string);
return 1;
}
ocmd:unfreeze(playerid,params[])
{
if(!IsPlayerAnAdmin(playerid,1))return SendClientMessage(playerid,ROT,"Du bist kein Admin!");
new pID;
new string[128];
if(sscanf(params,"ui",pID))return SendClientMessage(playerid,ROT,"/unfreeze [ID]");
TogglePlayerControllable(pID,1);
format(string,sizeof(string),"Du wurdest von %s unfreezed.",SpielerName(playerid));
SendClientMessage(pID,ROT,string);
return 1;
}
Die Befehle habe ich getestet und erstmal nur den Befehl eingegeben, also ohne ID. Ich habe dann einen Error bekommen "/(befehl) [ID]" so wie es sein soll.
Gebe ich aber "/spawn 0" ein bekomme ich den selben Error "/(befehl) [ID]". Und dass bei allen 3 Befehlen. Einmal Hilfe bitte.
MfG.
Ja streamer.so sonst würde der Server ja auch gar nicht laufen.
*Unbekannt Variable "playerid" brauch ich gar nicht erst versuchen. Wenn man in samp wiki schaut weiß man es
//edit
streamer.inc im PawnoOrdner
Im script ist #define streamer
server cfg hat
plugin streamer
streamer.dll und .os sind im Pluginordner.
Noch was?
ich hab mir schon den Streamer von Incognito v2.6.1 geholt und es funktioniert trotzdem nicht.
Achso .. nein keinesfalls. habe ca. 560 Objekte an jeweils einem Punkt.
Außerdem laden ja alle Objekte. Nur werden die Objekte nicht gelöscht die weg sollen
Ich hab schon über 5000 Objekte drin