Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Added 3rd party state machine plugin link. #1056

Merged
merged 2 commits into from
Jun 18, 2020

Conversation

TheDudeFromCI
Copy link
Member

Wrote a simple plugin that allows for users to write bot behaviors in the form of a finite state machine. It's designed to allow bot behaviors to scale in a practical manner.

@wvffle
Copy link
Member

wvffle commented Jun 15, 2020

FSM is relatively easy to implement. In my opinion a person who knows how finite state machines work should have enough knowledge to implement them.

Many of those who will dig through the plugins and decide to try this plugin out will get confused how does it work.

There are a bunch of modules responsible for FSM and AI in general. It's pretty easy to connect them to mineflayer. I'd rather go that way.

Besides your work and effort, looking at your approach, the plugin is far from done and needs a lot of time to develop

@Karang
Copy link
Contributor

Karang commented Jun 15, 2020

FSM is relatively easy to implement. In my opinion a person who knows how finite state machines work should have enough knowledge to implement them.

Many of those who will dig through the plugins and decide to try this plugin out will get confused how does it work.

There are a bunch of modules responsible for FSM and AI in general. It's pretty easy to connect them to mineflayer. I'd rather go that way.

Besides your work and effort, looking at your approach, the plugin is far from done and needs a lot of time to develop

On the other hand, having something that is plug and play for mineflayer is a great opportunity to teach ai concepts to beginners.

Sure the plugin is new and can be improved, but as long as it is continued and updated, I think it is good to have it listed.

For instance the predefined behaviors: https://github.com/TheDudeFromCI/mineflayer-statemachine/tree/master/src/behaviors isn't something you will find in some general purpose FSM library.

But I agree that a strong documentation should come with the plugin.

@TheDudeFromCI
Copy link
Member Author

I plan on adding many default behaviors to the plugin to give the player some high-level controls for Mineflayer. I've added a few already, idle, look at entities, and follow an entity. I will be adding many more over the next few weeks. Yeah, I probably did link the project a little too early, so I'll make sure to have the plugin presentable as soon as possible.

@Karang
Copy link
Contributor

Karang commented Jun 15, 2020

I plan on adding many default behaviors to the plugin to give the player some high-level controls for Mineflayer. I've added a few already, idle, look at entities, and follow an entity. I will be adding many more over the next few weeks. Yeah, I probably did link the project a little too early, so I'll make sure to have the plugin presentable as soon as possible.

You can also link it in #981 ;)

Copy link
Member

@rom1504 rom1504 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

could you add in your readme install + usage explanation ?

@TheDudeFromCI
Copy link
Member Author

@rom1504 Yeah I will. I'll keep this PR open until the plugin is more user friendly and overall more presentable. I got excited and made this PR too early, lol

@wvffle
Copy link
Member

wvffle commented Jun 16, 2020

@rom1504 Yeah I will. I'll keep this PR open until the plugin is more user friendly and overall more presentable. I got excited and made this PR too early, lol

I'll convert it to draft then.

@wvffle wvffle marked this pull request as draft June 16, 2020 10:39
@rom1504 rom1504 marked this pull request as ready for review June 18, 2020 07:44
@rom1504 rom1504 merged commit 3e22c75 into PrismarineJS:master Jun 18, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants