Results 1 to 8 of 8
  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 v1.9 : 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 @Joe @Dexter approval)
    Start it (Tutorial here : https://www.mpgh.net/forum/showthread.php?t=1150041)
    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 !

    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

    /!\ This won't work if you renamed Trove's window (Some account launchers are doing that, care)
    /!\ 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()
    WaitRelauch := Object()
    
    global Ver:=1.9
    global _Motd:=""
    global _Version:=1
    global _Pointer:="0x00BAB82C"
    global _wOffset:="0x8+0xb4+0x28+0x22c"
    global _lOffset:="0x8+0xb4+0x28+0x6e8"
    global _cOffset:="0x8+0xb4+0x28+0x488"
    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, _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]
    	TrayTip ,mpPassiveFishingBot, % "Values updated to :`nPointer : " _Pointer "`nWater offset : " _wOffset "`nLava offset : "_lOffset "`nChocolate offset : " _cOffset
    	Sleep, 10
    	}
    
    global _newMotd:=Contents[8]
    if (_Motd != _newMotd){
    	TrayTip ,mpPassiveFishingBot, %_newMotd%
    	Sleep, 10
    	}
    
    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%
    	}
    
    IniWrite, %_Version%, %iniFile%, Global, _Version
    IniWrite, %_Pointer%, %iniFile%, Global, _Pointer
    IniWrite, %_wOffset%, %iniFile%, Global, _wOffset
    IniWrite, %_lOffset%, %iniFile%, Global, _lOffset
    IniWrite, %_cOffset%, %iniFile%, Global, _cOffset
    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%
    Gui, 1:Add, Text, vAccounts w200
    Gui, 1:Add, Text, vReeled w200
    Gui, 1:Add, Button, gDebug , &Debug
    
    Gui, 2:New
    Gui 2:-Resize -MinimizeBox
    Gui, 2:Add, ListView, w650, Window PID|Base Address|Water Adress|Water Value|Lava Adress|Lava Value|Chocolate Adress|Chocolate Value
    
    Gui, 1:Show,,mpPassiveFishingBot
    
    SetTimer, Scan, 999
    SetTimer, Relaunch, 1999
    SetTimer, UpdateGui, 250
    
    SplashTextOff
    
    TrayTip ,mpPassiveFishingBot, Bot started ! Press "f" on water/lava/chocolate !
    return
    
    Scan:
    	WinGet, l, list, Trove
    	Loop %l%
    	{
    		d := l%a_index%
    		WinGet, pid, PID, ahk_id %d%
    		WinGet, Handle, ID, ahk_pid %pid%
    		Base := getProcessBaseAddress(Handle)
    		wAddress := GetAddress(pid, Base, _Pointer, _wOffset)
    		wValue := ReadMemory(wAddress, pid)
    		lAddress := GetAddress(pid, Base, _Pointer, _lOffset)
    		lValue := ReadMemory(lAddress, pid)
    		cAddress := GetAddress(pid, Base, _Pointer, _cOffset)
    		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 WaitRelauch{
    				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:
    	WaitRelauch := Reeled
    	Reeled := Object()
    	Sleep, 2000
    	for i, p in WaitRelauch{
    		ControlSend, , {f down}, ahk_pid %p%
    		Sleep, 90
    		ControlSend, , {f up}, ahk_pid %p%
    		}
    	return
    
    UpdateGui:
    	C := 0
    	WinGet, l, list, Trove
    	Loop %l%
    		C ++
    	GuiControl, 1:, Accounts, Active accounts : %C%
    	GuiControl, 1:, Reeled, Fish reeled : %rld%
    	return
    
    GuiClose:
    	ExitApp
    
    Debug:
    	SetTimer, UpdateDebugGui, 250
    	Gui, 2:Show, , mpPassiveFishingBotDebug
    	return
    
    UpdateDebugGui:
    	Gui, 2:Default
    	LV_DELETE()
    	WinGet, l, list, Trove
    	Loop %l%
    	{
    		d := l%a_index%
    		WinGet, pid, PID, ahk_id %d%
    		WinGet, Handle, ID, ahk_pid %pid%
    		BaseAddress := getProcessBaseAddress(Handle)
    		BaseAddressHex := FHex(BaseAddress)
    		wAddress := GetAddress(pid, Base, _Pointer, _wOffset)
    		wAddressHex := FHex(wAddress)
    		wValue := ReadMemory(wAddress, pid)
    		lAddress := GetAddress(pid, Base, _Pointer, _lOffset)
    		lAddressHex := FHex(lAddress)
    		lValue := ReadMemory(lAddress, pid)
    		cAddress := GetAddress(pid, Base, _Pointer, _cOffset)
    		cAddressHex := FHex(cAddress)
    		cValue := ReadMemory(cAddress, pid)
    		LV_Add("", PID, BaseAddressHex, wAddressHex, wValue, lAddressHex, lValue, cAddressHex, cValue)
    	}
    	return
    
    2GuiClose:
    	SetTimer, UpdateDebugGui, Off
    	Gui, 2:Hide
    	return
    
    FHex( int, pad=0 ){
    	Static hx := "0123456789ABCDEF"
    	If !( 0 < int |= 0 )
    		Return !int ? "0x0" : "-" FHex( -int, pad )
    	s := 1 + Floor( Ln( int ) / Ln( 16 ) )
    	h := SubStr( "0x0000000000000000", 1, pad := pad < s ? s + 2 : pad < 16 ? pad + 2 : 18 )
    	u := A_IsUnicode = 1
    	Loop % s
    
    		NumPut( *( &hx + ( ( int & 15 ) << u ) ), h, pad - A_Index << u, "UChar" ), int >>= 4
    	Return h
    	}
    
    
    getProcessBaseAddress(Handle){
    		Return DllCall( A_PtrSize = 4
    		? "GetWindowLong"
    : "GetWindowLongPtr"
    	        , "Ptr", Handle
    	        , "Int", -6
    	        , "Int64")
    	}
    
    GetAddress(PID, Base, Address, Offset){
    	pointerBase := base + Address
    	y := ReadMemory(pointerBase,PID)	
    	OffsetSplit := StrSplit(Offset, "+")
    	OffsetCount := OffsetSplit.MaxIndex()
    	Loop, %OffsetCount%{
    		if (a_index = OffsetCount) {
    			Address := (y + OffsetSplit[a_index])
    	  	}Else
    			if(a_index = 1) {
    				y := ReadMemory(y + OffsetSplit[a_index],PID)
    			}Else{
    				y := ReadMemory(y + OffsetSplit[a_index],PID)
    				}
    		}
    	Return Address
    	}
    
    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


    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/fr-FR/fi...job/xrstxt9fma
    https://www.virustotal.com/en/file/2...is/1470252360/

    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 29 Users Say Thank You to mpmoi For This Useful Post:

    123312a (08-03-2016),ADWELWEL (08-03-2016),Amchik (08-04-2016),apollo12 (08-04-2016),astharoth890 (05-12-2017),Chidzuru (08-05-2016),Daniel1270 (08-04-2016),Deminto (08-04-2016),Desmilion (08-04-2016),dhondud (08-03-2016),DWK (08-03-2016),ErManciuz (08-03-2016),Firegast (08-18-2016),gamemode 1 (08-07-2016),Gun point (08-04-2016),hadrin (08-03-2016),I34C0N (08-04-2016),ichika1104 (08-27-2016),kenanb13 (08-04-2016),lol07345 (08-03-2016),lolsokekman (08-04-2016),Madhatter08 (08-04-2016),markos123xd (08-04-2016),pancho399 (01-31-2017),ruritanian (08-04-2016),Skenix (08-04-2016),vardarling (08-12-2016),wlgns6751 (08-03-2016),Zaphyra (08-04-2016)

  3. #2
    Cogbliz's Avatar
    Join Date
    Dec 2013
    Gender
    male
    Posts
    18
    Reputation
    10
    Thanks
    1
    Could you make a PTS-fish script as simple as this one? I love using this on live, but on PTS you can sell ancient scales for 150k+

  4. #3
    _NightWare's Avatar
    Join Date
    Feb 2016
    Gender
    male
    Location
    Netherlands
    Posts
    724
    Reputation
    274
    Thanks
    2,305
    My Mood
    Inspired
    Quote Originally Posted by mpmoi View Post
    This version should self-update pointers, however I will have to find them before
    does this implies that it grabs the offsets from an external link?

    Anyway nice work.
    Do you know if Trove has an anti-cheat? other than detecting wierd player behavior (fishing for hours at a time)?

    Feel free to leave a thanks or +rep if I helped you.

    ಠ_ರೃ
    Script Squad






    [IMG]https://roblo*****m?rbxp=135887430[/IMG]

  5. #4
    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 _NightWare View Post

    does this implies that it grabs the offsets from an external link?

    Anyway nice work.
    Do you know if Trove has an anti-cheat? other than detecting wierd player behavior (fishing for hours at a time)?
    Yeah. But the external link is a text file and is written in the code.

    - - - Updated - - -

    Quote Originally Posted by Cogbliz View Post
    Could you make a PTS-fish script as simple as this one? I love using this on live, but on PTS you can sell ancient scales for 150k+
    You can follow the tutorial on how to find a pointer and I could add a pts pointer option ^^"
    ~~~~~~~~~~
    Vouch thread
    ~~~~~~~~~~
    Trove scripts :
    Anti afk kick ~ Fishing bot ~ Bombing bot ~ Items picking
    ~~~~~~~~~~
    Trove cheats & tools:
    Fishing pointer ~ Speedhack
    ~~~~~~~~~~
    Trove tutorials :
    Find fishing pointer
    ~~~~~~~~~~

  6. The Following User Says Thank You to mpmoi For This Useful Post:

    Cogbliz (08-07-2016)

  7. #5
    Dexter's Avatar
    Join Date
    Aug 2015
    Gender
    male
    Location
    I post to increase postcount
    Posts
    1,566
    Reputation
    273
    Thanks
    9,279
    Approved - Thanks for releasing.

  8. The Following User Says Thank You to Dexter For This Useful Post:

    mpmoi (08-04-2016)

  9. #6
    DWK's Avatar
    Join Date
    Apr 2012
    Gender
    male
    Posts
    20
    Reputation
    10
    Thanks
    0
    My Mood
    Happy
    Pointer isn't working anymore here after a 9mb update.

  10. #7
    dhondud's Avatar
    Join Date
    Jul 2016
    Gender
    male
    Posts
    3
    Reputation
    10
    Thanks
    2
    New pointer is 0x00AF3770

  11. The Following 2 Users Say Thank You to dhondud For This Useful Post:

    DWK (08-04-2016),mpmoi (08-04-2016)

  12. #8
    mpmoi's Avatar
    Join Date
    Aug 2015
    Gender
    male
    Location
    Here there
    Posts
    788
    Reputation
    26
    Thanks
    4,404
    My Mood
    Drunk
    New pointer is 0x00AF3770 ! updated ! Thanks to @dhondud
    ~~~~~~~~~~
    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. [Outdated] MpPassiveFishingBot v1.7 : Auto-updating pointer
    By mpmoi in forum Trove Hacks & Cheats
    Replies: 3
    Last Post: 08-01-2016, 02:35 PM
  2. [Outdated] MpPassiveFishingBot v1.6 : Auto-updating pointer
    By mpmoi in forum Trove Hacks & Cheats
    Replies: 76
    Last Post: 08-01-2016, 11:37 AM
  3. [Outdated] MpPassiveFishingBot v1.5 : Auto-updating pointers
    By mpmoi in forum Trove Hacks & Cheats
    Replies: 65
    Last Post: 07-22-2016, 04:51 AM
  4. [Outdated] MpPassiveFishingBot v1.4 : Auto-updating pointers
    By mpmoi in forum Trove Hacks & Cheats
    Replies: 18
    Last Post: 06-27-2016, 04:31 PM
  5. [Outdated] MpPassiveFishingBot v1.3 : Auto-updating pointers
    By mpmoi in forum Trove Hacks & Cheats
    Replies: 8
    Last Post: 06-18-2016, 11:53 PM