OutdatedDestiny 2 External Bot Final + Source

Posts 136–150 of 635 · Page 10 of 43
Quote Originally Posted by navysonar View Post
btw guys I know some dev for paid bots are working on a solution right now.
Maybe. Doesn't mean we cant search for a solution ourselves too.
Vibrance doesn't do shite. It only seems to your inferior eyes that the hp bar is solid. AHK still sees it as transparent and changing colors.

So if you're now like 'But...but..muh vibrance...' - please go away - you are NOT HELPING.
I want to point out that the number 50 and the faction icons are transparent as well. I already did some testing with this and got nowhere. Take some screens yourself and pull pixels by color and you will see that it is various shades of white to light grey. A spot that is white might turn grey after they move 1ft to the left and so on.



That being said, I've been having more and more success using image search and a few "health bars" to lock onto with *n to account for transparencies. I'm somewhere around 80% as good as the origional bot now. Biggest issue is sights that have a red dot and some maps on nessus with red foliage. I'm 100% locked on full health guardians but once they loose there shield and start going below 50% health the image size and *n value required to attain a lock causes some issues.
Quote Originally Posted by 3andrew View Post
I want to point out that the number 50 and the faction icons are transparent as well. I already did some testing with this and got nowhere. Take some screens yourself and pull pixels by color and you will see that it is various shades of white to light grey. A spot that is white might turn grey after they move 1ft to the left and so on.



That being said, I've been having more and more success using image search and a few "health bars" to lock onto with *n to account for transparencies. I'm somewhere around 80% as good as the origional bot now. Biggest issue is sights that have a red dot and some maps on nessus with red foliage. I'm 100% locked on full health guardians but once they loose there shield and start going below 50% health the image size and *n value required to attain a lock causes some issues.
Nice work! How many different healthbars did you test with? Are you just using a few pixels or a decent sized "box" to make sure you don't grab smaller red particles? I've been fiddling with it on my own with 3 different bmps but I am nowhere near 80% accurate, I still "wiggle" with the animation towards the right. Not to mention the fact enemies glow red similar to the health bar when you first target them in the crucible. Share what you can so we can get a few more testers on this if possible...
Quote Originally Posted by K3ys3r View Post
Nice work! How many different healthbars did you test with? Are you just using a few pixels or a decent sized "box" to make sure you don't grab smaller red particles? I've been fiddling with it on my own with 3 different bmps but I am nowhere near 80% accurate, I still "wiggle" with the animation towards the right. Not to mention the fact enemies glow red similar to the health bar when you first target them in the crucible. Share what you can so we can get a few more testers on this if possible...
Quote Originally Posted by 3andrew View Post
I want to point out that the number 50 and the faction icons are transparent as well. I already did some testing with this and got nowhere. Take some screens yourself and pull pixels by color and you will see that it is various shades of white to light grey. A spot that is white might turn grey after they move 1ft to the left and so on.



That being said, I've been having more and more success using image search and a few "health bars" to lock onto with *n to account for transparencies. I'm somewhere around 80% as good as the origional bot now. Biggest issue is sights that have a red dot and some maps on nessus with red foliage. I'm 100% locked on full health guardians but once they loose there shield and start going below 50% health the image size and *n value required to attain a lock causes some issues.

Damn im almost died in learning OCR and some customs Text/Number recognition script to lock on *50*/// Glad u have some good results in old method since mine is so hard to do when u have no expirience in .ahk+custom dll
-----------
if u need some testers on help in old method with pixelSearch\imageSearch - pm me.
Quote Originally Posted by 3andrew View Post
I want to point out that the number 50 and the faction icons are transparent as well. I already did some testing with this and got nowhere. Take some screens yourself and pull pixels by color and you will see that it is various shades of white to light grey. A spot that is white might turn grey after they move 1ft to the left and so on.



That being said, I've been having more and more success using image search and a few "health bars" to lock onto with *n to account for transparencies. I'm somewhere around 80% as good as the origional bot now. Biggest issue is sights that have a red dot and some maps on nessus with red foliage. I'm 100% locked on full health guardians but once they loose there shield and start going below 50% health the image size and *n value required to attain a lock causes some issues.
Awesome work, I want to suggest you, what if you crop the square image with player lvl 50? With ImageSearch? Will it work?
Quote Originally Posted by Overwolf2077 View Post
Awesome work, I want to suggest you, what if you crop the square image with player lvl 50? With ImageSearch? Will it work?
no sir. Its will not work since its transparent too and have some changes depends on range..
Quote Originally Posted by Overwolf2077 View Post
Awesome work, I want to suggest you, what if you crop the square image with player lvl 50? With ImageSearch? Will it work?
I thought about that and tried it, problem is the size of the square varies slightly with distance, just enough to mess with imagesearch unless you have about 10 different ones to scan for to represent every possible size of it. I tried something similar with the 50 with transparency everywhere around and a small tolerance for variations of white but it stuck on the sky and other white parts too often.
Quote Originally Posted by K3ys3r View Post
I thought about that and tried it, problem is the size of the square varies slightly with distance, just enough to mess with imagesearch unless you have about 10 different ones to scan for to represent every possible size of it. I tried something similar with the 50 with transparency everywhere around and a small tolerance for variations of white but it stuck on the sky and other white parts too often.
could u share ur code ?
It's not really my code per say since I used the basis from the commonly used AHK bot, this is the generic version with 5 bars or pictures. You can do it with PNGs with transparency or use TransBlack or TransWhite but I find it works better with imageSearch:

#SingleInstance, Force
#Persistent
#NoEnv
#Warn
SendMode, Input
SetWorkingDir, %A_ScriptDir%

DirX := 0
DirY := 0

Numpad1::
#Persistent
#KeyHistory, 0
#NoEnv
#HotKeyInterval 1
#MaxHotkeysPerInterval 127
#InstallKeybdHook
#UseHook
#SingleInstance, Force
SetKeyDelay,-1, 8
SetControlDelay, -1
SetMouseDelay, 0
SetWinDelay,-1
SendMode, InputThenPlay
SetBatchLines,-1
ListLines, Off
CoordMode, Mouse, client
PID := DllCall("GetCurrentProcessId")
Process, Priority, %PID%, Normal
ZeroX := A_Screenwidth/2
ZeroY := A_Screenheight/2
CFovX := 80
CFovY := 200
ScanL := 660
ScanR := 1250
ScanT := 280
ScanB := 610
inicount := 9
fileread,settings,settings.ini

stringsplit,settings,settings,`n

if !(fileexist("settings.ini")) || (settings0-3 != inicount)
{
iniread,rx,settings.ini,settings,sen, 3.5
iniread,xrange,settings.ini,settings,FovX, 4.3
iniread,yrange,settings.ini,settings,FovY, 3.5
iniread,xa,settings.ini,settings,AimX, 85
iniread,xy,settings.ini,settings,AimY, 49
}


Soundbeep, 75, 150
Loop,
{
GetKeyState, Mouse2, LButton, P
GetKeyState, Mouse3, RButton, P
if ( Mouse2 == "D" ) || ( Mouse3 == "D" )
{
GoSub MouseMoves2
}

GetKeyState, Key1, Numpad1, P
if ( Key1 == "D")
{
Soundbeep, 100, 50
break
}
}

MouseMoves2:
imageSearch, AimPixelX, AimPixelY, 0 + (A_Screenwidth * (xrange/10)), 0 + (A_Screenheight * (yrange/10)), A_Screenwidth - (A_Screenwidth * (xrange/10)), A_Screenheight - (A_Screenheight * (yrange / 10)), *5 Red-Test1.bmp
if(AimPixelX != "" && AimPixelY != "")
{
GoSub GetAimOffset1
GoSub GetAimMoves1
}
else
{
imageSearch, AimPixelX, AimPixelY, 0 + (A_Screenwidth * (xrange/10)), 0 + (A_Screenheight * (yrange/10)), A_Screenwidth - (A_Screenwidth * (xrange/10)), A_Screenheight - (A_Screenheight * (yrange / 10)), *5 Red-Test2.bmp
if(AimPixelX != "" && AimPixelY != "")
{
GoSub GetAimOffset1
GoSub GetAimMoves1
}
}
else
{
imageSearch, AimPixelX, AimPixelY, 0 + (A_Screenwidth * (xrange/10)), 0 + (A_Screenheight * (yrange/10)), A_Screenwidth - (A_Screenwidth * (xrange/10)), A_Screenheight - (A_Screenheight * (yrange / 10)), *5 Red-Test3.bmp
if(AimPixelX != "" && AimPixelY != "")
{
GoSub GetAimOffset1
GoSub GetAimMoves1
}
}
else
{
imageSearch, AimPixelX, AimPixelY, 0 + (A_Screenwidth * (xrange/10)), 0 + (A_Screenheight * (yrange/10)), A_Screenwidth - (A_Screenwidth * (xrange/10)), A_Screenheight - (A_Screenheight * (yrange / 10)), *5 Red-Test4.bmp
if(AimPixelX != "" && AimPixelY != "")
{
GoSub GetAimOffset1
GoSub GetAimMoves1
}
}
else
{
imageSearch, AimPixelX, AimPixelY, 0 + (A_Screenwidth * (xrange/10)), 0 + (A_Screenheight * (yrange/10)), A_Screenwidth - (A_Screenwidth * (xrange/10)), A_Screenheight - (A_Screenheight * (yrange / 10)), *5 Red-Test5.bmp
if(AimPixelX != "" && AimPixelY != "")
{
GoSub GetAimOffset1
GoSub GetAimMoves1
}
}
Return

GetAimOffset1:
Gui,Submit, Nohide
AimX := AimPixelX - ZeroX +xa
AimY := AimPixelY - ZeroY +xy

if ( AimX+10 > 0)
{
DirX := rx / 10
}
else if ( AimX+5 > 0)
{
DirX := rx / 15
}

if ( AimX+10 < 0)
{
DirX := (-rx) / 10
}
else if ( AimX+5 < 0)
{
DirX := (-rx) / 15
}

if ( AimY+.25 > 0 )
{
DirY := rx /13
}

if ( AimY+.25 < 0 )
{
DirY := (-rx) /13
}

AimOffsetX := AimX * DirX
AimOffsetY := AimY * DirY
Return

GetAimMoves1:
RootX := Ceil(( AimOffsetX ** ( 1 )))
RootY := Ceil(( AimOffsetY ** ( 1 )))
MoveX := RootX * DirX
MoveY := RootY * DirY
DllCall("mouse_event", uint, 1, int, MoveX, int, MoveY, uint, 0, int, 0)
Return
Quote Originally Posted by K3ys3r View Post
It's not really my code per say since I used the basis from the commonly used AHK bot, this is the generic version with 5 bars or pictures. You can do it with PNGs with transparency or use TransBlack or TransWhite but I find it works better with imageSearch:
Im getting and error on line 87 with this code
Ah sorry yeah that was my dummy code file, just replace all the "else"s prior to the last one by "else if" and it'll work fine.
Quote Originally Posted by navysonar View Post
Im getting and error on line 87 with this code
edit: Like this it work
#SingleInstance, Force
#Persistent
#NoEnv
#Warn
SendMode, Input
SetWorkingDir, %A_ScriptDir%

DirX := 0
DirY := 0

Numpad1::
#Persistent
#KeyHistory, 0
#NoEnv
#HotKeyInterval 1
#MaxHotkeysPerInterval 127
#InstallKeybdHook
#UseHook
#SingleInstance, Force
SetKeyDelay,-1, 8
SetControlDelay, -1
SetMouseDelay, 0
SetWinDelay,-1
SendMode, InputThenPlay
SetBatchLines,-1
ListLines, Off
CoordMode, Mouse, client
PID := DllCall("GetCurrentProcessId")
Process, Priority, %PID%, Normal
ZeroX := A_Screenwidth/2
ZeroY := A_Screenheight/2
CFovX := 80
CFovY := 200
ScanL := 660
ScanR := 1250
ScanT := 280
ScanB := 610
inicount := 9
fileread,settings,settings.ini

stringsplit,settings,settings,`n

if !(fileexist("settings.ini")) || (settings0-3 != inicount)
{
iniread,rx,settings.ini,settings,sen, 3.5
iniread,xrange,settings.ini,settings,FovX, 4.3
iniread,yrange,settings.ini,settings,FovY, 3.5
iniread,xa,settings.ini,settings,AimX, 85
iniread,xy,settings.ini,settings,AimY, 49
}


Soundbeep, 75, 150
Loop,
{
GetKeyState, Mouse2, LButton, P
GetKeyState, Mouse3, RButton, P
if ( Mouse2 == "D" ) || ( Mouse3 == "D" )
{
GoSub MouseMoves2
}

GetKeyState, Key1, Numpad1, P
if ( Key1 == "D")
{
Soundbeep, 100, 50
break
}
}

MouseMoves2:
imageSearch, AimPixelX, AimPixelY, 0 + (A_Screenwidth * (xrange/10)), 0 + (A_Screenheight * (yrange/10)), A_Screenwidth - (A_Screenwidth * (xrange/10)), A_Screenheight - (A_Screenheight * (yrange / 10)), *5 Red-Test1.bmp
if(AimPixelX != "" && AimPixelY != "")
{
GoSub GetAimOffset1
GoSub GetAimMoves1
}
else
{
imageSearch, AimPixelX, AimPixelY, 0 + (A_Screenwidth * (xrange/10)), 0 + (A_Screenheight * (yrange/10)), A_Screenwidth - (A_Screenwidth * (xrange/10)), A_Screenheight - (A_Screenheight * (yrange / 10)), *5 Red-Test2.bmp
if(AimPixelX != "" && AimPixelY != "")
{
GoSub GetAimOffset1
GoSub GetAimMoves1
}
}
else
{
imageSearch, AimPixelX, AimPixelY, 0 + (A_Screenwidth * (xrange/10)), 0 + (A_Screenheight * (yrange/10)), A_Screenwidth - (A_Screenwidth * (xrange/10)), A_Screenheight - (A_Screenheight * (yrange / 10)), *5 Red-Test3.bmp
if(AimPixelX != "" && AimPixelY != "")
{
GoSub GetAimOffset1
GoSub GetAimMoves1
}
}
else
{
imageSearch, AimPixelX, AimPixelY, 0 + (A_Screenwidth * (xrange/10)), 0 + (A_Screenheight * (yrange/10)), A_Screenwidth - (A_Screenwidth * (xrange/10)), A_Screenheight - (A_Screenheight * (yrange / 10)), *5 Red-Test4.bmp
if(AimPixelX != "" && AimPixelY != "")
{
GoSub GetAimOffset1
GoSub GetAimMoves1
}
}
else
{
imageSearch, AimPixelX, AimPixelY, 0 + (A_Screenwidth * (xrange/10)), 0 + (A_Screenheight * (yrange/10)), A_Screenwidth - (A_Screenwidth * (xrange/10)), A_Screenheight - (A_Screenheight * (yrange / 10)), *5 Red-Test5.bmp
if(AimPixelX != "" && AimPixelY != "")
{
GoSub GetAimOffset1
GoSub GetAimMoves1
}
}
Return

GetAimOffset1:
Gui,Submit, Nohide
AimX := AimPixelX - ZeroX +xa
AimY := AimPixelY - ZeroY +xy

if ( AimX+10 > 0)
{
DirX := rx / 10
}
else if ( AimX+5 > 0)
{
DirX := rx / 15
}

if ( AimX+10 < 0)
{
DirX := (-rx) / 10
}
else if ( AimX+5 < 0)
{
DirX := (-rx) / 15
}

if ( AimY+.25 > 0 )
{
DirY := rx /13
}

if ( AimY+.25 < 0 )
{
DirY := (-rx) /13
}

AimOffsetX := AimX * DirX
AimOffsetY := AimY * DirY
Return

GetAimMoves1:
RootX := Ceil(( AimOffsetX ** ( 1 )))
RootY := Ceil(( AimOffsetY ** ( 1 )))
MoveX := RootX * DirX
MoveY := RootY * DirY
DllCall("mouse_event", uint, 1, int, MoveX, int, MoveY, uint, 0, int, 0)
Return
Can you also post the reference images please?
Posts 136–150 of 635 · Page 10 of 43
This thread is closed for replies.

Similar Threads

Tags for this Thread

None

Talk with us