Sa-mp Server 0.3 R7 [ Server Update ]

  • Quelle : http://forum.sa-mp.com/index.php?topic=161491.0



    Informationen auf Deutsch :


    Die neuen Kamera Funktionen & weiteres:
    Die neuen Kamera Funktionen bieten euch die Möglichkeit herauszufinden worauf der Spieler guck sprich die Koordinaten zurückzugeben,
    Achtung diese funktionieren nur wenn der Spieler zu Fuß unterwegs ist oder in einem Speziellen Fahrzeug sitzt wie einem Feuerwehrwagen, Panzer etc.


    native GetPlayerWeaponState(playerid);
    native GetPlayerCameraPos(playerid, &Float:x, &Float:y, &Float:z);
    native GetPlayerCameraFrontVector(playerid, &Float:x, &Float:y, &Float:z);
    native GetPlayerCameraUpVector(playerid, &Float:x, &Float:y, &Float:z);


    Die neuen Spieler Variablen:
    Diese neuen Variablen lassen euch informationen nun noch leichter zwischenspeichern & abfangen so müssen keine extra Array Variablen erstellt werden
    die im Endeffekt mehr Platz fressen als nötig, diese Variablen brauchen nur das auf was auch benötigt wird.


    // Per-player variable system (PVars)
    native SetPVarInt(playerid, varname[], int_value);
    native GetPVarInt(playerid, varname[]);
    native SetPVarString(playerid, varname[], string_value[]);
    native GetPVarString(playerid, varname[], string_return[], len);
    native SetPVarFloat(playerid, varname[], Float:float_value);
    native Float:GetPVarFloat(playerid, varname[]);
    native DeletePVar(playerid, varname[]);


    // PVar enumeration
    #define PLAYER_VARTYPE_NONE0
    #define PLAYER_VARTYPE_INT1
    #define PLAYER_VARTYPE_STRING2
    #define PLAYER_VARTYPE_FLOAT3


    native GetPVarsUpperIndex(playerid);
    native GetPVarNameAtIndex(playerid, index, ret_varname[], ret_len);
    native GetPVarType(playerid, varname[]);


    Vorteile der Spieler Variablen :


    • Spieler Variablen können über den Globalen Code Bereich abgerufen werden
    • Spieler Variablen werden Automatisch gelöscht sobald derjenige den Server verlässt.
    • Man braucht keine extra Informationen definieren ( Lassen sich Dynamisch erstellen )
    • Spart Ressourcen für Spieler die niemals gebraucht werden wie bei Array Variablen
    • Die Variablen können leicht abgerufen werden
    • Wenn eine der Spieler Variablen nicht erstellt wurde aber abgerufen wird 0 wiedergegeben
    • Spieler Variablen können auch große Zeichenfolgen festhalten ( Dynamische Speicher Lokalisierung )





    Extras zu Spieler Markierungen:
    Hiermit könnt ihr den Radius einstellen in dem die Spieler die anderen auf der Karte sehen können.
    native LimitPlayerMarkerRadius(Float:marker_radius);


    Neue Rückgaben :
    Diese neuen ,,Callbacks´´ lassen euch herausfinden wie Stark & wo das Fahrzeug beschädigt wurde, für einige
    Reallife Server wohl wirklich von Gebrauch.
    forward OnVehicleDamageStatusUpdate(vehicleid, playerid);
    native GetVehicleDamageStatus(vehicleid, &panels, &doors, &lights, &tires);
    native UpdateVehicleDamageStatus(vehicleid, panels, doors, lights, tires);


    weiteres:
    Die Pawn Funktion fseek wurde von Fehlern befreit & Funktioniert nun wieder.



    //EDIT : RC 6

    Zitat


    - PVar names use exact names instead of partial matching, they're case-insensitive still ("id" is the same as "ID").
    - PVars are now reset during a game mode restart.
    - Hopefully fixed crash on Windows server related to a compiler problem.
    - Vehicle mods sent by players have additional sanity checks (thanks to Tenshi for pointing out a problem).

    • Jetzt wird bei Spieler Variablen nicht mehr auf Groß/Kleinschreibung geachtet sprich "id" wäre das selbe wie "ID"
    • Spieler Variablen werden zurückgesetzt nach einem Neustart des Gamemodes
    • Ein Fehler bezüglich Windows wurde verbessert sprich der Server erlitt einen Crash, dies lag im Grunde an einem Problem im Code / Compiler
    • Modifikationen sprich Komponenten die vom Spieler hinzugefügt werden, werden nun auch auch überprüft & von entsprechenden Funktionen/Callbacks übernommen.

    // EDIT : R7

    Zitat


    Changes from R6 server:


    - There was a problem with the PVar list after DeletePVar() had been used (thanks to Toribio for pointing this out).
    - PVar names use uppercase internally which speeds up the lookups. When you enumerate PVars the name will always be returned in uppercase. You can still use any case for getting/setting.

    • Es gab Probleme mit ,,DeletePVar´´ sprich die Liste der Variablen hatte Probleme , der Fehler wurde ausgebessert
    • Spieler Variablen nutzen nun immer die Großschreibung das verbessert die Geschwindigkeit der Rückgaben , nun werden also alle Namen in einem Format der Großschreibung wiedergegeben, selber kann man jedoch jede beliebige Größe nutzen.


    So ich hoffe ich konnte euch auf den neusten Stand bringen & soweit alles klar machen.
    Dieses Thema musste erstellt werden da die alten Informationen wohl gelöscht wurden aus welchen Grund auch immer.

    Mfg. BlackFoX_UD_ alias [BFX]Explosion


    4 Mal editiert, zuletzt von BlackFoX ()

  • Sorry, aber ich fand einfach nicht,
    dass Informationen zu RC5 in einen Thread zum Release von RC4 benötigt werden. [...]

    Von RC kann auch keine Rede sein, die Version 0.3a hat den Release Candidate Status schon lange verlassen. Lediglich Revision-Versionen erscheinen hin und wieder, was ich jedoch nicht wirklich innovative Neuerungen nennen kann. :| Oh man, von einem Entwicklungsstadium einer Software hat Kye aber keine Ahnung.

    Einmal editiert, zuletzt von [mRL]DaNNy ()

  • Also innovativ ist das eher nicht, sondern das war eher nur längst überfällig.
    Das PVars System hätte gleich veröffentlicht werden sollen, da sowas extrem wichtig ist und nicht so eine große Speicherverschwendung hervorruft.
    Lua hat da den Vorteil, dass es sowas schon integriert hat (durch Tables).
    Und die neuen Callbacks und Funktionen hätte man auch schon LÄNGST machen können, das ist immerhin nicht viel Arbeit.
    Und wie lange ist die 0.3 jetzt her? 4 Monate oder so? Dafür ist das auch wieder ziemlich schwach..


    Die sollten mal langsam das Einfügen der ganzen Funktionen nachholen, welche eigentlich schon fast Standard für so ein fortgeschrittenes Projekt sein sollten.

  • Najo die PVars hätte man auch mit der Pawn Property Funktion vergleichen können diese lassen sich ebenfalls über den Globalen Skript Bereich abrufen & bearbeiten,
    wenigstens kann man nun herausfinden worauf der Spieler schaut, den Rest hätte man zum Teil auch selbst regeln können.

    Mfg. BlackFoX_UD_ alias [BFX]Explosion


  • also ich finde die neue server version richtig nice!
    ich bin außerdem froh mal wieder sowas zu sehn und bin eigl. überhaupt froh das er weiter programmiert, auch wenns immer ein wenig dauert...

  • do.de - Domain-Offensive - Domains für alle und zu super Preisen
  • Zitat

    0.3a R5 fixes a "denial of service" vulnerability where a player sending invalid data, generated by an external program, may cause the server to generate a debug assertion, which causes the server to close.

    Kyes Zitat : Heißt das keine Modifizierten Pakete von anderen Programmen o.ä. mehr übernommen werden sprich nicht mitgesendet

    Mfg. BlackFoX_UD_ alias [BFX]Explosion


  • do.de - Domain-Offensive - Domains für alle und zu super Preisen