Finding memory addresses in RoM, a How to Guide.

Runes of Magic/Radiant Arcana (http://www.runesofmagic.com)

Moderators: lisa, rock5

Message
Author
User avatar
lisa
Posts: 8330
Joined: Tue Nov 09, 2010 11:46 pm
Location: Australia

Re: Finding memory addresses in RoM, a How to Guide.

#21 Post by lisa » Wed Oct 26, 2011 7:25 am

Some you just can't do any other way then using CE and basically refinding them the same way they were found originally.
I'll try to do up a list of how I do them, half the time I forget between patches and have to refer back to other posts about it that go back months lol

I posted VoidMain's way to find TableBase, I just edited it in a few posts back.
Remember no matter you do in life to always have a little fun while you are at it ;)

wiki here http://www.solarstrike.net/wiki/index.php?title=Manual

User avatar
OneofMany
Posts: 119
Joined: Mon May 09, 2011 2:30 am

Re: Finding memory addresses in RoM, a How to Guide.

#22 Post by OneofMany » Wed Oct 26, 2011 7:53 am

i did saw that yes, allready got that trick noted down :)
Its not about cheating. Its about being smarter than the game...

User avatar
lisa
Posts: 8330
Joined: Tue Nov 09, 2010 11:46 pm
Location: Australia

Re: Finding memory addresses in RoM, a How to Guide.

#23 Post by lisa » Wed Oct 26, 2011 10:26 am

Ok this is my first attempt at a video tutorial.

[youtube]http://www.youtube.com/watch?v=6bUCUcUfiU8[/youtube]

I would appreciate any comments or suguestions, ty
Keep in mind it is my first ever instructional video ;)

Thanks admin, seems you added a youtube button =)
Remember no matter you do in life to always have a little fun while you are at it ;)

wiki here http://www.solarstrike.net/wiki/index.php?title=Manual

User avatar
lisa
Posts: 8330
Joined: Tue Nov 09, 2010 11:46 pm
Location: Australia

Re: Finding memory addresses in RoM, a How to Guide.

#24 Post by lisa » Thu Oct 27, 2011 12:14 am

Number 2 in my video tutorials, finding moneyPtr using CE.
This is a very simple way to start using CE.

[youtube]http://www.youtube.com/watch?v=nhuKVvyTPZA[/youtube]
Remember no matter you do in life to always have a little fun while you are at it ;)

wiki here http://www.solarstrike.net/wiki/index.php?title=Manual

User avatar
OneofMany
Posts: 119
Joined: Mon May 09, 2011 2:30 am

Re: Finding memory addresses in RoM, a How to Guide.

#25 Post by OneofMany » Thu Oct 27, 2011 12:37 am

i loved the music under the movies ;-)

Further more its a good example, and straight to the point. movie 1 will let you find 90% of the addresses. and thats good :)

Finding moneyptr is a very good one too, as it is really easy to find. this because you know youre own moneyvalue on the character.

Keep up the very good work :)
Its not about cheating. Its about being smarter than the game...

User avatar
Administrator
Site Admin
Posts: 4857
Joined: Sat Jan 05, 2008 4:21 pm

Re: Finding memory addresses in RoM, a How to Guide.

#26 Post by Administrator » Thu Oct 27, 2011 1:08 am

Have you considered using annotations in the videos instead of actually rendering the text boxes into the video? I think that would allow it to be automatically translated to the user's native language.

User avatar
lisa
Posts: 8330
Joined: Tue Nov 09, 2010 11:46 pm
Location: Australia

Re: Finding memory addresses in RoM, a How to Guide.

#27 Post by lisa » Thu Oct 27, 2011 2:50 am

Administrator wrote:Have you considered using annotations in the videos instead of actually rendering the text boxes into the video?
I'll took into it, I haven't played with the youtube editing much yet. I saw the annotations option while doing the music, music I added with youtube options.

The thing I really like about moneyPtr is it is so easy to find but you can use it to get another address which is a pain to find.

this statement is true, from update.lua

Code: Select all

moneyPtr = staticInventory + 0x2FD4
so change that around to

Code: Select all

moneyPtr - 0x2FD4 = staticInventory
in current version
moneyPtr = 0x9DDDC4,
staticInventory = 0x9DADF0,
I am going to be looking back over previous patches and see if I can find any other constants as a difference between address. Hopefully I can find a few more like this, it will make patches a lot easier to deal with lol
Remember no matter you do in life to always have a little fun while you are at it ;)

wiki here http://www.solarstrike.net/wiki/index.php?title=Manual

User avatar
lisa
Posts: 8330
Joined: Tue Nov 09, 2010 11:46 pm
Location: Australia

Re: Finding memory addresses in RoM, a How to Guide.

#28 Post by lisa » Thu Oct 27, 2011 5:06 am

I added annotations to moneyPtr just to do a comparison, so i has both atm.

It is more limited to what I can change then when I edit in the software I use. It is also kind of see through which can make it harder to read. I can allow for this by having some blank white space on the screen though.

Does it auto translate for people using annotations?
Remember no matter you do in life to always have a little fun while you are at it ;)

wiki here http://www.solarstrike.net/wiki/index.php?title=Manual

User avatar
Administrator
Site Admin
Posts: 4857
Joined: Sat Jan 05, 2008 4:21 pm

Re: Finding memory addresses in RoM, a How to Guide.

#29 Post by Administrator » Thu Oct 27, 2011 3:50 pm

lisa wrote:Does it auto translate for people using annotations?
Hmm, I guess not. Maybe it only does it for closed captions. I did find the annotations to be easier to read, though. You should be able to make a number of different setting changes to them to improve the look at feel. Here is an example.

It doesn't mater too much. Whatever you decide, it is up to you. Go with whatever is quicker and easier.

User avatar
lisa
Posts: 8330
Joined: Tue Nov 09, 2010 11:46 pm
Location: Australia

Re: Finding memory addresses in RoM, a How to Guide.

#30 Post by lisa » Thu Oct 27, 2011 8:38 pm

I actually watched that whole episode all the way through lol

Only time I saw any annotations was the purple rectangle with white writing at 1:07. All of the rest was actually in game text bubbles, which he was just reading in his own special way.
At the very start and very end he did have links to other episodes.
Remember no matter you do in life to always have a little fun while you are at it ;)

wiki here http://www.solarstrike.net/wiki/index.php?title=Manual

User avatar
lisa
Posts: 8330
Joined: Tue Nov 09, 2010 11:46 pm
Location: Australia

Re: Finding memory addresses in RoM, a How to Guide.

#31 Post by lisa » Thu Oct 27, 2011 9:29 pm

tableBase video tutorial, I actually only did annotations with this 1, see what you think.
I have been thinking maybe subtitles would do same thing but it can be changed for languages, I think anyway.

[youtube]http://www.youtube.com/watch?v=LVOdnpi2Pus[/youtube]

Added captions to this 1 but I think it won't do a translation, pretty sure I would need to add more files with the translations for each language. So no difference really as I'm not going to do multiple language files.
Remember no matter you do in life to always have a little fun while you are at it ;)

wiki here http://www.solarstrike.net/wiki/index.php?title=Manual

User avatar
rock5
Posts: 12173
Joined: Tue Jan 05, 2010 3:30 am
Location: Australia

Re: Finding memory addresses in RoM, a How to Guide.

#32 Post by rock5 » Thu Oct 27, 2011 11:36 pm

I think I liked the second video the best so far. It was a bit easier to follow I think. I think because I find myself following the cursor it would be good if the cursor brings my attention to new text each time it appears. For example, new text appears, the cursor moves to it for a moment, my eyes follow it and read the text, then the cursor goes and does the steps. That was the best music so far. :)
  • 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

User avatar
rock5
Posts: 12173
Joined: Tue Jan 05, 2010 3:30 am
Location: Australia

Re: Finding memory addresses in RoM, a How to Guide.

#33 Post by rock5 » Thu Oct 27, 2011 11:38 pm

rock5 wrote:I think I liked the second video the best so far. It was a bit easier to follow I think. I think because I find myself following the cursor it would be good if the cursor brings my attention to new text each time it appears. For example, new text appears, the cursor moves to it for a moment, my eyes follow it and read the text, then the cursor goes and does the steps. That was the best music so far. :)
And couldn't you edit out that long wait? I know viewers can just skip ahead but still...
  • 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

User avatar
lisa
Posts: 8330
Joined: Tue Nov 09, 2010 11:46 pm
Location: Australia

Re: Finding memory addresses in RoM, a How to Guide.

#34 Post by lisa » Fri Oct 28, 2011 3:57 am

I actually made that bit go 700% faster guess I should have gone with 1500% lol
rock5 wrote:I think I liked the second video the best so far.
You mean the moneyPrt?
rock5 wrote:I think because I find myself following the cursor it would be good if the cursor brings my attention to new text each time it appears
Good point, at the moment the text kind of appears, it means I would have to plan the text ahead of time as the text is done afterwards. I usually plan the text anyway but this means I would also need to plan placement and not alter placement from where I planned it with curser.
rock5 wrote:That was the best music so far.
I think that was the mexican acoustic, I liked it too =)
Remember no matter you do in life to always have a little fun while you are at it ;)

wiki here http://www.solarstrike.net/wiki/index.php?title=Manual

User avatar
OneofMany
Posts: 119
Joined: Mon May 09, 2011 2:30 am

Re: Finding memory addresses in RoM, a How to Guide.

#35 Post by OneofMany » Tue Nov 01, 2011 3:54 am

Today we can test our new knowledge again i think. Lets see how far we get. first gonna try the tablesbase :)

EDIT: aww, no practice today ;-) just a server reset :)
Its not about cheating. Its about being smarter than the game...

User avatar
lisa
Posts: 8330
Joined: Tue Nov 09, 2010 11:46 pm
Location: Australia

Re: Finding memory addresses in RoM, a How to Guide.

#36 Post by lisa » Tue Nov 01, 2011 6:58 am

lol

FYI if you update the tableBase and run update.lua it actually gets the majority of new addresses. If you get any error like it did last patch with the class offsets just comment them out of the update.lua and run it again.

Then just a matter of checking the addresses are right.

To test you can just do a search in olly for constant and then compare the result to the image you have from previous version. If no result at all then address is more then likely wrong.
Remember no matter you do in life to always have a little fun while you are at it ;)

wiki here http://www.solarstrike.net/wiki/index.php?title=Manual

User avatar
OneofMany
Posts: 119
Joined: Mon May 09, 2011 2:30 am

Re: Finding memory addresses in RoM, a How to Guide.

#37 Post by OneofMany » Tue Nov 01, 2011 8:22 am

ahaaa, cool.

so tablesbase is the most important one to find then :) nice tip, next time, 1st will be that one then
Its not about cheating. Its about being smarter than the game...

User avatar
Nero
Posts: 98
Joined: Wed Aug 10, 2011 9:07 am

Re: Finding memory addresses in RoM, a How to Guide.

#38 Post by Nero » Tue Nov 15, 2011 12:50 pm

Image

I've tried to just look around today and see what's all that fuss about finding addresses.


While not impossibly hard, to get even some basic understanding seems to take a LONG time. I think I'll leave it alone till around Christmas, so I won't spend long hours sitting in front of my PC instead of doing something necessary. My first go at it was similar to the time when I've been 14 years old, and got lost in France, without knowing even the simplest terms in neither French or English - I had absolutely no idea what the hell is going on.


Still, the reason that I'm posting is - how do you check whether the addresses you found are correct? With money, hp, or similar things it's easy - you just change the value and check if the value in CE also changes.. But how about things like, for example, actionbar or tablesbase?


@Videos - learning from them is probably the easiest kind there is when done over long distances. Those posted here are simple enough to follow - with the most basic knowledge about using CE I was able to navigate around rather easily, although I mostly have no idea what exacly I'm doing.

User avatar
lisa
Posts: 8330
Joined: Tue Nov 09, 2010 11:46 pm
Location: Australia

Re: Finding memory addresses in RoM, a How to Guide.

#39 Post by lisa » Tue Nov 15, 2011 8:34 pm

On the first post I said I made the assumption people had gone to the links I posted and read through the info by admin, so people atleast know about pointers and static addresses.

As for knowing whether the address you have is right, just use them in addresses.lua and if bot runs then you probably have them correct. There are of course more complicated ways to test but at the end of the day you just want to make rombot work after a patch.

When testing addresses I prefer to use WP commandline and do a print with userfunctions I have.
So to test the bag ID or rent bag I do a print of inventory.

Code: Select all

function printinventory()
	local bags = {}
	inventory:update()
	for slot = 61, 240 do
		item = inventory.BagSlot[slot]
 	    if item.Available and  item.Name ~= "<EMPTY>" then
			table.insert(bags, {Name = item.Name, Id = item.Id})
		end;
	end;
	table.print(bags)
end
for skills I use

Code: Select all

function printskills()
for k,v in pairs(settings.profile.skillsData) do table.print(v) end
end
I also use

Code: Select all

function printnearby()
furniture = {}
	local objectList = CObjectList();
	objectList:update();
	local objSize = objectList:size()
		for i = 0,objSize do 
			obj = objectList:getObject(i);
			table.insert(furniture, {Name = obj.Name, Id = obj.Id, address = obj.Address})
		end
	table.print(furniture)
end
You get the idea anyway.
Remember no matter you do in life to always have a little fun while you are at it ;)

wiki here http://www.solarstrike.net/wiki/index.php?title=Manual

User avatar
botje
Posts: 656
Joined: Wed Oct 27, 2010 7:17 am

Re: Finding memory addresses in RoM, a How to Guide.

#40 Post by botje » Tue Jan 10, 2012 12:49 pm

perhaps some of you memory wizards can help me out here? :3

http://www.solarstrike.net/phpBB3/viewt ... =12&t=3358

Botje

Post Reply

Who is online

Users browsing this forum: No registered users and 10 guests