Results 1 to 9 of 9
  1. #1
    mpmoi's Avatar
    Join Date
    Aug 2015
    Gender
    male
    Location
    Here there
    Posts
    788
    Reputation
    26
    Thanks
    4,404
    My Mood
    Drunk

    Arrow MpPassiveFishingBot v2.2 : PTS/LIVE fishing bot. Auto-updating pointer.

    Hey guys !

    This is a fishing bot for Trove ! It works well and is really useful if you want to fish a lot ! It supports multiple accounts ! It's purpose is to be a light and fast bot ! No hotkeys ! No setup needed !
    Requierments : AutoHotKey (last version I guess)

    How it works :
    Just grab the source code and paste it in a .ahk file and start it! You can also download it directly. (wait for @Psychotic @Wyo @Buddie approval)
    Start it (Tutorial here : https://www.mpgh.net/forum/showthread.php?t=1150041)
    You can check PTS if you want to fish on it.
    Press F on some water/lava/chocolate !
    You can start it on as many accounts as you need !
    If you want it to stop fishing just early reel the fishing rod ! (before a fish comes)
    To close the bot simply close the tray icon or the GUI !

    Updating pointers
    This version should self-update pointers, however I will have to find them before so it could take some time (less than 2-3h after a patch usually)
    You can still find them by yourself or check the forums : I guess Nippy's Fishbot pointers should work. Edit the config file in the same directory as the .ahk file. Then restart the script.
    Here is a tutorial for finding pointers : https://www.mpgh.net/forum/showthread.php?t=1150085

    /!\ People seems to have hurdles on non-english versions
    /!\ Your fishing hotkey must be 'F'

     

    Code:
    #SingleInstance force
    #Persistent
    
    SplashTextOn, 500,25, mpPassiveFishingBot, Initializing and updating pointers, please wait...
    
    SetWorkingDir %A_ScriptDir%
    Reeled := Object()
    Queue := Object()
    
    global Ver:=2.2
    global _Motd:=""
    global _Version:=1
    global _PTSVersion:=1
    global _Pointer:="0x0"
    global _PTSPointer:="0x0"
    global _wOffset:="0x0"
    global _lOffset:="0x0"
    global _cOffset:="0x0"
    global _PTSwOffset:="0x0"
    global _PTSlOffset:="0x0"
    global _PTScOffset:="0x0"
    global iniFile := A_ScriptDir . "/config.ini"
    global rld := 0
    
    If (FileExist(iniFile)){
    	IniRead, _Version, %iniFile%, Global, _Version
    	IniRead, _Pointer, %iniFile%, Global, _Pointer
    	IniRead, _wOffset, %iniFile%, Global, _wOffset
    	IniRead, _lOffset, %iniFile%, Global, _lOffset
    	IniRead, _cOffset, %iniFile%, Global, _cOffset
    	IniRead, _PTSVersion, %iniFile%, Global, _PTSVersion
    	IniRead, _PTSPointer, %iniFile%, Global, _PTSPointer
    	IniRead, _PTSwOffset, %iniFile%, Global, _PTSwOffset
    	IniRead, _PTSlOffset, %iniFile%, Global, _PTSlOffset
    	IniRead, _PTScOffset, %iniFile%, Global, _PTScOffset
    	IniRead, _Motd, %iniFile%, Global, _Motd
    }
    
    url := "https://dl.dropb" + "oxuserconten*****m/u/52517919/MpFishingBotPointer.txt"
    WebRequest := ComObjCreate("WinHttp.WinHttpRequest.5.1")
    WebRequest.Open("GET", url)
    WebRequest.Send()
    
    Contents := StrSplit(WebRequest.ResponseText, "$")
    
    if (Contents[1] > _Version){
    	global _Version:=Contents[1]
    	global _Pointer:=Contents[2]
    	global _wOffset:=Contents[3]
    	global _lOffset:=Contents[4]
    	global _cOffset:=Contents[5]
    	IniWrite, %_wOffset%, %iniFile%, Global, _wOffset
    	IniWrite, %_lOffset%, %iniFile%, Global, _lOffset
    	IniWrite, %_cOffset%, %iniFile%, Global, _cOffset
    	IniWrite, %_Version%, %iniFile%, Global, _Version
    	IniWrite, %_Pointer%, %iniFile%, Global, _Pointer
    	TrayTip ,mpPassiveFishingBot, % "Values updated to :`nPointer : " _Pointer "`nWater offset : " _wOffset "`nLava offset : "_lOffset "`nChocolate offset : " _cOffset
    	Sleep, 10
    	}
    
    if (Contents[9] > _PTSVersion){
    	global _PTSVersion:=Contents[9]
    	global _PTSPointer:=Contents[10]
    	global _PTSwOffset:=Contents[11]
    	global _PTSlOffset:=Contents[12]
    	global _PTScOffset:=Contents[13]
    	IniWrite, %_PTSVersion%, %iniFile%, Global, _PTSVersion
    	IniWrite, %_PTSPointer%, %iniFile%, Global, _PTSPointer
    	IniWrite, %_PTSwOffset%, %iniFile%, Global, _PTSwOffset
    	IniWrite, %_PTSlOffset%, %iniFile%, Global, _PTSlOffset
    	IniWrite, %_PTScOffset%, %iniFile%, Global, _PTScOffset
    	TrayTip ,mpPassiveFishingBot, % "PTS Values updated to :`nPointer : " _PTSPointer "`nWater offset : " _PTSwOffset "`nLava offset : "_PTSlOffset "`nChocolate offset : " _PTScOffset
    	Sleep, 10
    	}
    
    global _newMotd:=Contents[8]
    if (_Motd != _newMotd){
    	TrayTip ,mpPassiveFishingBot, %_newMotd%
    	Sleep, 10
    	}
    IniWrite, %_newMotd%, %iniFile%, Global, _Motd
    
    Gui, 1:New
    Gui 1:-Resize -MinimizeBox
    Gui, 1:Add, Text,, Current version : %Ver%`n`nPointer : %_Pointer%`nWater offsets : %_wOffset%`nLava offset : %_lOffset%`nChocolate offset : %_cOffset%`n`nPTS Pointer : %_PTSPointer%`nPTS Water offsets : %_PTSwOffset%`nPTS Lava offset : %_PTSlOffset%`nPTS Chocolate offset : %_PTScOffset%
    Gui, 1:Add, Text, vAccounts w200
    Gui, 1:Add, Text, vReeled w200
    Gui, 1:Add, Checkbox, vTry, PTS
    Gui, 1:Add, Button, gDebug , &Debug
    
    Gui, 2:New
    Gui 2:-Resize -MinimizeBox
    Gui, 2:Add, ListView, w700, Window PID|Handle|Base Address|Water Adress|Water Value|Lava Adress|Lava Value|Chocolate Adress|Chocolate Value
    
    SplashTextOff
    
    if (Contents[6] > Ver){
    	num := Contents[7]
    	url = https://www.mpgh.net/forum/showthread.php?t=%num%
    	MsgBox, 4,, New version available, go to MPGH topic ? (press Yes or No)
    	IfMsgBox Yes
    		Run %url%
    	}
    
    Gui, 1:Show,,mpPassiveFishingBot
    
    SetTimer, Scan, 999
    SetTimer, Relaunch, 1999
    SetTimer, UpdateGui, 250
    
    TrayTip ,mpPassiveFishingBot, Bot started ! Press "f" on water/lava/chocolate !
    return
    
    Scan:
    	WinGet, l, list, ahk_exe Trove.exe
    	Loop %l%
    	{
    		Handle := l%a_index%
    		WinGet, pid, PID, ahk_id %Handle%
    		Base := getProcessBaseAddress(Handle)
    		If PTS = 1
    		{
    			wAddress := GetAddress(pid, Base, _PTSPointer, _PTSwOffset)
    			lAddress := GetAddress(pid, Base, _PTSPointer, _PTSlOffset)
    			cAddress := GetAddress(pid, Base, _PTSPointer, _PTScOffset)
    		}Else{
    			wAddress := GetAddress(pid, Base, _Pointer, _wOffset)
    			lAddress := GetAddress(pid, Base, _Pointer, _lOffset)
    			cAddress := GetAddress(pid, Base, _Pointer, _cOffset)
    		}
    		wValue := ReadMemory(wAddress, pid)
    		lValue := ReadMemory(lAddress, pid)
    		cValue := ReadMemory(cAddress, pid)
    		if (cValue=1||lValue=1||wValue=1){
    			found := 0
    			for i, p in Reeled{
    				if (p=pid)
    					found := 1
    				}
    			for i, p in Queue{
    				if (p=pid)
    					found := 1
    				}
    			If (found = 0){
    				ControlSend, , {f down}, ahk_pid %pid%
    				Sleep, 90
    				ControlSend, , {f up}, ahk_pid %pid%
    				rld ++
    				Reeled.Insert(pid)
    				}
    			}
    	}
    	return
    
    Relaunch:
    	Queue := Reeled
    	Reeled := Object()
    	Sleep, 2000
    	for i, p in Queue{
    		ControlSend, , {f down}, ahk_pid %p%
    		Sleep, 90
    		ControlSend, , {f up}, ahk_pid %p%
    		}
    	return
    
    UpdateGui:
    	C := 0
    	WinGet, l, list, ahk_exe Trove.exe
    	Loop %l%
    		C ++
    	GuiControl, 1:, Accounts, Active accounts : %C%
    	GuiControl, 1:, Reeled, Fish reeled : %rld%
    	GuiControlGet, PTS,, Try
    	return
    
    GuiClose:
    	ExitApp
    
    Debug:
    	SetTimer, UpdateDebugGui, 250
    	Gui, 2:Show, , mpPassiveFishingBotDebug
    	return
    
    UpdateDebugGui:
    	Gui, 2:Default
    	LV_DELETE()
    	WinGet, l, list, ahk_exe Trove.exe
    	Loop %l%
    	{
    		Handle := l%a_index%
    		WinGet, pid, PID, ahk_id %Handle%
    		BaseAddress := getProcessBaseAddress(Handle)
    		If PTS = 1
    		{
    			wAddress := GetAddress(pid, BaseAddress, _PTSPointer, _PTSwOffset)
    			lAddress := GetAddress(pid, BaseAddress, _PTSPointer, _PTSlOffset)
    			cAddress := GetAddress(pid, BaseAddress, _PTSPointer, _PTScOffset)
    		}Else{
    			wAddress := GetAddress(pid, BaseAddress, _Pointer, _wOffset)
    			lAddress := GetAddress(pid, BaseAddress, _Pointer, _lOffset)
    			cAddress := GetAddress(pid, BaseAddress, _Pointer, _cOffset)
    		}
    		wValue := ReadMemory(wAddress, pid)
    		lValue := ReadMemory(lAddress, pid)
    		cValue := ReadMemory(cAddress, pid)
    		BaseAddressHex := Hex(BaseAddress)
    		wAddressHex := Hex(wAddress)
    		lAddressHex := Hex(lAddress)
    		cAddressHex := Hex(cAddress)
    		LV_Add("", Handle, PID, BaseAddressHex, wAddressHex, wValue, lAddressHex, lValue, cAddressHex, cValue)
    	}
    	return
    
    2GuiClose:
    	SetTimer, UpdateDebugGui, Off
    	Gui, 2:Hide
    	return
    
    Hex(n){
    	VarSetCapacity(S,66,0)
    	DllCall("msvcrt\_i64tow", "Int64",n, "Str",S, "UInt",16, "CDECL")
    	Return S
    	}
    
    getProcessBaseAddress(Handle){
    	Return DllCall( A_PtrSize = 4 ? "GetWindowLong": "GetWindowLongPtr", "Ptr", Handle, "Int", -6, "Int64")
    	}
    
    GetAddress(PID, Base, Address, Offset){
    	p := ReadMemory(base + Address,PID)	
    	OffsetSplit := StrSplit(Offset, "+")
    	OffsetCount := OffsetSplit.MaxIndex()
    	Loop, %OffsetCount%{
    		If (a_index = OffsetCount)
    			p := p + OffsetSplit[a_index]
    	  	Else
    			p := ReadMemory(p + OffsetSplit[a_index],PID)
    		}
    	Return p
    	}
    
    ReadMemory(MADDRESS, pid){
    	VarSetCapacity(MVALUE,4,0)
    	ProcessHandle := DllCall("OpenProcess", "Int", 24, "Char", 0, "UInt", pid, "UInt")
    	DllCall("ReadProcessMemory", "UInt", ProcessHandle, "Ptr", MADDRESS, "Ptr", &MVALUE, "Uint",4)
    	Loop 4
    			result += *(&MVALUE + A_Index-1) << 8*(A_Index-1)
    	Return result
    	}


     




     

    Code:
    V1.0 (2670b):
    Initial release
    
    v1.1 (2781b):
    Timer correction
    Hard optimisation
    
    v1.2 (3659b):
    Now automatically updating pointers !
    Few issues corrected
    
    v1.3 (3649b):
    Splash text
    Tray messages added (no longer messages box)
    Few optimisations
    
    v1.4 (3830b):
    Edited timer setup
    Less hurdles with bot stuck (reeling while fishing)
    
    v1.5 (4231b):
    Check for updates and open related thread
    MOTD added (for changelogs)
    Edited timer setup
    Less hurdles with bot stuck (reeling while fishing)
    
    v1.6 (4697b):
    GUI Added
    Removed useless stuff
    Now counting found accounts and reeled fish
    
    v1.7 (6237b):
    Debug added
    
    v1.8 (6267b):
    Corrected a cross-GUI fix
    
    v1.9 (6266b):
    Fixed a closing bug
    
    v2.0 (8116b):
    Fixed a glitch on the base address on debug window
    Added a PTS support
    
    v2.1 (7990b):
    Modified window selection to prevent selection non-trove window
    Removed handle reading (already have it)
    Cleaned up initial values of pointer/offsets(were wrong)
    
    2.2 (7529b):
    Minor optimisations and crash fixes


    Special thanks :
    @reppin Who let me make a bot and use part of it's memory-reading code ! Check out his awesome fishing bot !

    Disclaimer :
    I will not add any bootdrop/destroy and loot-collect thing any soon ! This is a bot made for 5-min botting session when you go eating or to the toilets mid-game.
    I will not be responsible of any ban you get by using this !

    There are the virus scans :
    https://virusscan.jotti.org/en-US/fi...job/odud7149jw
    https://www.virustotal.com/en/file/e...is/1478709448/

    NOTE : Old thread can be closed
    <b>Downloadable Files</b> Downloadable Files
    ~~~~~~~~~~
    Vouch thread
    ~~~~~~~~~~
    Trove scripts :
    Anti afk kick ~ Fishing bot ~ Bombing bot ~ Items picking
    ~~~~~~~~~~
    Trove cheats & tools:
    Fishing pointer ~ Speedhack
    ~~~~~~~~~~
    Trove tutorials :
    Find fishing pointer
    ~~~~~~~~~~

  2. The Following 41 Users Say Thank You to mpmoi For This Useful Post:

    Avelayia (11-15-2016),Blackefire (11-14-2016),Blank191 (11-13-2016),bluuuu3 (12-01-2016),branddeman (11-13-2016),Brinquedopuro (11-16-2016),Bryan (11-09-2016),Comiamaedostronda (11-13-2016),D1wid15 (11-12-2016),DANTE642 (11-11-2016),darkyoshi358 (11-15-2016),dipchips (11-11-2016),EDSON44 (05-04-2017),eXtrem3st (11-10-2016),gpasit (11-16-2016),Hunter (11-09-2016),jamyjars (11-10-2016),joan999 (11-09-2016),juan jaho (11-11-2016),junlovesdwin (11-13-2016),loghorizon (11-09-2016),madalin00 (11-09-2016),Mashirolol (11-12-2016),MDii (11-12-2016),nickmegax (12-04-2016),r24694648 (11-19-2016),ricolaw (11-10-2016),romancejr (11-10-2016),sittiesky (11-10-2016),su4kaaaa (01-01-2020),SweqSecone (11-12-2016),Swift31 (11-12-2016),Teleporterofdeath (11-13-2016),thebezt (11-16-2016),TheReafg1000 (11-12-2016),ThousandDragon (11-09-2016),VoidDemon (11-10-2016),worldwarsd (11-11-2016),xghostranger (11-11-2016),Yannis254 (11-11-2016),zlyjakcza12 (11-09-2016)

  3. #2
    Hunter's Avatar
    Join Date
    Dec 2013
    Gender
    male
    Location
    Depths Of My Mind.
    Posts
    17,466
    Reputation
    3771
    Thanks
    6,159
    My Mood
    Cheerful
    Just a harmless game script.

    /Approved. Post back results and as always, use at your own.

  4. The Following 2 Users Say Thank You to Hunter For This Useful Post:

    Bryan (11-09-2016),mpmoi (11-10-2016)

  5. #3
    loghorizon's Avatar
    Join Date
    Oct 2016
    Gender
    male
    Posts
    4
    Reputation
    10
    Thanks
    0
    What is the difference with version 2.1?

  6. #4
    Faelene's Avatar
    Join Date
    Aug 2015
    Gender
    male
    Posts
    6
    Reputation
    10
    Thanks
    0
    Pointer doesn't work for Nippy's

  7. #5
    mpmoi's Avatar
    Join Date
    Aug 2015
    Gender
    male
    Location
    Here there
    Posts
    788
    Reputation
    26
    Thanks
    4,404
    My Mood
    Drunk
    Quote Originally Posted by loghorizon View Post
    What is the difference with version 2.1?
    Mainly memory reading stuff, I had it for a while so I posted it.

    - - - Updated - - -

    Quote Originally Posted by Faelene View Post
    Pointer doesn't work for Nippy's
    I'll take a look tonight

    - - - Updated - - -

    Pointer updated to : 0x00C8FF24

    - - - Updated - - -

    Confirmed working on all liquids on this bot
    ~~~~~~~~~~
    Vouch thread
    ~~~~~~~~~~
    Trove scripts :
    Anti afk kick ~ Fishing bot ~ Bombing bot ~ Items picking
    ~~~~~~~~~~
    Trove cheats & tools:
    Fishing pointer ~ Speedhack
    ~~~~~~~~~~
    Trove tutorials :
    Find fishing pointer
    ~~~~~~~~~~

  8. #6
    juan jaho's Avatar
    Join Date
    Nov 2016
    Gender
    male
    Posts
    1
    Reputation
    10
    Thanks
    0
    It is working, but when i have two account running and stopped fishing on one of them, both will stop auto fishing. thx.
    p.s. are the chances of getting ban high using this program?

  9. #7
    mpmoi's Avatar
    Join Date
    Aug 2015
    Gender
    male
    Location
    Here there
    Posts
    788
    Reputation
    26
    Thanks
    4,404
    My Mood
    Drunk
    Quote Originally Posted by juan jaho View Post
    It is working, but when i have two account running and stopped fishing on one of them, both will stop auto fishing. thx.
    p.s. are the chances of getting ban high using this program?
    Gotta check this out. And chances scales with the amount of time and account you use
    ~~~~~~~~~~
    Vouch thread
    ~~~~~~~~~~
    Trove scripts :
    Anti afk kick ~ Fishing bot ~ Bombing bot ~ Items picking
    ~~~~~~~~~~
    Trove cheats & tools:
    Fishing pointer ~ Speedhack
    ~~~~~~~~~~
    Trove tutorials :
    Find fishing pointer
    ~~~~~~~~~~

  10. #8
    mpmoi's Avatar
    Join Date
    Aug 2015
    Gender
    male
    Location
    Here there
    Posts
    788
    Reputation
    26
    Thanks
    4,404
    My Mood
    Drunk
    Hey ! Fixed almost everything about the multi account crash ! I'll post an update in few hours ! (Gotta test a few before )
    Also I'll be removing PTS support as I can't keep it updated.
    Finally I'll have to add a hotkey to start the bot so itll be more stable.

  11. #9
    mpmoi's Avatar
    Join Date
    Aug 2015
    Gender
    male
    Location
    Here there
    Posts
    788
    Reputation
    26
    Thanks
    4,404
    My Mood
    Drunk
    Not working yet, gotta fix some more crashes
    ~~~~~~~~~~
    Vouch thread
    ~~~~~~~~~~
    Trove scripts :
    Anti afk kick ~ Fishing bot ~ Bombing bot ~ Items picking
    ~~~~~~~~~~
    Trove cheats & tools:
    Fishing pointer ~ Speedhack
    ~~~~~~~~~~
    Trove tutorials :
    Find fishing pointer
    ~~~~~~~~~~

Similar Threads

  1. [Patched] MpPassiveFishingBot v2.1 : PTS/LIVE fishing bot. Auto-updating pointer.
    By mpmoi in forum Trove Hacks & Cheats
    Replies: 112
    Last Post: 11-09-2016, 09:10 AM
  2. [Outdated] MpPassiveFishingBot v2.0 : Auto-updating pointer. Now on PTS
    By mpmoi in forum Trove Hacks & Cheats
    Replies: 67
    Last Post: 09-11-2016, 06:18 AM
  3. [Patched] TaeJim's Trove Bot Script (Fishing Bot, Auto-HP Bot) [UPDATE 01/08/2015)
    By taejim in forum Trove Hacks & Cheats
    Replies: 68
    Last Post: 08-04-2015, 11:39 PM
  4. [Outdated] Fish Bot Simple Update ! [04/21/2015]
    By Trove in forum Trove Hacks & Cheats
    Replies: 18
    Last Post: 04-29-2015, 05:31 PM
  5. [Outdated] Fish Bot Simple Update !
    By Trove in forum Trove Hacks & Cheats
    Replies: 27
    Last Post: 04-21-2015, 11:50 AM