Giter Site home page Giter Site logo

vike256 / unibot Goto Github PK

View Code? Open in Web Editor NEW
121.0 6.0 27.0 66 KB

All in one video game assistant tool that works with and without hardware. Has aim assist, autoshoot, rapid-fire, and recoil mitigation.

License: GNU General Public License v3.0

C++ 18.48% Python 81.42% Batchfile 0.11%
aimbot arduino arduino-leonardo cheat cheating colorbot game-hacking raspberry raspberry-pi-pico-w triggerbot

unibot's Introduction

This project is free and open-source. I am a student who spends their free time on this project so please if you like the project and want it's development to continue:
🎁 Consider donating: Ways to donate
⭐ Give a star


Unibot

Unibot is a multi-functional assistant tool developed for PC shooter games. Unibot works by simulating mouse input, which works with the following methods:

  • Calling Windows mouse_event functions through Python
  • Using the Interception driver to simulate mouse input
  • Using external hardware capable of simulating a human interface device, such as an Arduino Leonardo, or any Raspberry Pi Pico variant. Unibot can communicate with these boards either through a COM port or a socket connection (ethernet or Wi-Fi).

Unibot's most notable feature, aim assist, detects targets by looking for pixels within a specified color range on your screen, and then automatically moves the aim towards the target. The target detection utilizes OpenCV to merge color dots into a valid target blob.

Triggerbot (/autoshoot) works in sync with the same target detection function and automatically shoots when the player is looking directly at a target.

The rapid-fire feature clicks rapidly. This can be used to automatically shoot semi-automatic weapons.

The recoil feature counters weapon recoil. It can be set to work with multiple recoil system types: point-and-shoot, and offset type recoil. Point-and-shoot is the most common recoil system used in FPS games and is used in games such as Call of Duty & Rainbow Six Siege. Offset type recoil is used in some tactical shooters such as Counter-Strike and VALORANT.

Showcase: https://youtube.com/watch?v=-wMSt16IAQY


Disclaimer

Unibot is a hobby project and should be treated as such. This project is intended for learning purposes only, but I acknowledge the possibility that this project can be used for malicious purposes such as to gain an unfair advantage in multiplayer shooter games. I do not condone video game cheating in any regard. If you are using Unibot to cheat, consider reading the following disclaimer.

Cheating in video games often stems from deeper psychological needs, such as low self-esteem and a desire for control. If you find yourself resorting to cheats, it's worth taking a moment to reflect on why.

Cheating can provide a temporary sense of control and accomplishment, but it ultimately undermines your genuine self-worth. True satisfaction comes from overcoming challenges and developing skills through honest effort.

Overcoming cheating habits may require addressing underlying psychological issues. Talking to a therapist or counselor can help you develop healthier coping mechanisms and cultivate a more positive gaming experience.


Installation and usage guide

Wiki


Copyright

Unibot, an open-source colorbot.
Copyright (C) 2023 vike256

This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with this program.  If not, see <https://www.gnu.org/licenses/>.

unibot's People

Contributors

vike256 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

unibot's Issues

Discord

Hey! I used to be in the discord and I was a donation supporter. I wanted to know where the discord went and why it was deleted. I'd like to join back to the community!

Even with smooth set to 0, the mouse overshoots the target before circling back, as if drawing an oval.

Hello, even when I set the smooth setting to zero, the mouse rapidly moves towards the character and slightly overshoots before settling on the target. Also, when starting to shoot while running, it seems to draw a circle, which is a significant issue. After locating the position, it would be better if the cursor could directly stop on the character's head. If you could add different calculations, I would appreciate it. For example, taking into account the direction of the character's movement so that if the character is moving to the right, the mouse can be positioned accordingly. This is because there's a possibility of missing the target with the current code.

Aiming between 2 enemies

Hello. All working fine. But i got problem. Aiming between 2 enemies in the center oh both head. Idk whats wrong. Color filitering issue, basically the contour merges when the 2 players are close enough

Dxcam Suggestion

Have you considered adding device_idx=0 and output_idx=0 when you create dxcam? Incorporating in config might be a good idea too. I'm guessing there are a few "doesn't work with my monitor" complaints. Sorry on phone otherwise I'd pull.

force close

it force close sometime when i play on valorant

Error when using -DCDC_DISABLED to hide COM port.

I followed the instructions to change board PID & VID for my arduino leonardo, but if I use -DCDC_DISABLED to remove the COM port I get the following error when I try to upload:

C:\Users\umar\AppData\Local\Temp\ccDHIZ9r.ltrans0.ltrans.o: In function timedRead': C:\Users\umar\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.6\cores\arduino/Stream.cpp:34: undefined reference to Serial'
C:\Users\umar\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.6\cores\arduino/Stream.cpp:34: undefined reference to Serial' C:\Users\umar\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.6\cores\arduino/Stream.cpp:34: undefined reference to Serial'
C:\Users\umar\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.6\cores\arduino/Stream.cpp:34: undefined reference to Serial' C:\Users\umar\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.6\cores\arduino/Stream.cpp:36: undefined reference to Serial'
C:\Users\umar\AppData\Local\Temp\ccDHIZ9r.ltrans0.ltrans.o:C:\Users\umar\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.6\cores\arduino/Stream.cpp:36: more undefined references to Serial' follow C:\Users\umar\AppData\Local\Temp\ccDHIZ9r.ltrans0.ltrans.o: In function setup':
D:\UniBot\Unibot-main\src\serial/serial.ino:45: undefined reference to Serial_::begin(unsigned long)' C:\Users\umar\AppData\Local\Temp\ccDHIZ9r.ltrans0.ltrans.o: In function setTimeout':
C:\Users\umar\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.6\cores\arduino/Stream.cpp:89: undefined reference to Serial' C:\Users\umar\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.6\cores\arduino/Stream.cpp:89: undefined reference to Serial'
C:\Users\umar\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.6\cores\arduino/Stream.cpp:89: undefined reference to Serial' C:\Users\umar\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.6\cores\arduino/Stream.cpp:89: undefined reference to Serial'
C:\Users\umar\AppData\Local\Temp\ccDHIZ9r.ltrans0.ltrans.o: In function write': C:\Users\umar\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.6\cores\arduino/Print.h:54: undefined reference to Serial'
C:\Users\umar\AppData\Local\Temp\ccDHIZ9r.ltrans0.ltrans.o:C:\Users\umar\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.6\cores\arduino/Print.h:54: more undefined references to Serial' follow C:\Users\umar\AppData\Local\Temp\ccDHIZ9r.ltrans0.ltrans.o: In function loop':
D:\UniBot\Unibot-main\src\serial/serial.ino:83: undefined reference to `Serial_::flush()'
collect2.exe: error: ld returned 1 exit status
Multiple libraries were found for "Mouse.h"
Used: C:\Users\umar\Documents\Arduino\libraries\Mouse
Not used: C:\Users\umar\AppData\Local\Arduino15\libraries\Mouse
exit status 1

Compilation error: exit status 1

I get no errors when I follow the commands without disabling the COM port and am able to compile properly. Also even if I do manage to hide the COM port, how would I tell the config.ini to communicate over HID? since the only option over serial is to include a COM port which would be disabled.

mouse moving randomly

i attached video
the issues : when i use rapidfire, or i just aiming fire make mouse moving randomly by itself

2023-11-06.15-04-29.mp4

can't connect with 1.5.0

ERROR: Could not connect. socket.connect() takes exactly one argument (2 given)

I've read the instructions. It works on previous versions
But this time it can't . Even I reset the .ino upload from scratch. is there something wrong

Change x and y fov manually?

How to change x fov and y fov? The config just set for all x and y fov equally.
i want to set x wider dan small Y fov because sometimes it shoot at corps. Ex: x 90 y 50 fov?

Bug

It force close after open game

Need Some Help

Yo yo yo, I might need some help with this. I got a arduino and im tryna use it for valorant. But i got some issues and the main.py just closes

Aim

how to fix aim,i play it on valorant i set offset to -8 and head_height = 0.5 but it quite often aim body,it not like the old version.

Raspberry Pi Pico

Hello! Can I use Raspberry Pi Pico? Or is Raspberry Pi Pico W absolutely necessary?

Fatal Python error: initfsencoding: unable to load the file system codec

As I already made the same issue yesterday I assume you know the error? https://cdn.discordapp.com/attachments/1112612408414961666/1159248906379599994/image.png?ex=653055ad&is=651de0ad&hm=7bc7fffcda5da42d5a1511cd1649c6dfbc8aff10d5c1f12421663f69b0275d24&
(i also updated to the latest python vers)
com3 port everything connected no problems connecting not a fault cable aswell.
if its important yes, I'm trying to spoof my board.
my last issue was closed while I was sleeping

Installation problem

I am trying to install this as a non english speaker and a non coder/programmer and it is very confusing,could you please make a installation tutorial on youtube or something like that? Would be really helpful

Kmbox compatible?

Hi, your project helping me a ton in making colorbot,
but I just wondering is Unibot support Kmbox-net by default?
I'm doing a setup 2pc + capture card + kmbox.
Hopefully unibot is the missing piece here

Rasberry Pi Pico and ban for serial

Hello again! You told me that for Rasberry Pi Pico you need to use serial communication, you wrote on the forum that this method is detected. So what do you advise to do? This method turns out to be a detect in valorant?

what should i do for arduino

I have arduino leonardo r3 , i don't know which file should a upload to arduino through arduino ide pls tell me

connection

I'm using an arduino leonardo with ethernet. Followed all the steps but I got the error "Could not connect (Socket). [WinError 10061] No connection could be made because the target machine actively refused it." Any ideas? Is it because I may have entered the ip address or mac addresses wrong? Not sure how to find the mac address.

Question about 2 mic inputs?

Most Anti-Cheats block 2 mic inputs, I want to use Leonardo + Ethernet host shield but I'm worried about the Arduino inputs will get blocked. Any information or comment about that? And are you using any clone hardware?

How to properly enable encryption?

How to properly enable encryption as there is no proper definition in the wiki. And can you also tell how it works for nerds like me, e.g does it encrypt the mouse movements? does it encrypt the screen capture? when enable does it effect the speed?

Mouse doesn't work

The color is detected precisely, but the mouse does not move or click. I'm using raspberry pi pico w.

config file:

; https://github.com/vike256/Unibot
; See Unibot Wiki for reference
; Consider donating: https://github.com/vike256#donations

[communication]
type = serial
encrypt = false
ip = 0.0.0.0
port = 50124
com_port = COM4

[screen]
detection_threshold = 3, 3
upper_color = 155, 255, 255
lower_color = 130, 50, 195
fov_x = 256
fov_y = 256
aim_fov_x = 500
aim_fov_y = 500
fps = 60
capture_method = dxcam
auto_detect_resolution = true
resolution_x = 1920
resolution_y = 1080

[aim]
offset = 0
smooth = 0.0
speed = 1.0
y_speed = 1.0
aim_height = 0.5

[recoil]
mode = move
recoil_x = 0.0
recoil_y = 0.0
max_offset = 100
recover = 0.0

[trigger]
trigger_delay = 0
trigger_randomization = 30
trigger_threshold = 8

[rapid_fire]
target_cps = 10

[key_binds]
; https://learn.microsoft.com/en-us/windows/win32/inputdev/virtual-key-codes
key_reload_config = 0x70
key_toggle_aim = 0x71
key_toggle_recoil = 0x72
key_exit = 0x73
key_trigger = 0x06
key_rapid_fire = 0x05
aim_keys = 0x01, 0x02

[debug]
enabled = true
always_on = true
display_mode = game

Ekran görüntüsü 2024-04-21 200018

Aimbot being sloppy

Hm, your latest version of unibots aimbot has been feeling a little sloppy... Ive tried playing with many different configs and stuff but it still seems to be very delayed and robot like.

The game screen is not captured

I used serial with Rasberry Pi Pico, The mouse moved correctly when I tested it in some games or on the desktop,But in some games, it doesn't capture the game, why is that, is there another setting that can solve it? How about using obs to read the screen and then move the mouse?

Error when trying to run

when i open run.bat it says :
line 24, in
import interception
ModuleNotFoundError: No module named 'interception'

Error when trying to use a feature

Connected
AIM: True
SENT: Move(-127.0, 127.0)SENT: Move(-63.0, -41.0)SENT: Move(-63.0, -41.0)SENT: Move(-63.0, -41.0)SENT: Move(-63.0, -41.0)SENT: Move(-63.0, -41.0)SENT: Move(-63.0, -41.0)SENT: Move(-63.0, -41.0)Closed
Traceback (most recent call last):
File "C:\Users\spngy\Downloads\Unibot-1.1_[unknowncheats.me]\Unibot-1.1\src\main.py", line 81, in
main()
File "C:\Users\spngy\Downloads\Unibot-1.1
[unknowncheats.me]\Unibot-1.1\src\main.py", line 65, in main
mouse.move(x, y)
File "C:\Users\spngy\Downloads\Unibot-1.1
[unknowncheats.me]_\Unibot-1.1\src\mouse.py", line 21, in move
cfg.client.sendall(command.encode())
ConnectionAbortedError: [WinError 10053] An established connection was aborted by the software in your host machine

Mouse movement issue with ctypes (no Arduino hardware or Raspberry)

movement value
I'm trying to use this on my computer, without any additional hardware
I installed the requirements, modified the config.ini files, including:

  • color lower and upper bound for Valorant's purple outline (which is [130, 60, 200] for lower and [150, 255, 255] for upper)
  • monitor's refresh rate (from 165 to 144 to match my monitor)
    I've tested the game on fullscreen, windowed fullscreen with raw buffer turned off.

I managed to get it work and the terminal outputs the move value for the mouse, but ctypes doesn't execute the movement command. I think the error might be in the main function, since I don't see anything related to com_type none.
Correct me if I'm wrong, any help is deeply appreciated !

How

How to setup config for interception driver , I try it a lot of time But it's not working.

No Ethernet response

I think I've followed all your instructions correctly, but I keep getting an error.

Connecting to my.ip.ad.dress (111)->(112) :50124...
ERROR: Could not connect (Socket). [WinError 10061] Connection refused because the target computer actively refused it.
Maybe this isn't enough to tell you what's wrong?

SMART AI

so are you planning to share a smart ai with yolov8n we would really appreciate it because you are really doing this very well

_??

closes when open

so i used 1.4.4 and 1.5.0 and they keep on closeing when i open the run.bat i'm using a Raspberry pi pico w

ValueError: Invalid Region: Region should be in 1536x864

Traceback (most recent call last):
File "c:\Users\DENİZ\Desktop\Unibot\src\main.py", line 85, in
main()
File "c:\Users\DENİZ\Desktop\Unibot\src\main.py", line 32, in main
target, trigger = screen.get_target()
File "c:\Users\DENİZ\Desktop\Unibot\src\screen.py", line 112, in get_target
self.debug_display()
File "c:\Users\DENİZ\Desktop\Unibot\src\screen.py", line 127, in debug_display
full_img = self.screenshot(self.screen_region)
File "c:\Users\DENİZ\Desktop\Unibot\src\screen.py", line 54, in screenshot
image = self.cam.grab(region=region)
File "C:\Users\DENİZ\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.10_qbz5n2kfra8p0\LocalCache\local-packages\Python310\site-packages\dxcam\dxcam.py", line 69, in grab
self._validate_region(region)
File "C:\Users\DENİZ\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.10_qbz5n2kfra8p0\LocalCache\local-packages\Python310\site-packages\dxcam\dxcam.py", line 233, in _validate_region
raise ValueError(
ValueError: Invalid Region: Region should be in 1536x864

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.