Hello,
After few months, having fun learning how to inject, call Lua stuff, Draw into the game ect ect... I'm planning to dev a bot for the next 6months (project for my school it seem).
As far as I see, most of the people here are just injecting their FULL bot and pulsing it directly into the endscene or whatever alternative.
I mean, is it viable?
What if you want to do something more advanced, make a GUI, a HTTP api to access your bot, or some scripting???
I admit, I have a project draft where I use Boost::Python for some python binding (for all the class/botlogic/plugins ect) but man... this is heavy and sometime I have some weird crashes, I'm not good enought to debug those one and I guess it is because I'm just putting too much into wow process???
I started to think about deporting the bot logic out of process and communicate via IPC to my injected piece of code to retrieve any info i need or to interact with the game.
I have some serious trouble to find a viable solution...
What i'm thinking is to have : My Injected process (A) and my bot process (B) and make them communicate via named pipe for example.
My injected piece of code will be there to pulse and populate -> send to my bot all the informations that i need. and that is a LOT of infos! All the gameobjects, various UI infos ect...
Then, whenever I will want to interact with the game (let's say, cast a spell) I will send this to the dll and the action will be queued to be called at the next frame.
So it mean I have to map all the stuff I will possibily use via some OP code ! That will be toon of work and absolutly not flexible...
Am I overthinking this too much? Should I just do EVERYTHING inside the process of wow? (Pathfinding, script - python/node/lua/whatever execution, webserver, gui....)
If the way is via IPC, can someone give me an hint on how to manage this communication, what to make available, what to do in process, what to do out process?
Thanks in advance,
Thomas