BetonQuest
BetonQuest is advanced and powerful quests plugin. It offers RPG-style conversations with NPCs and a very flexible quest system. Instead of being limited to creating "quest" objects with taking requirements and rewards upon completion, BetonQuest allows you to freely define what should happen (events), if it should happen (conditions) and what needs to be done for it to happen (objectives). Your quests don't have to look like "kill, bring, get reward": you can create multi-threaded stories, narrated with NPC conversations, with multiple endings affecting the player's gameplay in many ways.

-
View User Profile
-
Send Message
Posted Jun 22, 2015@mike_x1
Try to use the "Unbreakable" NBT tag to prevent the armor from taking damage, or use /clear to take the armor.
-
View User Profile
-
Send Message
Posted Jun 22, 2015@Co0sh
Thank you very much! This worked perfectly fine.
However, I have another question: Is it possible to make the take event ignore damage values on items?
Basically I need to give the player a set of armor for a quest that wears the armor down pretty much... Now at the end of the quest I want to take the armor away from the player again because I dont want people to have diamond armor right after they start playing. Anyway, the take event won't take it because the damage is not the same as in the item specified in items.yml
Thanks in advance - Mike
-
View User Profile
-
Send Message
Posted Jun 21, 2015@mike_x1
Yes, every objective can have conditions. If you use location condition then the objective will progress only when meeting this condition - the player being in specific location.
-
View User Profile
-
Send Message
Posted Jun 20, 2015Is it possible to make it so that a mobkill objective has to be in a specific area?
Thanks in advance - Mike_x1
-
View User Profile
-
Send Message
Posted Jun 12, 2015@nashoxx
You can still put in a "break" for no active quests.. Just put some sort of delay on the section for your "second conversation". Conditions, it's all about conditions. I imagine you'd want some kind of condition for the player to meet or whatever before your second conversation was going to be available, right? Again, why can't you do that exact same thing with the second "option" you'd put into the conversation for your NPC?
-
View User Profile
-
Send Message
Posted Jun 12, 2015@jhicks32917
I like the idea of being able to separate NPC Conversations from general Server Chat, though I think it would be nice to have an option to block all other chat input/output from displaying to a player in a conversation with an NPC. I personally use HeroChat myself, and if there were a way to disable certain Channels from HeroChat while an NPC is talking with a player, that would be great!
That would still allow players to "hear" others in their local area, just like the NPC is, but not something that is globally set, or otherwise. If this could be set on a per Conversation basis, so like I want my Innkeepers conversation to block out just "global" channel from HeroChat, I could set that. If I wanted my Blacksmith to block out everything, I could do that too. Or "some randomly triggered voice" or whatever to not block out anything, I could certainly have that option.
Can't say I'm overly fond of the idea of using Title and Subtitle myself, as that's a feature my server will use for a multitude of different things already. o.o
-
View User Profile
-
Send Message
Posted Jun 12, 2015I did some testing for my idea about dialogue being sent via the Title bar and it seems like it would work quite well if it's possible to have lines of text fade in, remain for a few seconds and fade out before going to the next line. If there could be an option to send dialogue via the chat and or the Title bar that would be wonderful.
Edit: After further tinkering with the Action bar and Title bar, a better system would be to have the NPC dialogue in the Action bar and the dialogue options in the Title bar. Dialogues tend to have more text than the options available and this would allow for more characters per line.
-
View User Profile
-
Send Message
Posted Jun 12, 2015@Co0sh
Yeah I just wanted some sort of "break" for the player so there were no active quests. Guess I have to do it all in one conversation.
-
View User Profile
-
Send Message
Posted Jun 11, 2015@sakura_blades
Thanks for the reply. I'm hoping that group questing functionality is added in some capacity. If it must be done through BetonQuest's Party system then that is of course preferable to having all quests done solo.
I have a request: would it be possible to have the option to move NPC dialogue to the action or title bar to prevent the conversation from being separated by spam, local conversations, etc?
I think in an ideal situation, the NPC dialogue would be in the title bar and the user's chat options would be displayed in the action bar.
-
View User Profile
-
Send Message
Posted Jun 11, 2015@nashoxx
What you can do, is create an entire conversation to an NPC and make the requirements/conditions for 1 track require something particular, and it doesn't trigger if the player doesn't meet them. Similar to a player walking up to an Innkeeper and asking for a Room vs a Quest. If it's a quest, it triggers an entirely different line of conversation than it would if they were asking for a Room for the night. If you didn't want players to do a Quest until a certain "moment" or "event" in their career you just make a condition that doesn't give that option to come up. Linking two different conversations doesn't make sense. How would you know which conversation would need to be triggered when talking to that NPC? It all works on conditions right? So does a single conversation already..
-
View User Profile
-
Send Message
Posted Jun 11, 2015@Co0sh
@jhicks32917
jhicks makes the point clear as to what my concern originally was. It isn't about an "easy to use" party system, it's about requiring players to form multiple different parties from multiple sources to alter the way things work in their favor. The average player is going to wonder why they have a party with X but they still need yet another party with Y to make the two functions work together.
Perhaps you are right Co0sh that altering existing functions through Beton's API would be feasible in a brand new plugin, but that doesn't resolve the issue that many server owners that don't use custom plugins to achieve their goals. When the time arises that my server introduces it's Party System, I will discuss with my developer on how to handle Beton with my plugin's party systems. Though I wonder if taking the already existing functions of Beton and making them recognize my plugin's party system is even possible without rewriting new events and things altogether.
-
View User Profile
-
Send Message
Posted Jun 11, 2015@Co0sh
I don't doubt that your party system will be simple to use, but my concern lies with complicating things for my users. In order for experience from mobs to be shared while using SkillAPI users must use Parties and ideally I'm not forcing my player base to use two separate party plugins to achieve shared experience gain from mobs and quests.
Though, if you could add multiple ways to create a party and invite players using commands then it is possible that could be a work around as integrating the two would be simple for server owners.
-
View User Profile
-
Send Message
Posted Jun 11, 2015@sakura_blades
Well, the party system I wrote is meant to be simple. It isn't difficult to use, although it may be hard to switch to new way of thinking at first.
You asked for the API. It already exists. You can create events, conditions and objectives by extending QuestEvent, Condition and Objective classes, and register them by using BetonQuest.getInstance().registerConditions(yourCondition); The API is documented on the wiki and with the javadocs.
@nashoxx
No, you can't. In that case the plugin will search for conversation named "conversation1,conversation2" but it won't find it.
How should such thing work? You're saying it's not a continuation but I can't think of any other way.
-
View User Profile
-
Send Message
Posted Jun 10, 2015Can you link more than just 1 conversation to an NPC? If so, how?
I'm trying this:
0: 'conversation1,conversation2'
I'm not trying to continue a conversation, I'm creating 2 separated conversations that I want to link to 1 NPC.
-
View User Profile
-
Send Message
Posted Jun 9, 2015@Co0sh
Unusual? As in difficult?
I've seen quite a few plugins that support party usage from some of the more popular party type plugins such as McMMO actually. Which is one of the reasons I had mentioned/asked about it before. :P
Though I believe mine was more so reading a party from my own custom plugin in development, or something to that effect..
I still believe that certain quests should be able to be done while in a party, but perhaps not require a party. Say I start a quest, and my friend starts the quest, and we form a party. And the objective is to kill 10 zombies. I kill 1 and that 1 counts for both of us, friend kills 1 so now we've both killed 2. And if the party breaks up, we've still both killed a total of 2 zombies.
This party requirement or whatever seems a bit odd, and the whole items given on party started, should be given to each player at the start I thinks. I know that was mentioned between us before when we talked about the 'ending/cancelling quests' portion.
Many games out there suggest parties, but they aren't required to be done while in a group, and any player part of a group gets treated as if they're by themselves in-case the party does split up. I think ideally that might be how it should be handled, instead of "Notch left the party, but Notch had the item needed to complete the quest". Which leaves everyone else kind of in the mud.. :\
Perhaps requesting some sort of API function or the like that outside plugins could hook into to provide their own party functions. Honestly right now, without being able to use parties from my own planned system, I cannot say that parties through Beton on top of parties through my own means, seems ideal to players or myself to manage. :\
-
View User Profile
-
Send Message
Posted Jun 9, 2015@jhicks32917
No, but in in the development versions there is a party system added. It's quite unusual comparing to parties from other plugins, if you're interested you should check out the documentation for those versions. It's here
^^-
View User Profile
-
Send Message
Posted Jun 9, 2015Does this plugin work with SkillAPI's Parties? Meaning, can players group up in a party and share a quest and the progress through the quest?
-
View User Profile
-
Send Message
Posted Jun 9, 2015@Co0sh
Thank you very much for your answere and good luck with your exams =).
-
View User Profile
-
Send Message
Posted Jun 8, 2015@iSiiLeX
When I'll pass my exams I will rewrite conversations - chest GUI will be a part of those changes.
SkillAPI has a compatibility with BetonQuest built-in as far as I know.
PhatLoots integration seems like a good idea, I'll see what I can do, right after my exams.
-
View User Profile
-
Send Message
Posted Jun 8, 2015@Co0sh Heyho, would it be possible to add a GUI display as well as Skillapi and PhatLoots support? That would be perfect =)