Page 36 of 39

Re: Rock5's Millers Ranch Scripts

Posted: Tue Apr 10, 2012 9:12 am
by Germangold
yup is BoP now

i wasn't using rock5's script for like 6 months due to massive banning on german servers whatsover.

Meanwhile chinese goldseller, who have a way to dupe massive ammounts of gold, found a way to transfer gold nearly undetected tru the actionshouse....

man...

Re: Rock5's Millers Ranch Scripts

Posted: Thu Apr 12, 2012 9:40 am
by Golbez
hi. i plan on pk trading eggs still :P

just wondering if anyone else has a working egg script. i cant seem to figure out why the bot will not turn in the quest to Jenna Miller. im assuming "questname=RoMScript("TEXT('Sys422386_name')"); yrest(500) -- ie. "An Easy Lay?"" this might have changed or something like that. i tried to make it "sendMacro("ChoiceOption(1)")" in the complete quest section of the code but it still is not working :(

Re: Rock5's Millers Ranch Scripts

Posted: Thu Apr 12, 2012 10:05 am
by rock5
Golbez wrote: i cant seem to figure out why the bot will not turn in the quest to Jenna Miller
If you are talking about my script, it has a setting to turn in the eggs after a certain number of eggs are collected. It is defaulted to 100. So after it collects 100 eggs it will turn them all in. The option is at the tope of the file

Code: Select all

	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)
Change it to 10 and it will turn them in after getting 10.

Re: Rock5's Millers Ranch Scripts

Posted: Thu Apr 12, 2012 10:12 am
by Golbez
rock5 wrote:
Golbez wrote: i cant seem to figure out why the bot will not turn in the quest to Jenna Miller
If you are talking about my script, it has a setting to turn in the eggs after a certain number of eggs are collected. It is defaulted to 100. So after it collects 100 eggs it will turn them all in. The option is at the tope of the file

Code: Select all

	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)
Change it to 10 and it will turn them in after getting 10.

it bot attempts to turn in the quests but the is something wrong with the npc and it wont click the options in the quest window

Code: Select all

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

<!--        Rock5's Millers Ranch Chickens run        -->
<!--           By Rock5     Version 3.2 (Final)       -->
<!-- www.solarstrike.net/phpBB3/viewtopic.php?p=12139 -->

<onLoad>
	setwindow(204792)
	--== User Option ==--

	GetReward = true -- Doesn't complete the quest if 'false'.
	Timeout = 300    -- Time hens and eggs stay in the ignore list before being given another chance. '0' disables it, remains permanently in ignore list.

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

	ignoredHens = {}
	ignoredEggs = {}

	changeProfileOption("HARVEST_DISTANCE", 150)

	-- 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

	-- 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
</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 GetReward == true then
			-- Complete quest
			repeat

					player:target_NPC(npcname); yrest(200)

				player:mouseclickL(274, 274, 1280, 800);

			until getQuestStatus(questname) ~= "complete"

			-- Accept quest
			repeat

					player:target_NPC(npcname); yrest(200)

				player:mouseclickL(274, 274, 1280, 800);

			until getQuestStatus(questname) ~= "not accepted"
			__WPL:setWaypointIndex(__WPL:findWaypointTag("Main"))

		elseif queststate == "not accepted" then
			-- Accept quest
			player:target_NPC(npcname);
			until RoMScript("SpeakFrame:IsVisible()")
			sendMacro("AcceptQuest()"); yrest(200);
			__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
				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
							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
				__WPL:setWaypointIndex(__WPL:findWaypointTag("Get Feed"));
			else
				__WPL:setWaypointIndex(__WPL:findWaypointTag("Get Eggs"))
			end
		end

		if #ignoredHens > 0 then
			printf("Ignored hens\tSeconds\n")
			for k,v in pairs(ignoredHens) do
				printf("%x  \t%d\n",v.address,os.time()-v.time)
			end
			printf("\n")
		end

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

		if #ignoredHens == 3 then
			printf("All hens are stuck.\n")
			player:sleep()
		end
	</waypoint>
	<!-- #  5 --><waypoint x="3940" z="3055" tag="Get Feed">	</waypoint>
	<!-- #  6 --><waypoint x="3937" z="2978"> player:target_Object(112956,nil,true)	</waypoint>
	<!-- #  7 --><waypoint x="3935" z="3051">__WPL:setWaypointIndex(__WPL:findWaypointTag("Main"));	</waypoint>
	<!-- #  8 --><waypoint x="3928" z="3185" tag="Get Eggs">	</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
					table.insert(ignoredEggs,{address=egg.Address, time=os.time()})
				end

				egg = player:findNearestNameOrId({112958,114931}, player.LastTargetPtr, eggEvalFunc)
			end
		end
	</waypoint>
	<!-- # 10 --><waypoint x="3926" z="3198">__WPL:setWaypointIndex(__WPL:findWaypointTag("Main"));	</waypoint>
</waypoints>

my guess is its somewhere with the lines of code between 129 and 155.

Re: Rock5's Millers Ranch Scripts

Posted: Thu Apr 12, 2012 10:50 am
by rock5
That's an old version. I only really support MRC_Optimized.xml. Use that instead.

For your information, the reason that version doesn't work is because it uses a mouse click to select the quest so the game would have to be the active window for it to work.

Re: Rock5's Millers Ranch Scripts

Posted: Thu Apr 12, 2012 2:26 pm
by Maxhead
Rock not sure you understand, but the bot no longer works when try to turn in egg quest. Its like its not clicking on the first part of accepting or turning in the quest. It just sits there going back and forth and not finishing or accepting the quest.

Re: Rock5's Millers Ranch Scripts

Posted: Thu Apr 12, 2012 9:37 pm
by lisa
Maxhead wrote: Its like its not clicking on the first part of accepting or turning in the quest
There never used to be a "first" part, so if they added it in for the quest then the WP will need to be adjusted for it.

Re: Rock5's Millers Ranch Scripts

Posted: Thu Apr 12, 2012 9:55 pm
by rock5
Any reason why you can't use the most recent version of mrc_optimized.xml?

Re: Rock5's Millers Ranch Scripts

Posted: Fri Apr 13, 2012 4:13 am
by _hirondelle
I used MRC_Optimised but it's currently not working.

I can't gave you further informations for now cause I am... working...
But I will be able to show you what's wrong in 8 hours.

In fact, when you launch the script, you character goes to the first hen and... nothing excet a nil exception and the end of the script.

Re: Rock5's Millers Ranch Scripts

Posted: Fri Apr 13, 2012 6:35 am
by Ego95
Maybe I'm wrong, but in the patchnotes it says, you will get 1 golden egg for completing the quest. What about the golden eggs you get from the chickens? For me it sounds like you can only complete the quest 1 time per day, but you can farm the normal (and golden eggs) without completing the quest..!?
I'm not at home so i can't test it.

Re: Rock5's Millers Ranch Scripts

Posted: Fri Apr 13, 2012 12:53 pm
by grande
I read it somewhere else.. the gold eggs still drop more than once but you can't pick them up. Not sure though.. also have not tested it. Worth a try

Re: Rock5's Millers Ranch Scripts

Posted: Sat Apr 14, 2012 3:19 am
by _hirondelle
you can take them but in fac,t they only have the skin of goldden eggs.

here the screen of the bug of mrc_optimized (I renamed the script)
http://desmond.imageshack.us/Himg846/sc ... es=landing

Re: Rock5's Millers Ranch Scripts

Posted: Sat Apr 14, 2012 7:04 am
by rock5
_hirondelle wrote:you can take them but in fac,t they only have the skin of goldden eggs.

here the screen of the bug of mrc_optimized (I renamed the script)
http://desmond.imageshack.us/Himg846/sc ... es=landing
Sorry but that tells me nothing.

A few things you could try.
1. Try Lisas instructions.
Can't get bot to work? follow these instructions before posting, thank you.
1. SVN update micromacro/scripts/rom folder
2. SVN revert micromacro/scripts/rom folder
3. delete Runes of Magic/Interface/Addons/ingamefunctions folder
4. copy micromacro/scripts/rom/devtools/ingamefunctions folder to Runes of Magic/Interface/Addons folder
5. restart game
2. Try starting with a default profile.
3. Is your file an unaltered original? Have you made any changes to it? If so, post or send me a copy so I can have a look.


BTW. Just posted a new version 4.5.
Changelog:
  • - Fixed the npc issue. The problem was it no longer went automatically into the quest when starting a dialog. Now you have to select the quest before using Complet/AcceptQuest.
    - Changed the default for the "Deliver" option to 10. It's more logical and will hopefully stop people posting messages asking why it's not turning in the quests.
    - Added a hen motion detection for the coop hens. Stops you running after leaving hens.
    - Changed the waypoint file "type" to "TRAVEL" for less cpu usuage.

Re: Rock5's Millers Ranch Scripts

Posted: Sun Apr 15, 2012 9:12 am
by _hirondelle
using a default profil resolve the problem but I still have an error... I have to replace manually the quest name in french.
I used your version 4.5 btw.

I will see what was wrong

Re: Rock5's Millers Ranch Scripts

Posted: Sun Apr 15, 2012 11:27 am
by rock5
_hirondelle wrote: I have to replace manually the quest name in french.
You shouldn't have to. The only times we have problems with names (sometimes) is when they have special characters. I don't see any special characters in the french name of the quest.

Re: Rock5's Millers Ranch Scripts

Posted: Sun Apr 15, 2012 2:53 pm
by _hirondelle
I agreed but I had a message specifying me that <name quest in french with specials characters with the "?" > is not find...

( I haven't this message actually... but the bot isn't abble to take the quest, stuck in a loop)
Image

When I manually change the name quest, it's ok.
questname = "Une ponte facile"; yrest(500) -- ie. "An Easy Lay?"

Re: Rock5's Millers Ranch Scripts

Posted: Mon Apr 16, 2012 7:52 am
by lolau51
Easy golden egg is END !

Per day we can get 1 bound golden egg.

Chiken don't drop anymore golden egg.

:o :?

Re: Rock5's Millers Ranch Scripts

Posted: Mon Apr 16, 2012 9:13 am
by _hirondelle
Yeah and ?

Miller's cake is one on the only free way to continue to level up our pets...
And feed them with bonuses.

Re: Rock5's Millers Ranch Scripts

Posted: Tue Apr 17, 2012 1:06 am
by gloover
_hirondelle wrote:Yeah and ?

Miller's cake is one on the only free way to continue to level up our pets...
And feed them with bonuses.
Sure, but millers cakes are also bounded - the only way to level up your pet is to farm really really much gold, buy millers cakes by the vendor and feed your pet with them!

Re: Rock5's Millers Ranch Scripts

Posted: Tue Apr 17, 2012 7:42 am
by _hirondelle
or use the bot on your main when you're sleeping or at work ^^

Yeah, isn't so fast...