Jump to content
  • Advertisement

Archived

This topic is now archived and is closed to further replies.

Rocket05

Interfacing with external applications

This topic is 5315 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

I''ve been interested in writing bots for a few games i play alot (starcraft & rise of nations). The biggest challange i''ve found so far has been trying to come up with a way to interface with these games... im not sure whether it''d be easier to analyze and reverse engineer the game''s code, or to attempt to write something that would analyze the graphics on the screen and send keypresses to the application like a user would. Is this even the right direction to go at all? Does anyone have experience doing this?

Share this post


Link to post
Share on other sites
Advertisement
You can teach a bot to play as efficiently as possible, thus making them very good opponents, a great source to learn from in terms of efficiency. The point of a bot being that it can dynamically take in the conditions, and quickly output the most efficient decision path.

[edited by - Rocket05 on February 29, 2004 1:04:48 PM]

Share this post


Link to post
Share on other sites
quote:
Original post by antareus
So why would you write a bot for a game that is meant to be played by a human?


Why do humans exist? Why would anyone buy a computer? .. ..

Anyhow, reading the screen is certainly possible , assuming you have access to the game''s window screen data in the first place.it may be slow though.. Reverse engineering is likely the only way go about this task, unless there are tools for the game that allow mods. good luck..

Share this post


Link to post
Share on other sites
If there's no direct way to access the screen, the less efficient but garenteed way is to send print screen messages to windows, so it'll be taking a screenshot and putting it in the clipboard.

As far as reverse engineering goes, Is there any simple/quick way to map out what's code or data in the application's memory? Is it possible to monitor the application's IP register and watch what code its executing?

[edited by - Rocket05 on February 29, 2004 1:13:16 PM]

Share this post


Link to post
Share on other sites
It''s very easy to read another program''s memory. Have a look at these windows API functions: OpenProcess, CloseHandle, ReadProcessMemory. You may need to change the security access of the game if they''ve set it to discourage such things. As a side note, it''s vastly easier to do this with the .NET framework, which came as somethign of a suprise.

Share this post


Link to post
Share on other sites

  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

We are the game development community.

Whether you are an indie, hobbyist, AAA developer, or just trying to learn, GameDev.net is the place for you to learn, share, and connect with the games industry. Learn more About Us or sign up!

Sign me up!