OutdatedTrove AutoHotkey Scripts

Posts 91–105 of 122 · Page 7 of 9
Quote Originally Posted by Ex3cutioner View Post
These aren't working for me.
Could someone make a detailed instructional on how to do this?
for example, do you start the script first or the game?
Run the AutoHotKey script, get inside trove, make sure you are faced to the water/lava/choco, press B to open your inventory and finally press NUMPAD 6 to start the script.

- - - Updated - - -

Quote Originally Posted by die254 View Post
This one was working this mornig, check it out:

 
Fishbot + Boot drop (Thanks hzt)
#WinActivateForce

Numpad6::
WinGet, pidn, PID, A
pid := pidn
WinGet, hwnds, ID, A
Handle := hwnds
Lure := 9999
Base := getProcessBaseAddress()
WaterAddress := GetAddressWater(Base,0x00964208)
LavaAddress := GetAddressLava(Base,0x00964208)
ChocoAddress := GetAddressChoco(Base,0x00964208)

LureCount := 0
Loop %Lure%
{
LureCount := LureCount +1
ControlSend, , {c down}, ahk_pid %pid%
Sleep, 86
ControlSend, , {c up}, ahk_pid %pid%
Sleep, 500
ControlSend, , {f down}, ahk_pid %pid%
Sleep, 86
ControlSend, , {f up}, ahk_pid %pid%
Catch := 0
PoleCheck := 40

Loop
{
If (Catch = 1)
{
break
}
else
{
If (PoleCheckN = PoleCheck)
{
ControlSend, , {f down}, ahk_pid %pid%
Sleep, 86
ControlSend, , {f up}, ahk_pid %pid%
LureCount := 0
}
else
{
}
CaughtWater := ReadMemory(WaterAddress)
CaughtLava := ReadMemory(LavaAddress)
CaughtChoco := ReadMemory(ChocoAddress)
If (CaughtWater = 1 or CaughtLava = 1 or CaughtChoco = 1)
{
ControlSend, , {f down}, ahk_pid %pid%
Sleep, 86
ControlSend, , {f up}, ahk_pid %pid%
Random, Wait, 2000, 3500
Sleep, %Wait%
Catch := 1
}
else
{
PoleCheckN := PoleCheckN +1
Sleep, 1000
}
}
Imagesearch, Foundx, FoundY, 0, 0, A_ScreenWidth, A_ScreenHeight, *50 c:\boot.bmp
if errorlevel = 0
{
MouseClickDrag, Left, %FoundX%, %FoundY%, 779, 412
}
}
}
ExitApp

Numpad7::
ExitApp

GetAddressWater(Base, Address)
{
pointerBase := base + Address
y1 := ReadMemory(pointerBase)
y2 := ReadMemory(y1 + 0x144)
y3 := ReadMemory(y2 + 0xe4)
Return WaterAddress := (y3 + 0x70)
}

GetAddressLava(Base, Address)
{
pointerBase := base + Address
y1 := ReadMemory(pointerBase)
y2 := ReadMemory(y1 + 0x144)
y3 := ReadMemory(y2 + 0xe4)
Return LavaAddress := (y3 + 0x514)
}

GetAddressChoco(Base, Address)
{
pointerBase := base + Address
y1 := ReadMemory(pointerBase)
y2 := ReadMemory(y1 + 0x144)
y3 := ReadMemory(y2 + 0xe4)
Return ChocoAddress := (y3 + 0x2c0)
}

getProcessBaseAddress()
{
Global Handle
return DllCall( A_PtrSize = 4
? "GetWindowLong"
: "GetWindowLongPtr"
, "Ptr", Handle
, "Int", -6
, "Int64") ; Use Int64 to prevent negative overflow when AHK is 32 bit and target process is 64bit
; If DLL call fails, returned value will = 0
}

ReadMemory(MADDRESS)
{
Global pid
VarSetCapacity(MVALUE,4,0)
ProcessHandle := DllCall("OpenProcess", "Int", 24, "Char", 0, "UInt", pid, "UInt")
;DllCall("ReadProcessMemory","UInt",ProcessHandle, "UInt",MADDRESS,"Str",MVALUE,"UInt",4,"UInt *",0)
DllCall("ReadProcessMemory", "UInt", ProcessHandle, "Ptr", MADDRESS, "Ptr", &MVALUE, "Uint",4)
Loop 4
result += *(&MVALUE + A_Index-1) << 8*(A_Index-1)
return, result
}


Please take a look at this Thread for more info about the Boot Drop if you are interested: [Release] Auto Boot Throw AHK Script
Quote Originally Posted by cyzzle View Post
I can get it activated, but it just casts over and over again without catching anything. Casts then always pulls back within like 2 seconds. Any idea what's up?
Are you using the Bot that I posted above? because thats the only one working at the moment.
Quote Originally Posted by die254 View Post
Run the AutoHotKey script, get inside trove, make sure you are faced to the water/lava/choco, press B to open your inventory and finally press NUMPAD 6 to start the script.

- - - Updated - - -





Are you using the Bot that I posted above? because thats the only one working at the moment.
Hey man
Thanks for the fast response, but I still can't get it to work for some reason.
I've done all the above steps however nothing appears to be happening
Perhaps it has something to do with Admin privileges?
Quote Originally Posted by Ex3cutioner View Post


Hey man
Thanks for the fast response, but I still can't get it to work for some reason.
I've done all the above steps however nothing appears to be happening
Perhaps it has something to do with Admin privileges?
It's not working for me either now, since like 30minutes ago

Nvm it's working now. I don't get it, I've been using AHK fishing scripts without admin for about 3 days. I just ran it as admin and now it works.
the script does not putt the fish out of the water...
thanks for the files and the script but its not riling them in
Couple of questions, is there anyone that can combine this with the auto boot script, I'm asking because I really like the info window on this script.
Second question, is it possible to turn the time in h/m/s instead of just ms?
Same problem as some people above the script doesnt reel the fish in and the info window shows up on my second screen not sure if this is intended
I do not draw water fish
what are the odds of being cought using this and being banned ? should i only use on a fishing account i make or should i be safe to use on main ? (well as safe as u can be when botting lol)
0 bans till now, thats what I can tell...
Quote Originally Posted by die254 View Post
0 bans till now, thats what I can tell...

hope it stays that way lol. its nice when games are not to strict on botting
Does any script work fully for you?
Quote Originally Posted by takasi View Post
Does any script work fully for you?
yes i found one on here that works fully with auto stop when out of lures and boot throw

- - - Updated - - -

Quote Originally Posted by nilotaviano View Post
Slightly improved from die254's script.

Instructions:
  • Ctrl + j to start the bot
  • Ctrl + k to stop it
  • If you stop it mid fishing, it will catch the current fish and then stop.
  • Fishing will work on background, it simply wont drop boots unless trove is in focus.



Code:
#WinActivateForce

^j::
  shouldRun = 1
  if !setupDone
  {
    WinGet, pidn, PID, A
    pid := pidn
    WinGet, hwnds, ID, A
    Handle := hwnds
    Base := getProcessBaseAddress()
    WaterAddress := GetAddressWater(Base,0x00964208) 
    LavaAddress := GetAddressLava(Base,0x00964208) 
    ChocoAddress := GetAddressChoco(Base,0x00964208) 
    setupDone = 1
  }
  Loop
  {
    if shouldRun
    {
      ControlSend, , {c down}, ahk_pid %pid%
      Sleep, 86
      ControlSend, , {c up}, ahk_pid %pid%
      Sleep, 500
	  
      ControlSend, , {f down}, ahk_pid %pid%
      Sleep, 86
      ControlSend, , {f up}, ahk_pid %pid%
	  
      Catch := 0
      PoleCheck := 40

      While Catch = 0 
      {
        If (PoleCheckN = PoleCheck)
        {
          ControlSend, , {f down}, ahk_pid %pid%
          Sleep, 86
          ControlSend, , {f up}, ahk_pid %pid%
        }
        
        CaughtWater := ReadMemory(WaterAddress)
        CaughtLava := ReadMemory(LavaAddress)
        CaughtChoco := ReadMemory(ChocoAddress)
        
        If (CaughtWater = 1 or CaughtLava = 1 or CaughtChoco = 1)
        {
          ControlSend, , {f down}, ahk_pid %pid%
          Sleep, 86
          ControlSend, , {f up}, ahk_pid %pid%
          Random, Wait, 2000, 3500
          Sleep, %Wait%
          Catch := 1
        }
        else 
        {
          PoleCheckN := PoleCheckN +1
          Sleep, 1000
        }
        
        FindAndDropBoots()
      }
    }
    else
    {
      Return
    }
  }
Return

GetAddressWater(Base, Address)
{
  pointerBase := base + Address
  y1 := ReadMemory(pointerBase)
  y2 := ReadMemory(y1 + 0x144)
  y3 := ReadMemory(y2 + 0xe4)
  Return WaterAddress := (y3 + 0x70) 
}

GetAddressLava(Base, Address)
{
  pointerBase := base + Address
  y1 := ReadMemory(pointerBase)
  y2 := ReadMemory(y1 + 0x144)
  y3 := ReadMemory(y2 + 0xe4)
  Return LavaAddress := (y3 + 0x514) 
}

GetAddressChoco(Base, Address)
{
  pointerBase := base + Address
  y1 := ReadMemory(pointerBase)
  y2 := ReadMemory(y1 + 0x144)
  y3 := ReadMemory(y2 + 0xe4)
  Return ChocoAddress := (y3 + 0x2c0) 
}

getProcessBaseAddress()
{
  Global Handle
  return DllCall( A_PtrSize = 4
  ? "GetWindowLong"
  : "GetWindowLongPtr"
  , "Ptr", Handle
  , "Int", -6
  , "Int64") ; Use Int64 to prevent negative overflow when AHK is 32 bit and target process is 64bit
  ; If DLL call fails, returned value will = 0
} 

ReadMemory(MADDRESS)
{
  Global pid
  VarSetCapacity(MVALUE,4,0)
  ProcessHandle := DllCall("OpenProcess", "Int", 24, "Char", 0, "UInt", pid, "UInt")
  ;DllCall("ReadProcessMemory","UInt",ProcessHandle, "UInt",MADDRESS,"Str",MVALUE,"UInt",4,"UInt *",0)
  DllCall("ReadProcessMemory", "UInt", ProcessHandle, "Ptr", MADDRESS, "Ptr", &MVALUE, "Uint",4)
  Loop 4
  result += *(&MVALUE + A_Index-1) << 8*(A_Index-1)
  return, result
}

FindAndDropBoots()
{
  Imagesearch, Foundx, FoundY, 0, 0, A_ScreenWidth, A_ScreenHeight, *50 c:\boot.bmp
  
  While errorlevel = 0
  {
    MouseClickDrag, Left, %FoundX%, %FoundY%, 779, 412
    Imagesearch, Foundx, FoundY, 0, 0, A_ScreenWidth, A_ScreenHeight, *50 c:\boot.bmp
  }
}

^k::
  shouldRun = 0
Return
this is the one im using that was posted in anther thread
mhm i get the same problem that it doesnt reel in the fishes
Xaymar you can make update with boot ejector ?
Posts 91–105 of 122 · Page 7 of 9

Post a Reply

Similar Threads

Tags for this Thread

Talk with us