Hi there,
It's been ~2 yeas since I tried(with more or less success) to write my own private bot for 2.4.3. I had there all important things like reading various things from ObjectManager, hooking EndScene(DX9), ClickToMove, navigation using Cast&Detour, Execution of lua code and getting back results(mainly strings - I was using this for reading and processing quests). Wast majority of that code was found here and there on this forum, so I glued them together and did some polishing, but most importantly I understood them, what they do, how it woks. I was quite happy about that. It was my "project" to understand a bit more WoW internals and reversing.
Now I started to play on retail once again and I'm thinking to re-write my bot for latest version of WoW, so it can help me a bit with most annoying tasks and I can improve further in memory editing/reverse engineering. Ideally I would like to make it into the state, where it can run through map and pick all herbs it can find. Before I will jump into it, I would like to do some assessment of things I will need to get working:
- WoW is now only 64b - I guess this by itself will not be an issue.
- WoW is now equipped with anti-debug features, so I can't simply attach there debugger. But I was able to find here on forum post how to use x64dbg + ScyllaHide + Owerwatch DumpFix to at least do dump. It worked like a charm!
- WoW is now runs by using DX11, I would like to go with this one, so instead of hooking EndScene, I will hook Present. Brief googling on this reveled multiple howtos, so I guess this should be also quite OK.
- I can still see in-game option to use CTM(Click To Move), so I guess instead of sending keystrokes to the WoW window, I will use this feature to move my toon around.
- For navigation(What points I need to go through in order to get from A to B and not get stuck) I will try to use Recast&Detour. Or is there something better(=more easy to use)? I guess here only tricky task will be to extract and convert maps/terrain from Blizz format to format understood by R&D. I have to admit I was not doing any research on this one yet, is there anyone with some hints/links that might be of use?
- I will use C# as programming language. In bot for WoW 2.4.3 I was using BlackMagic liblary to read/write WoW memory. Do you have any other libraries to do memory operations or is BM still doing fine in 8.1?
Do you see there any other things(on high level) that I have missed and might be quite a problem? I will be very happy for all your reactions that will navigate me to interesting reading.