AlessioGr / NotQuests

Flexible, open & solid paper Quest Plugin [with GUI]

Home Page:https://www.notquests.com/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

NotQuests

Download: https://modrinth.com/plugin/notquests/versions

GitHub issues GitHub stars GitHub license javadocs CodeFactor Crowdin

Banner

NotQuests is a flexible, Minecraft 1.17-1.20 Quest plugin, featuring a complete GUI for player interactions, open & trusted source code and flexibility.

I created NotQuests for my own server, mc.notnot.pro and planned to keep it private. However, I don't have enough time to maintain it myself, so I just made it public.

You can find the releases here: https://github.com/AlessioGr/NotQuests/releases. A MySQL database connection is recommended and can be specified in the general.yml. Otherwise, SQLite will be used.

Translations

Do not commit your translations on GitHub. Instead, use translate.notquests.com. Translations are always welcome :) Check https://translate.notquests.com/notquests#readme before translating.

How to build

Git clone this project and build it with these Gradle commands: clean build reobfJar

The output file should be in the folder plugin/build/libs/plugin-version.jar

Banner_Images

The images are all OLD and need to be updated:

Quest Giver NPC:

image

What happens when you right click it:

image

Quest Accepting GUI:

image

Quest User GUI:

image

Preview Quests GUI:

image

Admin Commands (for quest creation):

image

Admin Commands - Quest Editing:

image

Banner_Features

  • Proxy support (like Velocity, Waterfall & BungeeCord)
  • Conversation system (Beta)
  • Great API
  • MythicMobs integration
  • EliteMobs integration
  • Quests can be bound to Citizens NPCs
  • Quests can also be bound to Armor Stands ⇒ 10000x better performance because Citizens is a laggy plugin. Especially if your armor stands are optimized in your paper configuration.
  • Complete GUI for the user interface
  • Player data is saved in MySQL, quest configuration data in a configuration file
  • Quest Points
  • Smart Command Tab Completions for all User and Admin commands
  • Smart translation system
  • Re-usable Actions for Triggers
  • Multiple Quest Objectives:
    • Break Blocks
    • Place Blocks
    • Collect Items
    • Consume Items
    • Craft Items
    • Deliver Items to NPC
    • Escort NPC
    • Kill Mobs
    • Breed Mobs
    • Complete Other Quest
    • Talk to NPC
    • Command Triggers (to finish the objective)
    • KillEliteMobs (if you're using EliteMobs)
    • ReachLocation (WorldEdit required for objective creation)
    • SlimefunResearch (requires Slimefun)
    • UltimateClansClanLevel (requires UltimateClans)
    • Run Command
    • Interact (right- or left-click block (or both))
    • Jump
  • Multiple Quest Accept Requirements:
    • Money
    • Other Quest
    • Permission
    • Quest Points
    • World Time
  • Multiple Quest Completion Rewards:
    • Command
    • Quest Points
    • Item
    • Money
    • Permission (Requires LuckPerms)
  • Multiple Triggers: (Triggers run console commands (= Actions) when activated. Triggers are set per-quest)
    • Begin Quest or Objective
    • Complete Quest or Objective
    • Death
    • Disconnect
    • Fail Quest
    • NPC dies (good for Escort NPC Quests)
    • Enter World
    • Leave World
  • There's a lot more, I'll add that later. Triggers are extremely flexible by the way. Each trigger has an option to trigger only for certain objectives if they are active, quests, or worlds.

Requirements to run this:

  • Paper 1.17.1 - 1.20
  • Java 17

Optional:

  • Citizens (Needed for Citizens NPC stuff to work. You can also use Armor Stands without Citizens, though)
  • Vault
  • MySQL Database (strongly recommended)
  • PlaceholderAPI

Banner_Placeholders

Player Placeholders:

%notquests_player_has_completed_quest_QUESTNAME% %notquests_player_has_current_active_quest_QUESTNAME% %notquests_player_is_objective_unlocked_and_active_OBJECTIVEID_from_active_quest_QUESTNAME% %notquests_player_is_objective_unlocked_OBJECTIVEID_from_active_quest_QUESTNAME% %notquests_player_is_objective_completed_OBJECTIVEID_from_active_quest_QUESTNAME% %notquests_player_questpoints% %notquests_player_active_quests_list_horizontal% %notquests_player_active_quests_list_vertical% %notquests_player_expression_EXPRESSION% %notquests_player_rounded_expression_EXPRESSION%

Banner_Future_Plans

  • Complete GUI for Admin Commands
  • Quest Timer Trigger
  • "Interactions" Plugin Integration (works with Triggers already)
  • Placeholder Requirements

These future plans might me inaccurate. You can find my full to-do list on my discord.

I'm not a professional programmer and made this just for fun. You won't find many comments either - I will add them gradually.

About

Flexible, open & solid paper Quest Plugin [with GUI]

https://www.notquests.com/

License:GNU General Public License v3.0


Languages

Language:Java 99.1%Language:Kotlin 0.9%