Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 20 von 22

Thema: Helan | Ein Programm...Eine Revolution (und ne Pre_Beta)

  1. #1

    Helan | Ein Programm...Eine Revolution (und ne Pre_Beta)

    ACHTUNG
    Dieser Thread wurde nekromantiert und ist aus dem Jahr 2005.
    Also nicht wundern. Der aktuelle Bezug beginnt erst mit Post #14
    --Luki


    Hallo, ein guter Freund [nein und kein Bettkollege xD"] (Fallen) von mir, hat vor kurzem angefangen ein Programm zu schreiben welches DirectX Anwendungen bei der Grafikausgabe manipuliert (Bloom,... hinzufügt) und wollte mal von euch Meinungen einholen
    (in seinen Standardforen hat er leider kaum Resonanz ).

    Das ganze funktioniert zZ. nur mit wenigen DirectX9 Anwendungen aber falls jemand noch andere funktionsfähige Programme außer folgenden findet wäre er sehr dankbar. Also zZ funktionieren folgende Programme mit Helan:

    - Halo
    - FEAR
    - Earth 2160
    - Joint Operations
    - FarCry
    - Silent Hunter III
    EDIT's: (Spiele die von EUCH getestet wurden ^^)
    - Everquest [Blur/HUD]


    Sehr viel andere Programme hat er allerdings nicht getestet .

    Das Programm an sich sollte hoffentlich selbsterklärend sein (auch wenn ich es auf Englisch ausgerichtet habe, versuche mich da zu verbessern), ansonsten geht man bei der Benutzung wie folgt vor:

    Zielanwendung auswählen und wenn nötig das Arbeitsverzeichnis wählen. Danach kann man unter den Effekten ein oder mehrere gewünschte Effekte aktivieren, danach nur noch Start anklicken. Falls kein Programm funktioniert habe ich noch eine Preview Möglichkeit eingebaut, so das ihr sehen könnt wie es wirken könnte bei einem Spiel.

    Ich(Skydea+fallen) hoffe(n) auf Kritik und sonstigen Resonanzen, da ja eine kleine Webseite dazu gibt es auch: www.dragonfx.de/helan dort könnt ihr das vorläufige Programm auch runterladen.

    Ach ja hier noch ein paar Screeny's :
    Hier einige Bilder (rechte Seite jeweils mit Helan):

    Screeny 1

    Screnny 2

    Screeny 3

    Screeny 4

    Screeny 5

    Screeny 6


    mfg Skydea

    (Es ist in Planung das auch ältere Spiele wie Gothic 2 mit dem Programm unterstützt werden... dazu müsste man aber eine menge Arbeit leisten...
    und dazu braucht unser Fallen nunmal ein bischen Motivation,... also Postet wie Blöd =D und BETET (Dienstleitungen Hetrosexueller natur zählen auch dazu!) unseren Fallen an. Gebt unterstützende Kommentare/Vorschläge testet andere Spiele usw. Helft mit, in dem ihr einfach uns/ihn unterstützt. Vielen Dank)

    Geändert von Ineluki (26.01.2008 um 01:15 Uhr)

  2. #2
    Ich liebe den Bloom effekt Er läst das licht irgentwie realer aussehn (wenn richtig eingesätz)

    Nettes Programm aber um einen weissen mann zu zitieren

    Zitat Zitat von masterquest
    aus : http://www.multimediaxis.de/showthre...85#post1097285

    Was würdest du davon halten, den Source zu veröffentlichen? Immerhin ist das hier ein Programmier- und kein Programme-Forum. Und wenn du das nicht machst, bring wenigstens ein Linux-kompatibles Binary, so kann ich dein Programm nicht beurteilen.
    Das DX unter Linux nett läuft wissen wir alle aber im Punkt mit dem Code hat er recht
    Wobei das Programm nice ist und da du es anscheinent Modular Aufbaust und es erweiterbar ist mit Plugins währe Opensource noch besser da dann nicht nur 1 Person es weiter entwickeln und Pluginsschreibt sondern viele.

    edit:

    Aber schöne Arbeit respekt

    Naja und an die Linux'er hier läuft das teil auch mit WineX (weiss den neuen namen nett sry ^^,)

    edit2:

    ömm. achtung das teil kann als Cheat Programm ausgenutz würden stichwort CSS Sniper + HUD

    Geändert von dadie (13.10.2005 um 17:33 Uhr)

  3. #3
    Ich bin nur ein Sklave von Fallen nicht vergessen, er jagt mich hier mit der Peitsche dass ich hier auch ja alles mache ;__;
    ...ach ja und hier das sagt er über deinen Post Dadie:

    Zitat vom Fallen:

    Eine Dokumentation für die Plugins habe ich je nach Resonanz vor zu erstellen, bisher macht es aber noch recht wenig sinn da nur wenige Funktionen implementiert wurden (DirectX).

    Eigene Effekte hinzufügen ist jetzt schon möglich man müsste sich nur die Struktur der bisherigen Effekte anschauen, später wird dazu auch noch eine Dokumentation erscheinen.



    Der Meister hat gesprochen, weiter so er liebt es vergöttert zu werden =3.

    Ach ja von meiner Seite: Jedes Spiel das klappt reinschreiben und die LOG's der Spiele die nicht klappen in ne Text datei schreiben und hochladen dann noch vielleicht mal hier her verlinken

    Tnx an alle die mithelfen ^^

    mfg Sky

  4. #4
    Ich liste hier meine spiele auf werde die liste ab und an Edieren




    Spiel : Project Entropia
    Spiel DX : 9.0c
    Eigenes DX : 9.0c
    Graka : Geforce 4 ti 4800se DX 8.1
    Effekte : HUD : AN , Blur : AN
    Ergebniss : HUD : AUS , Blur : AUS
    Log :
    Code:
    Prometheus: Starting injector...
    Injector: Starting process...
    Injector: Injecting DLL...
    DLL: Attached onto process
    DLL (register): Direct3DCreate9
    DLL: Loading plugins...
    DLL: Registered plugin: PrometheusStdPlugin (1)
    DLL: Loaded plugins
    DLL: DirectX9 created (SDKVersion: 31)
    DLL (register): ~::CreateDevice
    DLL: DirectX9 created (SDKVersion: 31)
    DLL (register): ~::CreateDevice
    DLL: Detached from process
    Injector: Done
    Prometheus: Done
    Spiel : Guildwars
    Spiel DX : 9.0c
    Eigenes DX : 9.0c
    Graka : Geforce 4 ti 4800se DX 8.1
    Effekte : HUD : AN , Blur : AN
    Ergebniss : HUD : AUS , Blur : AUS
    Log :
    Code:
    Prometheus: Starting injector...
    Injector: Starting process...
    Injector: Injecting DLL...
    DLL: Attached onto process
    DLL (register): Direct3DCreate9
    DLL: Loading plugins...
    DLL: Registered plugin: PrometheusStdPlugin (1)
    DLL: Loaded plugins
    DLL: DirectX9 created (SDKVersion: 32)
    DLL (register): ~::CreateDevice
    DLL: Detached from process
    Injector: Done
    Prometheus: Done

    Spiel :Everquest 2
    Spiel DX : 9.0c
    Eigenes DX : 9.0c
    Graka : Geforce 4 ti 4800se DX 8.1
    Effekte : HUD : AN , Blur : AN
    Ergebniss : HUD : AN , Blur : AN
    Log :
    Code:
    Prometheus: Starting injector...
    Injector: Starting process...
    Injector: Injecting DLL...
    DLL: Attached onto process
    DLL (register): Direct3DCreate9
    DLL: Loading plugins...
    DLL: Registered plugin: PrometheusStdPlugin (1)
    DLL: Loaded plugins
    DLL: DirectX9 created (SDKVersion: 32)
    DLL (register): ~::CreateDevice
    StdPlugin: Initialising...
    StdPlugin: Loading shaders...
    StdPlugin: Shader HUD loaded
    StdPlugin: Shader MotionBlur loaded
    StdPlugin: Loaded 2 shaders
    StdPlugin: RenderTarget texturesize: 1027x768
    StdPlugin: RenderTarget format: D3DFMT_X8R8G8B8
    StdPlugin: Done initializing
    DLL (register): ~::Reset
    DLL (register): ~::Present
    DLL (register): ~::Release
    DLL (register): ~::SetRenderTarget
    StdPlugin: Resetting device...
    StdPlugin: Deinitialising...
    StdPlugin: Done deinitialising
    StdPlugin: Resetting device finished
    StdPlugin: Initialising...
    StdPlugin: Loading shaders...
    StdPlugin: Shader HUD loaded
    StdPlugin: Shader MotionBlur loaded
    StdPlugin: Loaded 2 shaders
    StdPlugin: RenderTarget texturesize: 1027x768
    StdPlugin: RenderTarget format: D3DFMT_X8R8G8B8
    StdPlugin: Done initializing
    StdPlugin: Resetting device...
    StdPlugin: Deinitialising...
    StdPlugin: Done deinitialising
    StdPlugin: Resetting device finished
    StdPlugin: Initialising...
    StdPlugin: Loading shaders...
    StdPlugin: Shader HUD loaded
    StdPlugin: Shader MotionBlur loaded
    StdPlugin: Loaded 2 shaders
    StdPlugin: RenderTarget texturesize: 1027x768
    StdPlugin: RenderTarget format: D3DFMT_X8R8G8B8
    StdPlugin: Done initializing
    StdPlugin: Deinitialising...
    StdPlugin: Done deinitialising
    DLL: Detached from process
    Injector: Done
    Prometheus: Done

    Geändert von dadie (13.10.2005 um 19:04 Uhr)

  5. #5
    Fette Idee, dummerweiße zocke ich fast nur GTA SA, welches bestimmt eh nicht unterstützt wird.
    Ich liebe Bloom. :creepy:

    Dennis

  6. #6
    @dadie:
    Also www.dragonfx.de/helan findeste im FAQ ein hinweis zum cheaten ganz unten ; )
    Da es hier wie immer Personen gibt die dazu zu fual sind mache ich mal ne kopie:

    "Is Helan able to help cheating in multiplayer games?
    I will not support cheating in multiplayer games, so Helan will be unable to do this (wallhack,...). Some people will say the HUD effect is like cheating, but think that you can paint an new HUD (like crosshairs) with an pen onto your screen by your self."



    @dennis_meckel
    Wie du sicherlich weist wenn du den ersten Post gelesen hast ganz weit unten musste nur uns unterstützen indem du spiele testest (relativ neue spiele DX9) damit unser fallen seien Arsch in die lüfte vor freude schwingt und DX8 emulieren kann damit du auch da Bloom und so was verwenden kannst ; ) .



    Naja.. ich werde mal weiter nach Posts ausschau halten ^^


    mfg Sky

  7. #7
    Die Bilder sehen an sich schon mal ganz Nett aus. Allerdings sind mir die Farben etwas zu grell eingestellt, so dass sich manche dinge nicht wirklich abheben.

    Leider spiele ich keine Spiele, so dass ich weder etwas testen koennte noch es fuer mich ueberaus nuetzlich waere ... trotzdem finde ich die idee ueberaus reizend.

    Wenn dein Freund auf eine grosse Fangemeinde aus ist, koennte er ja mal testen, ob sein Programm auch im Hinblick auf den Rm2k und Nachfolger nutzbar ist. Damit waeren ihm wohl die Herzen hunderter Nutzer sicher, die sich schon seit Ewigkeiten aufgepeppte Graphiken wuenschen.

    Wenn er darauf bestehen sollte, seinen Code hier nicht zu veroeffentlichen, koennte er sich doch vielleicht wenigstens dazu hinreissen lassen, eine theoretische Abhandlung zu dem Thema zu schreiben ... das wuerde sicherlich dem einen oder andern hier interessante Impulse geben.

    Z.B. koennte er erklaehren, wie er genau diese Effekte gemacht hat, am besten nicht DirectX Abhaengig erklaehren. Dann koennten vielleicht auch einige OpenGL Programmierer hier davon profitieren.

    Alles in allem scheint es eine durchaus beeindruckende Arbeit zu sein, sollte alles gehalten werden, was versprochen wurde ...

  8. #8
    Mhm beim öffnen kommt bei mir blos "Die Anwendung konnte nicht richtig initialisiert werden (0xc0000135). Klicken Sie auf \"OK\", um die Anwendung zu beenden."

    Setzt das irgendwas besonderes vorraus? Getestet auf WinXP Prof. SP2.

  9. #9
    Soa bin mal wieder da und da ist auch einer mit einer frage ^^ soa ...

    Damit das Programm funktioniert musste auch das .NET laufzeitbibliothek auf dem Rechner installiert haben. Hier der Link : ICH BIN EIN LINK <3


    Soa dann sollte alles klappen ^^.
    Hoffe das du ein paar spiele testest und uns die Log Datei reinpostest.


    mfg Sky

  10. #10
    Jo, klar, muss aber erst mal suchen (DOS-DSA-Games [meine bevorzugten Spiele] werden ja nicht unterstützt ). Werd dann mal Ergebnisse von mir/Kumpels von mir reinediten.

  11. #11
    Also das hört und sieht alles schon sehr gut aus finde ich. Ich habe zwar in letzter Zeit nicht mehr soviel Zeit zum zocken, aber wenn dann probier ich es mal.
    Also mach mal weiter so.

  12. #12
    Hmm hat er nicht das Programm schona auf ZFX gepostet? Ah ich glaube hier ^^
    http://www.zfx.info/IOTW.php?ID=163

    Ansonsten find ich das Projekt nicht sooo doll...bei einigen Singleplayerspielen kann man damit sicherlich ganz nette Effekte Produzieren, aber ich glaube kaum das man damit in den MP kommt wenn ne Anticheatsoftware läuft (DirectX Hooks + Anticheat = stress }

  13. #13
    Zitat Zitat von Silencium
    Hmm hat er nicht das Programm schona auf ZFX gepostet? Ah ich glaube hier ^^
    http://www.zfx.info/IOTW.php?ID=163

    Ansonsten find ich das Projekt nicht sooo doll...bei einigen Singleplayerspielen kann man damit sicherlich ganz nette Effekte Produzieren, aber ich glaube kaum das man damit in den MP kommt wenn ne Anticheatsoftware läuft (DirectX Hooks + Anticheat = stress }
    Also CD hat keine Probs damit wie es mit VAC und Punkbuster aussiht weiss ich nett habe irgentwie keine games mit Pb und Vac ist mir zu Riskant da auf mienem acc. all meine spiele geregt habe ^^.

  14. #14
    Zitat Zitat von Ineluki Beitrag anzeigen
    Die Bilder sehen an sich schon mal ganz Nett aus. Allerdings sind mir die Farben etwas zu

    grell eingestellt, so dass sich manche dinge nicht wirklich abheben.

    Leider spiele ich keine Spiele, so dass ich weder etwas testen koennte noch es fuer mich ueberaus nuetzlich waere

    ... trotzdem finde ich die idee ueberaus reizend.

    Wenn dein Freund auf eine grosse Fangemeinde aus ist, koennte er ja mal testen, ob sein Programm auch im Hinblick

    auf den Rm2k und Nachfolger nutzbar ist. Damit waeren ihm wohl die Herzen hunderter Nutzer sicher, die sich schon

    seit Ewigkeiten aufgepeppte Graphiken wuenschen.

    Wenn er darauf bestehen sollte, seinen Code hier nicht zu veroeffentlichen, koennte er sich doch vielleicht

    wenigstens dazu hinreissen lassen, eine theoretische Abhandlung zu dem Thema zu schreiben ... das wuerde sicherlich

    dem einen oder andern hier interessante Impulse geben.

    Z.B. koennte er erklaehren, wie er genau diese Effekte gemacht hat, am besten nicht DirectX Abhaengig erklaehren.

    Dann koennten vielleicht auch einige OpenGL Programmierer hier davon profitieren.

    Alles in allem scheint es eine durchaus beeindruckende Arbeit zu sein, sollte alles gehalten werden, was

    versprochen wurde ...
    Hallo,

    ich bin der Entwickler von Helan und hoffe es wird mir verziehen das ich einen solch alten Thread wieder zum leben erwecke.

    Ich wollte schon lange antworten aber es kam so einiges immer dazwischen (Zeit, Arbeit, Launen, etc.). Gerne bin ich bereit ein wenig zu erklären wie das ganze aktuell funktioniert und auch wie es zur Zeit als dieser Thread erstellt wurde funktionierte (damals wurde zB eine andere Technik verwendet die nicht unbedingt schlechter war sondern etwas spezialisierter.) Aktuell möchte ich nur eine grobe Übersicht vermitteln wie es im aktuellen Stand abläuft (Helan ist weiterhin nur noch Alpha da ich das projekt vor einiger zeit neu aufgesetzt habe.).

    Wie funktioniert Helan?

    Helan baut auf 3 Phasen auf, 1. "Initialisierungsphase", welche im Grundriss der Initialisierungsphase von Fraps ähnelt, es erstellt einen globalen Windowshook welches dafür sorgt das die DLL in der sich die Hookprozedur befindet in JEDEN laufenden Prozess geladen wird (SetWindowsHookEx). Durch den DLL Einstiegspunkt der dadurch aufgerufen wird kann ich nun zB. alles weitere vorbereiten.

    Dadurch kann Phase 2 ermöglicht werden, die "Hijackphase". in dieser Phase werden dringend benötigte Methoden/Funktionen aufgebrochen und eigener Code eingeschleust, zb hijacke ich die Direct3DCreate9 Funktion um später weiter führende Methoden wie EndScene, Reset und Release zu hijacken (dieser Umweg über Direct3DCreate9 ist nötig da ich nur so tiefer in die DirectX Ebene gehen kann, da alles weitere von D3D auf Interfaces aufbaut und an deren Methoden komme ich nur über den VTable heran wofür eine Instanz der Klasse für dieses Interface erstellt werden muss.). Das hijacken dieser Funktionen/Methoden ist recht einfach über "detours" möglich
    (http://research.microsoft.com/sn/detours/).

    Habe ich nun den Code der alten Methoden durch meine Methoden ersetzt kann es auch schon in die 3. Phase gehen, die "DrawFunnyStuffPhase", hier nutze ich die Möglichkeit aus nach zb EndScene selber zu rendern, zum einen ein Menü mit dem ich Parameter von diversen Effekten in Helan setzen kann oder eben die Postprocessingeffekte wie Bloom/Tonemapping, DepthOfField oder noch neuer SSAO (noch in Entwicklung ). Die Erklärung der diversen PostProcessing Effekte spare ich mir hier nun, da ich euch nun evtl sowieso schon zu tode gelangweilt habe (auf Anfrage kann ich aber auch dazu eine Menge erzählen).

    Zu beachten wäre noch das man alle Resourcen die man erstellt hat auch irgendwann frei geben muss, dazu nutze ich zum einen die gehijackte Methode "Release" zum anderen bemerke ich das indem ich einen localen Windowshook laufen lasse der mir auskunft über WindowsMessages wie WM_QUIT gibt.

    Unter OpenGL ist dies alles weitaus einfacher da man sich nicht mit den VTables herumschlagen muss und sich einiges an Kopfzerbrechen über Klassenfunctionpointer ersparen kann.

    Nich vergessen sollte man auch das man den globalen Hook wieder entfernt, denn nichts ist nerviger als eine Dll die sich nicht löschen lässt weil sie grade benutzt wird (von zig Prozessen zB.) dazu einfach UnhookWindowsHookEx verwenden.

    Beispiele und Erklärungen werde ich gerne geben, wenn ich denn nicht schon dafür gebannt werde das ich einen solch alten Thread wiederbelebt habe

    mfg Mark

  15. #15
    Das ist zwar Thread-Nekromantie uebelster Sorte, aber trotzdem freue ich mich ausgesprochen darueber, das du dich doch noch zu wort meldest, da das Thema ungemein Spannend zu sein scheint und noch dazu sehr fortgeschrittene Techniken verwendet, die fuer sehr viele sicher sehr Lehrreich sein koennten.

    Allerdings habe ich leider nicht mehr viele Erinnerungen an den Thread von damals und die Bilder funktionieren ja leider auch nicht mehr (URL not found) ...

    Vielleicht koenntest du mit aktuellem Material unser aller Interesse neu entfachen und uns in die Geheimnisse des Hijackings einweihen. Fuer viele Anwendungen ist sowas ja so gut wie der heilige Gral des Patchens ^^

  16. #16
    Klar, tu ich doch gerne, ich habe aber aktuell nur 2 Videos da Screenshots leider nur ein begrenztes maß an Informationen bermitteln können, daher:

    Tiefenunschärfe:
    Hier wird gezeigt wie der ZBuffer rekonstruiert wird ohne zugriff auf die Geometrie der gezeichneten Szene selbst zu haben um damt DOF zu simulieren.

    http://www.youtube.com/watch?v=SMJAf88iBWo

    Glow/Tonemapping/Bloom:
    Hier werden helle Bereiche zum leuchten gebracht, bzw das Farbsetting der Szene komplett verändert.

    http://www.youtube.com/watch?v=0HspSPxDQFQ

    Gerne sage ich auch wie das alles bewerkstelligt wird.

    Ich könnte auch das programm selbst anbieten, aber da es da noch diverse Stabilitätsprobleme gibt lasse ich dies lieber vorerst sein.

    mfg Mark

  17. #17
    One thing to add: Amazing!

    Geniales Projekt. Habe schon damals mitgelesen und war sehr gespannt auf die Videos. Ich muss sagen: Genial.

    Ich wäre wirklich am Source interessiert. ._.'
    Darf ich nebenher fragen in Welcher Sprache es geschrieben wird? Ich habe es entweder überlesen oder nicht entdeckt. >_<

  18. #18
    Das ganze ist komplett in C++ geschrieben.

    Den ganzen Source werde ich aber nicht preis geben, ich beantworte aber gerne Fragen und gebe Codeauszüge.

  19. #19
    Ich muss sagen, das sieht wirklich beeindruckend aus. Guild Wars schmeißt ja schon von sich aus mit Effekten um sich, aber was du da machst, schlägt das um Längen.

    Mich würde wirklich interessieren, wie das im Detail funktioniert. Bevorzugt in Form eines Tutorials oder Artikels auf www.dev-comm.de (Der Seite, zu der das Forum in der Zwischenzeit gehört)

    Allgemein fehlen uns hier leider Leute, die sich wirklich gut mit DirectX oder OpenGL auskennen.

  20. #20
    Mich als C++ und angehenden OpenGL Programmierer interessiert wirklich, wie du die Grafikroutinen hijackst.
    Das ganze ist sicherlich auch auf openGl portierbar. (Von mir sicherlich nicht, dafür habe ich noch nicht ausreichend Kenntnisse, ber ich würde sie mir gerne aneignen. =) )

    Ich wäre demnach an den Methoden Interessiert, die die Hooks erstellen und an denen, die die Grafikroutinen unterwandern.

    Du hast meinen vollen respekt... ^^"

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •