- Compatible API Versions
- 1.0
- Sourcecode
- https://github.com/digitalwm/killquest
- Contributors
- digitalwm
KillQuest - A Nukkit Quest System v1.0.3
KillQuest is a feature-rich quest system and jumping puzzle generator for Nukkit servers, allowing players to complete kill and gather quests for rewards, and challenge themselves with procedurally generated jumping puzzles. It includes multilingual support, scoreboard tracking, and EconomyAPI integration.
Installation
1. Download the Plugin
- Compile the plugin using Maven
- Find the generated .jar file in the target directory.
- Move the .jar file to your plugins/ folder.
2. Restart Your Nukkit Server
- Run:
- Check logs to confirm the plugin is loaded successfully.
Features
Quest System: Kill entities, gather items or travel distances to complete quests.
Dynamic Quest Selection: Players can select quests using a UI ([code single]/quests[/code]).
Scoreboard Tracking: Displays active quest progress in the top-right.
Auto-Saving: Quest progress is saved to files per player.
EconomyAPI Integration: Players earn credits upon completion.
Multilingual Support: Uses Minecraftโs translations for entity/item names.
Jumping Puzzles: Procedurally generate jumping puzzles with varying heights and difficulties.
Puzzle Persistence: Puzzles are saved and can be reloaded after server restarts.
Player Movement Tracking: Detect when players start and complete puzzles.
Block Restrictions: Prevent players from modifying puzzle areas.
Puzzle Management Commands: Create, list, and remove puzzles dynamically.
Puzzle Regen Logic: Regenerate the given puzzle, when the user completes it or using reset block.
Server Events: The plugin sends events when changes are on Quests and Jumping Puzzles.
How to Use
Viewing Available Quests
- Run the command:
- A selection window appears, showing 5 random quests (rotating every 5 minutes).
- If you have an active quest, it remains selected while 4 others change.
Completing a Quest
- Track progress via the scoreboard (updates live).
- Fulfill the quest objectives:
- Kill Targets: Kill the required entities.
- Gather Items: Pick up or collect required materials.
- Once completed:
- Reward is granted
- Quest progress resets
- Scoreboard updates
How the Jump Puzzle Works
Configuration
quests.yml
Quests are defined in plugins/KillQuestPlugin/quests.yml:
- Kill Targets: Define entities to kill.
- Gather Items: Define items to collect.
- Distance Traveled: Define distance to travel (in range, height or depth).
- Reward: Credits given via EconomyAPI.
translations.yml
Custom language translations can be configured in:
- Supports multiple Minecraft locales.
- Used in the scoreboard UI.
Admin Commands
Debugging & Logs
- Events support:
It provides support of events triggering in context of quests and jumping puzzles. Please check the GitHub link for a readme on this.
- Startup Log:
Future Improvements
-
More Quest Types: Crafting, Shooting
-
More Customization Options
-
SQL Database support
Want to contribute? Fork the project and submit a pull request! 
License
KillQuest is an open-source Nukkit plugin, developed by digitalwm.
Feel free to modify and distribute it!

Enjoy Your Nukkit Quest System!
KillQuest is a feature-rich quest system and jumping puzzle generator for Nukkit servers, allowing players to complete kill and gather quests for rewards, and challenge themselves with procedurally generated jumping puzzles. It includes multilingual support, scoreboard tracking, and EconomyAPI integration.

1. Download the Plugin
- Compile the plugin using Maven
Code:
mvn clean package
- Move the .jar file to your plugins/ folder.
2. Restart Your Nukkit Server
- Run:
Bash:
java -jar nukkit.jar















Viewing Available Quests
- Run the command:
Code:
/quests
- If you have an active quest, it remains selected while 4 others change.
Completing a Quest
- Track progress via the scoreboard (updates live).
- Fulfill the quest objectives:
- Kill Targets: Kill the required entities.
- Gather Items: Pick up or collect required materials.
- Once completed:
- Reward is granted
- Quest progress resets
- Scoreboard updates
How the Jump Puzzle Works
- A player generates a puzzle using `/jumpgen`.
- The puzzle is enclosed with walls and a light-emitting base.
- Players must jump across blocks that are generated to be challenging but solvable.
- A tracking system monitors when a player starts and completes the puzzle.
- Upon completion, the player receives 100 credits via EconomyAPI.
- Once completed, the user is teleported to the center and the puzzle regenerates
- If puzzle is imposible, use the green block to regenerate it. Stay on it more than 5 seconds

quests.yml
Quests are defined in plugins/KillQuestPlugin/quests.yml:
Code:
quests:
- name: "Zombie Slayer"
description: "Kill 10 Zombies"
killTargets:
zombie: 10
gatherItems: {}
reward: 100
- name: "Resource Collector"
description: "Gather 20 Diamonds and 50 Iron Ore"
killTargets: {} # No kills required
gatherItems:
diamond: 20
iron_ore: 50
reward: 200
- name: "Long Journey"
description: "Travel over 500 blocks from your starting position"
distance: 500
reward: 50
- name: "High Climb"
description: "Climb 200 blocks in height"
height: 200
reward: 30
- name: "Deep Dive"
description: "Descend 100 blocks in depth"
depth: 100
reward: 40
- Gather Items: Define items to collect.
- Distance Traveled: Define distance to travel (in range, height or depth).
- Reward: Credits given via EconomyAPI.
translations.yml
Custom language translations can be configured in:
Code:
translations:
en_US:
entity.minecraft.zombie: "Zombie"
item.minecraft.diamond: "Diamond"
de_DE:
entity.minecraft.zombie: "Zombie"
item.minecraft.diamond: "Diamant"
- Used in the scoreboard UI.

Command | Description |
---|---|
/quests | Opens the quest selection UI |
/killquest reload | Reloads quests and translations |
/jumpgen <name> <length> <width> <height> | Generates a jumping puzzle with a unique name. |
/clearpuzzle <name> | Clears a specific puzzle. |
/listpuzzles | Lists all active puzzles. |
/jumpconfig <name> <resetOnCompletion> <greenBlockResetTimeout> | Adjust values of generated jumping puzzle |
/questsstatus | Opens the active quest status UI |

- Events support:
It provides support of events triggering in context of quests and jumping puzzles. Please check the GitHub link for a readme on this.
- Startup Log:
Code:
[INFO ] [KillQuestPlugin]
[INFO ] [KillQuestPlugin] โโโ โโโโโโโโโ โโโ โโโโโโโ โโโ โโโโโโโโโโโโโโโโโโโโโโโโโโโโ
[INFO ] [KillQuestPlugin] โโโ โโโโโโโโโโ โโโ โโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโโโโโโโโโโ
[INFO ] [KillQuestPlugin] โโโโโโโ โโโโโโ โโโ โโโ โโโโโโ โโโโโโโโโ โโโโโโโโ โโโ
[INFO ] [KillQuestPlugin] โโโโโโโ โโโโโโ โโโ โโโโโ โโโโโโ โโโโโโโโโ โโโโโโโโ โโโ
[INFO ] [KillQuestPlugin] โโโ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โโโ
[INFO ] [KillQuestPlugin] โโโ โโโโโโโโโโโโโโโโโโโโโโ โโโโโโโ โโโโโโโ โโโโโโโโโโโโโโโโ โโโ
[INFO ] [KillQuestPlugin]
[INFO ] [KillQuestPlugin] Version: 1.0.3
[INFO ] [KillQuestPlugin] Developed by digitalwm
[INFO ] [KillQuestPlugin]
[INFO ] [KillQuestPlugin] Loaded language: en_US with 41 keys.
[INFO ] [KillQuestPlugin] Loaded language: de_DE with 41 keys.
[INFO ] [KillQuestPlugin] Total languages loaded: 2
[INFO ] [KillQuestPlugin] Total translation keys loaded: 82
[INFO ] [KillQuestPlugin] KillQuestPlugin enabled with 23 available quests.
[INFO ] [KillQuestPlugin] EconomyAPI found. Rewards enabled.
[INFO ] [KillQuestPlugin] Loading saved puzzles...
[INFO ] [KillQuestPlugin] Loaded puzzle: test

-

-

-




KillQuest is an open-source Nukkit plugin, developed by digitalwm.
Feel free to modify and distribute it!



