Hallo,
Gibts irgendeine Möglichkeit, irgendwas in der ini eines anderen Spielers zu ändern, auch wenn er offline ist?
also zum beispiel Geld abziehen etc.
Hallo,
Gibts irgendeine Möglichkeit, irgendwas in der ini eines anderen Spielers zu ändern, auch wenn er offline ist?
also zum beispiel Geld abziehen etc.
Sofern dein Script nicht über mysql läuft wirst wohl nur manuell aufm (ftp) Server die Datei öffnen können und den Wert deiner wahl per hand editieren müssen.
Öffnen alles runterziehen in Variablen abspeichern, etwas ändern und wieder speichern.
Umfangreich doch machbar
Wenn der Name des Spielers der offline ist, im Spiel genannt wird, z.B per Command:
/zieheab Harald 5000
Dann könntest du du per Filterung die ini von dem Spieler Harald Öffnen und das Geld per Variable abziehen.
Ich habe mal ne ini von meinem Home Server (Keine Ahnung was das für ein Script ist xD)
jqpaPO
Morde=0
Tode=0
Geld=10
carlic=0
planelic=0
boatlic=0
bikelic=0
score=0
team=0
adminlvl=1338
leader=0
SkinID=0
Wantedlvl=0
Also das heißt, der Spieler hat 10 $ wenn du z.B. 5 hinschreibst hat er beim einloggen nur noch 5$
Ja klar geht das man muss halt nur mit dcmd arbeiten und das dann vernünftig strukturieren Also ja, ist möglich . Allerdings kann sowas auch missbraucht werden deswegen lieber nur für höhere Admins einbauen ; )
Du musst die .ini des Spielers runterladen (z.B. boxxy.ini), die .ini bearbeiten, abspeichern und wieder hochladen.
ich glaube er meint die Bearbeitung via Server auch wenn der Spieler derzeit nicht verfügbar ist,
dies ließe sich ganz einfach einrichten, du gibst den Namen des Spielers an , formatierst diesen
zum echten Namen der Datei zusammen wie hier z.b.
new username[MAX_PLAYER_NAME], ffm[10+MAX_PLAYER_NAME];
GetPlayerName(playerid,username,sizeof username);
format(ffm,sizeof ffm,"%s.file.ini",username);
und greifst dann einfach auf diese Datei zu , nur als Beispiel :
new File:data = fopen(ffm,io_read);
sorry das ichs net ausführlich erklärt hat aber BFX hat schon gecheckt was ich meine
und zu den "lad die datei runter, ändere sie und lad sie wieder hoch" kommentaren.
So blöd kam meine frage doch net rüber oder etwa doch?
danke trotzdem an alle
EDIT:// Ich benutze dini... und check das da net so ganz. zum bespiel hier:
public OnPlayerExitVehicle(playerid, vehicleid)
{
new CarFormat[128], pname[MAX_PLAYERS],accFormat[128];
GetPlayerName(playerid,pname,sizeof pname);
format(accFormat,sizeof accFormat,"Accounts/%s.ini",pname);
format(CarFormat,sizeof CarFormat,"/Cars/%s.car",pname);
if(fexist(CarFormat))
{
GetVehiclePos(vehicleid, CarPos[playerid][posX], CarPos[playerid][posY], CarPos[playerid][posZ]);
GetVehicleZAngle(vehicleid,CarPos[playerid][Rotation]);
dini_FloatSet(CarFormat, "X", CarPos[playerid][posX]);
dini_FloatSet(CarFormat, "Y", CarPos[playerid][posY]);
dini_FloatSet(CarFormat, "Z", CarPos[playerid][posZ]);
dini_FloatSet(CarFormat, "R", CarPos[playerid][Rotation]);
}
return 1;
}
so würde der die pos nur in der EIGENEN ini speichern... ich möchte aber, dass wenn ein anderer spieler mein auto fährt und dann aussteigt, dass die pos dann in meiner ini gespeichert wird.
hoffe das ist so verständlich.
Kann mir da jemand helfen?
EDIT://BFX würde in deinem Beispiel net trotzdem der name vom Spieler stehen, der grad ausgestiegen ist?