I've seen a few people arguing for/against out-of-process & DLL Injection.
I have a lot of experience w/ SW RE, but I've just started poking around with WoW.
Over the past few days, I wrote a waypoint/anti-afk system using out-of-process methods. Using out-of-process, I'm sort of bound to using PostMessage(). To interact with NPC's, I have to screw with the mouse and pass the Right-Click-Down message. I dont like it. It does not provide an easy approach for future features.
I would much rather hook into the in-game "API" but I am a bit concerned with causing a lot of process faults while debugging a DLL. Most of my work with DLL injections have been pretty straight foward that just get over a simple hurdle. Writing an anti-afk/waypoint system to grind honor is a bit more complicated.
How are you guys interfacing to your injected DLL's while debugging, and not? If there are things that I need to be aware of, please give me a heads up. For this thread, I'm more interested in a top-level discussion of what is being done, rather than how it's being done.
Here's what I'm thinking... feel free to give your advise/comments/criticism:
Create a DLL that is capable of reading memory locations, calling in-game API functions and providing information back to me (perhaps via a log file or GUI). Queing up for BG's...running around from point to point... maybe spamming random BG garbage (dont cap frostwolf before relief hut.... anal [Rupture] ) .
Inject said DLL into WoW.
Go to the bar and get a few drinks.
Come back and buy S2 gear.