TotemDisabler
PluginMIT

TotemDisabler

Disables totem in your server now evoker won't drop totems........

80
Downloads
0
Followers
3 months ago
Updated
📦
1
Versions

📖About TotemDisabler

** TotemDisabler Plugin


📋 Overview

TotemDisabler is a lightweight, high-performance Minecraft Paper/Spigot plugin that completely removes Totems of Undying from your server. It ensures totems cannot be obtained, used, or possessed by any player, making death a permanent consequence and adding a hardcore survival element to your gameplay.


📝 Description

Totems of Undying are powerful items in Minecraft that prevent player death. While they add excitement to vanilla gameplay, many server owners want to:

  • Create a more challenging survival experience
  • Prevent unfair advantages in PvP combat
  • Implement hardcore-style gameplay without using hardcore mode
  • Balance economy servers where totems break progression

TotemDisabler solves this by completely eliminating totems from every possible source. The plugin uses a purely event-driven architecture with zero scheduled tasks, ensuring minimal server impact.


✨ Features

Feature Description
🚫 Evoker Drop Prevention Evokers no longer drop Totems of Undying when killed
🌍 World Spawn Blocking Totems cannot spawn as items anywhere in the world
🎒 Join Inventory Scan Removes totems from players when they log in
⚙️ Simple Configuration Single toggle in config.yml to enable/disable
🔧 In-Game Toggle Command Admins can toggle settings without editing files
🔒 Permission-Based Access Secure admin-only command access
Zero Lag Design Pure event-driven, no schedulers or loops
📦 Lightweight Minimal resource usage and small file size

🎮 Use Cases

  1. Hardcore Survival Servers
    Make death meaningful again. Without totems, players must be more careful and strategic in dangerous situations.

  2. PvP Servers
    Level the playing field in combat. No more totem-popping advantages during fights. Skill determines the winner.

  3. Economy Servers
    Prevent totem hoarding and trading that could unbalance your server economy.

  4. Challenge Servers
    Create unique challenges where players cannot rely on totems as a safety net.

  5. Roleplay Servers
    Maintain immersion by removing "magical resurrection" items from your world's lore.

  6. Anarchy Servers (Modified)
    Add extra risk to gameplay even on servers with minimal rules.

  7. Event Servers
    Run special events or competitions where death is final.


🛡️ How It Works

┌─────────────────────────────────────────────────────────────┐
│                    TOTEM BLOCKING SYSTEM                    │
├─────────────────────────────────────────────────────────────┤
│                                                             │
│  ┌─────────────┐    EntityDeathEvent    ┌──────────────┐   │
│  │   Evoker    │ ──────────────────────▶│ Drop Removed │   │
│  │   Dies      │                        │ from List    │   │
│  └─────────────┘                        └──────────────┘   │
│                                                             │
│  ┌─────────────┐    ItemSpawnEvent      ┌──────────────┐   │
│  │ Totem Item  │ ──────────────────────▶│   Event      │   │
│  │   Spawns    │                        │  Cancelled   │   │
│  └─────────────┘                        └──────────────┘   │
│                                                             │
│  ┌─────────────┐    PlayerJoinEvent     ┌──────────────┐   │
│  │   Player    │ ──────────────────────▶│   Totems     │   │
│  │   Joins     │                        │   Removed    │   │
│  └─────────────┘                        └──────────────┘   │
│                                                             │
└─────────────────────────────────────────────────────────────┘

📜 Commands

Command Description Permission
/totemtoggle Toggles totem disabling on/off totemdisabler.admin

Command Output Example:

================================
TotemDisabler config updated!
totems-disabled: true → false

Totems will be ENABLED after restart (vanilla behavior).

⚠ Changes will take effect after the server restarts.
================================

🔐 Permissions

Permission Description Default
totemdisabler.admin Access to /totemtoggle command OP

⚙️ Configuration

config.yml


       TotemDisabler Config        


 When set to true, Totems of Undying are completely disabled.
 - Evokers will not drop totems
 - Totems cannot spawn as items in the world
 - Totems are removed from player inventories on join

 When set to false, vanilla behavior is restored.
 NOTE: Changes require a server restart to take effect.

totems-disabled: true
Option Type Default Description
totems-disabled Boolean true Enable/disable totem blocking

📊 Performance

Metric Value
Scheduled Tasks 0
Tick Listeners 0
Event Listeners 3 (only when enabled)
Memory Footprint Minimal
CPU Usage Negligible

Optimization Techniques Used:

  • ✅ Early return checks for non-relevant entities
  • ✅ Event priority set to HIGHEST for reliability
  • ✅ ignoreCancelled flag to respect other plugins
  • ✅ Conditional listener registration (disabled = no listeners)
  • ✅ No persistent data storage required
  • ✅ No database connections

📦 Installation

  1. Download TotemDisabler-1.0.0.jar
  2. Place in your server's plugins/ folder
  3. Restart the server
  4. (Optional) Edit plugins/TotemDisabler/config.yml
  5. Restart again if you made changes

🔧 Technical Specifications

Specification Value
Plugin Name TotemDisabler
Version 1.0.0
API Version 1.21
Java Version 21+
Server Software Paper / Spigot
Minecraft Versions 1.21.1 - 1.21.x
Dependencies None
Soft Dependencies None

🧪 Testing Checklist

Test Expected Result
Kill an Evoker No totem drops
/give @p totem_of_undying then relog Totem removed from inventory
Drop totem on ground Item disappears instantly
Hold totem in off-hand and relog Totem removed
Use /totemtoggle Config flips, message shown
Set totems-disabled: false and restart Vanilla behavior restored

❓ FAQ

Q: Will this affect existing totems in chests?
A: No. The plugin only removes totems from player inventories on join and prevents new totems from spawning. Totems in chests remain until a player picks them up and relogs.

Q: Can players still use /give for totems?
A: Yes, but the totem will be removed when they relog. For complete prevention, use permission plugins to block the give command for totems.

Q: Does this work with Folia?
A: This plugin is designed for Paper/Spigot. Folia compatibility is not guaranteed.

Q: Why require a restart for toggle changes?
A: Listeners are registered once at startup. Dynamic registration/unregistration could cause issues with other plugins and event handling.

Q: Does this affect Totem sound/particles?
A: No. Since totems are completely removed, the totem resurrection effect never triggers.


📄 Changelog

Version 1.0.0

  • Initial release
  • Evoker drop prevention
  • Item spawn blocking
  • Player join inventory scan
  • Toggle command
  • Configuration support

Built For: Minecraft Paper/Spigot 1.21.x


Enjoy a totem-free Minecraft experience! 🎮⚔️**