I don't know if there's a static address for bobber status.
The only way I know to do it is by reading the TLS object list:
1) Find the your bobber. It will be a GameObj (type=5), obviously named "Fishing Bobber", and OBJECT_FIELD_CREATED_BY should equal your player GUID (else you might find some other player's bobber).
2) Read a byte at offset 244 (decimal) from the base address of the slot in the object list. 0=Normal, 1=Bobbing.
The "status" is also located in the SS_modelblock under AnimationState.
Note that the SS_modelblock does also contain the position of the bobber. Meaning that you can move the bobber and click it anywhere you want.
So if you got the position of your mouse you can just move the bobber down under your mouse and wait for the model to change animation state and then click it. It is a cool way of making a fish bot and will also avoid need for lame screen reading and color profiles etc.
Now if you are a place where the modellist updates often you might see that as a problem.
However Obj_ID is there too so you can just scan the list every time you throw you bobber to get the offset.
Site n00b.. (A leecher if I've been here for more than a month and can't earn 5 rep)
Rep Power: 1
Reputation: 2
Posts: 9
Join Date: Apr 2008
04-18-2008
Thanks everybody.
i am newbie.
who talk about TLS?
TLS is thread local storge?
may i use CE or OLLYDBG view TLS index?
please help me,or Give me some information on TLS?
sorry My English is very bad.
is this info still relevent? ive tried searching for the bobber GUID (based on the mouse-over guid and player.channeled values) and none of the spots that come up had an int that equalled 5 following it, then i tried doing the created_by with the player guid and that didnt get me anywhere. using these structs
so i set up a function to search for created by player GUID and then had valid x/y/z position then did a WPM to set them to player loc. the fishing line would point to my feet but the bobber didnt move.
edit: ok i found the bobber, now can anyone point me in the direction of reading whether it is bobbing, or elaborate on what was already mentioned (reading 244 (dec) from the base address of the slot(?))
alright thanks. recently switched over to TLS and got the bobbing detection working. can also get the position of the bobber but not having any luck in moving it. when i try the bobber stays put but the fishing line itself will move (such as point to my feet)
so has anyone tried moving bobbers lately, still possible?
alright thanks. recently switched over to TLS and got the bobbing detection working. can also get the position of the bobber but not having any luck in moving it. when i try the bobber stays put but the fishing line itself will move (such as point to my feet)
so has anyone tried moving bobbers lately, still possible?
Why the hell would you wanna move it in the first place? Just wait for it to bob, then call the 'interact' method or w/e you want to call it on the object. No need to move anything or even use the mouse at all.
If freedom is outlawed, only outlaws will have freedom. I'm not being rude, you're just insignificant.
thanks for the input but i was looking for a different solution. moving the bobber lets me put it in a certain place (center of screen) and always right click the same place. ive thought about injecting for the .interact or use item function but i was under the impression that it would be easier to detect. ive currently got it set up to move the mouse around a box defined by the upper half of the screen and 1/4th the way in on each side and stop moving the mouse when cursor_guid = bobber guid but its not nearly as efficient.
that said ill probably give in and implement what you guys mentioned. is it any more detectable to code cave, and are there any specific ways to avoid detection with that method?
ok, i tried porting [Only registered and activated users can see links. ] (shynd's example for Interact) but it seems to no workie. his example was written for 2.4.2 and i assume the index/position of Interact in the vtable changed. if anyone has some insight i'd appreciate it.
yeah it doesnt look pretty, was hoping to get it working first and then clean up. i single stepped through it to verify it is allocating memory and injecting the code. GetExitCodeThread returns 0; offset is the base address of the fishing bobber.
yeah... we established that. i copied and pasted shynd's code then commented it out and wrote a c++ version in its place, to be cleaned up after its functional.
now, assuming his example was correct, and i single stepped the function and verified it did everything it was supposed to, my question is, did the position of Interact change in the vtable in 2.4.3?
this is why i was hesitant to try this method because it was more prone to break between patches. if it makes you feel better i can paste a version with all of shynd's commented code removed but i left it there as a reference.