Party Bot (questions/answers)

Runes of Magic/Radiant Arcana (http://www.runesofmagic.com)
Message
Author
User avatar
lisa
Posts: 8332
Joined: Tue Nov 09, 2010 11:46 pm
Location: Australia

Re: Party Bot (questions/answers)

#221 Post by lisa » Thu Feb 06, 2014 2:06 am

Anyone ever had issues with healer suddenly just starting to attack mobs even though it is set not to.
Had it happening today and can't pinpoint the reason why.

It is acting like it is suddenly doing
Party() instead of Party(true), which is the difference between healing and Dps.
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

Miworax
Posts: 57
Joined: Fri Jan 24, 2014 9:46 am

Re: Party Bot (questions/answers)

#222 Post by Miworax » Thu Feb 06, 2014 6:46 am

i want to use the partyheal to farm some inis solo / duo but.... if i destroy the group the bot stoped.... and this is in micro macro

12:42am - ...xx/xxxx/Desktop/Rom/scripts/rom/classes/player.lua:3606: bad argument #1 to 'pairs' (table expected, got nil)

maybe someone has a solution ?

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

Re: Party Bot (questions/answers)

#223 Post by lisa » Thu Feb 06, 2014 7:17 am

little more info will help

what version of bot are you using
what version of game are you using

when you leave party are you inside the instance or outside the instance
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

Miworax
Posts: 57
Joined: Fri Jan 24, 2014 9:46 am

Re: Party Bot (questions/answers)

#224 Post by Miworax » Thu Feb 06, 2014 7:22 am

MicroMacro v1.02 beta 4

game :6.0.5.2683

inside and outside ive tryed, but same error

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

Re: Party Bot (questions/answers)

#225 Post by lisa » Thu Feb 06, 2014 9:21 am

well the game version is latest official version which is good but your copy of Micromacro is very very old.

MicroMacro v1.04.157
is the latest stable version.

Also you didn't mention which version of rombot you are using.
When you start the bot it will do the "image" print and it will print the version.


RoM Bot Version 3.29, Revision 771



I have narrowed down my issue, *pokes finder at Rock*
In your eggpet summon code you force the bot to use player:fight() if it is in combat.

Code: Select all

function CEggPet:Summon()
	self:update()
	while self.EggId > 0 and player.Level > self.Level-5 and self.Summoned == false and player.Alive and player.HP > 0 do
		keyboardRelease( settings.hotkeys.MOVE_FORWARD.key ); yrest(200)
		RoMScript("SummonPet("..self.EggSlot..")")
		repeat
			yrest(500)
			self:update()
			player:updateBattling()
			player:updateCasting()
		until self.Summoned or player.Battling or player.Casting == false
		yrest(500)
		if player.Battling then
			if player:target(player:findEnemy(true, nil, evalTargetDefault)) then
				player:fight()
			end
		end
		self:update()
	end
end
Party healer has it's own version of the fight function and that is why the issue.
Is the check for battling and using player:fight really needed in this function?
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

Miworax
Posts: 57
Joined: Fri Jan 24, 2014 9:46 am

Re: Party Bot (questions/answers)

#226 Post by Miworax » Thu Feb 06, 2014 9:36 am

Welcome to rom bot! press END to qui
RoM Bot Version 3.29, Revision 753

sorry, now i know what you meen before

Miworax
Posts: 57
Joined: Fri Jan 24, 2014 9:46 am

Re: Party Bot (questions/answers)

#227 Post by Miworax » Thu Feb 06, 2014 9:38 am

and i only use the partyheal , not the partydps or something like that....

i run with my main char into the easy mode and let me heal from my character...

but if ive killed the last boss, i need to destroy and reinvite the group and then there comes the error...

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

Re: Party Bot (questions/answers)

#228 Post by rock5 » Thu Feb 06, 2014 11:07 am

lisa wrote:Is the check for battling and using player:fight really needed in this function?
I think the reason for it was to make sure it completed. So if it has aggro then it clears the aggro first then finishes summoning. The bot probably doesn't need it. If we were to exit the function if we have aggro then it would try again latter when it doesn't have aggro. It would affect user code but I doubt there is any user code out there that does it's own summoning.
  • 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: 8332
Joined: Tue Nov 09, 2010 11:46 pm
Location: Australia

Re: Party Bot (questions/answers)

#229 Post by lisa » Thu Feb 06, 2014 6:07 pm

Miworax wrote:and i only use the partyheal , not the partydps or something like that....

i run with my main char into the easy mode and let me heal from my character...

but if ive killed the last boss, i need to destroy and reinvite the group and then there comes the error...
I would suguest updating to the current bot, the party.lua has been updated 3 times since 753 and that may have been to fix an issue like yours.
rock5 wrote:I think the reason for it was to make sure it completed. So if it has aggro then it clears the aggro first then finishes summoning. The bot probably doesn't need it. If we were to exit the function if we have aggro then it would try again latter when it doesn't have aggro.
Yeah that was exactly my thought, just exit the loop if battling and the usual bot code will take care of the fighting and then it will just try to summon pet again once out of combat.
forcing bot into combat like that also bypasses any other checks in the bot like waypoint type.


would need testing but this could work.

Code: Select all

function CEggPet:Summon()
	self:update()
	if self.EggId > 0 and player.Level > self.Level-5 and self.Summoned == false and player.Alive and player.HP > 0 then
		keyboardRelease( settings.hotkeys.MOVE_FORWARD.key ); yrest(200)
		RoMScript("SummonPet("..self.EggSlot..")")
		repeat
			yrest(500)
			self:update()
			player:updateBattling()
			player:updateCasting()
		until self.Summoned or player.Battling or player.Casting == false
		yrest(500)
		self:update()
	end
end
For some reason I have a feeling there may be a delay in the .Casting and so it may need a longer yrest to give game time to actually start the cast. would need testing.
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: Party Bot (questions/answers)

#230 Post by rock5 » Thu Feb 06, 2014 7:20 pm

That looks about right. I think I would leave out the last player:update() as that was mainly for the next loop.

I think summoning is just like everything else, it can be delayed by lag and such. 500ms is a long time. I just timed it on my EU account and it took about 70ms.

Actually we could probably do without the last yrest too.
  • 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: 8332
Joined: Tue Nov 09, 2010 11:46 pm
Location: Australia

Re: Party Bot (questions/answers)

#231 Post by lisa » Fri Feb 07, 2014 1:01 am

agreed the last eggpet:update() and yrest aren't needed anymore.
I'll try to make some time to test the rest, I can't see why it wouldn't work though.
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
Lamkefyned
Posts: 348
Joined: Thu May 23, 2013 11:38 am
Location: Spain

Re: Party Bot (questions/answers)

#232 Post by Lamkefyned » Fri Feb 14, 2014 4:51 pm

how can I make Nitsxg follow and when you reach the boss to take the loot
If you think something is right just because everyone else believes,you're not thinking.

ZZZZZ
Posts: 513
Joined: Sun Oct 21, 2012 1:42 am

Re: Party Bot (questions/answers)

#233 Post by ZZZZZ » Wed Feb 26, 2014 8:58 am

I use PartyHeals() on my healer when trying to farm Dreamland. When the dreamland round finishes I need it to load a waypoint that 'resets' the instance and then it run's PartyHeals() again. On my main client I made it use

Code: Select all

sendpartychat('code"loadPaths("DreamlandHeal")"') 
to do it, but the issue I have is while the MM window is actually saying that it has loaded DreamlandHeal, it is still running PartyHeals() and hence doesn't do anything.

Code: Select all

Party member 1 has the name of Maintoon
Loaded waypoint path DreamlandHeal.xml
No return path with default naming DreamlandHeal_return.xml found.
We use the normal waypoint path DreamlandHeal.xml now.
Party member 1 has the name of Maintoon
Just need to know if it's possible to actually load that waypoint through Partyhealer. Any advice would be great :)

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

Re: Party Bot (questions/answers)

#234 Post by rock5 » Wed Feb 26, 2014 9:31 am

I'd say not.

loadPaths just loads a waypoint file into the variable __WPL. It wont start being used until the current code being run, ends. Because partyheal is a continuously running script, it never ends so it never starts to use the newly loaded path.

The only way I can see it possibly working is if partyheal itself is modified to detect when a new file is loaded and ends itself so the new file can take over.
  • 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

ZZZZZ
Posts: 513
Joined: Sun Oct 21, 2012 1:42 am

Re: Party Bot (questions/answers)

#235 Post by ZZZZZ » Wed Feb 26, 2014 9:42 am

Could possibly add the waypoint itself into a funtion in a manner of speaking and just run that? Once the function ends (successfully resets instance) it should simply continue with PartyHeals()?

~~ Can you put waypoints into functions/<onLoads>?

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

Re: Party Bot (questions/answers)

#236 Post by lisa » Wed Feb 26, 2014 6:43 pm

There is a current bug that I have noticed but seems to only be on healer chars, need to narrow it down to be able to fix it.

For now though you can just change the party options to false before loading the dreamlandheal WP, would be easier to just do up a userfunction which changes all the options to false and then tell the healer to call it using party chat, just like you do for loading a path.

Then in that WP before loading partyhealer you need to change the party options back to true.
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

ZZZZZ
Posts: 513
Joined: Sun Oct 21, 2012 1:42 am

Re: Party Bot (questions/answers)

#237 Post by ZZZZZ » Thu Feb 27, 2014 5:22 am

tried using

Code: Select all

function loadDreamland();
		changeProfileOption("PARTY", false)
		changeProfileOption("PARTY_INSTANCE", false)
		loadPaths("DreamlandHeal");
	end
but got the same result, 'loaded' the waypoint but still running partyheals(). Is there any commands to 'kill' the current task before loading another?

ZZZZZ
Posts: 513
Joined: Sun Oct 21, 2012 1:42 am

Re: Party Bot (questions/answers)

#238 Post by ZZZZZ » Thu Feb 27, 2014 10:17 pm

Messing around with things to try and get this to work, but I can't figure out anything that allows you to cease or skip any code that comes after a loadPaths() command.
Needs to be something like

Code: Select all

	function loadDreamland();
		changeProfileOption("PARTY", false)
		changeProfileOption("PARTY_INSTANCE", false)
error("reseting dreamland")
		loadPaths("DreamlandHeal");
	end
but of course without the error, because it'll just stop there and MM will return to its command prompt. Unless there is some way to error it and then enter the correct command (rom/bot path:DreamlandHeal) through a userfunction or such I have no idea.

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

Re: Party Bot (questions/answers)

#239 Post by rock5 » Fri Feb 28, 2014 12:22 am

Like I said, I don't think it's possible unless party.lua itself is edited to accept some sort of option to quit.
  • 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

ZZZZZ
Posts: 513
Joined: Sun Oct 21, 2012 1:42 am

Re: Party Bot (questions/answers)

#240 Post by ZZZZZ » Fri Feb 28, 2014 12:34 am

ok, i got it working a different way anyway :D

Code: Select all

	function resetDreamLandHeal();
		local stage1failed = false
		changeProfileOption("LOOT", false)
		player:moveTo(CWaypoint(4781,1004,9),true)
		player:target_NPC(115689) -- Pioneer Dawn
		if (RoMScript("GetNumSpeakOption()") > 1)then
			DLApplyHealerPots()
			sendpartychat("ready")
			changeProfileOption("PARTY", true)
			changeProfileOption("PARTY_INSTANCE", true)
			PartyHeals();
		else
			stage1failed = true
		end
		if stage1failed == true then
			player:moveTo(CWaypoint(4732,1059,8),true)
			if 20 > inventory:itemTotalCount(208682) then
				sendpartychat("Not enough Dreamland Dust - Exiting")
				error("Not enough Dreamland Crystal Dust to reset");
			end
			player:moveTo(CWaypoint(4675,1061,8),true)
			player:target_NPC(115697) -- Pioneer Frank
			ChoiceOptionByName(getTEXT("ADS_STRING04_1")) -- 'Is there any way to remove the Dreamland energy fluctuations from my body?'
			yrest(1000);
			ChoiceOptionByName("Exchange 20 units of Dreamland Crystal Dust for one Dreamland Energy Fluctuation Masking service")
			yrest(1000);
			DLApplyHealerPots()
			sendpartychat("ready")
			changeProfileOption("PARTY", true)
			changeProfileOption("PARTY_INSTANCE", true)
			PartyHeals();
		end
	end
Just replaced the waypoints with player:moveTo().

Post Reply

Who is online

Users browsing this forum: No registered users and 3 guests