Beiträge von IPrototypeI


    Also das Shopsystem sieht auch wirklich sehr gut aus. Leider liegen die Stärken wie du bereits erwähnt hattest im verborgenen, eventuell geliegt es ja dem jetzigen Team
    noch paar Stärken aus dem verborgenen ins Licht zu rücken.


    Es gibt paar Möglichkeiten dagegen etwas zu machen du kannst mir ja mal eine PN schreiben (bezogen auf -> [DT]Sniper und keinen anderen)

    Ich war vorher auch kurz auf dem Server um ihn kurz zu testen das ganze hat mich nicht wirklich überzeugt.


    Forum:


    Die Enterpage ist eigentlich ganz ok und vermittelt den düsteren Effekt, wie man es von Day-Z gewöhnt ist an sich nicht schlecht was ich vllt entfernen würde, wäre beim Copyright
    die Unterstreichung des Erstellers oder wenigstens diesem eine andere Farbe geben.

    Code
    #copyright a {
        text-decoration: none;
    }


    Zum Forum an sich gefällt mir eigentlich ganz gut ,das icon-pack ist auch gut gewählt nur das MainMenu könnte man anders gestalten und was mir hier auch nicht so gefällt
    sind noch paar Standartfarben vom unveränderten Design beispiel der hover Effekt bei den Buttons (Thema erstellen). Jedoch wolltest ihr laut euerer Vorstellung sowieso ein
    Design von .Pall nutzen.


    Vorstellung:


    Diese Vorstellung fand ich recht ansprechend , dies war auch der Grund warum ich mir den Server doch angeschaut habe, es ist recht übersichtlich gehalten und alles wissenswerte
    ist gut geschildert und ausführlich enthalten.


    Server:


    Das Tutorial fand ich wirklich top und kreativ, genau wie das Inventarsystem. Ich finde es schade das es leider nicht noch mehr Systeme gibt auf diesem Niveau.
    Zum negativen: Die Map finde ich jetzt nicht sehr gut gestaltet da könnte ich euch ja mal ein Beispiel am UL-Clan nehmen oder Survival Hunter.
    Was ich auch immer wieder gesehen habe in den Textdraws, das paar Tippfehler enthalten sind Beispiel: ei statt ein etc ... .
    Ebenso verwendet ihr keine Umlaute, das ist ein kleine Bug von Samp wegen der Zeichenkoodierung, in dem Thread von dem dynamischen Gps + Tacho im Showroom habe ich mein fix mal rein gepostet den könnt ihr ja verwenden.


    Was ich auch noch zu bemängeln habe ich das Anticheat , welches wirklich nicht gut ist , eventuell hier auch noch ein bissle aufrüsten.


    Siehe screen:



    1. Damit ist deine neuformatierung von deinem String gemeint bei dem befehl /gpscfg und /gps


    2. Da entstehen eigentlich keine Warnings


    5. xD hab ich irgendwie verpeilt in dem Zusammenhang mit deinem GPS System, jedoch könnte man noch das Ziel des zu suchenden Ortes einbinden.

    Ich hätte da paar Tipps:


    1. Du erstellst immer erneut den String mit den GPS Punkten warum nicht einfach einen globalen string nutzen und die GPS Punkte cachen , bedeutet das du das ganze dann aktualisierst
    wenn ein neuer Punkt hinzugefügt wird oder nicht.


    2. #pragma unused params kann man benutzen ist nur ein unnötiger lückenfüller


    3.
    dialog[MAX_PLAYERS],select[MAX_PLAYERS],NavActive[MAX_PLAYERS],NavActiveID[MAX_PLAYERS];


    könntest du durch ein enum verschönern, ist zwar nicht nötig, aber wirkt doch viel strukturierter.


    4. Die Selectid kannst du auch "umgehen" in dem du einfach das Listitem nimmst, falls du ein Listitem anklickst wird der Inhalt an inputtext übergeben
    oder du gibst dem ganzen eine Auflistung von 1 bis ... und greifst auf den Array mit den Daten zu , jedoch musst die die Zahl vom string extrahieren.


    5. Du kannst ja noch den Bug mit den Textdraws fixen also Umlauten.



    native __PlayerTextDrawSetString(playerid, PlayerText:playertextdraw, string[], font=2) = PlayerTextDrawSetString;
    stock _PlayerTextDrawSetString(playerid, PlayerText:playertextdraw, string[], font=2) {
    _encoding(string,font);
    return __PlayerTextDrawSetString(playerid,playertextdraw,string);
    }
    #if defined _ALS_PlayerTextDrawSetString
    #undef PlayerTextDrawSetString
    #else
    #define _ALS_PlayerTextDrawSetString
    #endif
    #define PlayerTextDrawSetString _PlayerTextDrawSetString
    stock _encoding(string[],font)
    {
    switch(font){
    case 0,1:{
    for(new i;;++i){
    switch(string[i]){
    case EOS: break;
    case 'Ä':string[i] = '\131;';
    case 'Ö':string[i] = '\145;';
    case 'Ü':string[i] = '\149;';
    case 'ä':string[i] = '\154;';
    case 'ö':string[i] = '\168;';
    case 'ü':string[i] = '\172;';
    }
    }
    }case 2,3:{
    for(new i;;++i){
    switch(string[i]){
    case EOS: break;
    case 'Ä','ä':string[i] = '\216;';
    case 'Ö','ö':string[i] = '\230;';
    case 'Ü','ü':string[i] = '\234;';
    }
    }
    }
    }
    }


    Kann man aber auch umgehen ^^


    Ich weis daher erstmal client crashen und danach den kick nachschieben.
    Man kann alles umgehen :D und mache auch offline die kontrolle von einem fremden client übernehmen und in desynchronisieren um diesen "zu steuern".


    Das alte Raknet was samp nutzt macht es möglich.


    @BlackAce eigentlich schon alle, dazu sich einfach desynchronisieren xD und keine packete mehr übermitteln.

    Mir ist neu, dass man Textdraws unterdrücken kann.


    Wie ist es scripttechnisch möglich den Client eines Spielers absichtlich crashen zu lassen?


    Ich muss sagen, das mit der extra virtuellen Welt als "Quarantäne-Bereich" ist eine sau gute Idee.


    Kann man alles mit sobeit umgehen.


    Wie bereits gesagt mit invaliden tuningteilen
    oder beim GameText mit Sonderzeichen auch mit Textdraws geht das wenn die farbcodes falsch mit diesem Zeichen angewandt werden ~.

    Habe es mir mal angeschaut aber ich verstehe immernoch nicht wie dieses Plugin genau funkt weil ich gerade auf das alte fixxirt bin und dazu kommt das ich immernoch nicht weis wie ich per Befehl im TS rechte vergebe..


    MfG


    Du musst es erstmal einbinden , danach die Funktion TSC_Connect ausführen (Danach dem Account manuel Rechte geben)

    TSC_Connect("serveradmin", "password", "127.0.0.1", 9987);


    Damit erstellst du einen "Ts3 Bot"
    serveradmin => Name
    password => Ts3 passwort /muss nicht gegeben sein


    native TSC_Connect(user[], pass[], ip[], port = 9987, serverquery_port = 10011, bool:wait = true);


    TSC_OnClientConnect(clientid, nickname[]);


    wird aufgerufen wenn der Spieler mit dem Ts3 verbindet darüber solltest du dem Spieler eine variable setzen mit der clientid, eventuell erstmal dem Spieler die Nachricht übermitteln
    das er den selben Namen auf dem Ts3 haben sollte wie Ingame/ sollte er das nicht haben => kick (jedoch nur bei unregistrierten Usern, Das Plugin bietet zwar hier nicht die Möglichkeit das direkt abzufragen jedoch kannst du einen variable im Account setzen , wenn der Spieler sich ingame freigeschalten hat).


    Man könnte jedoch auch ein Array erstellen mit dem man ganz einfach die Namen, welche die Leute besitzen im Ts3 speichert und darüber abfrägt ob sich ein Spieler mit dem Namen
    auf dem Ts3 befindet.

    Ist immer noch :/
    Noch eine Idee?


    Das Problem das Callback hat nix mit den rückgabe werten zu tun.


    1 wird zurückgegeben wenn das Query erfolgreich ausgeführt werden konnte, falls dem nicht so sei so wird 0 zurückgegeben.


    Was du jedoch machen könntest wäre cache_save zu nutzen um den ganzen Tabelleninhalt zwischen zu speichern. So kannst du in einer extra Funktion auf das ganze zurückgreifen.

    Ich hab den Server auch des öfteren mal Besucht.
    Insgesamt ist er recht gut gemacht, die Map Veränderungen
    sorgen dafür das es vieles zu entdecken gibt und die Features sind auch im Vergleich zu anderen DayZ Servern recht gut.
    Das Adminteam ist auch Recht kompetent. Zum Anticheat
    so sicher ist es nicht ich hab das Login und Register schon paar mal und die Sobeitdetection umgangen.


    dur darfst keine Float und ein Integer zusammen addieren


    Das

    PlayerInfo[i][pBank]+=tmp_brx;


    zu


    PlayerInfo[i][pBank]+= floatround(tmp_brx, floatround_ceil);

    Schnelle Methode, um Adminränge o. Ä zu erstellen und zu ändern, ohne 1000x den einzelnen Rang suchen &


    Code ist nicht von mir, müsste - glaube ich - von d0ma: sein. ( Ich hoffe du hast nichts dagegen, dass ich den Code poste)


    Code ist nicht von mir, müsste - glaube ich - von d0ma: sein. ( Ich hoffe du hast nichts dagegen, dass ich den Code poste)


    Was spricht hier noch dagegen hier noch ein define zu erstellen :D


    names[data[playerid][adminrang]]



    #define GetAdminRang(%0) names[data[%0][adminrang]]


    [pwnGetRestTimerForVar(var)[/pwn] und die nadere Funktion


    kann man auch in ein define umändern



    #define SetTimeForVar(%0,%1) %0 = gettime() + %1
    #define GetRestTimerForVar(%0) ((%0 <= gettime())?(0):(%0 - gettime()))


    @ Sniper:


    #define DezimalToBinary(%0,%1) format(%1,sizeof(%1),"%b",%0)


    nutz doch einfach den Plathalter %b