Yeth’s TPA
**Yeth’s TPA is a Teletransportation Accept mod for Minecraft designed to be compatible, stable, and sufficient.**
## Commands
– **/tpa ** Sends a TPA request to a user
– **/tpa accept ** Accepts a TPA request from a user
– **/tpa here** Sends a TPA Here request to a user
– **/tpa cancel** Cancels an outgoing TPA request
– **/tpa ignore ** Ignores a player from making TPA requests
– **/tpa help** Sends a list of all commands
– **/tpa disable** Disables TPA requests from being sent to you
– **/tpa enable** Enables TPA requests to be sent to you
– **/tpa setting ** Configures settings in TPA
## Features
– Automatic expiry of TPA requests
– TP delay w/ countdown
– Multiple request handling
– Permissions for server owners
– Anti-TPA-traps
## Support
Yeth’s TPA supports the following mod loaders:
– Fabric
– Neoforge
– Forge
– Quilt
– Legacy Fabric
– Babric
– Ornithe
– BTA
– LiteLoader
For Minecraft versions 1.7.2 – 26.1.2
Yadokari Hooks

Yadokari Hooks is a Sponge plugin that allows you to send Minecraft in-game events as webhooks to a specified URL.
## Use for Discord
1. **Obtain a Discord Webhook URL:**
– In your Discord server, go to the channel settings.
– Navigate to **Integrations** > **Webhooks** and create a new webhook.
– Copy the webhook URL.
2. **Configure yadokari-hooks:**
– Open your configuration file (e.g., `config.conf`).
– Add or update a webhook entry with the copied URL and set the format to `discord`.
“`hocon
hooks = [
{
url = “YOUR_DISCORD_WEBHOOK_URL”
format = “discord”
}
]
“`
XD’s Library
### XD’s Library
#### XDPXI’s library for numerous tasks.
—
### Features
> Please view the [Documentation](https://xdlib.xdpxi.dev/) for the correct features for your version
—
### Building from Source
#### To build the mod from source follow the steps below:
– Clone the [Git repository](https://github.com/XDPXI/XDLib)
– Run `gradlew build` or `build.ps1` in your terminal in the cloned repository
#### The compiled mod will be in `build/libs`
WorkstationCommands
# WorkstationCommands
This is my first published minecraft plugin!
With this plugin, you can allow players to open menus for any workstation from anywhere.
You can enable/disable commands in the config, as well as manage the aliases of each command.
Use `/wcreload` to reload the config without restarting.
[](https://modrinth.com/plugin/workstationcommands)
## SPONGE ISSUES
The current version of the Sponge API does not allow for dynamic unregistration and registration of commands. This means that /wcreload IS NOT A PART OF THE SPONGE IMPLEMENTATION!!!
## Configuration
Configuration for this plugin is very simple!
Commands default to being disabled if their config is not found, so you can remove a command from the config to disable it, or set the “enabled” flag to false.
You can also define a list of aliases for the command. If this list is not found, it doesn’t create any.
To enable only the crafting table, your config may look like this:
“`yml
wccraft:
enabled: true
“`
That’s it, just two lines.
Now let’s say you dont want to run `/wccraft`, and you want a different command to open the gui.
This is where the aliases config comes into play. Let’s add `/craft` as an alias to `/wccraft` (This is in the default config)
“`yml
wccraft:
enabled: true
aliases:
– craft
“`
Note that you don’t need to include the forward slash when registering the alias.
## Commands
– `/wcreload`: Reloads the configuration file.
– `/wccraft [target]`: Opens the crafting table GUI for the executor or the specified target.
– `/wcstonecutter [target]`: Opens the stonecutter GUI for the executor or the specified target.
– `/wcloom [target]`: Opens the loom GUI for the executor or the specified target.
– `/wccartography [target]`: Opens the cartography table GUI for the executor or the specified target.
– `/wcfurnace [target]`: Opens the furnace GUI for the executor or the specified target.
– `/wcblastfurnace [target]`: Opens the blast furnace GUI for the executor or the specified target.
– `/wcsmoker [target]`: Opens the smoker GUI for the executor or the specified target.
– `/wcsmithing [target]`: Opens the smithing table GUI for the executor or the specified target.
– `/wcanvil [target]`: Opens the anvil GUI for the executor or the specified target.
– `/wcenchant [target]`: Opens the enchanting table GUI for the executor or the specified target.
– `/wcgrindstone [target]`: Opens the grindstone GUI for the executor or the specified target.
– `/wcbrew [target]`: Opens the brewing stand GUI for the executor or the specified target.
## Player Permissions
**Permissions given to every player**
– `wc.craft`: Allows the player to use `/wccraft`.
– `wc.stonecutter`: Allows the player to use `/wcstonecutter`.
– `wc.loom`: Allows the player to use `/wcloom`.
– `wc.cartography`: Allows the player to use `/wccartography`.
– `wc.furnace`: Allows the player to use `/wcfurnace`.
– `wc.blastfurnace`: Allows the player to use `/wcblastfurnace`.
– `wc.smoker`: Allows the player to use `/wcsmoker`.
– `wc.smithing`: Allows the player to use `/wcsmithing`.
– `wc.anvil`: Allows the player to use `/wcanvil`.
– `wc.enchant`: Allows the player to use `/wcenchant`.
– `wc.grindstone`: Allows the player to use `/wcgrindstone`.
– `wc.brew`: Allows the player to use `/wcbrew`.
## Operator Permissions
**Permissions given to every operator**
– `wc.reload`: Allows players to use `/wcreload`.
– `wc.craft.other`: Allows the player to use `/craft [target]`.
– `wc.stonecutter.other`: Allows the player to use `/stonecutter [target]`.
– `wc.loom.other`: Allows the player to use `/loom [target]`.
– `wc.cartography.other`: Allows the player to use `/cartography [target]`.
– `wc.furnace.other`: Allows the player to use `/furnace [target]`.
– `wc.blastfurnace.other`: Allows the player to use `/blastfurnace [target]`.
– `wc.smoker.other`: Allows the player to use `/smoker [target]`.
– `wc.smithing.other`: Allows the player to use `/smithing [target]`.
– `wc.anvil.other`: Allows the player to use `/anvil [target]`.
– `wc.enchant.other`: Allows the player to use `/enchant [target]`.
– `wc.grindstone.other`: Allows the player to use `/grindstone [target]`.
– `wc.brew.other`: Allows the player to use `/brew [target]`.
VoxasVoice
**VoxasVoice brings real proximity voice chat to Minecraft. 🎙️**
Talk to players around you with spatial audio that actually makes sense — the closer someone is, the louder they sound. Walk away and their voice naturally fades. It feels exactly how you’d expect voice chat in Minecraft to work.
**🗣️ Proximity Voice Chat**
Speak and be heard by nearby players. Voice volume scales with distance automatically — no setup needed, it just works.
**👥 Private Voice Groups**
Want to talk with your team across the map? Create a private voice group and invite your friends. Groups support password protection so strangers can’t join. Distance doesn’t matter inside a group.
**🔇 Player Controls**
See who’s talking nearby and take control. Mute specific players, adjust individual volumes, and manage your experience without leaving the game.
**🎛️ Advanced Audio Settings**
Fine-tune your microphone and speaker settings, enable noise reduction, and monitor your voice levels with a built-in voice meter.
**🔒 Encrypted & Secure**
All voice traffic is encrypted end-to-end. Your conversations stay private.VoxasVoice requires the Fabric mod on the client and the plugin-bridge on the server. Both are included in this release.
Ready to make your Minecraft world actually feel alive? Give it a try. 🌍
VoxaAegis
# VoxaAegis
VoxaAegis is a layered anti-bot protection system for Minecraft server networks.
It is built to reduce the impact of join floods, coordinated bot waves, repeated retry swarms, suspicious registration behavior, and abnormal post-join bot sessions through explainable server-side mitigation.
VoxaAegis does not try to be a DDoS firewall. It is a plugin-layer defense system for Minecraft traffic that helps operators detect, slow down, isolate, challenge, and block bot-like clients before they can damage the player experience.
## What It Does
VoxaAegis combines multiple protection layers instead of relying on one simple rate limit.
Main features:
– Join flood and burst-rate limiting
– Coordinated username, timing, IP, and subnet wave detection
– Risk scoring for suspicious usernames, fresh addresses, retry swarms, churn, and offender memory
– Quarantine flow for suspicious joins
– Fake entry gate / screening room for players under review
– Adaptive anti-bot challenges
– HumanityGate post-join verification
– Post-join liveness checks for physics-void and look-only sessions
– Client brand, locale, ping, movement, and interaction signal checks
– Repeated `/register` secret wave detection without storing plaintext passwords
– Persistent cooldown ledger for restart-safe mitigation memory
– Runtime bypass and temporary trust controls
– Operator-facing status, stats, diagnostics, event journal, and support dumps
## Commands
– `/voxaaegis help` — show command list
– `/voxaaegis status` — live protection overview
– `/voxaaegis stats` — mitigation and screening statistics
– `/voxaaegis profile` — current attack profile
– `/voxaaegis attacklog [limit]` — recent attack summaries
– `/voxaaegis events [limit]` — recent event journal
– `/voxaaegis dump` — write a support dump
– `/voxaaegis inspect ` — inspect a live player
– `/voxaaegis analyze [ip]` — preview join scoring
– `/voxaaegis doctor` — topology and runtime checks
– `/voxaaegis cache status` — cache and housekeeping state
– `/voxaaegis cache purge` — force cleanup
– `/voxaaegis release ` — release a quarantined player
– `/voxaaegis bypass add ` — add a runtime username bypass
– `/voxaaegis bypass add-ip ` — add a runtime IP bypass
– `/voxaaegis bypass remove ` — remove a runtime username bypass
– `/voxaaegis bypass remove-ip ` — remove a runtime IP bypass
– `/voxaaegis bypass list` — list runtime username bypasses
– `/voxaaegis bypass list-ip` — list runtime IP bypasses
– `/voxaaegis trust add ` — temporarily trust an address
– `/voxaaegis trust remove ` — remove temporary trust
– `/voxaaegis trust list` — list trusted addresses
– `/voxaaegis reload` — soft reload
– `/voxaaegis hard-reload` — full runtime rebuild reload
## Why Use It
VoxaAegis is designed for server owners who want practical anti-bot protection without losing visibility.
The plugin focuses on:
– layered mitigation instead of one brittle hard block
– readable operator diagnostics
– clear attack summaries
– configurable quarantine and challenge behavior
– safer handling of suspicious players before they reach the real server
– compatibility with authentication plugins through allowed auth commands
– actionable status output for tuning during attacks
## Supported Platforms
Primary backend line:
– Paper
– Purpur
– Pufferfish
– Spigot best-effort
Proxy / network line:
– Velocity
– BungeeCord / Waterfall
Secondary / experimental lines:
– Folia
– Sponge
– Legacy Spigot / Paper 1.16.5 – 1.19.4 through the separate legacy jar
## Version Support
Modern backend and proxy line:
– Minecraft `1.20 – 1.21.11`
Legacy backend line:
– Minecraft `1.16.5 – 1.19.4`
– Requires Java 17
– Uses the separate `voxa-aegis-legacy-0.3.jar`
## Important Notes
– Current release line: **0.3**
– Main recommended runtime: **Paper / Purpur / Pufferfish**
– Sponge is a narrow experimental line and should not be treated as equal to the Paper-family runtime.
– BungeeCord / Waterfall support exists, but Velocity is the preferred proxy platform.
– VoxaAegis is not a replacement for real network-layer DDoS protection.
– For very large attacks, use proper hosting protection and a proxy-first architecture.
Version Numbering Converter
# VNC (Version Numbering Converter)
Version Numbering Converter (VNC) is a Java library for working with Minecraft versions across both numbering families:
– Classic Java-style versions such as `1.20.6` and `1.21.11`
– Year-based drop versions such as `24.1`, `25.4`, and `26.1.1`
It covers two use cases:
– Pure version modeling and conversion through `MinecraftVersion`, `VersionScheme`, and `MappingTable`
– Bukkit/Paper runtime detection through `VNC`, including server constants, player version resolution, protocol lookup, and version comparisons
## Highlights
– Exact historic mappings from `1.0.0` through `1.21.11`
– Drop support for current lines such as `25.4`, `26.1`, and `26.1.1`
– Protocol lookup for exact releases and published snapshots
– A runtime bridge for Bukkit/Paper with legacy-compatible constants like `SERVER_VERSION`
– String-based comparisons that correctly handle patch-sensitive boundaries like `1.20.5`
## Core API
### 1. Parse and inspect versions
“`java
MinecraftVersion classic = MinecraftVersion.parse(“1.21.11”);
MinecraftVersion drop = MinecraftVersion.parse(“26.1”);
classic.isClassic(); // true
classic.getVersion(); // “1.21.11”
classic.getProtocol(); // 774
classic.supportsHex(); // true
drop.isClassic(); // false
drop.getVersion(); // “26.1”
drop.getProtocol(); // 775
“`
### 2. Convert between numbering schemes
“`java
String dropName = VersionScheme.MOJANG.toDrop(“1.20.3”); // “23.2”
String classicName = VersionScheme.MOJANG.toClassic(“25.2.2”); // “1.21.8”
String customClassic = VersionScheme.CROA_CUSTOM.toClassic(“25.4”); // “1.22”
String customDrop = VersionScheme.CROA_CUSTOM.toDrop(“1.22.1”); // “25.4.1”
“`
### 3. Create your own mapping scheme
“`java
MappingTable table = new MappingTable()
.registerLine(30, 1, “1.50”, “1.50.1”)
.registerMapping(“1.51”, “30.2”);
VersionScheme scheme = VersionScheme.mapped(table);
scheme.toDrop(“1.50.1”); // “30.1.1”
scheme.toClassic(“30.2”); // “1.51”
“`
### 4. Resolve protocols
“`java
Integer protocol = MinecraftVersion.protocolForIdentifier(“1.20.6”); // 766
Integer snapshot = MinecraftVersion.protocolForIdentifier(“26.2-snapshot-3”);
MinecraftVersion newest = MinecraftVersion.fromProtocol(754); // 1.16.5
List all = MinecraftVersion.versionsForProtocol(767); // 1.21, 1.21.1
“`
## Bukkit / Paper runtime API
`VNC` exposes a runtime snapshot of the current server:
“`java
MinecraftVersion server = VNC.SERVER_MINECRAFT_VERSION;
String classic = VNC.SERVER_CLASSIC_VERSION;
String drop = VNC.SERVER_DROP_VERSION;
int protocol = VNC.SERVER_PROTOCOL;
double legacy = VNC.SERVER_VERSION;
boolean modernRegistry = VNC.isAtLeast(“1.20.5”);
boolean legacyCommands = VNC.isBefore(“1.13”);
boolean inRange = VNC.isBetween(“1.19”, “1.21.11”);
“`
Player version resolution uses ViaVersion when present and falls back to the server version otherwise:
“`java
MinecraftVersion playerVersion = VNC.player(player);
if (playerVersion.supportsHex()) {
// Safe to send RGB formatting to this player
}
“`
## Why use the string helpers?
`SERVER_VERSION` is still available for compatibility with older plugins, but patch-sensitive checks should prefer:
“`java
VNC.isAtLeast(“1.20.5”);
VNC.isBefore(“1.21.9”);
VNC.compare(VNC.SERVER_MINECRAFT_VERSION, “26.1”);
“`
That avoids the common limitations of comparing versions only as `double`.
## Requirements
– Java 8+
– For the Bukkit runtime helpers: a Bukkit/Paper-compatible runtime on the classpath
– Optional: ViaVersion, if you want `VNC.player(…)` to resolve the effective client version instead of the server version
V-ItemSign





# VItemSign Configuration
Vitemsign is a signing system for items, allowing you to sign and protect them.
# Preview
### Commands

## Configuration Overview
### **Custom Messages**
Customize messages for server startup, player join/quit, and Discord chat using the MiniMessage format.
We currently support: `de` and `en`
### **Commands**
`/itemsign ` – Signs the item with the specified text
`/itemsign lock` – Locks the signed item so that it cannot be changed.
`/itemsign unlock` – Unlocks the signed item so that it can be changed again.
`/itemsign delete` – Removes the sign from the item.
### 4. **Permissions**
`vitemsign.use` | Fully configurable in the Config.yml.
– Permission to use the `/itemsign` Command.
—
## Setup Instructions
1. Download and install the plugin on your Minecraft server.
2. Configure the `config.yml` file with your preferred settings:
– Set the database type and connection details.
– Define custom messages using MiniMessage.
3. Restart the server to apply the changes.
—
## Example config
“`yaml
language: en
# These items should remain in the list to avoid duplication bugs
BlockedItems:
– “SHULKER_BOX”
– “WHITE_SHULKER_BOX”
– “GRAY_SHULKER_BOX”
– “BLACK_SHULKER_BOX”
– “BROWN_SHULKER_BOX”
– “RED_SHULKER_BOX”
– “ORANGE_SHULKER_BOX”
– “YELLOW_SHULKER_BOX”
– “LIME_SHULKER_BOX”
– “GREEN_SHULKER_BOX”
– “CYAN_SHULKER_BOX”
– “LIGHT_BLUE_SHULKER_BOX”
– “BLUE_SHULKER_BOX”
– “PURPLE_SHULKER_BOX”
– “MAGENTA_SHULKER_BOX”
– “PINK_SHULKER_BOX”
– “CHEST”
– “TRAPPED_CHEST”
– “HOPPER”
– “ENDER_CHEST”
– “BARREL”
– “FURNANCE”
“`
—
## Example Message Configuration
“`yaml
# General Messages
prefix: “[VItemSign] ”
date_format: “MM/dd/yyyy – hh:mm a”
user_not_found: “That user does not exist.”
no_permission: “You don’t have permission to do that.”
cannot_sign_blocked_item: “You are not allowed to sign that!”
cannot_lock_blocked_item: “You are not allowed to lock this item!”
item_not_signed: “This item is not signed yet!”
not_your_item: “You are not the owner of that item!”
item_sign_deleted_successfully: “The sign has been deleted succesfully !”
item_already_locked: “This item has already been locked!”
item_locked_successfully: “This item has succesfully been locked!”
item_not_locked: “This item is not locked!”
item_unlocked_successfully: “This item has succesfully been unlocked!”
item_already_signed: “This item has already been signed!”
item_signed_successfully: “This item has succesfully been signed.”
item_in_hand_is_air: “You have to hold the item in you main hand!”
item_sign_broken_successfully: “You have broken a signed item block!”
lore_prefix_separator: ” | ”
signed_lore: “» Signed by am ”
Command:
Name: “itemsign”
Permission: “vitemsign.use”
Arguments:
Delete: “delete”
Lock: “lock”
Unlock: “unlock”
Usage:
– “VItemSign Help:”
– “/itemsign <Text> – Signs an Item.”
– “/itemsign delete – Delete the item sign.”
– “/itemsign lock – The sign will get locked.”
– “/itemsign unlock – The sign will get unlocked.”
“`
—
## Example Database Configuration
“`yaml
type: Sqlite # Avaiable types: mongo, mysql, sqlite
# MONGO
Mongo:
connection-string: “mongodb://:@:/”
database: “db”
# SQL
SQL:
connection-string: “jdbc:sqlite:plugins/VItemSign/database.db”
username: “username” # Not required for sqlite
password: “password” # Not required for sqlite
“`
—
—
## Soft Requirements
* WorldGuard
—
## Notes
– The MiniMessage format is highly flexible for styling and formatting messages. Refer to the [MiniMessage documentation](https://docs.advntr.dev/minimessage/format.html) for more details.
– SQLite is the simplest database option as it doesn’t require additional setup.

ViaVersion
# ViaVersion
Allows you to connect to servers that are older than your Java Edition client version. See our [GitHub page](https://github.com/ViaVersion) for more information.
**On Fabric, use either [ViaFabric](https://modrinth.com/mod/viafabric) or [ViaFabricPlus](https://modrinth.com/mod/viafabricplus). To override the included version**
– in **ViaFabric**, put ViaVersion into the `mods` folder
– in **ViaFabricPlus**, put ViaVersion into the `config/viafabricplus/jars` folder
[Bungee](https://hangar.papermc.io/ViaVersion/ViaBungee) and [Sponge](https://modrinth.com/project/viasponge) also have their own platform implementations.
Requires Java 17. See [here](https://docs.papermc.io/misc/java-install) how to update your installed Java version. As a last resort, you can download Java 8 downgraded builds from [our ci](https://ci.viaversion.com/job/ViaVersion-Java8/).
## Get access to Via* with new MC version support early
**Starting with 1.20.5, ViaVersion and ViaBackwards will only be released a day or so *after* a Minecraft update** unless the protocol changes of the update were trivial. **If you want early-access, usually days or even weeks before the final release, you can subscribe to either**:
– [GitHub Sponsors](https://github.com/sponsors/kennytv/sponsorships?sponsor=kennytv&tier_id=385613&preview=false) (*preferred option*. Use the `/verify` command on this Discord after), or alternatively
– [Patreon](https://www.patreon.com/kennytv/membership) (see the highest tier and make sure to link Patreon to your Discord account under Discord Settings->Connections)
## Note on release channels
It is recommended to always use the latest beta release. Alpha builds are used for work on snapshot version compatibility or other cutting-edge changes.
**Always use the same build channel across the ViaVersion, ViaBackwards, and ViaRewind projects.**
Releases/Dev Builds
——–
You can find official releases in the following places:
– **Hangar (for our plugins)**: https://hangar.papermc.io/ViaVersion/ViaVersion
– **Modrinth (for our mods)**: https://modrinth.com/mod/viaversion
– **GitHub**: https://github.com/ViaVersion/ViaVersion/releases
Dev builds for **all** of our projects are on our Jenkins server:
– **Jenkins**: https://ci.viaversion.com
ViaVersion as a Dependency
———-
**JavaDocs:** https://jd.viaversion.com
**Maven:**
“`xml
viaversion-repo
https://repo.viaversion.com
“`
“`xml
com.viaversion
viaversion-api
[4.0.0,5.0.0)
provided
“`
**Gradle:**
“`kotlin
repositories {
maven(“https://repo.viaversion.com”)
}
dependencies {
compileOnly(“com.viaversion:viaversion-api:VERSION”) // Replace the version
}
“`
Resources
——–
– **[Via Mappings Generator](https://github.com/ViaVersion/Mappings)**
– **[Mojang mappings](https://minecraft.wiki/w/Obfuscation_map)** (Thank you, Mojang, very cool)
– **[wiki.vg](https://wiki.vg)** (Used for historic information regarding packet structure, we also contribute back)
– **[Burger](https://github.com/Pokechu22/Burger)** (See [PAaaS](https://github.com/Matsv/Paaas))
Special thanks to all our [Contributors](https://github.com/ViaVersion/ViaVersion/graphs/contributors).
ViaSponge
# ViaSponge
See https://github.com/ViaVersion/ViaVersion for the main project.
## Required setup
**You need to follow these steps to run ViaSponge**
– Download the latest jar from https://modrinth.com/project/viasponge and put it into your Sponge mods folder
folder
– Download ViaVersion from https://viaversion.com/ (and other addons if needed) and **put them into
the mods folder as well**
Requires Java 17