Jump to content

Help with identifying a text statement on a screen


hookLine
 Share

Recommended Posts

Alright, so I want to have AutoIt type something like:

Ancient Shield
Stats: Blah blah blah
Blah blah blah
Blah blah blah

I want AutoIt to type that in the game window when a user types "ancient shield" into the game window. How would I do this?

Link to comment
Share on other sites

You would have to use a keyboard hook to catch the user input. This information could be used to make a keylogger so I will not post it here. There are topics in the forums about hooking the keyboard so search them.

Link to comment
Share on other sites

You would have to use a keyboard hook to catch the user input. This information could be used to make a keylogger so I will not post it here. There are topics in the forums about hooking the keyboard so search them.

Would you mind giving me a little more information on this?
Link to comment
Share on other sites

That's the hard part if you mean another use, not yourself, search for ocr but I guess you will fail.

Using nomad memory or CE will most likely give a better result.

I referred to "user" being the user of this script, meaning myself pretty much, until I release it.
Link to comment
Share on other sites

Ugh, this is for Diablo II right? You can read chat messages by reading memory, but for some odd reason. It can't work on Vista. It just returns a blank string.

Obviously you will need the memory functions which are easy to find, but this works on XP to get the last msg, but not on vista.

Func D2GetLastMsg()
    Local $Handle = _MemoryOpen(WinGetProcess("Diablo II"))
    Local $Temp = _MemoryReadWideString(_MemoryRead(_MemoryRead(0x6FBCB830, $Handle, 'dword'), $Handle, 'dword'), $Handle, 'ushort[256]')
    Local $f = _MemoryClose($Handle)
    Return $Temp
EndFunc  ;==>GetLastChatMessage
Link to comment
Share on other sites

Ugh, this is for Diablo II right? You can read chat messages by reading memory, but for some odd reason. It can't work on Vista. It just returns a blank string.

Obviously you will need the memory functions which are easy to find, but this works on XP to get the last msg, but not on vista.

Func D2GetLastMsg()
    Local $Handle = _MemoryOpen(WinGetProcess("Diablo II"))
    Local $Temp = _MemoryReadWideString(_MemoryRead(_MemoryRead(0x6FBCB830, $Handle, 'dword'), $Handle, 'dword'), $Handle, 'ushort[256]')
    Local $f = _MemoryClose($Handle)
    Return $Temp
EndFunc ;==>GetLastChatMessage
Yes, this is for Diablo II.

Is there any other code I can use to make it work on Vista? I am running Vista right now :)

Link to comment
Share on other sites

You would have to use a keyboard hook to catch the user input. This information could be used to make a keylogger so I will not post it here. There are topics in the forums about hooking the keyboard so search them.

I currently have the hook.dll file and the .au3 file.

Edited by hookLine
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...