Forumquake cupQuake Live

Aktuelle News
    » Aktuelle News
    » et:quakewars News
    » War§ow News
    » inGame-News
    » News Archiv
    » News mitteilen

inquake.de Foren
    » Foren-Übersicht
    » Allgemeines Forum
    » Quakeforen
    » Quake Live Forum
    » Quake 4 Forum
    » et:quakewars Forum
    » Retroquake
    » Themenforen

Szene und Turniere
    » inquake Liga
    » ingame.quake-cup
    » Interviews
    » Kolumnen

Quake Live
    » Grundlagen
    » Gegenstände
    » Arenen
    » Auszeichnungen
    » Hilfe
      » Forum
      » Glossar
      » Quake Live FAQ
      » Tools & Add-Ons

Quake IV
    » Allgemeines
    » Singleplayer
    » Multiplayer
    » Downloads
    » Quake IV Forum

et:quakewars
    » Aktuelle News
    » ET:QW Forum
    » Das Spiel
    » Downloads
    » Screenshots

Quake III Arena
    » Übersicht
    » Das Spiel
    » Tipps & Tricks
    » Downloads
    » Archiv
    » Art, Comics & Fun

warsow
    » Aktuelle News
    » War§ow Forum
    » Das Spiel
    » Tipps und Tricks
      » Config + Console
      » Movement
    » Downloads

inquake.de
    » Der Staff
    » Jobs @ inquake
    » inquake Banner




 




Interview von wienerwald mit _shadE, dem CPMA Aimbot-Coder.


[wienerwald]: Danke erst einmal, daß Du Dir die Zeit für dieses Interview nimmst und uns einige Fragen beantwortest.
[_shadE]: np

[wienerwald]: Wie kommt man überhaupt auf die Idee, einen Aimbot für Quake 3 zu coden bzw.was ist Deine Motivation dabei gewesen?
[_shadE]: Nun, soweit ich weiß gab es für die letzten CPMA-Versionen keinen Aimbot und ich dachte mir, "Wieso nicht mal den Leuten zeigen, daß es auch unter CPMa Bots geben kann?"...

[wienerwald]: Also nur, um zu zeigen was möglich ist?
[_shadE]: Um zu zeigen, _daß_ es möglich ist. Und um zu zeigen, daß auch die CPMA-Protections von arQon zu überwinden ist.

[wienerwald]: "Protections"...gutes Stichwort.... Gibt es sowas überhaupt? Anders gesagt: Waren sie ein allzu großes Hindernis?
[_shadE]: Es gab eine "Pseudo-Protection" und halt die Bot-Protection selbst. Die Bot-Protection macht nichts anders, als die Koordinaten der Player-Entities (=Koordinaten der anderen Spieler) auf dem Server um einen bestimmten Wert zu ändern, welche dann bei den Clients wieder zurückverändert werden. Damit sind die normalen VQ3-Bots wirkungslos. Die andere Sache ist, daß CPMA, entweder beabsichtigt oder durch einen Bug, die Koordinaten der Player übermittelt, die sich NICHT in der eigenen Arena aufhalten, was aber auch kein allzu großes Problem darstellt. Dies waren die einzigen 2 Protections, die ich in den letzten CPMA-Versionen erkennen konnte.

[wienerwald]: Gilt dies auch für die "neueren" 0.99er CPMA-Versionen? Funktioniert der Bot dort auch?
[_shadE]: Ja, richtig.

[wienerwald]: Wie sieht es mit anderen Mods aus, OSP z.B.?
[_shadE]: Der Basiscode, wenn es um Aimbots geht, ist in allen getesteten Versionen gleich. OSP funktioniert fast genauso wie CPMA. Ein ähnlicher SChutzvorgang, der jedoch auch innerhalb weniger Stunden zu überwinden ist.

[wienerwald]: Also auch kein wirklicher "Schutz" ....
[_shadE]: Um es auf einen Punkt zu bringen: Es gibt keinen wirklichen _Schutz_ ... Alles, was auf der CPU ausführbar ist, kann "reverse engineered" werden, was einfach nur heisst, daß alles was Du auf dem Monitor siehst intern analysiert werden kann. Nur so können Aimbots programmiert werden.

[wienerwald]: Also _kann_ es keinen Schutz im eigentlichen Sinne geben?
[_shadE]: Der Schutz kann höchstens verbessert werden, was einfach nur das "cracken" hinauszögern würde. Aber einen richtigen, 100prozentigen Schutz..... sowas kann und wird es nicht geben.

[wienerwald]: Klingt ein wenig deprimierend was die Zukunftsaussichten des Onlinegamings in Punkto "Cheatschutz" angeht..... Könntest Du kurz erzählen, wie Dein Aimbot im Spiel funktioniert? Also.... Aimed er nur auf Gegner? Auch auf Teammates? Ist der Bot pingabhängig?
[_shadE]: Yes... Zum Aiming selbst: Die Koordinaten des Gegners der dem Crosshair am nächsten steht werden "angelockt". Wenn man jetzt die gegebene "Lock-Taste" drückt, bleibt das Crosshair nonstop an dem Gegner haften, egal wie schnell er sich bewegt. Dies gilt auch für friendly Units. Unterscheiden kann der Bot dies nicht, da dies um einiges mehr an Botcode zur Folge hätte...

[wienerwald]: Wobei der Bot aber keinerlei Kollisionsabfrage mit z.B. Wänden hat, oder?
[_shadE]: Richtig. Er aimed durch Gegenstände, Wände, andere Spieler etc. Zum Ping: Dies ist einstellbar. Entweder man schaltet die Ping-Prediction ab, dann sind jedoch bei einem Ping über 50ms keine Treffer garantiert, oder man berechnet pingabhängig die Position des Gegners im vorraus.

[wienerwald]: Wäre ein "besserer" Bot realisierbar? Also, ein Bot der z.B. nicht durch Wände aimed? Oder sogar einer mit einer Art "fuzzy-Logic", der das menschliche Aiming simuliert?
[_shadE]: Alles machbar. Ich bin nur zu faul, da jetzt noch sowas einzubauen. Alles eine Frage der Mühe, die sich der Coder gibt. Und das durch-Wände-aimen ist ja kein Nachteil wenn man botted, oder? :) Er funktioniert so eigentlich genau so, wie ich ihn konzipiert hatte.

[wienerwald]: Also, anders gesagt: Würdest Du Dir richtig Mühe geben, dann könnte man den Bot so ohne weiteres nicht mehr erkennen?
[_shadE]: Richtig. 4 oder 5 Prozeduren mehr für das Abfälschen und das Problem wäre gelöst.

[wienerwald]: Du sagtest, einen wirklichen SChutz gegen Aimbots gebe es in Q3 nicht. Was könnten die Macher der Mods CPMA und OSP machen, um den Schutz zumindest zu verbessern?
[_shadE]: Das Einzige, was sie machen könnten.... arQon müsste durch eine dynamische, also veränderliche Variable die korrekten Positionen der Spieler auf dem Server verändern, welche dann bei den Klienten zurückgesetzt wird. Die dynamische Variable selbst könnte z.B. als eine eigene Entity im Snapshot rübergeschickt werden. Doch im Moment basiert der "Schutz" lediglich auf der Clientnummer der Spieler...

[wienerwald]: Was ja nicht wirklich "dynamisch" ist im Moment... Also ohne einen dynamischen Faktor bei der Positionscodierung geht erstmal nichts?
[_shadE]: Richtig. Der Programmierer könnte das, was momentan vorliegt, höchstens komplizierter gestalten, mit mehreren Konstanten etc. Dies würde jedoch höchstens die Arbeit der Bot-Coder verlängern, aufzuhalten wären sie dadurch nicht.

[wienerwald]: Hast Du den Bot eigentlich ursprünglich für CPMA entwickelt oder ist dies nur ein umgeschriebener Aimbot eines anderen Games?
[_shadE]: Hatte davor etwaige Bot-Versionen für VQ3 geschrieben...

[wienerwald]: Also.... Ra3? :P
[_shadE]: Unter anderem. Der CPMA-Bot ist lediglich ein umgeschriebener VQ3-Bot.

[wienerwald]: Wie lange dauert es eigentlich, solche einen Bot zu coden?
[_shadE]: From scratch? Von Anfang an? ;)

[wienerwald]: Ja, sozusagen "from scratch"....
[_shadE]: Nun von Anfang an....wenn man jetzt mit dem disassemblieren der quake3.exe fertig geworden ist....dann vielleicht 2 Wochen. Das porten des VQ3-Bots hat vielleicht 1-2 Tage gedauert.

[wienerwald]: Nicht gerade viel, wenn man bedenkt, daß die CPMA- und OSP-Coder ungleich mehr Zeit darauf verwenden, ihre Mods vor Bots wie deinem zu schützen.
[_shadE]: In der Tat .)

[wienerwald]: Hast Du vor den Bot zu veröffentlichen? Oder wolltest Du wirklich nur Dir und anderen beweisen, daß es einen Bot unter CPMA geben kann und nun auch gibt?
[_shadE]: Nein. Das veröffentlichen des Bots würde wieder teilweise zum Ruin des Spiels führen. Keiner wüsste zu 100%, ob der andere nicht doch cheatet.... Und das war von Anfang an nicht die Absicht!

[wienerwald]: Das sind ja doch "edlere" Absichten als man einem Botcoder im ersten Moment zutraut.... ;)
[_shadE]: Ich meine, kaum testet man den Bot mal auf nem public-Server, kommen gleich zigtausend "cheater","lamer" etc. Msgs....

[wienerwald]: ...und es landet sofort eine Demo in den News von planetquake.de.. ;) Bei CS z.b. gibt es ja Tools wie z.B. den Punkbuster. Würde so etwas auch bei Quake3 etwas bewirken?
[_shadE]: Yep. Ma betrachte den Cheatschutz von id-Software selbst: Das ist nur ein CRC-Check (=Quersummencheck) der quake3.exe beim Startup.... was jedoch mit einem Loader leicht umgangen wird. Etwaige Anticheat-Programme wie z.B. der Punkbuster könnten diese Schwachstellen schliessen... Der Botcode selbst exisitiert nur in der quake3.exe . Wäre id nun in der Lage einen ordentlichen File/Memory-CRC-Check hinzukriegen, der nicht nur beim Startup alles überprüft, sondern willkürlich während des Spiels, _dann_ würde dies ein Problem darstellen. Doch nichts.... von Seiten id´s!

[wienerwald]: Eine Laienfrage: Das heisst, der "schwarze Peter" wohnt bei id und Mod-Programmierer wie z.B. arQon (CPMA) oder Rhea (OSP) können nichts machen?
[_shadE]: arQon und Rhea haben ihre eigenen Cheatprotections. Ich spreche aber von grundlegenderen Dingen, wie den Bot überhaupt in die quake3.exe reinzukriegen.

[wienerwald]: In einem Pointrelease, 1.27 war es glaube ich, gab es einen angeblich "bahnbrechenden", neuen Cheatschutz... war das nur ein Werbegag? ;)
[_shadE]: Genau das ist mit dem "Pseudo"-CRC-Check gemeint, der nur beim Startup ausgeführt wird... Vorher war dieser nicht drin und man brauchte keinen Loader. Ich meine, ich als Programmierer eines so populären Spieles wie Quake3 würde schon irgendwo darauf achtgeben, daß die Haupt-exe nicht manipuliert wird....

[wienerwald]: Also zusammengefasst: die einzig "wirksamen" Maßnahmen gegen Aimbots wären ein zufälliger CRC-Check der quake3.exe von Seiten id´s sowie ein wirklich dynamischer Faktor der Mod-Programmierer bei der Koordinatencodierung?
[_shadE]: Yep. So in etwa.

[wienerwald]: Vielleicht noch abschließend: Was braucht man um einen Bot zu coden? Und wieso kannst Du es?
[_shadE]: 3 Sachen.... Assembler Erfahrung (zum disassemblieren der quake3.exe und zum "verstehen" des Codes), die q3ta1.29-Sources, für das Verständnis von entities, snapshots, etc. und natürlich Grips. Grips schadet nie! .)
[_shadE]: Dies gilt generell für alles, was man analysieren will. Im Prinzip sind Assembler-Basics alles, was man braucht. Die 1.29-Sources haben alles nur beschleunigt
.

[wienerwald]: Da Du den Bot ja nicht um des besseren Zockens willen geschrieben hast.... würdest Du z.B. arQon helfen, CPMA cheatsicherer zu machen?
[_shadE]: Yep. Kein Prob. .)

[wienerwald]: Als Allerletztes noch: Du wurdest des öfteren auf einigen CPMA-Serven mit dem Nick von [p][red], und auch anderen Spielern von plaGue, beim Bot-Testen gesichtet. Warum gerade plaGue bzw. [p][red]?
[_shadE]: Nun, um ehrlich zu sein.... Als ich mich da auf diesem Server befand und mir dieser schön colorierte Nick ins Blickfeld kam, also [p][red], da dachte ich mir... "wieso nicht?"....

[wienerwald]: Und man wird nicht so schnell gekickt mit einem "bekannten" Nick...
[_shadE]: Richtig, das war der Sinn der Sache. .)

[wienerwald]: ok, nicht daß die Jungs von plaGue noch denken, Du hättest was gegen sie.... :)
[_shadE]: Never! Ich kenn sie doch garnicht.

[wienerwald]: Ok, dann danke ich Dir recht herzlich für _meine_ wunden Finger und für die Stunde Zeit die Du Dir genommen hast! ;)
[_shadE]: np² .)



Kommentare


Interviews
Seitenanfang top
 
copyright ingame GmbH 2003 - Design by Forlani

Counter-Strike: Global Offensive

ingame Netzwerk
Call of Duty | Counter-Strike: Global Offensive | Diablo 3 | Dota 2 | League of Legends | Quake 3 | Heroes of the Storm | Unreal | Overwatch | Starcraft 2 | Torchlight 2 | Warcraft 3 | World of Warcraft | Hearthstone | Kino, TV, Film und Promis

Support | AGB | Probleme mit der Werbung melden
Online Werbung | Mediadaten | Unternehmen | Karriere | Impressum

© ingame GmbH, ingame™ ist ein eingetragenes Markenzeichen der ingame GmbH. Verwendung von Inhalten nur mit schriftlicher Genehmigung.