VB Tastendrücke Simulieren
Moinsen,
ich bräuchte mal eure hilfe!
Ich möchte die Taste "y" simulieren!
Dies 2 mal in der Sekunde.
Und das ganze soll auf ein Externes Programm (Spiel) verfrachtet werden welches sich "Metin2" nennt.
Mit der Taste "y" Sammelt man Yang auf was dort die wärung ist, und manchmal sind unzählige Yang verstreut und es is sehr lästig die alle per hand aufzusammeln.
Ich brauche nicht mehr viel nur noch den entscheidenen Schluss!
Ich bin soweit:
Und wenn ich den Chat öffne denn schreibt er jede halbe sekunde ein "y" in den chat!
Also das Programm Simuliert sie, nur noch nicht so dass es wie eine richtige eingabe ist!
Hättet ihr ein paar ideen?
Oder anregungen?
Wäre sehr nett.
Dankeschön!
ich bräuchte mal eure hilfe!
Ich möchte die Taste "y" simulieren!
Dies 2 mal in der Sekunde.
Und das ganze soll auf ein Externes Programm (Spiel) verfrachtet werden welches sich "Metin2" nennt.
Mit der Taste "y" Sammelt man Yang auf was dort die wärung ist, und manchmal sind unzählige Yang verstreut und es is sehr lästig die alle per hand aufzusammeln.
Ich brauche nicht mehr viel nur noch den entscheidenen Schluss!
Ich bin soweit:
Private Sub Command1_Click()
AppActivate ("Metin2")
Timer1.Enabled = True
End Sub
Private Sub Command2_Click()
Timer1.Enabled = False
End Sub
Private Sub Timer1_Timer()
SendKeys "{y}"
End Sub
Und wenn ich den Chat öffne denn schreibt er jede halbe sekunde ein "y" in den chat!
Also das Programm Simuliert sie, nur noch nicht so dass es wie eine richtige eingabe ist!
Hättet ihr ein paar ideen?
Oder anregungen?
Wäre sehr nett.
Dankeschön!
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 117411
Url: https://administrator.de/contentid/117411
Ausgedruckt am: 26.11.2024 um 17:11 Uhr
11 Kommentare
Neuester Kommentar
Hallo!
Das Problem bei der Sache ist, dass das Spiele, die in DirectX geschrieben sind, meistens eine beschränkte Kooperationsebene besitzen. Das heißt, dass von "außen", also von den fokusierten Fenster Tastendrücke nicht erkannt werden. Mit der Methode(oder ist es eine Funktion?) SendKeys werden Tastendrücke nur an dein VB-Fenster geschickt, und nicht an das Spiel. Du müsstest also das Spiel bearbeiten, bzw. die Engine.
Und übrigens - am meisten Spaß machen Spiele ohne Cheats
Gruß
Philipp
Das Problem bei der Sache ist, dass das Spiele, die in DirectX geschrieben sind, meistens eine beschränkte Kooperationsebene besitzen. Das heißt, dass von "außen", also von den fokusierten Fenster Tastendrücke nicht erkannt werden. Mit der Methode(oder ist es eine Funktion?) SendKeys werden Tastendrücke nur an dein VB-Fenster geschickt, und nicht an das Spiel. Du müsstest also das Spiel bearbeiten, bzw. die Engine.
Und übrigens - am meisten Spaß machen Spiele ohne Cheats
Gruß
Philipp
Auszug aus den ABG´s von Metin2
5.2 Dem Nutzer ist jede Form von manipulativen Eingriffen in das Online-Spiel untersagt. Der Nutzer ist insbesondere nicht berechtigt, Maßnahmen, Mechanismen oder Software zu verwenden, die die Funktion und den Spielablauf stören können. Der Nutzer darf keine Maßnahmen ergreifen, die eine unzumutbare oder übermäßige Belastung der technischen Kapazitäten zur Folge haben können. Es ist dem Nutzer nicht gestattet, von der Spielleitung generierte Inhalte zu blockieren, zu überschreiben oder zu modifizieren oder in sonstiger Weise störend in das Spiel einzugreifen.
5.3 Dem Nutzer ist es darüber hinaus untersagt, das Online-Spiel (einschließlich aller einzelner Internetseiten) mit anderen Programmen außer dem Internet-Browser oder dem zur Verfügung gestellten Client-Programm aufzurufen. Dies bezieht sich insbesondere auf so genannte Bots sowie andere Tools, die das Webinterface ersetzen oder ergänzen sollen. Ebenfalls untersagt sind Scripte und gänzlich oder zum Teil automatisierte Programme, die dem Nutzer einen Vorteil gegenüber seinen Mitspielern verschaffen. Hierzu zählen auch Auto-Refresh-Funktionen und weitere, integrierte Mechanismen des Internetbrowsers, sofern es sich um automatisierte Vorgänge handelt.
Ach ja und das "Send Message" geht nur wenn man ein Game im Fenstermod spielt
5.2 Dem Nutzer ist jede Form von manipulativen Eingriffen in das Online-Spiel untersagt. Der Nutzer ist insbesondere nicht berechtigt, Maßnahmen, Mechanismen oder Software zu verwenden, die die Funktion und den Spielablauf stören können. Der Nutzer darf keine Maßnahmen ergreifen, die eine unzumutbare oder übermäßige Belastung der technischen Kapazitäten zur Folge haben können. Es ist dem Nutzer nicht gestattet, von der Spielleitung generierte Inhalte zu blockieren, zu überschreiben oder zu modifizieren oder in sonstiger Weise störend in das Spiel einzugreifen.
5.3 Dem Nutzer ist es darüber hinaus untersagt, das Online-Spiel (einschließlich aller einzelner Internetseiten) mit anderen Programmen außer dem Internet-Browser oder dem zur Verfügung gestellten Client-Programm aufzurufen. Dies bezieht sich insbesondere auf so genannte Bots sowie andere Tools, die das Webinterface ersetzen oder ergänzen sollen. Ebenfalls untersagt sind Scripte und gänzlich oder zum Teil automatisierte Programme, die dem Nutzer einen Vorteil gegenüber seinen Mitspielern verschaffen. Hierzu zählen auch Auto-Refresh-Funktionen und weitere, integrierte Mechanismen des Internetbrowsers, sofern es sich um automatisierte Vorgänge handelt.
Ach ja und das "Send Message" geht nur wenn man ein Game im Fenstermod spielt
Ich kenne den Befehl "SendMessage" zwar nicht, aber das ist eine gute Idee.
Die Windows API hat ein Message-System. Jedes Fenster empfängt sogenannte Nachrichten von Windows. Wenn man z.B. einen Button klickt, wird an das Steuerelement die Nachricht "WM_CLICK" gesendet, und Visual Basic startet die Ereignisprozedur.
Nur weiß ich nicht, wie DirectX solche Nachrichten empängt. Sicher empfängt es welche, aber ob DX Nachrichten für das Drücken von Tasten empfängt, weiß ich nicht. Das mit dem Fenstermodus ist 'ne gute Idee.
1)Kannst du mir sagen, in welcher Klasse/Namespace sich diese Funktion befindet?(SendMessage)
2)-->Probier, mit der Funktion die Nachricht "WM_KEYPRESS" an das Spielfenster zu schicken
Die Windows API hat ein Message-System. Jedes Fenster empfängt sogenannte Nachrichten von Windows. Wenn man z.B. einen Button klickt, wird an das Steuerelement die Nachricht "WM_CLICK" gesendet, und Visual Basic startet die Ereignisprozedur.
Nur weiß ich nicht, wie DirectX solche Nachrichten empängt. Sicher empfängt es welche, aber ob DX Nachrichten für das Drücken von Tasten empfängt, weiß ich nicht. Das mit dem Fenstermodus ist 'ne gute Idee.
1)Kannst du mir sagen, in welcher Klasse/Namespace sich diese Funktion befindet?(SendMessage)
2)-->Probier, mit der Funktion die Nachricht "WM_KEYPRESS" an das Spielfenster zu schicken
Zitat von @DerMagister:
Auszug aus den ABG´s von Metin2
5.2 Dem Nutzer ist jede Form von manipulativen Eingriffen in das
Online-Spiel untersagt. Der Nutzer ist insbesondere nicht berechtigt,
Maßnahmen, Mechanismen oder Software zu verwenden, die die
Funktion und den Spielablauf stören können. Der Nutzer darf
keine Maßnahmen ergreifen, die eine unzumutbare oder
übermäßige Belastung der technischen Kapazitäten
zur Folge haben können. Es ist dem Nutzer nicht gestattet, von
der Spielleitung generierte Inhalte zu blockieren, zu
überschreiben oder zu modifizieren oder in sonstiger Weise
störend in das Spiel einzugreifen.
5.3 Dem Nutzer ist es darüber hinaus untersagt, das Online-Spiel
(einschließlich aller einzelner Internetseiten) mit anderen
Programmen außer dem Internet-Browser oder dem zur
Verfügung gestellten Client-Programm aufzurufen. Dies bezieht
sich insbesondere auf so genannte Bots sowie andere Tools, die das
Webinterface ersetzen oder ergänzen sollen. Ebenfalls untersagt
sind Scripte und gänzlich oder zum Teil automatisierte Programme,
die dem Nutzer einen Vorteil gegenüber seinen Mitspielern
verschaffen. Hierzu zählen auch Auto-Refresh-Funktionen und
weitere, integrierte Mechanismen des Internetbrowsers, sofern es sich
um automatisierte Vorgänge handelt.
Ach ja und das "Send Message" geht nur wenn man ein Game im
Fenstermod spielt
Auszug aus den ABG´s von Metin2
5.2 Dem Nutzer ist jede Form von manipulativen Eingriffen in das
Online-Spiel untersagt. Der Nutzer ist insbesondere nicht berechtigt,
Maßnahmen, Mechanismen oder Software zu verwenden, die die
Funktion und den Spielablauf stören können. Der Nutzer darf
keine Maßnahmen ergreifen, die eine unzumutbare oder
übermäßige Belastung der technischen Kapazitäten
zur Folge haben können. Es ist dem Nutzer nicht gestattet, von
der Spielleitung generierte Inhalte zu blockieren, zu
überschreiben oder zu modifizieren oder in sonstiger Weise
störend in das Spiel einzugreifen.
5.3 Dem Nutzer ist es darüber hinaus untersagt, das Online-Spiel
(einschließlich aller einzelner Internetseiten) mit anderen
Programmen außer dem Internet-Browser oder dem zur
Verfügung gestellten Client-Programm aufzurufen. Dies bezieht
sich insbesondere auf so genannte Bots sowie andere Tools, die das
Webinterface ersetzen oder ergänzen sollen. Ebenfalls untersagt
sind Scripte und gänzlich oder zum Teil automatisierte Programme,
die dem Nutzer einen Vorteil gegenüber seinen Mitspielern
verschaffen. Hierzu zählen auch Auto-Refresh-Funktionen und
weitere, integrierte Mechanismen des Internetbrowsers, sofern es sich
um automatisierte Vorgänge handelt.
Ach ja und das "Send Message" geht nur wenn man ein Game im
Fenstermod spielt