Quest World 2
Description
Quest World 2 is an extremely lightweight and easy-to-use Quest System offering
everything you could possibly need for your RPG Server, or maybe even Factions or Prison One
since it not only offers RPG related Quest Layouts but also simple Quests trading one Item for another.
On its own, Quest World 2 has no Quests at all, the Server Owner has to create its own Quests, however
there will be several Quest Packs available for download later on.
Also, this Plugin is heavily inspired by the Hardcore Questing Mode Mod by LordDusk, VSWE and NewCastleGeek, a huge thank you to them for developing their Mod.
IMPORTANT: I (mrCookieSlime/TheBusyBiscuit) have stopped working on this Plugin and now develop Video Games instead (more on my Youtube Channel). But this doesn't mean QuestWorld is dead. This Plugin is available on GitHub, so if you are or know a talented Plugin Developer, consider contributing to it by making a Pull Request to keep this Project alive.
List of Features:
- Easy-to-Use Ingame Quest Editor
- Up to 45 Categories
- Up to 45 Quests per Category (Up to 2025 Quests in total)
- Import/Export Functionality of your Quests to share it with other Users of this Plugin
- Storyline Quests (Make Quests locked until a different Quest has been completed)
- Quest Cooldowns (Making Quests be repeatable every X Minutes/Hours
- Up to 9 Item Rewards per Quest
- Monetary Rewards (Giving a Player Money for completing a Quest) Requires Vault and an Economy Plugin
- XP Rewards (Give XP Levels to your Players upon completing a Quest
- Up to 9 Tasks per Quest
- 7 different Types of Tasks available
- A Quest Party System (Share your Progress with your Friends)
- Citizens and various other Plugins supported!
- Dialogues with Citizens NPC Integration!
- Quest Timeouts (Do certain Tasks in a specific amount of Time)
- Quest Death-Resets (Do certain tasks without dying)
- Background Quests (Hide entire Storylines from the QuestBook, useful for Background Stuff, e.g. a Time Reward System)
- Renamable Missions (Display custom Text in the Quest Book)
- And a ton more!
Video Tutorials
QuestWorld v2.0 by mrCookieSlime [English]
QuestWorld v2.2 by mrCookieSlime [English]
QuestWorld v2.4 by mrCookieSlime [English]
Requirements/Addons
- CS-CoreLib (required) (Will be automatically downloaded if it was not found)
- Vault (optional) (Allows you to award Players with Money for completing Quests)
- Citizens (optional) (Allows you to create Quests for Citizens-based Actions)
- Votifier (optional) (Allows you to create Quests with Voting Tasks)
- ChatReaction (optional) (Allows you to create Quests with ChatReaction Win Tasks)
Commands/Permissions
/quests
- Opens up your Quest Book
- No permission required.
/quests [category]
- Opens up your Quest Book at the desired Location (Useful for ServerSigns or CommandNPC)
- Note here that Java is zero-indexed. The Category you need to specify is the Slot your Category is in, starting with 0
- No permission required.
/quests [category] [quest]
- Opens up your Quest Book at the desired Location (Useful for ServerSigns or CommandNPC)
- Note here that Java is zero-indexed. The Category/Quest you need to specify is the Slot your Category/Quest is in, starting with 0
- No permission required.
/questeditor gui
- Opens up the Ingame Quest Editor
- QuestWorld.editor
/questeditor export <File>
- Exports all Quests and Categories you created into a .zip File
- QuestWorld.editor
/questeditor import <File>
- Loads all Quests and Categories from a specified .zip File
- QuestWorld.editor
Screenshots
Sharing your Quests
You can create your own Quest Pack and share it with people all around the World.
Simply create your Quests and Categories and then do /questeditor export <File>
e.g. /questeditor export QuestPack this will generate a .zip File (/plugins/QuestWorld/presets/QuestPack.zip)
You can feel free to send me this .zip File or post it online.
I will be providing a variety of Quest Packs in the future, however there are none available at this point
since QuestWorld 2 is not yet released.
List of available Quest Types
- SUBMIT (Hand in X amount of a certain Item)
- DETECT (Have X amount of a certain Item in your Inventory)
- CRAFT (Craft X amount of a certain Item)
- KILL (Kill X amount of a certain Mob)
- KILL_NAMED_MOB (Kill X amount of a certain Mob named Y)
- FISH (Catch a certain Item using a Fishing Rod)
- REACH_LOCATION (Go to a certain Location in the World)
- VOTIFIER_VOTE (Vote for the Server a certain amount of times)
- CITIZENS_INTERACT (Talk to an NPC from Citizens)
- CITIZENS_SUBMIT (Give a certain item to a certain NPC from Citizens)
- JOIN (Join the Server X amount of times)
- KILL_NPC (Kill an NPC from Citizens)
- PLAY_TIME (Play on the Server for a certain Amount of Time)
- CHATREACTION_WIN (Win X ChatReaction Games)
Feel free to suggest more Quest Types in the comment Section down below and I will eventually add them as well
Source Code
You want to take over this Project? Start so by submitting Pull Requests on GitHub!
Check out QuestWorld's Source Code, if you want to keep this Project alive, maybe even consider contributing to it by making a Pull Request!
Auto-Updater and Metrics
All my Plugins are using an Auto-Updater to make sure, you're always
using the latest and hopefully most bug free version of my Plugin.
If you don't want this Plugin to be auto-updated, you can turn it off
in the config file at "options -> auto-update: true/false"
They also use a Metrics-System which collects the following Informations:
A unique identifier
The server's version of Java
Whether the server is in offline or online mode
The plugin's version
The server's version
The OS version/name and architecture
The core count for the CPU
The number of players online
The Metrics version
Opting out of this service can be done by editing
plugins/Plugin Metrics/config.yml and changing opt-out to true.
They playtime variable is kind of buggy, whenever I set it, everyone online "Completes it". Or am I doing something wrong :_:.
@TheBusyBiscuit
well that makes production alot slower :(
@xH3LLRAIZ3Rx
No.
can you allow more than one admin to edit Quests, I find that to be a issue when Im making a quest and a friend is making a quest of the same catagory
@woytaHR
You are using a VERY VERY VERY VERY old Version of CS-CoreLib...
@Ted20012001
You can do that using Dialogues, simply use a /tp Command in your Dialogue.
can you add event system like if a player accept a quest teleport him in one location etc???
@TheBusyBiscuit
[17:38:38 INFO]: XXXarbusXXX issued server command: /questeditor gui [17:38:40 ERROR]: Could not pass event InventoryClickEvent to CS-CoreLib v1.1.4
org.bukkit.event.EventException at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:297) [minecraft_server.jar:git-Bukkit-0a645a2]
at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:62) [minecraft_server.jar:git-Bukkit-0a645a2]
at org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.java:501) [minecraft_server.jar:git-Bukkit-0a645a2]
at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:486) [minecraft_server.jar:git-Bukkit-0a645a2]
at net.minecraft.server.v1_8_R2.PlayerConnection.a(PlayerConnection.java:1541) [minecraft_server.jar:git-Bukkit-0a645a2]
at net.minecraft.server.v1_8_R2.PacketPlayInWindowClick.a(SourceFile:31) [minecraft_server.jar:git-Bukkit-0a645a2]
at net.minecraft.server.v1_8_R2.PacketPlayInWindowClick.a(SourceFile:9) [minecraft_server.jar:git-Bukkit-0a645a2]
at net.minecraft.server.v1_8_R2.PlayerConnectionUtils$1.run(SourceFile:13) [minecraft_server.jar:git-Bukkit-0a645a2]
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471) [?:1.7.0_51] at java.util.concurrent.FutureTask.run(FutureTask.java:262) [?:1.7.0_51] at net.minecraft.server.v1_8_R2.SystemUtils.a(SourceFile:60) [minecraft_server.jar:git-Bukkit-0a645a2]
at net.minecraft.server.v1_8_R2.MinecraftServer.A(MinecraftServer.java:670) [minecraft_server.jar:git-Bukkit-0a645a2]
at net.minecraft.server.v1_8_R2.DedicatedServer.A(DedicatedServer.java:336) [minecraft_server.jar:git-Bukkit-0a645a2]
at net.minecraft.server.v1_8_R2.MinecraftServer.z(MinecraftServer.java:626) [minecraft_server.jar:git-Bukkit-0a645a2]
at net.minecraft.server.v1_8_R2.MinecraftServer.run(MinecraftServer.java:534) [minecraft_server.jar:git-Bukkit-0a645a2]
at java.lang.Thread.run(Thread.java:744) [?:1.7.0_51] Caused by: java.lang.NullPointerException at org.bukkit.craftbukkit.v1_8_R2.entity.CraftHumanEntity.openInventory(CraftHumanEntity.java:176) [minecraft_server.jar:git-Bukkit-0a645a2]
at me.mrCookieSlime.CSCoreLibPlugin.general.Inventory.ChestMenu.open(ChestMenu.java:133) [?:?] at me.mrCookieSlime.QuestWorld.quests.QuestBook.openCategoryEditor(QuestBook.java:741) [?:?] at me.mrCookieSlime.QuestWorld.quests.QuestBook$32.onClick(QuestBook.java:560) [?:?] at me.mrCookieSlime.CSCoreLibPlugin.events.Listeners.MenuClickListener.onClick(MenuClickListener.java:28) [?:?] at sun.reflect.GeneratedMethodAccessor269.invoke(Unknown Source) [?:?] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) [?:1.7.0_51] at java.lang.reflect.Method.invoke(Method.java:606) [?:1.7.0_51] at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:295) [minecraft_server.jar:git-Bukkit-0a645a2]
... 15 more
[17:38:43 ERROR]: Could not pass event InventoryClickEvent to CS-CoreLib v1.1.4
org.bukkit.event.EventException at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:297) [minecraft_server.jar:git-Bukkit-0a645a2]
at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:62) [minecraft_server.jar:git-Bukkit-0a645a2]
at org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.java:501) [minecraft_server.jar:git-Bukkit-0a645a2]
at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:486) [minecraft_server.jar:git-Bukkit-0a645a2]
at net.minecraft.server.v1_8_R2.PlayerConnection.a(PlayerConnection.java:1541) [minecraft_server.jar:git-Bukkit-0a645a2]
at net.minecraft.server.v1_8_R2.PacketPlayInWindowClick.a(SourceFile:31) [minecraft_server.jar:git-Bukkit-0a645a2]
at net.minecraft.server.v1_8_R2.PacketPlayInWindowClick.a(SourceFile:9) [minecraft_server.jar:git-Bukkit-0a645a2]
at net.minecraft.server.v1_8_R2.PlayerConnectionUtils$1.run(SourceFile:13) [minecraft_server.jar:git-Bukkit-0a645a2]
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471) [?:1.7.0_51] at java.util.concurrent.FutureTask.run(FutureTask.java:262) [?:1.7.0_51] at net.minecraft.server.v1_8_R2.SystemUtils.a(SourceFile:60) [minecraft_server.jar:git-Bukkit-0a645a2]
at net.minecraft.server.v1_8_R2.MinecraftServer.A(MinecraftServer.java:670) [minecraft_server.jar:git-Bukkit-0a645a2]
at net.minecraft.server.v1_8_R2.DedicatedServer.A(DedicatedServer.java:336) [minecraft_server.jar:git-Bukkit-0a645a2]
at net.minecraft.server.v1_8_R2.MinecraftServer.z(MinecraftServer.java:626) [minecraft_server.jar:git-Bukkit-0a645a2]
at net.minecraft.server.v1_8_R2.MinecraftServer.run(MinecraftServer.java:534) [minecraft_server.jar:git-Bukkit-0a645a2]
at java.lang.Thread.run(Thread.java:744) [?:1.7.0_51] Caused by: java.lang.NullPointerException at org.bukkit.craftbukkit.v1_8_R2.entity.CraftHumanEntity.openInventory(CraftHumanEntity.java:176) [minecraft_server.jar:git-Bukkit-0a645a2]
at me.mrCookieSlime.CSCoreLibPlugin.general.Inventory.ChestMenu.open(ChestMenu.java:133) [?:?] at me.mrCookieSlime.QuestWorld.quests.QuestBook.openCategoryEditor(QuestBook.java:741) [?:?] at me.mrCookieSlime.QuestWorld.quests.QuestBook$32.onClick(QuestBook.java:560) [?:?] at me.mrCookieSlime.CSCoreLibPlugin.events.Listeners.MenuClickListener.onClick(MenuClickListener.java:28) [?:?] at sun.reflect.GeneratedMethodAccessor269.invoke(Unknown Source) [?:?] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) [?:1.7.0_51] at java.lang.reflect.Method.invoke(Method.java:606) [?:1.7.0_51] at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:295) [minecraft_server.jar:git-Bukkit-0a645a2]
@woytaHR
Well, you should have gotten an Error in the Console though, post your full Server Log.
@TheBusyBiscuit
Definetly not. It only has 6 letters.
@woytaHR
You probably exceeded the max. Character Limit. Delete your Quest.
Hi, I found a bug/error. When I want to add a quest it adds the item normally but I can't edit it. When I left click It just picks up the book like an item from a chest. Any idea how to fix that?
you should add a Reward option to choose 1 reward out of the items you put in for rewards
@Defensor82
Now its Works ,thank you.
@TheBusyBiscuit No i have this not installed.
@Defensor82
Did you install CS-CoreLib...?
Greetings , i have put the jar. in the Plugin Folder but it creates no Folder for this Plugin. Maybe you can help me about this ? thanks.
@LK_WolfBoyDISASTERCRAFT_CO_OWNER
Currently: No. But in the next Update you could setup something similiar to this IF you either have Citizens installed or use a REACH_LOCATION Mission.
Can you add it where when they accept a Quest to do, they get teleported to a certain place so we can make an adventuring quest? Like: accepting this certain quest you get teleported to a dungeon which was the teleport point the quest has, and you have to complete the quests inside the dungeon?
This would be a GREAT help :)
@SkydeBoss
No.
@Nozomi111
There is something going on for Sounds, just wait.
And no the colors wont be configurable.
And again, Dialogues and Commands are already coming in the next Update...
And again, not a bug. Ghost Items. And you cannot disable shift clicking -_-
No compatibility with 1.6.4 version planned? =/