Drwei's PetManager
PluginMIT

Drwei's PetManager

A powerful and feature-rich pet management plugin for Paper Minecraft servers. This plugin allows players to bind mobs as pets with custom names, colors, behaviors, potion effects, attributes, team sharing, and advanced features.

10
Downloads
1
Followers
3 months ago
Updated
📦
1
Versions

📖About Drwei's PetManager

Drwei's PetManager

A powerful and feature-rich pet management plugin for Paper Minecraft servers. This plugin allows players to bind mobs as pets with custom names, colors, behaviors, potion effects, attributes, team sharing, and advanced features like TRUCK collision damage mode and RIDEABLE mode.

Features

Core Features

  • Pet Binding: Bind any living entity as your pet with custom name and color
  • Custom Names & Colors: Support for Minecraft color codes, color names, and hex colors
  • Behavior Modes: follow, stay, attack, guard, wander
  • Potion Effects: Apply custom potion effects to pets
  • Attribute Modification: Modify pet attributes like health, speed, damage, etc.
  • Pet Respawn: Respawn dead pets with all their data preserved
  • Team System: Share pets with team members

Advanced Features

  • TRUCK Mode: Collision damage system when riding pets
    • Normal mode: Damage based on speed (0-255)
    • SECKILL mode: Always 255 damage
  • RIDEABLE Mode: Ride any mob, including flying creatures
    • WASD controls for movement
    • Space to jump/fly up
    • Shift to exit
    • Flying creatures support vertical movement
  • Invincible Mode: Apply all positive potion effects and set max health to 2048
  • Auto-Save: Automatic data persistence every 5 minutes
  • Dynamic Configuration: Adjust settings without server restart
  • Multi-language Support: English and Chinese

Installation

  1. Download the latest version from the Releases page or this Modrinth page.
  2. Place the DrweiPetManager-<version>.jar file in your server's plugins folder
  3. Restart your server
  4. Configure the plugin in plugins/DrweiPetManager/config.yml

Requirements

  • Minecraft Version: 1.21.1
  • Server Type: Paper API 1.21.1 or higher
  • Java Version: 21

Commands

Player Commands

Command Description Permission
/pet Show help message petbinder.use
/pet bind <type> <distance> <name> [public] [color] Bind a mob as pet petbinder.bind
/pet list List your pets petbinder.list
/pet portal [index] Teleport pet to you petbinder.portal
/pet rename <index> <name> [color] Rename pet petbinder.rename
`/pet team <create join leave
`/pet behavior <follow stay attack
/pet effect <index> <effect|invincible> [duration] [amplifier] Apply potion effects petbinder.effect
/pet attribute <index> [attribute] [value] Modify pet attributes petbinder.attribute
/pet unbind [index] Release pet petbinder.unbind
/pet respawn Respawn dead pet petbinder.respawn
/pet version Show plugin version petbinder.use

Admin Commands

Command Description Permission
/pet op list List all pets on server petbinder.op
/pet op remove <player> Remove all pets from player petbinder.op
/pet op config <action> [args] Dynamic configuration petbinder.op
/pet op reload Reload configuration petbinder.op
/pet op save Save pet data manually petbinder.op
/pet op load Load pet data manually petbinder.op

Configuration

Basic Configuration

language: zh                    # Language: en or zh
max-bind-distance: 10          # Maximum binding distance in blocks
teleport-with-owner: true      # Pets teleport with owner
protect-from-all-damage: false # Protect pets from all damage
remove-on-quit: false          # Remove pets when owner quits

Permissions & Limits

permissions:
  max-pets-per-player: 0       # 0 = unlimited
  allowed-commands:
    bind: true
    list: true
    portal: true
    rename: true
    team: true
    behavior: true
    effect: true
    attribute: true
    unbind: true
    respawn: true
  allowed-features:
    truck: true
    rideable: true
    invincible: true
    seckill: true
    public-pets: true
    team-system: true
  blocked-entity-types: []     # Entities that cannot be bound
  max-truck-damage: 0          # 0 = unlimited

Usage Examples

Binding a Pet

/pet bind nearest 10 MyPet public &a

This binds the nearest mob within 10 blocks as a pet named "MyPet" with green color.

Setting Pet Behavior

/pet behavior 1 follow

This sets pet #1 to follow mode.

Making Pet Invincible

/pet effect 1 invincible

This applies all positive potion effects to pet #1.

Enabling TRUCK Mode

/pet attribute 1 truck 0.5 false

This enables TRUCK mode for pet #1 with minimum speed 0.5 blocks/sec.

Enabling SECKILL Mode

/pet attribute 1 truck 0.5 true

This enables SECKILL mode (always 255 damage) for pet #1.

Making Pet Rideable

/pet attribute 1 rideable

This enables rideable mode for pet #1.

Creating a Team

/pet team create MyTeam

This creates a new team named "MyTeam".

Adding Pet to Team

/pet team addpet MyTeam 1

This adds pet #1 to the team "MyTeam".

Data Persistence

The plugin uses dual storage mechanism:

  1. NBT Persistence: Real-time storage in entity NBT data
  2. File Persistence: YAML file storage at plugins/DrweiPetManager/pets.yml

Auto-save runs every 5 minutes. You can also manually save/load using admin commands.

Building from Source

Prerequisites

  • Java 21
  • Maven 3.6+

Build Commands

# Clone the repository
git clone https://github.com/herbrine8403/DrweiPetManager.git
cd DrweiPetManager

# Build the plugin
mvn clean package

# The JAR file will be in target/DrweiPetManager-Beta0.1.0.jar

Permissions

All permissions use the prefix petbinder.:

  • petbinder.use - Basic usage permission
  • petbinder.bind - Bind pets
  • petbinder.list - List pets
  • petbinder.portal - Teleport pets
  • petbinder.rename - Rename pets
  • petbinder.team - Manage teams
  • petbinder.respawn - Respawn pets
  • petbinder.behavior - Set pet behavior
  • petbinder.effect - Add potion effects
  • petbinder.attribute - Modify attributes
  • petbinder.unbind - Release pets
  • petbinder.op - Admin commands (default: OP only)

Support

License

This project is licensed under the MIT License - see the LICENSE file for details.

Credits

Changelog

Beta0.1.0

  • Initial beta release
  • Core pet binding and management features
  • Team system
  • TRUCK mode with SECKILL support
  • RIDEABLE mode
  • Auto-save mechanism
  • Dynamic configuration
  • Multi-language support (English/Chinese)