[HELP]Bobber menu

User Tag List

Thread: [HELP]Bobber

Results 1 to 9 of 9
  1. #1
    kosacid's Avatar Active Member
    Reputation
    19
    Join Date
    May 2009
    Posts
    127
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    [HELP]Bobber

    since they removed the animation flag whats the best way to detect it now
    ive been using the graphics flag to detect it but its no good if you minimise the window it stops working

    FIXED
    Last edited by kosacid; 08-09-2012 at 04:34 AM.

    [HELP]Bobber
  2. #2
    fortiZ's Avatar Contributor
    Reputation
    144
    Join Date
    Dec 2011
    Posts
    144
    Thanks G/R
    18/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    They removed the animationflag in MoP x_X ??

  3. #3
    kosacid's Avatar Active Member
    Reputation
    19
    Join Date
    May 2009
    Posts
    127
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    no in build 4.3.4
    i tested it there no flag now it constant 0 now

  4. #4
    Sacred's Avatar Contributor
    Reputation
    207
    Join Date
    Dec 2007
    Posts
    152
    Thanks G/R
    3/9
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by kosacid View Post
    no in build 4.3.4
    i tested it there no flag now it constant 0 now
    baseAddress+0xD4

  5. #5
    kosacid's Avatar Active Member
    Reputation
    19
    Join Date
    May 2009
    Posts
    127
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    i take it you mean object field baseAddress+0xD4 even that is 0, i did dump the info in 4.3.4 info dump thread
    if you have a look there is no change before and after if you look at 2C still 0 and D4 the same as you can see i have the correct field
    0x28 = 668 id

  6. #6
    kosacid's Avatar Active Member
    Reputation
    19
    Join Date
    May 2009
    Posts
    127
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    FIXED i use Backspace on interact with mouse over, f1 starts the bot f2 pause,and i put my fishing spell in number 1 slot

    header.h
    Code:
    #include <Windows.h>
    #include <math.h>
    #include <string>
    #include <tlhelp32.h>
    
    using namespace std;
    typedef unsigned int uint;
    
    void ReadProcMem(void *pAddress, void *pMem, int iSize);
    void WriteProcMem(void *pAddress, void *pMem, int iSize);
    unsigned long GetPid(char *procName);
    DWORD GetBase(char* DllName, DWORD tPid);
    void Test();
    main.cpp
    Code:
    #include "header.h"
    
    DWORD Pid;
    uint BaseAddress;
    HWND hwnd;
    bool Fishing=true;
    bool run=true;
    bool start=false;
    
    enum ObjectManager
    {
        CurMgrPointer = 0x9BE7E0,
        CurMgrOffset = 0x463C,
        FirstObject = 0xC0,
        NextObject = 0x3C,
        LocalGUID = 0xC8,
    	MouseOverGUID = 0xAD7438,
    	IsBobbing = 0xD4,
    };
    
    enum GameObjectFields
    {
        OBJECT_FIELD_CREATED_BY = 0x20,
    	GAMEOBJECT_DISPLAYID = 0x28,
    	GAMEOBJECT_FLAGS = 0x2C,
    };
    
    int main(int argc, char* argv[])
    {
    	Pid = GetPid("Wow.exe");
    	BaseAddress = GetBase("Wow.exe",Pid);
    	hwnd = ::FindWindow(NULL,"World of Warcraft");
    
    	while(run)
    	{	
    		if(GetAsyncKeyState(0x70))
    		{
    			start=true;
    			Fishing=false;
    		}
    		if(GetAsyncKeyState(0x71))
    		{
    			start=false;
    		}
    		if(GetAsyncKeyState(0x74))
    		{
    			run=false;
    		}
    
    		if(start)
    		{
    			Test();
    		}
    	}
    	return 0;
    }
    
    void Test()
    {
    	uint ObjectPointer;
    	ReadProcMem((LPVOID)(BaseAddress + CurMgrPointer),&ObjectPointer,4);
    	ReadProcMem((LPVOID)(ObjectPointer + CurMgrOffset),&ObjectPointer,4);
    	UINT64 me;
    	ReadProcMem((LPVOID)(ObjectPointer + LocalGUID),&me, 8);
    	ReadProcMem((LPVOID)(ObjectPointer + FirstObject),&ObjectPointer,4);
    
    	while (ObjectPointer != 0 && ObjectPointer % 2 == 0)
    	{
    		UINT64 gID;
    	    ReadProcMem((LPVOID)(ObjectPointer + 0x30),&gID,8);
    		uint dsfp;
    		ReadProcMem((LPVOID)(ObjectPointer + 0xC),&dsfp,4);
    		UINT64 ofcb;
    		ReadProcMem((LPVOID)(dsfp + OBJECT_FIELD_CREATED_BY),&ofcb,8);
    		uint DisplayId;
    		ReadProcMem((LPVOID)(dsfp + GAMEOBJECT_DISPLAYID),&DisplayId,4);
    		if(me == ofcb)
    		{
    			if(DisplayId == 668)
    			{
    				Fishing=true;
    				uint bb;
    			    ReadProcMem((LPVOID)(ObjectPointer + IsBobbing),&bb,4);
    				uint Bite = bb;
    				while(bb == Bite)
    				{
    					ReadProcMem((LPVOID)(ObjectPointer + IsBobbing),&bb,4);
    					Sleep(50);
    				}
    				WriteProcMem((LPVOID)(BaseAddress + MouseOverGUID),&gID,8);
    				Sleep(rand() % 2000 + 1);
    				::PostMessage(hwnd, WM_KEYDOWN, 0x08 , 0);
    			    ::PostMessage(hwnd, WM_KEYUP, 0x08 , 0);
    				Fishing=false;
    				Sleep(2000);
    			}
    		}
    		ReadProcMem((LPVOID)(ObjectPointer + NextObject),&ObjectPointer,4);
    	}
    
    	if(!Fishing)
    	{
    		::PostMessage(hwnd, WM_KEYDOWN, VkKeyScan('1') , 0);
    		::PostMessage(hwnd, WM_KEYUP, VkKeyScan('1') , 0);
    		Sleep(rand() % 5000 + 1);
    	}
    }
    
    
    void ReadProcMem(void *pAddress, void *pMem, int iSize)
    {
    	HANDLE hProc = OpenProcess(PROCESS_VM_OPERATION|PROCESS_VM_WRITE|PROCESS_VM_READ, FALSE, Pid);
    	DWORD dwOld;
    	VirtualProtectEx(hProc, pAddress, iSize, PAGE_EXECUTE_READWRITE, &dwOld);
    	ReadProcessMemory(hProc, pAddress, pMem, iSize, 0);
    	CloseHandle(hProc);
    }
    
    void WriteProcMem(void *pAddress, void *pMem, int iSize)
    {
    	HANDLE hProc = OpenProcess(PROCESS_ALL_ACCESS, FALSE, Pid);
    	DWORD dwOld;
    	VirtualProtectEx(hProc, pAddress, iSize, PAGE_EXECUTE_READWRITE, &dwOld);
    	WriteProcessMemory(hProc, pAddress, pMem, iSize, 0);
    	CloseHandle(hProc);
    }
    
    unsigned long GetPid(char *procName)
    {
       PROCESSENTRY32 pe;
       HANDLE thSnapshot;
       BOOL retval, ProcFound = false;
       thSnapshot = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0);
       if(thSnapshot == INVALID_HANDLE_VALUE)
       {
          return false;
       }
       pe.dwSize = sizeof(PROCESSENTRY32);
       retval = Process32First(thSnapshot, &pe);
       while(retval)
       {
          if(strcmp(pe.szExeFile, procName) == 0)
          {
             ProcFound = true;
             break;
          }
          retval    = Process32Next(thSnapshot,&pe);
          pe.dwSize = sizeof(PROCESSENTRY32);
       }
       if (!ProcFound) return 0;
       return pe.th32ProcessID;
    }
    
    DWORD GetBase(char* DllName, DWORD tPid)
    {
        HANDLE snapMod;
        MODULEENTRY32 me32;
        if (tPid == 0) return 0;
        snapMod = CreateToolhelp32Snapshot(TH32CS_SNAPMODULE, tPid);
        me32.dwSize = sizeof(MODULEENTRY32);
        if (Module32First(snapMod, &me32))
    	{
            do{
                  if (strcmp(DllName,me32.szModule) == 0)
    			  {
                      CloseHandle(snapMod);
                      return (DWORD) me32.modBaseAddr;
    			  }
    		}while(Module32Next(snapMod,&me32));
        }
        CloseHandle(snapMod);
    	return 0;
    }
    compile as a COM
    Last edited by kosacid; 08-09-2012 at 08:19 AM.

  7. #7
    reliasn's Avatar Legendary Authenticator enabled
    Reputation
    774
    Join Date
    Jan 2009
    Posts
    136
    Thanks G/R
    24/215
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    To find the bobber, I search an object with the Model ID 668, just like you.

    To detect the bite, I do something more or less like this:

    Code:
    // CGGameObject_Animation = 0xD4
    DWORD seila2, seila;
    ReadProcessMemory(Handle, reinterpret_cast<void*>(fishing + CGGameObject_Animation), &seila, sizeof(seila), 0);
    seila2 = seila;
    while(seila2 == seila){
    	Sleep(50);
    	ReadProcessMemory(Handle, reinterpret_cast<void*>(fishing + CGGameObject_Animation), &seila2, sizeof(seila2), 0);
    }
    When a bite is detected, the value of seila2 gets different, therefore, leaving the loop indicating you are good to send the mouse over key.

    PS: "fishing" is the address of the Bobber, which I usually get with this function I made just for DisplayIDs:
    Code:
    fishing = GetMemLocByDisplayID(FishModelID, Handle, currMgr, &fguid);
    Last edited by reliasn; 08-08-2012 at 06:22 PM.

  8. #8
    kosacid's Avatar Active Member
    Reputation
    19
    Join Date
    May 2009
    Posts
    127
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    @reliasn thanks alot ive edited the code so its fully working thanks

  9. #9
    kosacid's Avatar Active Member
    Reputation
    19
    Join Date
    May 2009
    Posts
    127
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

Similar Threads

  1. Help get offset of bobber
    By Iaebalvasvrot in forum WoW Bots Questions & Requests
    Replies: 1
    Last Post: 01-11-2012, 12:21 PM
  2. [Help] Find out if bobber landed in fishpool
    By teufel123 in forum WoW Memory Editing
    Replies: 2
    Last Post: 06-05-2011, 11:07 AM
  3. [Help] The offset of bobber bite (I have searched)
    By bb6712 in forum WoW Memory Editing
    Replies: 4
    Last Post: 11-28-2009, 01:29 PM
  4. [HELP] Bobber Status offset
    By snip_78 in forum WoW Memory Editing
    Replies: 6
    Last Post: 06-24-2009, 05:26 AM
  5. [help] what is Fishing bobber status address?
    By babodx in forum WoW Memory Editing
    Replies: 26
    Last Post: 08-12-2008, 11:26 AM
All times are GMT -5. The time now is 12:12 AM. Powered by vBulletin® Version 4.2.3
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved. User Alert System provided by Advanced User Tagging (Pro) - vBulletin Mods & Addons Copyright © 2025 DragonByte Technologies Ltd.
Google Authenticator verification provided by Two-Factor Authentication (Free) - vBulletin Mods & Addons Copyright © 2025 DragonByte Technologies Ltd.
Digital Point modules: Sphinx-based search