Idea: RoMbot + MultiHack (keypress collaboration)
Idea: RoMbot + MultiHack (keypress collaboration)
FlyHack, Wallclimb hack and SpeedHack are working and downloadable
-Usage of FlyHack: put the file in rom/userfunctions folder and in your waypoints define where you want to start flying, by putting a call to the function "fly();" (must be inside waypoint! like all other code) When you want it to stop flying in that waypoint write "flyoff();" function addon last (change) version: 24.03.2011.
-Usage of Wallclimb hack: place the file addons_wallhack in the userfunctions folder. Activate by using "wallon();" in waypoint file, deativate by using "walloff();" in waypoint file (both inside waypoints) addon last (change) version: 27.03.2011.
-Usage of SpeedHack: place the file addons_speedhack in the userfunctions folder. Activate by using "speedon();" in waypoint file, deativate by using "speedoff();" in waypoint file (both inside waypoints). addon last (change) version: 29.03.2011.
Notes:
1. Flyhack-swim IS fully functional now (update rombot to newest and download flyhack addon)
2. Speedhack is working just fine, NOW WORKS WITH MAID SPEED POTIONS.
3. Wallhack is working but needs new experimental version of micromacro (works good with rombot => tested) you can download it here put all files in micromacro root folder where file micromacro.exe is located. You can download the files here: CHAPTER 4 HACKS
Swim Speed Wall
LINKS ON PAGE 4
-Usage of FlyHack: put the file in rom/userfunctions folder and in your waypoints define where you want to start flying, by putting a call to the function "fly();" (must be inside waypoint! like all other code) When you want it to stop flying in that waypoint write "flyoff();" function addon last (change) version: 24.03.2011.
-Usage of Wallclimb hack: place the file addons_wallhack in the userfunctions folder. Activate by using "wallon();" in waypoint file, deativate by using "walloff();" in waypoint file (both inside waypoints) addon last (change) version: 27.03.2011.
-Usage of SpeedHack: place the file addons_speedhack in the userfunctions folder. Activate by using "speedon();" in waypoint file, deativate by using "speedoff();" in waypoint file (both inside waypoints). addon last (change) version: 29.03.2011.
Notes:
1. Flyhack-swim IS fully functional now (update rombot to newest and download flyhack addon)
2. Speedhack is working just fine, NOW WORKS WITH MAID SPEED POTIONS.
3. Wallhack is working but needs new experimental version of micromacro (works good with rombot => tested) you can download it here put all files in micromacro root folder where file micromacro.exe is located. You can download the files here: CHAPTER 4 HACKS
Swim Speed Wall
LINKS ON PAGE 4
- Attachments
-
- addon_swimhack.lua
- Swimhack Ch. IV
- (2.93 KiB) Downloaded 227 times
Last edited by Tsutomu on Sun Jun 19, 2011 2:34 pm, edited 18 times in total.
Re: Idea: RoMbot + MultiHack (keypress collaboration)
For keyboard presses checkout http://www.solarstrike.net/wiki/index.p ... rd_Control.
For memory function checkout http://www.solarstrike.net/wiki/index.p ... _Functions.
For memory function checkout http://www.solarstrike.net/wiki/index.p ... _Functions.
- Please consider making a small donation to me to support my continued contributions to the bot and this forum. Thank you. Donate
- I check all posts before reading PMs. So if you want a fast reply, don't PM me but post a topic instead. PM me for private or personal topics only.
- How to: copy and paste in micromacro
________________________
Quote:- “They say hard work never hurt anybody, but I figure, why take the chance.”
- Ronald Reagan
Re: Idea: RoMbot + MultiHack (keypress collaboration)
This is my current code for RoMbot swimhack (fly) function.
I have few problems, all people of knowledge please help.
I'm not sure if i'm writing and reading mem values exactly, and also how to freeze the actual offset to a value. Also how to unfreeze. Is "proc" the right name from rombot to request process id?
Later i will add speed up/down function, wallclimb, and maybe some more if you wish.
It's just that a little help is needed in order for this to jump-start. When i get swim working all others are easy then. Thank you all, hope i'll get some help.
edit: If i don't find a way to freeze mem from micromacro functions i'll need to go throught the rombot code to find a suitable function where i can put a call to edit memory back in every single step of the rombot.
If any1 has anykind of advice, much appreciated.
I have few problems, all people of knowledge please help.
I'm not sure if i'm writing and reading mem values exactly, and also how to freeze the actual offset to a value. Also how to unfreeze. Is "proc" the right name from rombot to request process id?
Code: Select all
--==<< Tsutomu's Swimhack function >>==--
--==<< By Tsutomu Version 1.0a >>==--
--==<< Requirements: Rom bot. >>==--
--==<< Usage: flyon(); OR flyoff(); >>==--
-- When u need to activate the flyhack you put "flyon();" without quotes inside the waypoint
-- When u don't need it anymore, you put "flyoff();" without quotes inside the waypoint
--9BC394+598+EC+B4 <<-- OFFSETS
local mycustom_offset = 0xB4
local active = 3
--local inactive = 0 --not needed
function flyon()
-- Check if fly value is off and change to on
charptr_addr = memoryReadIntPtr(proc, staticcharbase_address, charPtr_offset);
skillbuff_addr = memoryReadIntPtr(proc, charptr_addr, skillbuffFlag_offset);
mycustom_addr = memoryReadIntPtr(proc, skillbuff_addr, mycustom_offset);
local myValue = memoryReadInt(proc, mycustom_addr);
printf("Swimhack value: %d\n", myvalue);
memoryWriteInt(proc, mycustom_addr, active);
-- freeze mem
printf("Swimhack activated!\n");
end
function flyoff()
-- Check if value is fly-on, change if it is
charptr_addr = memoryReadIntPtr(proc, staticcharbase_address, charPtr_offset);
skillbuff_addr = memoryReadIntPtr(proc, charptr_addr, skillbuffFlag_offset);
mycustom_addr = memoryReadIntPtr(proc, skillbuff_addr, mycustom_offset);
local myValue = memoryReadInt(proc, mycustom_addr);
printf("Swimhack value: %d\n", myvalue);
--memoryWriteInt(__PROC, mycustom_addr, inactive); --not needed since unfreeze does the trick
--unfreeze mem
printf("Swimhack DEactivated.\n");end
end
It's just that a little help is needed in order for this to jump-start. When i get swim working all others are easy then. Thank you all, hope i'll get some help.
edit: If i don't find a way to freeze mem from micromacro functions i'll need to go throught the rombot code to find a suitable function where i can put a call to edit memory back in every single step of the rombot.
If any1 has anykind of advice, much appreciated.
Re: Idea: RoMbot + MultiHack (keypress collaboration)
The correct function to get the process is getProc(). 'proc' is used in some files because somewhere higher in the file it defined proc=getProc().
You should be able to nest offsets. eg
memoryReadIntPtr(getProc(), baseaddress, offset1, offset2, offset3)
To freeze the memory you could try using 'registertimer' to change the value at regular intervals. Look it up in the micromacro wiki.
You should be able to nest offsets. eg
memoryReadIntPtr(getProc(), baseaddress, offset1, offset2, offset3)
To freeze the memory you could try using 'registertimer' to change the value at regular intervals. Look it up in the micromacro wiki.
- Please consider making a small donation to me to support my continued contributions to the bot and this forum. Thank you. Donate
- I check all posts before reading PMs. So if you want a fast reply, don't PM me but post a topic instead. PM me for private or personal topics only.
- How to: copy and paste in micromacro
________________________
Quote:- “They say hard work never hurt anybody, but I figure, why take the chance.”
- Ronald Reagan
Re: Idea: RoMbot + MultiHack (keypress collaboration)
Here's the code
First i want to make sure i can read value from memory (from my test waypoint) and write it, then i'll get to timers and nesting writing over the value.
So, i have a problem with this code. It says for my swim_address: -965969920. I think it's wrong. Why?
Because when i print value it says "printf error" argument myValue is null. :S
Does it have to do with hex or smthng? It would also print it wouldn't it? Wouldn't be null?
Or maybe it's because i added offset values, not put coma after, but it didn't work with comas, says invalid no.of args.
so instead of: nnnn(proc,baseptr, off1,off2,off3);
i have put: nnnn(proc,baseptr, off1+off2+off3);
Code: Select all
--==<< Tsutomu's Swimhack function >>==--
--==<< By Tsutomu Version 1.0a >>==--
--==<< Requirements: Rom bot. >>==--
--==<< Usage: flyon(); OR flyoff(); >>==--
-- When u need to activate the flyhack you put "flyon();" without quotes inside the waypoint
-- When u don't need it anymore, you put "flyoff();" without quotes inside the waypoint
--9BC394+598+EC+B4 <<-- OFFSETS
local staticcharbase_address = 0x9BC394
local charPtr_offset = 0x598
local skillbuffFlag_offset = 0xEC
local swim_offset = 0xB4
local active = 3
local proc=getProc();
--local inactive = 0 --not needed
function flyon()
-- Check if fly value is off and change to on
swim_addr = memoryReadIntPtr(getProc(), staticcharbase_address, charPtr_offset+skillbuffFlag_offset+swim_offset);
local myValue = memoryReadInt(proc, swim_addr);
memoryWriteInt(proc, swim_addr, active);
-- register timer here!
printf("Swimhack value: %d\n", swim_addr);
printf("Swimhack activated!\n");
end
function flyoff()
-- Check if value is fly-on, change if it is
swim_addr = memoryReadIntPtr(getProc(), staticcharbase_address, charPtr_offset+skillbuffFlag_offset+swim_offset);
local myValue = memoryReadInt(proc, swim_addr);
--memoryWriteInt(proc, swim_addr, inactive); --not needed since unfreeze does the trick
--unregister timer here!
printf("Swimhack value: %d\n", swim_addr);
printf("Swimhack DEactivated.\n");
end
function flycheck()
-- Check the fly value
swim_addr = memoryReadIntPtr(getProc(), staticcharbase_address, charPtr_offset+skillbuffFlag_offset+swim_offset);
local myValue = memoryReadInt(proc, swim_addr);
printf("Swimhack value: %d\n", swim_addr);
end
So, i have a problem with this code. It says for my swim_address: -965969920. I think it's wrong. Why?
Because when i print value it says "printf error" argument myValue is null. :S
Does it have to do with hex or smthng? It would also print it wouldn't it? Wouldn't be null?
Or maybe it's because i added offset values, not put coma after, but it didn't work with comas, says invalid no.of args.
so instead of: nnnn(proc,baseptr, off1,off2,off3);
i have put: nnnn(proc,baseptr, off1+off2+off3);
Re: Idea: RoMbot + MultiHack (keypress collaboration)
All that is left now to do is register a timer for this and we have a working fly function with a single function call
I've managed to read and write successfully into memory offset i need.
----------------
EDIT:
OK, I've look into the timer Functions. this will set new timer - i don't know where to put the timer so it gets initialized only once????
i will put this in my flyon() function
so this is where my method changememory() will get called (if i'm not mistaken when timer ticks 10 it will call this func. but where do i place this???? beginning of my file-before any func??? or somewhere in rombot internal code?)
this is what my changememory() function does.
So where do i put those different parts of code???
I've managed to read and write successfully into memory offset i need.
----------------
EDIT:
OK, I've look into the timer Functions.
Code: Select all
newTimer("my_timer");
Code: Select all
startTimer( "my_timer", 10 );
Code: Select all
if( isTriggered("my_timer") ) then
changememory();
startTimer("my_timer", 10);
end
Code: Select all
success = memoryWriteIntPtr(getProc(), staticcharbase_address, offsets, active);
So where do i put those different parts of code???
Last edited by Tsutomu on Thu Mar 24, 2011 10:31 am, edited 1 time in total.
Re: Idea: RoMbot + MultiHack (keypress collaboration)
Sorry I was wrong about the memory function. Try this instead.
I just tried
and it printed 3 so the above should work.
Code: Select all
myValue = memoryReadIntPtr(getProc(), staticcharbase_address, {charPtr_offset, skillbuffFlag_offset, swim_offset});
Code: Select all
print(memoryReadIntPtr(getProc(), 0x9bc394, {0x598,0xec, 0xb4}))
nnnn(proc,baseptr, off1+off2+off3) will give you the wrong value.Tsutomu wrote:so instead of: nnnn(proc,baseptr, off1,off2,off3);
i have put: nnnn(proc,baseptr, off1+off2+off3);
- Please consider making a small donation to me to support my continued contributions to the bot and this forum. Thank you. Donate
- I check all posts before reading PMs. So if you want a fast reply, don't PM me but post a topic instead. PM me for private or personal topics only.
- How to: copy and paste in micromacro
________________________
Quote:- “They say hard work never hurt anybody, but I figure, why take the chance.”
- Ronald Reagan
Re: Idea: RoMbot + MultiHack (keypress collaboration)
I'm not sure what those timers are for and I don't understand how to use them. The one I was talking about is here.
http://www.solarstrike.net/wiki/index.p ... isterTimer
I think the way it works is, you create the timer function to freeze the memory at the begining of the file eg.
Then you start the automatic timer like this
Then stop it like this
By the way, I tried freezing that value with cheat engine but it didn't work.
http://www.solarstrike.net/wiki/index.p ... isterTimer
I think the way it works is, you create the timer function to freeze the memory at the begining of the file eg.
Code: Select all
function freezemem()
Assign the value to memory
end
Code: Select all
registerTimer("myTimer", 10, freezemem);
Code: Select all
unregisterTimer("myTimer")
- Please consider making a small donation to me to support my continued contributions to the bot and this forum. Thank you. Donate
- I check all posts before reading PMs. So if you want a fast reply, don't PM me but post a topic instead. PM me for private or personal topics only.
- How to: copy and paste in micromacro
________________________
Quote:- “They say hard work never hurt anybody, but I figure, why take the chance.”
- Ronald Reagan
Re: Idea: RoMbot + MultiHack (keypress collaboration)
It showed 3 in water? That's how it's supposed to behave, when out of water it should show 0. I think. :Srock5 wrote:I just triedand it printed 3 so the above should work.Code: Select all
print(memoryReadIntPtr(getProc(), 0x9bc394, {0x598,0xec, 0xb4}))
Now it doesn't work, i'll post my little code but will need to find out more about this problem, i'm currently testing what is going on wrong?
Re: Idea: RoMbot + MultiHack (keypress collaboration)
That's the actual address, i wonder what's going on, why it wont freeze. I see i change it with my source code, i've put printf statements in memoryfreeze() too, so i get the value 3-changed successfully. probably some other value too needs changing as it resets it to 0.
Hmmm.... back to the drawing boards xD
Hmmm.... back to the drawing boards xD
Re: Idea: RoMbot + MultiHack (keypress collaboration)
Code: Select all
--9BC394+598+EC+B4 <<-- OFFSETS
local staticcharbase_address = 0x9BC394
offsets = {0x598, 0xEC, 0xB4};
local active = 3;
function memoryfreeze()
memoryWriteIntPtr(getProc(), staticcharbase_address, offsets, active);
--swim = memoryReadIntPtr(getProc(), staticcharbase_address, offsets);
--printf("Swim value: %d\n", swim);
end
function fly()
registerTimer("flyTimer", 5, memoryfreeze);
printf("Swimhack ACTIVATED!\n");
end
function flyoff()
unregisterTimer("flyTimer");
printf("Swimhack DEactivated.\n");
end
Re: Idea: RoMbot + MultiHack (keypress collaboration)
Or maybe the server or game just wont let you do it. When I froze it with Cheat Engine, it's supposed to change it every 100ms I think it was, but I saw it flicker to 3 about once a second. Most of the time it was still 0. To tell you the truth I'd be surprised if the hacks could be made to work. Maybe they might have worked once but the devs might have fixed them.
- Please consider making a small donation to me to support my continued contributions to the bot and this forum. Thank you. Donate
- I check all posts before reading PMs. So if you want a fast reply, don't PM me but post a topic instead. PM me for private or personal topics only.
- How to: copy and paste in micromacro
________________________
Quote:- “They say hard work never hurt anybody, but I figure, why take the chance.”
- Ronald Reagan
Re: Idea: RoMbot + MultiHack (keypress collaboration)
Well it now works like a charm I've changed the active value to 4 and it accepts it
So here's the link testi t out with fly(); in one waypoint tag
and when you want it to stop type flyoff();
Regards!!
So here's the link testi t out with fly(); in one waypoint tag
and when you want it to stop type flyoff();
Regards!!
- Attachments
-
- addon_swimhack.lua
- Put it in the userfunctions folder and don't change the name of file. That's it. Happy flying ;) :)))))))))))
- (1.14 KiB) Downloaded 177 times
Re: Idea: RoMbot + MultiHack (keypress collaboration)
Well, it works flawlessly, but, my character fly only on normal level not the Y axis (hight), how do i force rombot to make a waypoint 3d instead of 2d?
My waypoint has Y-coordinate but it just won't follow it? Why is that? Some restraint?
Any suggestions on what might cause this?
NOTE: When i use the hack and click to move (outside rombot) it makes it's way to the high point, any point.
But in bot it sort of like flies on top of the water )) interesting effect, but useless
edit: player:mouseclickL(%d, %d, %d, %d);
Maybe this function can help. What it does actually in making a waypoint?
My waypoint has Y-coordinate but it just won't follow it? Why is that? Some restraint?
Any suggestions on what might cause this?
NOTE: When i use the hack and click to move (outside rombot) it makes it's way to the high point, any point.
But in bot it sort of like flies on top of the water )) interesting effect, but useless
edit: player:mouseclickL(%d, %d, %d, %d);
Maybe this function can help. What it does actually in making a waypoint?
Re: Idea: RoMbot + MultiHack (keypress collaboration)
Rock5 added preliminary support for y-axis, but he hasn't tackled the movement/camera functions yet, as far as I know.
Being able to bot Malatina's Course of Terror using this would be nice.
Being able to bot Malatina's Course of Terror using this would be nice.
Re: Idea: RoMbot + MultiHack (keypress collaboration)
Sure, rombot is a great piece of software, well coded as i've seen, i'm sure we'll figure out a way around this problem and deliver multifunctionality for our automation needs.
Other usefull hacks are coming along too, i just don't know if i'll put it in separate files (addons) or to make all in one file. Maybe it's better to split them, code will be more readable so players can edit more easily to meet their needs, althow usage will be very easy for all -> two functions - one enabling other disabling specific hack.
Tomorrow probably will come the speed hack second most important for instance automation.
Other usefull hacks are coming along too, i just don't know if i'll put it in separate files (addons) or to make all in one file. Maybe it's better to split them, code will be more readable so players can edit more easily to meet their needs, althow usage will be very easy for all -> two functions - one enabling other disabling specific hack.
Tomorrow probably will come the speed hack second most important for instance automation.
Re: Idea: RoMbot + MultiHack (keypress collaboration)
Hm.. I think i know how I can fix it. Basically when the character changes direction if the y axis is included so that the character is 'looking' directly at the destination, then when it moves forward it should go straight there if in water. I'll start working on it.Tsutomu wrote:Well, it works flawlessly, but, my character fly only on normal level not the Y axis (hight), how do i force rombot to make a waypoint 3d instead of 2d?
Edit: I don't understand vectors so I'll have to ask administrator for the formulas.
- Please consider making a small donation to me to support my continued contributions to the bot and this forum. Thank you. Donate
- I check all posts before reading PMs. So if you want a fast reply, don't PM me but post a topic instead. PM me for private or personal topics only.
- How to: copy and paste in micromacro
________________________
Quote:- “They say hard work never hurt anybody, but I figure, why take the chance.”
- Ronald Reagan
Re: Idea: RoMbot + MultiHack (keypress collaboration)
Great mate! Alway on top of the task.
It would be a great improvement, eagerly waiting for it.
Thanks again!
Today i'm working on a speedhack improvement.
When i fininsh it i will attach the addon file to the first post.
It would be a great improvement, eagerly waiting for it.
Thanks again!
Today i'm working on a speedhack improvement.
When i fininsh it i will attach the addon file to the first post.
Re: Idea: RoMbot + MultiHack (keypress collaboration)
-
sorry for dbl-posting
-
I'm working currently on wallhack - it would help bot in situations when it gets stuck.
Very usefull IMHO.
I have a problem though.
I need to write a float value to a memory address that has a read only flag.
I need to make it a read/write and write down new value, then make it read only again.
Anyone has idea? No functions to do this in micromacro library online.
sorry for dbl-posting
-
I'm working currently on wallhack - it would help bot in situations when it gets stuck.
Very usefull IMHO.
I have a problem though.
I need to write a float value to a memory address that has a read only flag.
I need to make it a read/write and write down new value, then make it read only again.
Anyone has idea? No functions to do this in micromacro library online.
Code: Select all
GetWindowThreadProcessId(rClient, &processID); //Get the process ID from the HWND and assign it to our "processID" variable.
opClient = OpenProcess(PROCESS_ALL_ACCESS, 0, processID); //Open the process and assign it to our "opClient" handle.
VirtualProtectEx(opClient, (void *) 0x0091D3B4, 4, PAGE_READWRITE, &oldData); //This address is protected from modification, let's fix that.
WriteProcessMemory(opClient, (void *) 0x0091D3B4, &whVal, 4, 0); //Write the new value
VirtualProtectEx(opClient, (void *) 0x0091D3B4, 4, oldData, &oldData); //Restore the protection
- Administrator
- Site Admin
- Posts: 5307
- Joined: Sat Jan 05, 2008 4:21 pm
Re: Idea: RoMbot + MultiHack (keypress collaboration)
http://www.solarstrike.net/wiki/index.p ... _FunctionsTsutomu wrote:
I need to write a float value to a memory address that has a read only flag.
I need to make it a read/write and write down new value, then make it read only again.
Anyone has idea? No functions to do this in micromacro library online.
Who is online
Users browsing this forum: Ahrefs [Bot] and 1 guest