Page 1 of 1

Error

Posted: Thu Nov 25, 2010 2:47 pm
by DrG
I got his error

Code: Select all

 ...eX/Documents/micromacro/scripts/rom/classes/item.lua:188: attempt to perform arithmetic on global 'npcInfoAddress' (a nil value)
 Execution error: Runtime error
when my bot loot a card from a mob (Mud Lord). By the way it's a blue card.

This happened always after the bot loot that card. :D

Re: Error

Posted: Thu Nov 25, 2010 7:03 pm
by rock5
I'm pretty sure that is working for everyone else. What version of rombot and the game are you running?

Re: Error

Posted: Sat Nov 27, 2010 5:47 am
by DrG
i'm using MicroMacro v1.01 beta 2 and the version of rombot is 526.

this error still happen yesterday. :(

i'll try a new intall of rombot and report later :)

Re: Error

Posted: Sat Nov 27, 2010 6:28 am
by rock5
I just took out my Mud Lord card and put it in my bag and ran the bot. Sure enough, I got that error too. It only seems to happen with that card though. It didn't used to.

I'll look into it, but if it's a memorytable issue I doubt I will be able to do anything. If Voidmain has the time...

Re: Error

Posted: Sat Nov 27, 2010 7:30 am
by rock5
It looks like the main memorytable function 'GetItemAddress' returns 'nil' for the Mud Lord id. I have no idea why but, as a temporary fix, you can add the following lines.

In item.lua line 188 should be,

Code: Select all

			nameAddress = memoryReadInt( proc, npcInfoAddress + addresses.nameOffset );
just change it to

Code: Select all

			if npcInfoAddress ~= nil then
				nameAddress = memoryReadInt( proc, npcInfoAddress + addresses.nameOffset );
			end
The only affect of this is the Mud Lord Card will be named <EMPTY>. This should have no ill effects on the running of the bot..

Re: Error

Posted: Sat Nov 27, 2010 5:28 pm
by DrG
yes you are right is this card only :)

i'll try your fix. tyvm for your help and time :)