Beiträge von 4#Future

    Guten Abend liebe Community,


    leider verzweifle ich momentan bei dem Versuch wieder auf MySQL umzusteigen.


    Da die alten MySQL Versionen von beispielsweise "MTRP" nicht mehr funktionieren,
    war ich gezwungen mir neuere zu suchen und stieß auf das aktuellste von G-sTyLeZzZ (hier).


    Ich habe allerdings einige Problem mit der Einbindung des Plugins, zudem es sich scheinbar
    überhaupt gar nicht mit der MySQL Datenbank connecten lässt.


    Ich verstehe momentan leider überhaupt nicht das Problem...


    Ich würde mich um etwas Hilfe sehr freuen, doch möchte ich darauf hinweise, dass sich bitte
    keine Anfänger in Sachen MySQL melden sollten, sondern nur Leute die meinen mir helfen zu können!


    Seit Ihr tatsächlich dieser Meinung, dann meldet Euch bitte unter ICQ: 457-273-658
    Übrigens, Ihr solltet bitte Teamspeak und TeamViewer haben.


    Ansonsten bedanke ich mich schonmals im Voraus für eventuelle Hilfe.
    Übrigens werde ich hier nicht detalierter auf die Probleme eingehen, da es einfach zu kompliziert ist es zu erklären.



    Freundliche Grüße


    4#Future - Fake
    http://forum.sa-mp.com/member.php?u=13918

    SetPlayerCheckpoint(playerid, Float:x, Float:y, Float:z, Float:size);
    Ich sehe gerade keinen Fehler an Deiner Funktion, habe ich jedoch einen Verdacht...
    Kommt beim Compilen irgend ein Fehler, hinsichtlich dieser Zeile oder eine Warnung?


    Wenn nicht, dann weis auch nicht weiter ?(

    xD


    Zuerst einmal möchte ich sagen, dass ich mein eigener Scripter, Chef, Servermiter etc. bin. :D


    Und zum anderen, nein natürlich habe ich nichts kopiert... ich sagte es ist ein Selfmade ist und so ist es auch.
    Natürlich ist klar, dass einige Befehle, z.B. /stats, oder /levelup... einfach vom Namen Standart sind.


    Und ich fande halt den Befehlsnamen /v(ehicle) [Funktion] einfach passend und habe mir gedacht,
    es einfach bei mir ähnlich zu machen.


    Und kopieren von anderen Gamemodes hasse ich... wenn ich mir etwas nehme, schaue ich mir es an
    und scripte es komplett in meinem Stil in mein Script und vorallen verbessere ich es und mache es bugfrei^^


    Aber von klauen oder kopieren halte ich gar nichts, damit brauch mir auch gar keiner ankommen...


    Aber ansonsten sind natürlich einige Befehle im Script trotzdem (vom Namen her gesehen), gleich denen
    in anderen Gamemodes, da sie für die Spieler einfach als Standart wirken und sich die meisten Spieler
    diese schon eingeprägt haben.

    Zitat

    Mich errinert dieses /v [BEFEHL] Prinzip irgendwie an das Moderntopia Car System...


    Genau diese Errinerung haben andere Spieler und benutzen diesen Befehl, nur dass meiner
    eben weder buggt oder zickt und sehr viele zusätzliche Features enthält.



    Naja, meine Meinung zu Leuten, die Dinge klauen oder kopieren kennste ja...
    Und wenn ich schon sage es ist ein 'Selfmade', wirds auch einer
    :P

    Danke schön!


    Oh gott' oh gott...


    Naja was soll ich denn auch noch dazu sagen?
    Das war ja mal wieder ein voll peinliche Nummer ;)
    Naja wenn mal älter wird, bekommt man halt solche Problem...^^ Und das Stand auch noch in der Wiki...


    *au* mein Kopf :D

    vlllt nen kilometer zähler ...der die gefahrenen kilometer zählt

    :D einen Kilometerzähler habe ich bereits verbaut ;D


    @All, ich meinte eigentlich in Hinsicht des Carsystem auch Befehle, die Ihr fürs Auto einführen
    würdet. Wie eben z.B. die Idee eines Kolleges '/v licht' einzubauen...


    Nunja, bisher hält sich Euer Ideenreichtum ja in Grenzen... Lasst ruhig alles raus :thumbup:

    Guten Abend,


    man' o man, mir ist das langsam peinlich als 3 jähriger Scripter immer solche Fragen zu stellen. :D


    Die 'savedpositions.txt' gibt mir folgende Parameter zurück:
    AddPlayerClass(98,1832.8552,-1842.5521,13.5781,269.5768,0,0,0,0,0,0); //


    Dass der 1. Wert die Skin ID ist, ist mir natürlich klar.
    Der 2., 3. und 4. Wert sind natürlich PosX, PosY und PosZ.
    Doch was war gleich der 5. Wert? - PlayerFacingAngle, wenn ich mich nicht irre, oder?


    Ich weis es leider nicht genau, müsste es aber mal wissen.
    Da ich zu faul zum probieren bin, wäre es klasse, wenn es mir fix jemand verraten könnte.
    Ich mein, was außer FacingAngle, soll auch in einer Positionangabe im Float ausgegeben werden?
    :P



    Freundliche Grüße - 4#Future

    ich würde test4(playerid); draus machen ihr Mr.Brains

    Habe ich ja auch schon gesagt, aber mir glaubt ja keiner :D


    Wobei BloodyEric, vielleicht Recht haben könnte, dass keine Funktion "piblic test4(playerid)" exitiert,
    sondern GTA0071, ausversehen gedacht hat, er müsse dies noch zusätzlich anfügen...


    GTA0071, nun für Dich: Entferne zuerst einmal die Zeile: "test4(playerid)" und probiere, ob es funktioniert...

    Hmm,


    ich verstehe grade nicht genau, was Du damit meinst... :D


    Gehst Du davon aus, dass ich meinen Carkey an andere Spieler weitergeben kann,
    oder meinst Du die Abgabe des Schlüssels?


    Eine Vergabe des Schlüssels an einen anderen Spieler habe ich übrigens gleich im
    Befehl "/give" mit integriert, da er einen schönen passenden Namen hat. ;D

    Ups :D


    Habe auch grade gesehen, dass "ShowMenuForPlayer(test4,playerid);" ja schon drüber steht...
    (ohje wenn man alt wird :D)


    Trotzdem ist bestimmt "test4" falsch deiniert.
    Nämlich einfach nur "new test4;", wobei es für ein Menü aber "new Menu:test4;" heisen muss.


    Und Du solltest auch schauen, dass Du wirklich ein Menu bei "OnGameModeInit" lädt, welches
    "test4" heißt, da sonst ein Fehler, des Nichtgebrauchens der Variable kommt...

    Hallo GTA0071,


    zuerst einmal möchte ich sagen, dass BloodyEric natürlich in Ansätzen Recht hat.


    Zum einen müsste schonmal in deine Zeile 532, statt "test4(playerid)" rein "test4(playerid);".
    Dieses ; beendet Deinen Parameter "test4". Dies ist auch im Fehler abzulesen: (532) : error 001: expected token: ";", but found ")"


    Zum zweiten nehme ich an, dass die Zeile 524 folgende ist "else if(GetPlayerMenu(playerid) == test3)".
    Kann es vielleicht sein, dass Du vor dem "else if"
    kein einziges Mal nur "if" stehen hast?


    Denn mit "else if" in einer Funktion anzufangen, bringt bei mir genau diesen Fehler...
    Bitte schicke mal noch einige Codezeilen, auch wie Du "test3" und "test4" definiert hast.


    Ein beliebter Fehler ist auch folgender, nämlich nur "new test3;" zu schreiben.
    Denn möchtest Du Menüs definieren, musst Du dies mit "new Menu:test3;" tun.


    [WICHTIG] Wenn "test3" wirklich ein Menü zeigen soll, muss es so heisen: "ShowMenuForPlayer(test3, playerid);".
    Und Du musst test3 nicht mit einem playerid, definieren, denn Menüs werden schon bei der Funktion "ShowMenuForPlayer" nur
    für den Player, mit der playerid gezeigt...


    Bitte schau nochmal nach...

    Hey Leute,


    heute mal etwas ungewöhnlicher, aber für mich trotzdem wichtig, habe ich einige Fragen.
    Nun, 4#Future selbst ist ja ein Reallife Projekt mit hervorragenden Scriptern (keines Wegs angeberisch gemeint!!).


    Da unser ganz neuer Gamemode zu 100% Selfmade wird, gibt es natürlich immer kleine Wünsche etc...
    Doch momentan wissen wir eher nicht, was wir verbessern bzw. hinzufügen können. :D


    Bis jetzt sind einige Standartbefehle wie das Fahrzeug zu Parken, Auf- und Zuzusperren, zu tanken... im Carsystem eingebaut.
    Bereits sind einige Extras, wie das Tuning zu löschen, das Fahrzug auf der Karte zu makieren oder es An- und Auszuschlaten eingebaut.
    Bereits einige Testcommands wie /v licht 1 - an | 0 - aus, wurden ebenfalls hinzugefügt. Und ein Spieler kann bis zu 2 Fahrzeuge haben.


    Natürlich sind wir, 4#Future sehr stolz auf unser Script insbesondere das Carsystem, da es eben 100% Selfmade ist.
    Aus diesem Grund wird das 4#Future Carscript vielleicht bald als Filterscript erscheinen...
    (mal schauen)


    Wir besitzen ein Carsystem, natürlich eine Eigenkreation, welches folgende Befehle 100% bugfrei ausführt:

    Zitat

    |Funktionen| Park, Lock 1/2, Unlock 1/2, Tanken, Farbe, Findcar 1/2, Deltuning 1/2
    |Testphase| Licht
    |Verkaufen| Sellcar (Händler), Verkaufe [Spieler] [Preis]
    |Start&Stop| On - Starten, Off - Stoppen


    Nun aber zu meiner eigentlichen Frage...


    > Welche zusätzlichen Befehle würden Euch einfallen und als Spieler gefallen, die ich in meinem Carsystem ergänzen könnte?


    Ich hoffe Ihr könnt mir einige neue und vielleicht sogar großartige Ideen geben...
    Doch bitte um ersthafte Vorschläge und keine Beiträge, die abfällig oder sonst gehessig sind.



    Freundliche Grüße - 4#Future

    Hey Leute,


    ich habe da mal wieder eine kleine Frage.
    Und zwar kann ich ja mit "SetVehicleParamsForPlayer" einstellen, ob die Fahrzeugtüren verschlossen sind oder nicht.


    Nur funktioniert dies leider komischer Weise nicht.
    Ich habe folgendes eingefügt:


    public OnPlayerSpawn(playerid)
    {
    for(new h = 10; h < sizeof(CarInfo); h++)
    {
    SetVehicleParamsForPlayer(h, playerid, 0, CarInfo[h][cLock]);
    }
    ...


    Die Fahrzeuge bei der diese Funktion ansetzten soll, beginnen erst mit der ID 10, daher auch "for(new h = 10; ...".
    Trotzdem sind die Türen für den Spieler aufgesperrt.


    Oder ist es vielleicht empfehlenswerter, wenn ich dies bei "OnPlayerEnterVehicle" hinzufüge? Oder ist es da schon zu spät?


    Aber davon mal abgesehen habe ich eine, für mich, viel wichtigere Frage zu diesem Thema.


    Angenommen die Türen eines beliebigen Fahrzeugs sind nun wirklich versperrt und ich möchte grade ins
    Fahrzeug einsteigen.
    Wie deaktiviere ich diese Animation des Einsteigens, besser gesagt, des Probierens ob die Tür offen ist?
    Einsteigen kann der Spieler ja eigentlich nicht.


    Würde mich über eine Lösung sehr freuen! Vielen Dank...



    Liebe Grüße - 4#Future

    Ja das ist mir klar, doch gibt es kein getrenntes MySQL Log.


    Connected der Spieler, steht in der ServerLog, "... joined the Server.".
    Klicke ich dann einloggen, schmiert er ohne Fehler und ohne Vorwarnung ab.


    Gebe ich mein Passwort falsch ein, bringt er mir den den Fehler und auch wenn ich es
    zu oft falsch eingeben bannt er mich und bleibt online.


    Also liegt es am Login, doch diesen Teil habe ich fehlerfrei übernommen, doch haut
    irgendwann mit der MySQL Datenbank nicht hin.


    So viel weiß ich, bis zum makierten Punkt führt er OnPlayerLogin aus, dann stoppt er einfach.


    public OnPlayerLogin(playerid,password[])
    {
    MySQLCheckConnection();
    new tmp2[256];
    new playername2[MAX_PLAYER_NAME];
    new playernamesplit[3][MAX_PLAYER_NAME];
    GetPlayerName(playerid, playername2, sizeof(playername2));
    split(playername2, playernamesplit, '_');
    MySQLFetchAcctSingle(PlayerInfo[playerid][pSQLID], "Password", PlayerInfo[playerid][pKey]);
    if(strcmp(PlayerInfo[playerid][pKey],password, true ) == 0 )
    {
    new Data[1024];
    new Field[64];
    new rcnt = 1;
    MySQLFetchAcctRecord(PlayerInfo[playerid][pSQLID], Data);
    samp_mysql_strtok(Field, "|", Data);
    while (samp_mysql_strtok(Field, "|", "") == 1) <--------- bis hier her
    {
    if (rcnt == 3) PlayerInfo[playerid][pLevel] = strval(Field);
    if (rcnt == 4) PlayerInfo[playerid][pAdmin] = strval(Field);
    if (rcnt == 5) PlayerInfo[playerid][pPupgrade] = strval(Field);
    if (rcnt == 6) PlayerInfo[playerid][pRespekt] = strval(Field);
    if (rcnt == 7) PlayerInfo[playerid][pConnectTime] = strval(Field);
    if (rcnt == 8) PlayerInfo[playerid][pReg] = strval(Field);
    if (rcnt == 9) PlayerInfo[playerid][pGeschlecht] = strval(Field);
    if (rcnt == 10) PlayerInfo[playerid][pAlter] = strval(Field);


    Ich verzweifle langsam.


    Wer helfen kann, meine ICQ Nummer ist 457273658, ich antworte vllt nicht gleich, bin aber da!



    Freundliche Grüße


    4#Future

    Pass auf,


    die Idee mit dem "AutoEngine" merkst Du dir einfach und baust es folgender Maßen auf.


    new vehicle = GetPlayerVehicleID(playerid);
    PutPlayerInVehicle(playerid, vehicle, 0);


    Diese Funktion beschreibt, dass der Spieler im Fahrzeug sitzt, aber nicht fahren kann, wie als wenn
    das Fahrzeug ausgeschaltet wäre.


    Das heißt diese Funktion fragst Du bei "OnPlayerEnterVehicle" folgendermaßen ab (unter Beachtung von "AutoEngine")


    if(AutoEngine[playerid] == 0)
    {
    new vehicle = GetPlayerVehicleID(playerid);
    PutPlayerInVehicle(playerid, vehicle, 0);
    }


    Ein else brauchst Du nicht, denn wenn AutoEngine an ist, kann der Spieler auch gleich starten.


    Startest Du dann das Fahrzeug, z.B. mit einer Taste, erstellst Du einen Timer und wenn dieser abgelaufen ist,
    führt er "TogglePlayerControllable(playerid, true);" aus und der Spieler sollte nun in der Lage sein zu fahren.



    Freundliche Grüße


    4#Future

    Also ich finde keinen MySQL Debug Parameter.


    Aber davon mal ganz abgesehen würde ich auch gern SAMPMySQL behalten, da es mir auch in
    der Vergangenheit keine Probleme und Sorgen machte.


    Nur bräuchte ich nun nochmal einen Scripter, der per Teamviewer connecten oder mit mir im ICQ
    schreibt, um welches Problem es sich im Script genau handelt.


    Das MySQL Plugin funzt wirklich 1a, nur am Script ist irgend ein Fehler, den ich nicht finde.



    Freundliche Grüße


    4#Future

    Ich muss den Server momentan leider erstmal local auf meinem Windows Rechner laufen lassen.


    Also eigentlich benutze ich das neueste MySQL Plugin von "http://lostgangwarz.free.fr".


    Vielleicht kannst Du mir auchmal einen Link eines anderen MySQL Plugins für Windows schicken,
    welches Deiner Meinung nach vielleicht besser wäre.


    Im übrigen, was meinst Du mit MySQL Debug. Es ist mir grade nicht ganz klar wo ich es einschalten
    soll. Vielleicht hast Du mal Lust per Teamviewer zu connecten. Teamspeak und ICQ habe ich auch.


    Übrigens wie oben schon erwähnt steht weder was in der ServerLog noch ist die CrashInfo hilfreich.


    Und funktionieren sollte die MySQL Verbindung eigentlich auch, da das Registrieren erfolgt und
    der User auch in der Tabelle steht, nur nach dem Login stürzt der Server einfach ab.
    Vielleicht liegt es auch an "OnPlayerSpawn" oder "SetPlayerSpawn", leider bin ich ein bisschen hilflos.



    Freundliche Grüße


    4#Future

    Hallo Kirschi14,


    mein Vorschlag wäre es, einen Parameter zu definieren, welcher z.B. "AutoEngine" heißt
    und der bei jedem Losfahren abgefragt wird.


    Quasi meine ich, dass du bei "OnPlayerConnect" rein schreibst, "AutoEngine[playerid] = 0" (vergiss es nicht zu definieren).
    Bei "OnPlayerEnterVehicle" fragst Du dann einfach den Status ab, mit "if(AutoEngine[playerid] == 0) { Auto ist aus; }"


    Im Grunde genommen reicht dies schon, nur wird bei jedem einsteigen ins Fahrzeug nötig,
    es anzuschalten, d.h. es würde so nie dauerhaft laufen.


    Du könntest dies ja ausbauen und sagen, dass man mit bestimmten Tasten, z.B. Alt (KEY_WALK) das Fahrzeug
    starten kannst "AutoEngine = 1" oder bei wdh. drücken stoppen kann "AutoEngine = 0".


    Ich hoffe ich konnte dir helfen, ansonten erläutere ich es dir gern näher.



    Freundliche Grüße


    4#Future

    Guten Tag,


    ich habe ein kleines aber bescheidenes Anliegen.
    Und zwar geht es um meinen Gamemode, welcher gerade neu und in der Aufbauphase ist.


    Ausgehend von MySQL ist der Gamemode auf Basis von MTRP ausgerichtet, jedoch SlM.


    Mein Problem ist, dass nach dem Einloggen der Server abstürzt, da er (wahrscheinlich) die
    MySQL Tabelle nicht richtig ausließt.
    Mein GM ist zurzeit 1600Z groß und sehr übersichtlich.


    Ich würde mich freuen, wenn sich ein Scripter fände, der mal bei mir, per Teamviewer
    vorbeischaut und guckt, ob er das Einloggproblem beheben kann.


    Auszug aus OnPlayerLogin:
    new Data[1024];
    new Field[64];
    new rcnt = 1;
    MySQLFetchAcctRecord(PlayerInfo[playerid][pSQLID], Data);
    samp_mysql_strtok(Field, "|", Data);
    while (samp_mysql_strtok(Field, "|", "") == 1)
    {
    if (rcnt == 3) PlayerInfo[playerid][pLevel] = strval(Field);
    if (rcnt == 4) PlayerInfo[playerid][pAdmin] = strval(Field);
    if (rcnt == 5) PlayerInfo[playerid][pPupgrade] = strval(Field);
    if (rcnt == 6) PlayerInfo[playerid][pRespekt] = strval(Field);
    ...
    rcnt++;
    }
    SendClientMessage(playerid, INFO_BLAU, "** Du hast Dich erfolgreich eingeloggt! **");


    Die Nachricht man hätte sich erfolgreich eingeloggt, kommt leider nicht und der Server ist sofort offline. Kein Fehler!
    Und die crash_info Datei, naja daraus wird man auch nicht schlau
    ;)


    Einen Fehler im Script kann ich leider auch nicht finden, daher bitte ich um Hilfe.


    PS.: In der MySQL Datenbank ist kein Fehler...


    Ich wäre Euch sehr verbunden!



    Freundliche Grüße


    4#Future