Doctor is a feature-rich, medical-themed Minecraft plugin that adds a Doctor role, injury system, team mechanics, emergency events, and interactive GUIs to enhance survival gameplay. Built with industrial-grade code, it offers modularity, scalability, and a polished user experience.
- Doctor Role: Register as a Doctor with
/doctor register
(requiresdoctor.use
permission). - Injury System: Random injuries (Broken Leg, Infection, Bleeding) on damage, managed centrally with configurable durations and effects.
- Healing Mechanics: Use craftable items (Bandage, Antidote, Suture Kit, Splint) to heal or cure, with dynamic cooldowns influenced by team buffs.
- Crafting Recipes: Configurable recipes for all medical items (e.g., Stethoscope from Iron Ingots + Glass Pane).
- Team System: Join/lead teams, share XP, toggle team chat, and manage members via GUI or commands.
- Emergency Events: Periodic server-wide events (Plague, Mass Bleeding, Mass Fracture) with configurable chances and durations.
- GUIs: Intuitive interfaces for Medical Kit, Team Management, and Leaderboard with pagination and interactivity.
- XP Progression: Level up (max 5) by healing, with team XP pools and buffs.
- Leaderboard: Track top teams by XP pool and member XP, available as text or GUI.
- Persistence: All data (Doctors, teams, XP) saved in
doctors.yml
.
-
Prerequisites:
- Minecraft server running Spigot 1.20.4.
- Java 17 or higher.
-
Download:
- Grab the latest
Doctor.jar
from the Releases page.
- Grab the latest
-
Setup:
- Place
Doctor.jar
in your server’splugins
folder. - Start the server to generate
config.yml
anddoctors.yml
.
- Place
-
Build from Source (optional):
git clone https://github.com/4K1D3V/doctor-plugin.git cd doctor-plugin mvn clean package
- Copy
target/Doctor-1.0.jar
toplugins
.
- Copy
-
Dependencies:
- Add Spigot 1.20.4 to your
pom.xml
:<dependency> <groupId>org.spigotmc</groupId> <artifactId>spigot</artifactId> <version>1.20.4-R0.1-SNAPSHOT</version> <scope>provided</scope> </dependency>
- Add Spigot 1.20.4 to your
/doctor register
: Become a Doctor (requiresdoctor.use
)./doctor diagnose <player>
: Check a player’s health and injuries (needs Stethoscope)./doctor heal <player>
: Heal or cure a nearby player with an item./doctor stats
: View your Doctor level and XP./doctor kit
: Open the Medical Kit GUI./doctor team [join <name>|leave|gui|kick <player>|distribute]
: Manage teams./doctor leaderboard [gui <page>]
: Display team leaderboard (text or GUI).
- Suggests subcommands, player names, team members, and leaderboard pages dynamically.
doctor.use
: Grants access to all commands (default: op).
- Medical Kit: Click items to heal nearby players with sound effects.
- Team GUI: View/manage team members, distribute XP pool, toggle team chat.
- Leaderboard GUI: Paginated list of teams; click for detailed stats.
Edit config.yml
in the plugins/Doctor
folder:
- Doctor Settings: XP per heal, max level, cooldowns, team buffs.
- Injury Settings: Chance, tick rate, durations, damage.
- Emergency Settings: Interval, event chances (sum to 1.0).
- Items: Materials, names, lore, and crafting recipes.
Example tweak:
doctor:
team-xp-buff-multiplier: 0.0001 # Slower cooldown reduction
emergency:
interval-minutes: 15 # More frequent events
mvn clean package
- Package:
pro.akii.ks
- Main:
DoctorPlugin.java
- Managers:
DoctorManager
,InjuryManager
,EmergencyManager
- Utils:
NMSUtil
,ConfigUtil
- Data:
DoctorData
- GUI:
MedicalKitGUI
,TeamGUI
,LeaderboardGUI
- Commands:
DoctorCommand
- Listeners:
DoctorListener
- Uses
v1_20_R3
for health, particles, and attribute manipulation.
- Fork the repository.
- Create a feature branch (
git checkout -b feature/new-feature
). - Commit changes (
git commit -m "Add new feature"
). - Push to your fork (
git push origin feature/new-feature
). - Open a Pull Request.
- Follow Java naming conventions.
- Add comments for complex logic.
- Test thoroughly before submitting.
Licensed under the MIT License. Feel free to use, modify, and distribute!
Report bugs or suggest features on the Issues page.
Developed by Kit. Inspired by medical-themed gameplay enhancements.