I am new on this platform and I would need your help to achieve my project.
Project objective description:
I would like to create a bot that performs tasks on a 2D game. Simple, right?
Not really... because this game uses the "Battle eye" system (an anti-bot system) which scans the programs running on the computer and therefore prevents having a program that serves as a bot directly on the main computer itself.
Problem to solve:
The problem is that there is only one alternative left to bypass the "Battle eye" system, at least that's all I can imagine for now.
Have a keyboard input and a mouse input that replaces the person who is supposed to press the keys.
How I see the solution:
It is possible that what you will read in the next lines is a mistaken perception but here is the solution I would like to achieve.
Step 1: I would like to have an HDMI splitter that sends an image to "MY ARDUINO 1". It is obviously that this Arduino can be replaced by something else. Its purpose is to analyze the image, so it must be powerful enough.
Step 2: My Arduino 1 analyzes the image in real time and decides which key to press and the appropriate mouse movement. It sends the mouse instructions to MY ARDUINO B and the keyboard instructions to MY ARDUINO C.
Step 3: My Arduino 2 and 3 are connected to the main PC and detected as a keyboard and mouse peripheral.
My questions:
Is this conceivable?
What arduinos do i need ?
What will be the connections between each link?
Is there a better solution?
I leave an image so you can have a better idea of the project structure.
Thank you very much in advance for your help, I greatly appreciate seeing that there is an active community around Arduinos!
I would say the analyzing live video by an Arduino board is not going to happen... Arduinos have simple analog and digital inputs. I don't see how they could possibly interpret what is in an image especially considering the limited amount of memory the boards have.
If you use Portenta H7 - it has feature to provide video as USB-C to display (as USB-C input).
But tricky.
Imagine: video out needs a very fast interface, e.g. USB HS, via USB-C connector (Portenta H7 has).
Portenta H7 might be able to do (as video via USB-C), but not any HDMI splitter usable/needed (there are not any HDMI signals generated by any MCU boards, video comes out on USB-C to display directly).
What do you mean?
Sure, your "My Computer" can do all the things, also web cams etc.
I agree.
Sometimes people try to invent things again which are already there.
For this OP project: I agree with you: potentially it can be accomplished just by using PC and software on host PC.
I also agree: Arduinos just for sensors, motor control, when not available on host PCs (Windows computers). A good advice.
"System Engineering" is a complex and challenging issue: sometimes people try to solve issues again, with the wrong means, going a too complicated path.
In general: connecting external HW is just needed for sensors and applications not provided by host PC. Video processing from a camera (like here), 2D games, HDMI... - all sounds like: "PC can do already".
Nice comment, I like the clear hint. (I have not thought about host PC capabilities - but right, much more as we would imagine).
I think the OPs point is that he cannot run the task on the computer, because the game has anti-bot software running to detect and prevent automated control of the game. He is trying to circumvent that by splitting the video display signal off to an external processor that then interacts with the game via the keyboard/mouse interface. Basically he wants a way to get around the built-in anti-cheating system.
You don't need a 2nd computer. You can write a cheat-bot in python and use the keyboard module to simulate a 2nd keyboard input to the game. There are image analysis modules already available too.
This is well beyond the scope of a standard microcontroller.
Can you please tell us your electronics, programming, arduino, hardware experience?
As previously explained the Arduino platform can have speed and memory constraints.
There are faster controllers with more storage that work under the Arduino IDE but doing video processing for example would be better done on a Rasp Pi, (if you can buy one).
Thank you for all your answers! Indeed, it would be simpler to have a program running on "my computer," but this is impossible. The anti-cheat system constantly scans all applications that are running on the computer, and if a program decides to send keyboard instructions, the account is banned. The goal here is really to achieve two things: on the one hand, the analysis of an image (I am coding an AI that is based on pixels), and on the other hand, a module that sends keyboard and mouse instructions to "my computer."
Of course! I am passionate about coding and addicted to bot development. This is a personal project that only aims to touch Arduinos and push development to the extreme by bypassing an anti-cheat system. I don't really need to have a bot on the game and I don't intend to put the bot online or commercialize it. Let's say the goal is an educational goal, made with passion and love. It will probably help other people who will come across this post to see that it is possible to do beautiful things with passion, knowledge, and a little bit of hardware!