bot is stuck on "testing macro" and doesnt crash or continue

Runes of Magic/Radiant Arcana (http://www.runesofmagic.com)
Post Reply
Message
Author
mayainverse
Posts: 94
Joined: Tue Dec 21, 2010 3:12 am

bot is stuck on "testing macro" and doesnt crash or continue

#1 Post by mayainverse » Tue Nov 15, 2011 10:26 am

this what happens when i try to start rombot.

trired updating wtih svn many times never worked.

this is nothing to do with patch today as i have been having this problem all week.

anyone encounter this before?

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

Re: bot is stuck on "testing macro" and doesnt crash or cont

#2 Post by rock5 » Tue Nov 15, 2011 10:39 am

mayainverse wrote:this what happens when i try to start rombot.
What happens when you try to start the bot? Please be specific. What do you see in the mm window and in the game?
  • 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

mayainverse
Posts: 94
Joined: Tue Dec 21, 2010 3:12 am

Re: bot is stuck on "testing macro" and doesnt crash or cont

#3 Post by mayainverse » Tue Nov 15, 2011 10:51 am

did you change ur avy? :D

after i press delete.

Loading profile XXXX.xml
Testing 'ingamefunctions' macro.



just hangs here forever.

the system (escape menu) menu constantly opens and closes also.

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

Re: bot is stuck on "testing macro" and doesnt crash or cont

#4 Post by rock5 » Tue Nov 15, 2011 11:24 am

If it's stuck at the Testing "'ingamefunctions' macro." message then you need to copy the 'ingamefunctions' folder from the 'rom/detools' folder into the 'Runes of Magic/interface/addons' folder. If the 'interface/addons' folder doesn't exists then create it first. It should end up like this "Runes of Magic/interface/addons/ingamefunctions". Then restart the game.
  • 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

mayainverse
Posts: 94
Joined: Tue Dec 21, 2010 3:12 am

Re: bot is stuck on "testing macro" and doesnt crash or cont

#5 Post by mayainverse » Tue Nov 15, 2011 11:35 am

i allready have that there. or is there a new one from latest update?

mayainverse
Posts: 94
Joined: Tue Dec 21, 2010 3:12 am

Re: bot is stuck on "testing macro" and doesnt crash or cont

#6 Post by mayainverse » Tue Nov 15, 2011 11:43 am

yep that was it thank you much :)

mayainverse
Posts: 94
Joined: Tue Dec 21, 2010 3:12 am

Re: bot is stuck on "testing macro" and doesnt crash or cont

#7 Post by mayainverse » Tue Nov 15, 2011 1:35 pm

is there something wrong with this way point. it does not move into gather range of the hens and just thinks its stuck.

Code: Select all

<?xml version="1.0" encoding="utf-8"?><waypoints>

<!--        Rock5's Millers Ranch Chickens run        -->
<!--           By Rock5         Version 4.1           -->
<!--      Incorporating Jduartedj's enhancements      -->
<!-- www.solarstrike.net/phpBB3/viewtopic.php?p=12139 -->

<onLoad>
	--== User Option ==--

	Deliver = 100         -- Change if you want to enable/disable deliver quests  0=disable, any number = deliver after that amount of 

eggs (must b bigger than 9)
	LagTime = 0           -- Affects accepting/completing quests. Increase LagTime if time is wasted by repeated CompleteQuests or 

AcceptQuests.
	RunningSpeed = 100    -- The speed the character runs when not teleporting. 50 is normal. Recommended 100.
	UseTeleporter = false -- Use Jduratedj's teleport userfunction. Please make sure you have it installed to use this option.
	Timeout = 100         -- Time hens and eggs stay in the ignore list before being given another chance. '0' disables it, remains 

permanently in ignore list.
	debugging = true      -- Set to true to display extra useful information regarding egg drop rates and ignore lists.

	--=================--

	ignoredHens = {}
	ignoredEggs = {}

	changeProfileOption("HARVEST_DISTANCE", 50)

	-- Get name strings
	questname = RoMScript("TEXT('Sys422386_name')"); yrest(500) -- ie. "An Easy Lay?"
	npcname = RoMScript("TEXT('Sys114930_name')"); yrest(500)   -- ie. "Jenna Miller"
	merchant = RoMScript("TEXT('Sys114935_name')"); yrest(500)  -- ie. "Pykesile"

	-- Don't need assist. Disable it.
	if settings.profile.options.EGGPET_ENABLE_ASSIST == true then
		settings.profile.options.EGGPET_ENABLE_ASSIST = false
		local assistPet = CEggPet(settings.profile.options.EGGPET_ASSIST_SLOT)
		assistPet:Return()
	end

	-- Don't need buffs, disable those skills
	for i, skill in pairs(settings.profile.skills) do
		if skill.Type == STYPE_BUFF then
			settings.profile.skills[i].AutoUse = false
		end
	end

	local zoneid = RoMScript("GetZoneID()")
	if zoneid ~= 304 then -- not at Miller's Ranch
		-- Try to find Sorrun and teleport in
		if player:target_NPC("Sorrun") then
			sendMacro("ChoiceOption(3)") yrest(1000)
			sendMacro("ChoiceOption(1)")
			waitForLoadingScreen()
			yrest(1000)
			__WPL:setWaypointIndex(__WPL:getNearestWaypoint(player.X,player.Z))
		else
			error("You are too far from Miller's Ranch")
		end
	end

	-- Apply speed hack
	local playerAddress = memoryReadIntPtr(getProc(), addresses.staticbase_char, addresses.charPtr_offset);
	if playerAddress ~= 0 then
		memoryWriteFloat(getProc(), playerAddress + 0x40, RunningSpeed);
	end

	-- eval functions
	function feedHenEvalFunc(address)
		-- Don't target hens in the ignore list
		for k,v in pairs(ignoredHens) do
			if v.address == address then
				if Timeout == 0 or (Timeout > 0 and Timeout > (os.time() - v.time)) then
					return false
				end
			end
		end

		local hen = CObject(address)

		-- Don't target hens in coop
		if hen.Z > 3240 then return false end -- Hen in coop

		-- Don't target moving hens
		local oldX, oldZ = hen.X, hen.Z
		yrest(100)
		hen:update()
		if distance(hen.X,hen.Z,oldX,oldZ) > 2 then return false end

		return true
	end

	function coopHenEvalFunc(address)
		-- Don't target hens in the ignore list
		for k,v in pairs(ignoredHens) do
			if v.address == address then
				if Timeout == 0 or (Timeout > 0 and Timeout > (os.time() - v.time)) then
					return false
				end
			end
		end

		-- Only target coop Hens
		if 3240 > CObject(address).Z then return false end

		return true
	end

	function eggEvalFunc(address)
		-- Don't target eggs in the ignore list
		for k,v in pairs(ignoredEggs) do
			if Timeout > 0 and (os.time() - v.time) > Timeout then
				table.remove(ignoredEggs,k)
			elseif v.address == address then
				return false
			end
		end

		return true
	end

	function feedEvalFunc(address)
		-- Make sure the feed is from the right shed
		local feed = CObject(address)

		if feed.X > 4000 or feed.Z > 3030 then
			return false
		end

		return true
	end

	-- local teleport function checker
	function portTo(_x, _z, notWaypoint)
		-- Is Teleporter is enabled?
		if not UseTeleporter then
			return
		end

		-- Close enough. Don't teleport (when feeding hens)
		if notWaypoint then
			local dist = distance(player.X, player.Z, _x, _z)
			if 19 > dist then
				return
			end
		end

		teleport(_x, _z)
	end

	-- Debuging -----
	hencount = 0
	eggcount = 0
	speedlog = {}
	speedlogcount = 0
	ongoingGoldenEggCount = inventory:itemTotalCount(204792)
	-- Record start data for collected eggs but only if starting with less than 10 Fresh eggs.
	if 10 > inventory:itemTotalCount(204795) then
		speedlogcount = speedlogcount + 1
		speedlog[speedlogcount] = {start = os.clock()}
	end
	-----------------
</onLoad>

	<!-- #  1 --><waypoint x="4026" z="3400">
		if settings.profile.options.EGGPET_ENABLE_CRAFT == true then -- if crafting is enabled
			player:merchant(merchant);
		end
		__WPL:setDirection(WPT_FORWARD)
	</waypoint>
	<!-- #  2 --><waypoint x="4029" z="3327">	</waypoint>
	<!-- #  3 --><waypoint x="4016" z="3172" tag="merchant">	</waypoint>
	<!-- #  4 --><waypoint x="3948" z="3107" tag="Main">
		-- Do we need more pet tools?
		if settings.profile.options.EGGPET_ENABLE_CRAFT == true then
			local craftpet = CEggPet(settings.profile.options.EGGPET_CRAFT_SLOT)
			local toolChoice = craftpet:getToolChoices()
			if inventory:itemTotalCount(toolChoice[1].Id) == 0 then
				-- go buy some.
				__WPL:setDirection(WPT_BACKWARD)
				__WPL:setWaypointIndex(__WPL:findWaypointTag("merchant"));
				return
			end
		end

		queststate = getQuestStatus(questname)
		if queststate == "complete" and Deliver > 0 and inventory:itemTotalCount(204795) >= Deliver then
			-- Debuging -----
			-- Record end data for collected eggs
			if speedlog[speedlogcount] ~= nil then
				speedlog[speedlogcount].finish = os.clock()
				speedlog[speedlogcount].goldeneggs = inventory:itemTotalCount(204792) - ongoingGoldenEggCount
				ongoingGoldenEggCount = inventory:itemTotalCount(204792)
			end
			local deliverstart = os.clock()
			-----------------
			while inventory:itemTotalCount(204795) > 9 do --if 9+ fresh eggs
				-- Complete quest
				repeat
					repeat
					player:target_NPC(npcname); yrest(LagTime)
					until RoMScript("SpeakFrame:IsVisible()")

					sendMacro("CompleteQuest()")
					yrest(LagTime + 1500);
				until getQuestStatus(questname) ~= "complete"

				-- Accept quest
				repeat
					repeat
					player:target_NPC(npcname); yrest(LagTime)
					until RoMScript("SpeakFrame:IsVisible()")

					sendMacro("AcceptQuest()")
					yrest(LagTime +1000);
				until getQuestStatus(questname) ~= "not accepted"
			end
			-- Debuging -----
			-- Record delivery duration and start data for collected eggs
			if speedlog[speedlogcount] ~= nil then
				speedlog[speedlogcount].deliver = os.clock() - deliverstart
			end
			speedlogcount = speedlogcount + 1
			speedlog[speedlogcount] = {start = os.clock()}
			-----------------
			__WPL:setWaypointIndex(__WPL:findWaypointTag("Main"))

		elseif queststate == "not accepted" then
			-- Accept quest
			player:target_NPC(npcname);
			sendMacro("AcceptQuest()"); yrest(LagTime)
			__WPL:setWaypointIndex(__WPL:findWaypointTag("Main"))
		else
			local feedNumber = inventory:itemTotalCount(204789)
			local strikes = 0

			local hen = player:findNearestNameOrId(112955, nil, feedHenEvalFunc)
			while feedNumber > 0 and hen do -- While you have feed and hen
				portTo(hen.X, hen.Z, true)
				player:target_Object(112955,nil,nil,true,function(address) return address == hen.Address end ) -- Feed Hen
				if( inventory:itemTotalCount(204789) == feedNumber ) then -- Feed didn't work
					strikes = strikes + 1
					if strikes >= 3 then -- Add to ignore list
						-- First see if it isn't already on list
						local found
						for k,v in pairs(ignoredHens) do
							if v.address == hen.Address then
								found = k
								break
							end
						end
						if found then -- reset timer
							ignoredHens[found].time = os.time()
						else
							-- Debuging -----
							-- Used to keep track of total number of stuck hens.
							hencount = hencount + 1
							-----------------
							table.insert(ignoredHens,{address=hen.Address, time=os.time()})
						end
						strikes = 0
					end
				else
					-- If it's on the ignore list, remove it.
					for k,v in pairs(ignoredHens) do
						if v.address == hen.Address then
							table.remove(ignoredHens,k)
							break
						end
					end
					strikes = 0
				end

				feedNumber = inventory:itemTotalCount(204789)

				hen = player:findNearestNameOrId(112955, nil, feedHenEvalFunc)
			end
			-- Out of feed or hens
			if 1 > inventory:itemTotalCount(204789) then -- Get more feed
				if distance(player.X,player.Z,3940,3055)>128 then
					portTo(3948,3107); -- back to main
				end
				__WPL:setWaypointIndex(__WPL:findWaypointTag("Get Feed"));
				portTo(3940,3055);
			else
				if distance(player.X,player.Z,3928,3185)>128 then
					portTo(3948,3107); -- back to main
				end
				__WPL:setWaypointIndex(__WPL:findWaypointTag("Get Eggs"))
				portTo(3928,3185);
			end
		end
		-- Debuging -----
		-- Print stats
		if debugging then
			if speedlogcount > 1 or #ignoredHens > 0 or hencount > 0 or #ignoredEggs > 0 or eggcount > 0 then
				cprintf(cli.lightgreen, "\nDisplaying Stats:\n")
			end
			if speedlogcount > 1 then
				cprintf(cli.yellow,"Egg Stats:\n")
				print("Per " .. Deliver .. " fresh eggs.")
				print("","To Collect\tTo Deliver\tGolden Eggs Dropped")
				local totaltime = 0
				local totalcount = 0
				local totalgoldeneggs = 0
				for k,v in pairs(speedlog) do
					if v.finish then
						local timetaken = (v.finish - v.start)/60
						cprintf(cli.white,"\t%dm\t\t%ds\t\t%d\n",math.floor(timetaken), math.floor(v.deliver), 

v.goldeneggs )
						totaltime = totaltime + timetaken
						totalcount = totalcount + 1
						totalgoldeneggs = totalgoldeneggs + v.goldeneggs
					end
				end
				local eggtotal = 0

				printf("Fresh Eggs average drop rate: ") cprintf(cli.white, math.floor(Deliver * totalcount/totaltime * 

6000)/100 .. " per hour\n")
				printf("Golden Eggs average drop rate: ") cprintf(cli.white, math.floor(totalgoldeneggs/totaltime * 

6000)/100 .. " per hour\n\n")
			end
			if #ignoredHens > 0 or #ignoredEggs > 0 then
				cprintf(cli.yellow,"Ignore lists:\n")
			end
			if #ignoredHens > 0 then
				printf("Ignored hens\tSeconds\n")
				for k,v in pairs(ignoredHens) do
					cprintf(cli.white, "%x  \t%d\n", v.address, os.time()-v.time)
				end
			end
			if hencount > 0 then printf("Total stuck hens = ") cprintf(cli.white, hencount.."\n") end
			if #ignoredHens > 0 or hencount > 0 then printf("\n") end

			if #ignoredEggs > 0 then
				printf("Ignored eggs\tSeconds\n")
				for k,v in pairs(ignoredEggs) do
					cprintf(cli.white, "%x  \t%d\n", v.address, os.time()-v.time)
				end
			end
			if eggcount > 0 then printf("Total stuck eggs = ") cprintf(cli.white, eggcount.."\n") end
			if #ignoredEggs > 0 or eggcount > 0 then printf("\n") end
		end
		-----------------

		if #ignoredHens == 3 and inventory:itemTotalCount(204789) > 0 then

			if Timeout == 0 then -- Timeout is disabled. No trying again.
				printf("All hens are stuck.\n")
				player:sleep()
			else -- wait until next hen due to be tried again
				cprintf(cli.yellow, "All hens are stuck. Waiting for hens Timeout to end before trying again.\n")
				repeat
					yrest(1000)
					-- get highest time
					local highest = 0
					for k,v in pairs (ignoredHens) do
						local donetime = os.time() - v.time
						if donetime > highest then
							highest = donetime
						end
					end
					displayProgressBar(highest / Timeout * 100, 60)
				until highest > Timeout

				__WPL:setWaypointIndex(__WPL:findWaypointTag("Main"))
			end
		end
	</waypoint>
	<!-- #  5 --><waypoint x="3940" z="3055" tag="Get Feed">
		portTo(3937,2978)	</waypoint>
	<!-- #  6 --><waypoint x="3937" z="2978">
		player:target_Object(112956,nil,true,false,feedEvalFunc)
		portTo(3940,3055)	</waypoint>
	<!-- #  7 --><waypoint x="3935" z="3051">
		__WPL:setWaypointIndex(__WPL:findWaypointTag("Main"));
		portTo(3948,3107)	</waypoint>

	<!-- #  8 --><waypoint x="3928" z="3185" tag="Get Eggs">
		portTo(3929,3261)	</waypoint>
	<!-- #  9 --><waypoint x="3929" z="3261">
		while player:target_Object(112955,nil,nil,true,coopHenEvalFunc) do -- Check for hens
			yrest(500)

			local egg = player:findNearestNameOrId({112958,114931}, player.LastTargetPtr, eggEvalFunc)
			while egg do
				player:target_Object({112958,114931},nil,nil,false, function(address) return address == egg.Address end) -- 

Get Fresh/Golden Eggs
				-- wait till egg disappears. Avoids same address problem. We have time till the next hen is ready anyway.
				local maxWaitTime = 4
				local startTime = os.clock()
				repeat
					yrest(200)
					player:update()
				until player.TargetPtr == 0 or (os.clock() - startTime) > maxWaitTime

				-- Didn't disappear. Add to ignore list
				if player.TargetPtr ~= 0 then
					-- Debuging -----
					-- Used to keep track of total number of stuck eggs.
					eggcount = eggcount + 1
					-----------------
					table.insert(ignoredEggs,{address=egg.Address, time=os.time()})
				end

				egg = player:findNearestNameOrId({112958,114931}, player.LastTargetPtr, eggEvalFunc)
			end
		end

		portTo(3926,3198);
		if 1 > inventory:itemTotalCount(204789) then yrest(LagTime+1000) end --if he gooes directly to feed he is rubberbanded!
	</waypoint>
	<!-- # 10 --><waypoint x="3926" z="3198">
		__WPL:setWaypointIndex(__WPL:findWaypointTag("Main"))
		portTo(3948,3107)	</waypoint>
</waypoints>

ctrlaltdelete
Posts: 7
Joined: Thu Oct 20, 2011 2:00 am

Re: bot is stuck on "testing macro" and doesnt crash or cont

#8 Post by ctrlaltdelete » Tue Nov 15, 2011 2:55 pm

New patch, may want to try it after the update.

mayainverse
Posts: 94
Joined: Tue Dec 21, 2010 3:12 am

Re: bot is stuck on "testing macro" and doesnt crash or cont

#9 Post by mayainverse » Wed Nov 16, 2011 3:28 am

right forgot about that mybad.

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

Re: bot is stuck on "testing macro" and doesnt crash or cont

#10 Post by lisa » Wed Nov 16, 2011 3:37 am

I thought someone said the addresses were still the same after patch.
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: bot is stuck on "testing macro" and doesnt crash or cont

#11 Post by rock5 » Wed Nov 16, 2011 5:50 am

mayainverse wrote:is there something wrong with this way point. it does not move into gather range of the hens and just thinks its stuck.
I don't think the older scripts work with the latest version of the game. Try updating. What are we upto? 4.3?
  • 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

mayainverse
Posts: 94
Joined: Tue Dec 21, 2010 3:12 am

Re: bot is stuck on "testing macro" and doesnt crash or cont

#12 Post by mayainverse » Thu Nov 17, 2011 1:48 am

how do i update them. you mean the code in the waypoint file?

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

Re: bot is stuck on "testing macro" and doesnt crash or cont

#13 Post by rock5 » Thu Nov 17, 2011 5:02 am

Download the latest version from here.
http://www.solarstrike.net/phpBB3/viewt ... =27&t=1478
  • 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

Post Reply

Who is online

Users browsing this forum: Ahrefs [Bot], Semrush [Bot] and 20 guests