Ein Overlay erstellen mit WinForms?

  • C#

Es gibt 9 Antworten in diesem Thema. Der letzte Beitrag () ist von SysOp1.

    Ein Overlay erstellen mit WinForms?

    Hallo ihr Lieben,

    ich möchte für ein Spiel ein Overlay erstellen - keine Sorge, es handelt sich hierbei in keinster Weise um eine Cheat-Anwendung.
    Nun habe ich einige Fragen bezüglich der Methode, dazu erläutere ich erstmal was ich überhaupt erreichen möchte.

    Ich habe eine WinForm mit einigen Steuerelementen, damit alles etwas besser aussieht benutze ich Material Skin for .NET Forms (https://github.com/IgnaceMaes/MaterialSkin/tree/master/MaterialSkin).
    Falls mein Vorhaben hierdurch erschwert werden würde, könnte ich natürlich darauf verzichten.
    Nun soll meine Form über einem Spiel sichtbar sein via Tastenkombination(wie z.B das Steam Overlay). Auf der Form geschieht folgendes:
    • Textbox zur Stringeingabe (Spielername)
    • Button zum Abrufen von Statistiken und Darstellen der Statistiken (Erhalt von Informationen erfolgt über API des Herstellers - offizielles Leaderboard)
    Die allgemeine Funktion der Anwendung bekomme ich bzw. habe ich schon hinbekommen, gar kein Problem. Nur fehlt mir die Methode um diese Anwendung über einem Spiel darzustellen, wie schon erwähnt via Tastenkombination.
    Auf gar keinen Fall möchte ich auf das Spiel zugreifen/DX hooken, denn das könnte zu einer Sperre führen auch wenn die Applikation nichts weiteres tut als Statistiken eines Leaderboards anzuzeigen.

    Wie stelle ich das am besten an?

    Vielen Dank im voraus!

    Edit: Infomationen erweitert.

    Dieser Beitrag wurde bereits 3 mal editiert, zuletzt von „SysOp1“ ()

    SysOp1 schrieb:

    um diese Anwendung über einem Spiel darzustellen
    Anwendung oder Nicht modaler Dialog mit .TopMost = True?
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!

    SysOp1 schrieb:

    leider erfolglos
    bedeutet nun genau was?
    Was passiert?
    Was soll passieren?
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!
    um welches Spiel handelt es sich? Kann du es im Fenstermodus starten? Wenn nicht, muss man es mit DirektX über die Anwendung zeichnen.
    Mfg: Gather
    Private Nachrichten bezüglich VB-Fragen werden Ignoriert!


    Um Gathers Kommentar noch kurz zu erläutern: Die meisten Spiele nutzen im Vollbildmodus nicht das normale Fensterrendering von Windows, womit du keine Forms oder ähnliches darüber legen kannst. Stattdessen müsstest du direkt "manuell", bspw. mit DirectX in das Spiel rein zeichnen, was mit Windows Forms nicht geht.
    Vielen Dank für eure Antworten.
    @Gather: es handelt sich um League of Legends und Dota 2, im Fenstermodus sehr unvorteilhaft.
    @nafets: Soweit hatte ich mich auch schon eingelesen, dennoch vielen Dank!

    Also in Multiplayer Spielen solle man ja bloß nicht etwas in den Prozess injizieren, das würde als Cheat anerkannt werden.
    Und ich frage mich halt wie Overlays wie z.B das Steam Overlay oder Overwolf Overlay funktionieren ohne gesperrt zu werden.
    Sowohl das Overwolf als auch das TeamSpeak Overlay sind bei solchen Spielen explizit freigegeben.
    Bei MP Spielen seinen Kram drüberzubuttern, sprich DirectX, da wäre ich sehr vorsichtig mit.
    Denn es muss ja nicht jeder so gute Absichten haben wie du, sowas lässt sich schnell ausnutzen.
    Ja aber lol und DotA sind sowieso free2play, da kannst du ja mit Probeaccounts testen ob du gesperrt wirst.
    Denn ich denke nicht dass du über DirectX oder Ähnliches, wegkommst

    Ich könnte dich jetzt auf diverse Links verweisen. Leider sind diese in diesem Forum nicht gestattet,
    aber prinzipiell, auch wenn du nichts böses vor hast, solltest du in richtung cheats schauen. Diese haben zu 90% genau ein solches overlay.
    Mfg: Gather
    Private Nachrichten bezüglich VB-Fragen werden Ignoriert!


    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Gather“ ()

    @Kameo & @Gather, vielen Dank ihr beiden, sehr hilfreich.
    Habe hier etwas schönes gefunden, eine .NET Overlay Library: github.com/lolp1/Overlay.NET

    Sieht danach aus als wäre das mein Ansatzpunkt, dazu habe ich beide Firmen kontaktiert und mein Anliegen geschildert, mal schauen was ich für eine Antwort bekomme.
    Ich hoffe dass das nicht als Cheat durchgeht! :)

    Mit freundlichem Gruß,
    SysOp1