If I wrote the game I would know exactly how to hook it! ;)
and I did not wrote Starcraft ! although I made a clone of it with nice ehancment... ;)
I really want to built a bot for an existing game.
Main Topics
Browse All Topicsok, my first question will be reaaaaally basic and I'll post more until I get to my goal.
here my goal:
create a bot programing engine for a game, let's say Starcraft.
game would act similar to d2jsp, for those who don't know d2jsp it's a bot for Diablo and it's driven by script you can write yourself to change the behavior of the bot.
so here my first question...
I'm guessing I have to first get a HOOK into some function of the game.
the first hook, *I guess* would be in the data reception subroutine...
so I can read the Data it's receiving from the server ?
I might be completely wrong about this... if not,
How do I put a hook on a function of a program I did not made ?
thanks
This Question has been solved and asker verified All Experts Exchange premium technology solutions are available to subscription members.
Experts Exchange has been collecting answers to technology questions since 1996…3 million and counting! If you have a question, chances are we already have your answer.
If you can't find the exact answer you're looking for, ask our exclusive community of 50,000 experts. You’ll get a personalized answer from a trusted professional.
Thousands of free tech tips, tricks, how-to’s and tutorials are available in our peer reviewed articles section. See for yourself how smart our experts are, no login required.
Access the answers to your technology questions today.
30-day free trial. Register in 60 seconds.
Members of the expert community talk about why the experience at Experts Exchange is different than what you will find anywhere else.

Try it out and discover for yourself.
30-day free trial. Register in 60 seconds.
Join the community of experts here and help other tech pros by answering question in your area of expertise. You can earn FREE access to all Experts Exchange's premium features and resources.
*sighs* Since Blizard does not support bots it does make this question against EE policy, now had you generalized the question regarding object movement and screen hooks we could have answered. ;-)
Go to CS and request this question be closed as it is against EE policy to answer this question how you have it phrased.
~Aqua
I don't see anything bad about PHRASING:
I'm not asking for code first... I want to know how to do it.
then, if you read carefully:
>>create a bot programing engine for a game, let's say Starcraft.
let's say Starcraft... cause you don't know the game, it doesn'T exist anymore on market
there is no problem about doing what I want to do, we got 200 liscence of the damn thing and we intend to use it to teach childreen. only problem we don't want to play 200h to get a building market... it's like a SIM... The compagny is dead for like 7 years and they don't support the product for like 10 years
<<game would act similar to d2jsp
that's what we want to accomplish, I gave example so people understand we want to do something similar.
I really don't intend to do illegal activity, my boss would not accept it anyway, I'm working on a schoolboard. But we checked the law and it's allowed here (don't know about other country but I'm in Canada) and it's allowed because the products DEAD.
why not using an open-source-game, especially if you want to use it for teaching, there you have access to the full source code, its not a blackbox-thing... have a look at sourceforge, there are lots of it, and you can talk to the authors, how to implement your things easily at their mailing lists in contrast to dead applications...
good luck ;-)
ike
Like I had said earlier:
1) Create a screen hook
2) Use object recognition to determine where you want simulated mouse clicks to happen or what events to use
If you want clientless bots:
1) Get a copy of the controler *.dll files
2) Decompile these into ASM code or find someone who was nice enough to already generate the code for them.
3) Figure out what needs to be injected into the *.dll files to achieve the result you desire
4) Recompile the *.dll files back down and run your app using the controller dll's. Pretty much if you use the DLL approach you need to do a lot of decompiling and trial and error. Sometimes even down to registry editing and modification with a HEX tool. But then you create a way to fire the updated controls with the dll and make it start influencing the game. In games such as D2 you can use d2jsp to control these DLL hooks with a top side script and control character movement without simulating mouse clicks.
:-)
Hope that helps a bit in your research.
~Aqua
iKework : You were asking why I don't turn out to open source program...
well... I don't decide WICH program professor will use to teach their stuff.
I'm there to ensure the program they choose will do what they need.
they stick their mind on an over dead program. Because it was a good program for kids... so...
but if you got any suggestion in open source program for kids teaching between 6-8 y.o. and if this program is in FRENCH... let me know, I can suggest it to them... and it would certainly ease my work.
regards.
Business Accounts
Answer for Membership
by: ikeworkPosted on 2005-08-03 at 11:02:17ID: 14591377
do you mean you want to write a game and make its bots scriptable or do you to create scriptable bots for an existing game?
ike