OnPlayerTakeDamage Schaden verhindern?

Wichtiger Hinweis: Bitte ändert nicht manuell die Schriftfarbe auf schwarz sondern belasst es bei der Standardeinstellung. Somit tragt ihr dazu bei dass euer Text auch bei Verwendung unseren dunklen Forenstils noch lesbar ist!

Tipp: Ihr wollt längere Codeausschnitte oder Logfiles bereitstellen? Benutzt unseren eigenen PasteBin-Dienst Link
  • Sag mal wie kann man bei OnPlayerTakeDamage den Schaden verhindern bzw wie läuft das da genau ab? Wird der Schaden erst am Ender der Funktion abgezogen oder schon am Anfang?


    Wenn ich jetzt amount immer abgerundet haben möchte und nur diesen Wert abziehen lassen möchte, wie mache ich das dann?
    Hab den Wert abgerundet und einfach von den originalen HP abgezogen und als neue originale HP gesetzt. abgezogen, aber irgendwie habe ich das Gefühl das da jetzt irgendwas nicht richtig stimmt und der Schaden erneut abgezogen wird von OnPlayerTakeDamage.


    Jedenfalls behauptet mein Anti Cheat System das die originalen HP und Clienten HP nicht übereinstimmen.

  • Weil der Schaden mal auf und mal abgerundet wird und das glaube ich auch zufällig. Hatte es mal mit dem automatischen auf/abrunden gemacht aber das stimmte nicht überein, also will ich den Schaden immer aufrunden (mit dem abrunden vorhin vertan) damit es immer 100% passt.


    Am besten geht dies eben indem ich den Schaden deaktiviere und mit meiner aufgerundeten Zahl die HP selbst setze. Aber irgendwie will das nicht so richtig.

  • Bekomme bei return1/0 dennoch Schaden.
    Habs mal so gemacht und es stimmt 0 überein:

    Bei einer Abfrage werden die HP zB als 60 angezeigt aber der Balken ist bei 20-30%.




    EDIT:


    Es soll auch Fallschaden und Explosionsschaden etc verhindert werden. Sprich das der Spieler einfach unsterblich ist. Von PLayer zu Player wäre das kein Problem aber für mein Anti Healhack muss ich ja immer abfragen wv HP der Spieler eig haben sollte falls jemand hackt.

  • Ja schon klar aber ich will ja den Schaden verhindern. Es soll gar kein Schaden da sein.


    Komme selbst shcon ein wenig durcheinander. Also wird demnach der Schaden erst am Ende der Funktion abgezogen oder?


    Wenn ich den nun nicht verhindern kann, wie kann ich dann eine Float zum Abgleichen der Clienten HP nehmen. Wenn ich die Leben einfach auf die HP setze nimmt er ja die Leben bevor Leben abgezogen wurde.


    Ein Timer würde glaube ich zu viel sein bei jeden Hit der auf dem Server geschieht.


    Und dadurch das Amount zufällig ab oder aufgerundet wird klappt das damit leider auch nicht.
    Jemand ne andere Idee?

  • Es muss ja noch die Überprüfung auf Fremd einwirkung rein.

    Mit Freundlichen Grüßen
    Whitetiiger aka. Kaito-sensei
    P.s. Alle mit #IRONIE bestätigten Sätze von mir, sind als Ironie anzusehen.

  • Das mit den Leben raufsetzen und dann meinen eigenen Schaden abziehen habe ich auch bereits versucht. Irgendwie klappt das aber nicht richtig und die Werte kommen total durcheinander.


    Gibt es überhaupt irgendeinen Faden in der Funktion OnPlayerTakeDamge und wenn ja wo kann man den herausfinden dmait man sich mal genauer damit auseinander setzen kann?