Anfälligkeit von Spielen



  • Hallo,

    warum verwenden so viele Spiele zusätzlich eigene DLLs?
    Das macht doch diese fürs hacken und die Konstruktion von Bots viel anfälliger,
    weil man die fertigen Funktionen aus der DLL laden kann, anstatt sie mühsam nachbauen zu müssen.

    Warum vermeidet man also die Verwendung von DLLs nicht?
    (Oder werden die Spiele ohne die Verwendung noch anfälliger?)

    Dies ist kein Troll Beitrag, sondern wirklich ernst gemeint!



  • MisterX schrieb:

    Hallo,

    warum verwenden so viele Spiele zusätzlich eigene DLLs?
    Das macht doch diese fürs hacken und die Konstruktion von Bots viel anfälliger,
    weil man die fertigen Funktionen aus der DLL laden kann, anstatt sie mühsam nachbauen zu müssen.

    Warum vermeidet man also die Verwendung von DLLs nicht?
    (Oder werden die Spiele ohne die Verwendung noch anfälliger?)

    Dies ist kein Troll Beitrag, sondern wirklich ernst gemeint!

    😕
    Du hast nicht wirklich Ahnung von .EXE und .DLL Dateien oder?
    Was lässt dich glauben, dass es nicht möglich ist Funktionen aus der .EXE aufzurufen?



  • normalerweise sind exe und dll verschluesselt vom kopierschutz/drm bei kaufbaren spielen. ein teil wird entschluesselt im speicher gehalten, auf wievielen dlls die sind ist dabei egal.
    😉



  • Die Entwicklung eines Programmes von derartigen Ausmaßen ist ohnehin kaum ohne Modularisierung zu bewältigen.



  • audacia schrieb:

    Die Entwicklung eines Programmes von derartigen Ausmaßen ist ohnehin kaum ohne Modularisierung zu bewältigen.

    Modularisierung muss aber nicht zwingend heißen, dass das Kompilat am Ende auch in mehreren Dateien liegt. Kannst du auch mit statischen Libs machen!



  • angenommen alle dll dateien werden in die exe gelinkt - dann ist die exe >500MB
    patche das mal #gg

    wenn was gehoben wurde, und nur ein paar dlls ausgetauscht werden, und/oder auch die exe selber

    oder erweiterungen der exe

    jedesmal eine neue 2gb grosse exe datei runterladen?

    wenn ich an unsere relativ grosse applikation denk, die braucht ~1h zum bau, wenn was gepatcht wird was nur die dll betrifft, warum die exe neu bauen, und wenns gepatcht wird, wozu die exe neu ausliefern?

    und dann noch zusatztools - diese koennen die selben dll files verwenden, so hat man auch keine doppelte datenhaltung

    der nachteil der extern liegenden dll datei ershcliesst sich mir nicht - obs in der dll ist oder in der exe - kommt man in beiden gleich gut heran

    // man kann auch abhaenigkeiten erzwingen "um dieses addon verwenden zu koennen muessen sie X installiert haben" [stichword expansion packs, Call of Duty United Offensive, oder Sims 2]



  • Mr Evil schrieb:

    angenommen alle dll dateien werden in die exe gelinkt - dann ist die exe >500MB

    Zeig mir mal ein Spiel, das 500 MB an ausführbaren Dateien + DLLs hat ... 🙄



  • phalanx-fanboy schrieb:

    Mr Evil schrieb:

    angenommen alle dll dateien werden in die exe gelinkt - dann ist die exe >500MB

    Zeig mir mal ein Spiel, das 500 MB an ausführbaren Dateien + DLLs hat ... 🙄

    Manchen Leuten ist das Stilmittel "Übertreibung" wohl ein Fremdwort.

    @Mr Evil, beachte doch bitte in Zukunft, dass nicht jeder Benutzer in diesem Forum das Gymnasium besucht hat.

    P.S. Ja, ich weiß, dass dieses Stilmittel ein Fachwort hat (und ich kenne es sogar!), aber für all diejenigen die sich daran stören verweise ich auf den Rat an Mr Evil.



  • Mr Evil schrieb:

    jedesmal eine neue 2gb grosse exe datei runterladen?

    Man kann auch sehr gut patchen, ohne gleich die ganze Datei zu ersetzen 😉 Einfach nur die Differenz der Dateien übertragen und einpflegen, das ist dann idR eine nur sehr kleine Datenmenge. Ob das aber mit verschlüsselten/ver-drm-ten Dateien so einfach klappt, weiß ich nicht.



  • Mr Evil schrieb:

    angenommen alle dll dateien werden in die exe gelinkt - dann ist die exe >500MB
    patche das mal #gg

    es ist egal ob in einer datei oder verschiedenen, der signatur wegen enthaellt der patch wohl alle binaries.



  • Badestrand schrieb:

    Mr Evil schrieb:

    jedesmal eine neue 2gb grosse exe datei runterladen?

    Man kann auch sehr gut patchen, ohne gleich die ganze Datei zu ersetzen 😉 Einfach nur die Differenz der Dateien übertragen und einpflegen, das ist dann idR eine nur sehr kleine Datenmenge. Ob das aber mit verschlüsselten/ver-drm-ten Dateien so einfach klappt, weiß ich nicht.

    Bau mal eine Application mit viel Code in einer Exe (vielleicht so 2-5 MB).
    Dann verändere eine deiner Dasis-Datenstrukturen und füg mal ein paar funktionen hinzu, die kompatiblität zu alten dateien gewährleisten. Dann bau neu, und verglecih mal die exen.
    Da ist nicht mehr viel ähnlichkeit, da ist es besser das geänderte File komplett auszutauschen.



  • vlad_tepesch schrieb:

    Badestrand schrieb:

    Mr Evil schrieb:

    jedesmal eine neue 2gb grosse exe datei runterladen?

    Man kann auch sehr gut patchen, ohne gleich die ganze Datei zu ersetzen 😉 Einfach nur die Differenz der Dateien übertragen und einpflegen, das ist dann idR eine nur sehr kleine Datenmenge. Ob das aber mit verschlüsselten/ver-drm-ten Dateien so einfach klappt, weiß ich nicht.

    Bau mal eine Application mit viel Code in einer Exe (vielleicht so 2-5 MB).
    Dann verändere eine deiner Dasis-Datenstrukturen und füg mal ein paar funktionen hinzu, die kompatiblität zu alten dateien gewährleisten. Dann bau neu, und verglecih mal die exen.
    Da ist nicht mehr viel ähnlichkeit, da ist es besser das geänderte File komplett auszutauschen.

    alles eine frage des designs 😉

    mit guter kapselung hat man fuer alle daten accessor functions und diese bereiten die daten immer wie gewuenscht auf, du merkst durch das interface dann keine interna und es sieht nicht alles komplett anders aus, bestenfalls weil der compiler inlined.



  • Ich kam auf die Frage, weil ich mit Google Codesuche zufällig einen Bot zu Diablo 2 gefunden habe.(Den Code dazu natürlich). Und dieser funktioniert nen bisl mit DLL injection und anscheinend damit, einfach die DLLs aufzurufen die bei Diablo dabei sind. Es mußte nur die zu übergebende und zurückgekieferte Datenstruktur nachgebaut werden.
    Aber ganz schön kompliziert und groß das Bot Programm. Ich versteh nur nen kleinen Bruchteil davon.
    Aber interessant ist es vom Prinzip her 😃

    (Nur ausprobieren traue ich mich das nicht, denn ich habe kein Bock mir nen neuen CD Code (Spiel) kaufen zu müssen 😉 )



  • MisterX schrieb:

    Ich kam auf die Frage, weil ich mit Google Codesuche zufällig einen Bot zu Diablo 2 gefunden habe.(Den Code dazu natürlich). Und dieser funktioniert nen bisl mit DLL injection und anscheinend damit, einfach die DLLs aufzurufen die bei Diablo dabei sind. Es mußte nur die zu übergebende und zurückgekieferte Datenstruktur nachgebaut werden.
    Aber ganz schön kompliziert und groß das Bot Programm. Ich versteh nur nen kleinen Bruchteil davon.
    Aber interessant ist es vom Prinzip her 😃

    (Nur ausprobieren traue ich mich das nicht, denn ich habe kein Bock mir nen neuen CD Code (Spiel) kaufen zu müssen 😉 )

    Link?



  • Wär' auch am Link interessiert ...



  • Es tut mir leid, aber einen Link zu einem DIABLO2 Bot möchte ich hier nicht angeben. Da so ein Bot etwas sehr Unfähres ist in einem Spiel wie Diablo. Insbesodere der Lifesaver stellt für Hardcore Spiele eine sehr unfäre Cheatmöglichkeit dar, weil er sobald das Leben (Bei Diablo auch oft einfach nur HEALTH genannt) zu niedrig wird, einfach das Spiel beendet. Und solange man bei Diablo seine sachen selbst suchen muß macht das doch viel mehr spaß. Auch wenn man sonst noch was Über die SPRACHE C le



  • Es tut mir leid, aber einen Link zu einem DIABLO2 Bot möchte ich hier nicht angeben. Da so ein Bot etwas sehr Unfähres ist in einem Spiel wie Diablo. Insbesodere der Lifesaver stellt für Hardcore Spiele eine sehr unfäre Cheatmöglichkeit dar, weil er sobald das Leben (Bei Diablo auch oft einfach nur HEALTH genannt) zu niedrig wird, einfach das Spiel beendet. Und solange man bei Diablo seine sachen selbst suchen muß macht das doch viel mehr spaß. Auch wenn man sonst noch was Über die SPRACHE C lernen könnte. denn wie im richtigen Leben gilt auch bei Diablo, nur wer die richtig große Rüstung findet kommt an sein ziel.

    Also noch einmal ein wirklich ernst gemeinter Rat.
    Solche Bots, insbesodere wenn sie offen rumliegen werden erkannt.



  • ich denke, die mwenigsten hier interessieren sich dafür, um damit zu cheaten. Dass Interesse bezieht sich eher allgemein auf die Techniken, die angewandt wurden.
    Kommt natürlich auch drauf an, was du unter bot verstehst.
    wenn das ding nur das spiel beendent, wenn das leben gering ist, ist das kein bot (hieran ist wahrschienlich das schwierigste, die speicherstelle zu finden, an der die Lbensenergie liegt).
    Ein Bot ist ein Programm, was das spiel selbständig spielt.



  • Es ist ein echter Bot mit code.

    Ließ mal den Beitrag mal ganz genau durch, warum da so viel Komisches drinsteht z.B das Geschwafel über die Rüsttung usw. und sei mal creativ.



  • Wenn wir cheaten wollten, würden wir einfach einen von 50 fertig compilierten, frei verfügbaren Drexxbots saugen, das ist doch wohl klar, es geht wie gesagt um den Source. Also Link pls!



  • Diablo 2 ist sowieso schon kaputt. Alles ist vercheatet, alles verduped. Echt, man kann nix mehr retten, es ist einfach egal...
    Nur mal so am Rande...

    Aber keine Ahnung ob solche Links hier überhaupt toleriert werden. Singleplayer Cheat okay, aber Multiplayer?

    MfG


Anmelden zum Antworten