What's new
  • Visit Rebornbuddy
  • Visit Panda Profiles
  • Visit LLamamMagic
  • Visit Resources
  • Visit Downloads
  • Visit Portal

[Plugin] A ChuckyEgg Attempt! - PartyLeader PartyDude, for Co-Op Botting

Communication between the bots can only be realized with a standalone app witch acts as communication server.

Ah cool, I was thinking it would require something like that.

It'll be a while before I can even think about attempting to implement communications. I'm rather busy at the moment.

I'd like to get the char that dies to resume the run from the point it spawns..... next project
Our ProfileSwitcher Plugin does exactly this - feel free to ask me questions about this

Excellent, and thanks.

I'll take a look at the API and see what pops into my head as far as making this work for myself. If that fails I'll take a look at your code :)
 
I believe what packard was saying is that when he gets to the boss where you have to press accept to start the encounter and accept to join the encounter the bot just keeps clicking the portal waiting to go in instead of accepting the encounter.

Hmm, very strange. The plugin should not affect anything the profile does... actually, the plugin does click on OK and YES, related to the follower leaving and returning. Maybe that is causing problems?


...and as for the communication, well i was looking for an old hb plugin called raf partybot, it had 2 hb clients talk to each other but it must have been archived cuz i cant find it and i must have deleted it a while ago. :(

That's okay, I got a good tip from sfj, as far as implementing comms is concerned. :)
 
Seems like an awesome plugin. Might I make a small suggestion in regards to death handling. Until you can figure out how to get them to rez each other, why not have a detection that detects if one has died and if so wait for the other to catch up so they stay in sync. Just a thought.

A bit tricky, because that same bot who died might get stuck somehow, then the other bots would wait forever, unless theres a timer implemented that tells them to move on if idle for too long. the best way to handle it, which was mentioned above it figure out how to have the bot port back to town after a revive and click a players flag then resume.
 
About death handling why not let the plugin check (if !=me.town) and if he re-spawns not in town TP to town and then take the flag of another bot and have the profile resume where it left off.. that might be easier to implement then resurrecting.
 
First off, Im really excited to see this plugin starting to be developed. D3 is definitely more group friendly now, post patch, so I've been hoping to see a party plugin.

Cool :)


... Get with Giles about movement speed increase abilities. My Witchdoctor wont stop Spiritwalking past my barbarian and leaving him with a bunch of mobs to kill while he runs ahead and dies.

LOL, sorry the visual just made me laugh, excellent.

I'll consider that, for sure.

Hmm, it sounds like your profile is set to make the Witchdoctor use that power (spiritwalking). Which is fine, but obviously leaves anyone behind who is not using a similar power.

2. I'd say not to focus on communication as much as coordination. Add a setting in the party dude plugin where you can enter the name of the party leader, then have the plugin search for the actorID with the name associated with it. The party dudes dont need to load a profile, they need only to constantly ensure they are near the leader and if they arent then you setup a series of error handling to try to find him. If the party leaders isn't within X yards, tele port to town and search for him. If he's there, initiate ID and repair. If he's not, then hit his banner. Then, you just run the party leader as usual. I'm fairly certain that names can be associated with actorIDs, what Im not certain of is if you can put this together like Im talking about - it isn't really communication, but it might have the desired effect.

This would be the ideal way for a Co-Op plugin to work. The reason why i did not do it this way is because there is a plugin out there that uses this type of set up ([Plugin] MyBuddy.Local a.k.a Follow Me by xsol), and he was having issue with interaction with portals (I assumed this, not sure if it is fact that he was having problems with that). The followers are unable to use the portals. This has to be done manually.

It's only the interaction by the followers of things like Portals and Waypoints, that is the issue, otherwise the way you say to do it would be the business.

That would definitely solve death handling.

It might be an idea to set up a separate project, and create a Co-Op plugin that works as you have described. It's doable, just might need a bit of thinking and imagination.

Time for a break for me.... gonna see if this new version of Hawaii 5 0 is any good.
 
About death handling why not let the plugin check (if !=me.town) and if he re-spawns not in town TP to town and then take the flag of another bot and have the profile resume where it left off.. that might be easier to implement then resurrecting.

Yeah, as you say and has been mentioned above, this would be a very good way to do it.

I'll get on it as soon as I am able to. A wee bit busy at the moment, and I need some chill time... "book him Dano, murder one".... I wonder if they get to say that in this new Hawaii 5 O series. And yeah, I know it's been out since 2010. I'm still on series 4 of Prison Break, and get this... season 3 of OZ !!!!

Anyway, chill time :)
 
Super excited to check this out - thanks for making this - exactly what my Plugin request was +Rep
 
This is an amazing plugin while I would love to test it out I can't right now, I'll wait for some more progress with deaths etc. good work
 
One way you might be able to handle deaths is have it set to where if they die they just port to town, then click on the leaders flag to port to him.
 
Any plugin with the word "dude" in it is OK in my book :p
 
Super excited to check this out - thanks for making this - exactly what my Plugin request was +Rep

Yeah, I saw that :)

This is an amazing plugin while I would love to test it out I can't right now, I'll wait for some more progress with deaths etc. good work

On it :) Hopefully I'll make a start on this tomorrow.

One way you might be able to handle deaths is have it set to where if they die they just port to town, then click on the leaders flag to port to him.

Yep, that's exactly what I'll do :)
 
The way I would do revives is simply if the ActorSNO(xxxxx)[Revive cross] is present out of combat in a certain radius. The bot clicks on it. This bring ups the ability for the bot to detect and press the button for accept resurrection. Let's just say the bot can do that. But most times the bot will most likely be able to revive itself before another bot can resurrect it. So when you revive you are going to end up multiple spots. At a checkpoint, at a waypoint, or back in town. Now currently starting at checkpoints or waypoint is not a plugin but a profile issue.

Now the bot can do a couple different things here.
1) Do what it current does and start from waypoint or checkpoint. Hope that since it should not be fighting any monster it should catch up the party quickly
2) TP back to town and use a banner. This is essentially the code you would need


Code:
<If condition="Zeta.ZetaDia.CurrentWorldId==172909 and ActorExistsAt(123714, 386.3227, 414.9005, 0.9196908, 40)">
<UseObject questId="1" stepId="1" actorId="123714" /> 
</If>
<WaitTimer questId="1" waitTime="500" />

<If condition="Zeta.ZetaDia.CurrentWorldId==172909 and ActorExistsAt(123715, 402.4128, 431.0359, 0.7417383, 40)">
<UseObject questId="1" stepId="1" actorId="123715" /> 
</If>
<WaitTimer questId="1" waitTime="500" />

<If condition="Zeta.ZetaDia.CurrentWorldId==172909 and ActorExistsAt(123716, 402.8364, 398.1617, 0.7417126, 40)">
<UseObject questId="1" stepId="1" actorId="123716" /> 
</If>
<WaitTimer questId="1" waitTime="500" />

<If condition="Zeta.ZetaDia.CurrentWorldId==172909 and ActorExistsAt(123717, 419.0226, 414.673, 0.815927, 40)">
<UseObject questId="1" stepId="1" actorId="123717" /> 
</If>
<WaitTimer questId="1" waitTime="500" />




Banner Name: Banner_Player_1-142 ActorSNO: 123714 Distance: 9.194372 Position: <386.3227, 414.9005, 0.9196908> Barracade: False
Banner Name: Banner_Player_2-149 ActorSNO: 123715 Distance: 15.48913 Position: <402.4128, 431.0359, 0.7417383> Barracade: False
Banner Name: Banner_Player_3-155 ActorSNO: 123716 Distance: 29.21209 Position: <402.8364, 398.1617, 0.7417126> Barracade: False
Banner Name: Banner_Player_4-158 ActorSNO: 123717 Distance: 31.60768 Position: <419.0226, 414.673, 0.815927> Barracade: False

So the bot clicks on a banner but if some reason it can't since the other bot is in town or it is actually it's own banner. It simply will go on to the next banner. Now though this is were the problems start at. The bot has no clue were it's at. It can't start a profile currently at a random xyz. This is the best solution but by far the most complicated to fix. At this point I would not use it.

I would simply go back to the revive method. Still complicated cause you need some way to pull up the last moveto the bot was attempting before death and start from there. What you essentially need is a pause/unpause button for a profile. I would put some kind of timer on death so you give the other bot's ample time to revive you. And if for some reason the other bot's are far ahead and don't revive. Start the profile over and hope you can catch up eventually.

Hope this made sense
 
I can not wait until the bots can follow the leader like a pro, I look forward to your updates to this plugin.
 
The way I would do revives is simply if the ActorSNO(xxxxx)[Revive cross] is present out of combat in a certain radius. The bot clicks on it. This bring ups the ability for the bot to detect and press the button for accept resurrection. Let's just say the bot can do that. But most times the bot will most likely be able to revive itself before another bot can resurrect it. So when you revive you are going to end up multiple spots. At a checkpoint, at a waypoint, or back in town. Now currently starting at checkpoints or waypoint is not a plugin but a profile issue.

Now the bot can do a couple different things here.
1) Do what it current does and start from waypoint or checkpoint. Hope that since it should not be fighting any monster it should catch up the party quickly
2) TP back to town and use a banner. This is essentially the code you would need


Code:
<If condition="Zeta.ZetaDia.CurrentWorldId==172909 and ActorExistsAt(123714, 386.3227, 414.9005, 0.9196908, 40)">
<UseObject questId="1" stepId="1" actorId="123714" /> 
</If>
<WaitTimer questId="1" waitTime="500" />

<If condition="Zeta.ZetaDia.CurrentWorldId==172909 and ActorExistsAt(123715, 402.4128, 431.0359, 0.7417383, 40)">
<UseObject questId="1" stepId="1" actorId="123715" /> 
</If>
<WaitTimer questId="1" waitTime="500" />

<If condition="Zeta.ZetaDia.CurrentWorldId==172909 and ActorExistsAt(123716, 402.8364, 398.1617, 0.7417126, 40)">
<UseObject questId="1" stepId="1" actorId="123716" /> 
</If>
<WaitTimer questId="1" waitTime="500" />

<If condition="Zeta.ZetaDia.CurrentWorldId==172909 and ActorExistsAt(123717, 419.0226, 414.673, 0.815927, 40)">
<UseObject questId="1" stepId="1" actorId="123717" /> 
</If>
<WaitTimer questId="1" waitTime="500" />




Banner Name: Banner_Player_1-142 ActorSNO: 123714 Distance: 9.194372 Position: <386.3227, 414.9005, 0.9196908> Barracade: False
Banner Name: Banner_Player_2-149 ActorSNO: 123715 Distance: 15.48913 Position: <402.4128, 431.0359, 0.7417383> Barracade: False
Banner Name: Banner_Player_3-155 ActorSNO: 123716 Distance: 29.21209 Position: <402.8364, 398.1617, 0.7417126> Barracade: False
Banner Name: Banner_Player_4-158 ActorSNO: 123717 Distance: 31.60768 Position: <419.0226, 414.673, 0.815927> Barracade: False

So the bot clicks on a banner but if some reason it can't since the other bot is in town or it is actually it's own banner. It simply will go on to the next banner. Now though this is were the problems start at. The bot has no clue were it's at. It can't start a profile currently at a random xyz. This is the best solution but by far the most complicated to fix. At this point I would not use it.

I would simply go back to the revive method. Still complicated cause you need some way to pull up the last moveto the bot was attempting before death and start from there. What you essentially need is a pause/unpause button for a profile. I would put some kind of timer on death so you give the other bot's ample time to revive you. And if for some reason the other bot's are far ahead and don't revive. Start the profile over and hope you can catch up eventually.

Hope this made sense

Thanks, Gardettos, that is very, very helpful :) I'll copy this into my project diary.You've got some useful info there.

I'll have to re-read this again tomorrow morning, when my brain is fresh. The day is drawing to an end here, so I cannot fully appreciate the meaning of what you have written.

Thanks again :)

+rep :)

I did not realise you you +rep people. I've got some others to do :)
 
Last edited:
I'm totally off topic but Breaking Bad won't be back in a while, no episode today ;) !

LOL, I'm only on episode 3 of season 4, and only started watching Breaking Bad this year :)

get this, I'm also on:
Season 5 of Smallville
Season 4 of Prison Break
Season 3 of OZ
Season 2 of Trailorpark Boys
Season 2 of It's always Sunny in Philadelphia

:)

Oh, and I only just finished watching Lost :)
 
Great really great plugin i was waiting for something like that..:)

Is there a way to make the PartyDude follow the party leader wich i will play by hand ?

This mainly beacuse my main is Demon Hunter and Giles have not yet had time for us..:(

I mean i would love to run my main by hand and boost another char to farm after beacuse i dont want to risk and lose another Acc.

Thx for your great work
 
Last edited:
Great really great plugin i was waiting for something like that..:)

Is there a way to make the PartyDude follow the party leader wich i will play by hand ?

This mainly beacuse my main is Demon Hunter and Giles have not yet had time for us..:(

I mean i would love to run my main by hand and boost another char to farm after beacuse i dont want to risk and lose another Acc.

Thx for your great work

You want to use this plugin:
http://www.thebuddyforum.com/demonbuddy-forum/plugins/57588-plugin-mybuddy-local-k-follow-me.html

I use that when I want to take a low level char through an act. I manually control my high level char, and the MyBuddy.Local a.k.a Follow Me plugin controls my low level char.

It's brilliant. Usually a friend and I join up to do the runs. He with with his high level char, and me with mine, while the plugin controls our other 2 chars.
 
You want to use this plugin:
http://www.thebuddyforum.com/demonbuddy-forum/plugins/57588-plugin-mybuddy-local-k-follow-me.html

I use that when I want to take a low level char through an act. I manually control my high level char, and the MyBuddy.Local a.k.a Follow Me plugin controls my low level char.

It's brilliant. Usually a friend and I join up to do the runs. He with with his high level char, and me with mine, while the plugin controls our other 2 chars.

if they ever add support for the other things I've asked for it will only get better ;O
 
Anyone else experiencing the bot moving too quickly from one area to another and not fully killing champ packs? Ive missed quite a few champ kills or loots from it running to the next point. Thanks in advance.
 
Back
Top