# YuRandomTeleport | Cross-Version · High Performance · Universal Compatibility
**Supported Versions: 1.8.x – 1.26.x**
**Compatible Server Types: Spigot / Paper / All Hybrid Forks (Mohist, Magma, Arclight, etc.)**
—
## 🎉 Promotional Text
### ✦ Escape the Crowd. Explore the Unknown. — YuRandomTeleport
Tired of overcrowded spawn points? Struggling to find untouched, pristine land?
**YuRandomTeleport** is an intelligent random teleportation plugin built for Minecraft servers, delivering a safe, smooth, and highly customizable teleport experience.
#### ✨ Why Choose YuRandomTeleport?
– **Ultimate Cross-Version Compatibility**
From 1.8 to the latest 1.26.x, it runs seamlessly on Spigot, Paper, and all hybrid server forks—one plugin for every version.
– **Smart & Safe Location Algorithm**
Automatically avoids lava, cacti, the void, fire, and other hazardous blocks. Players always land on solid ground with open sky above—safe upon arrival.
– **Granular Per‑World Configuration**
Each world can have independent radius, height limits, safety rules, and blocked material lists. Perfectly tailored for Overworld, Nether, and End dimensions.
– **Seamless Economy & Cooldown Integration**
Supports Vault economy deductions and customizable cooldowns. Granular permission nodes keep everything under control and prevent abuse.
– **Programmable Command Hooks**
Execute custom commands (including JSON titles and particle effects) before and after teleportation, taking your server’s interactivity to the next level.
– **Zero‑Fuss, Out‑of‑the‑Box**
Default configurations work immediately. No complex setup required—even novice server admins can deploy it effortlessly.
– **Active Maintenance & Community**
The plugin is under continuous development. Join our official community **1080918424** to report issues, request features, or just chat with fellow admins.
#### 🚀 Join Us
**Official Community Group: 1080918424**
Bug Reports · Update Announcements · Tech Support · Customization Inquiries
—
## 📖 User Manual
### 1. Installation Guide
1. Place `YuRandomTeleport-.jar` into your server’s `plugins` folder.
2. Restart the server or load the plugin using a plugin manager.
3. The plugin will automatically generate `config.yml` and `messages.yml` inside `plugins/YuRandomTeleport/`.
4. (Optional) Edit the configuration files as desired and apply changes with `/yurtp reload`.
### 2. Commands & Permissions
#### Player Commands
| Command | Description | Permission |
|———|————-|————|
| `/yurtp` or `/rtp` | Randomly teleports yourself within your current world. | `yurtp.use` |
| `/yurtp ` | Randomly teleports the specified player within their current world (requires permission). | `yurtp.teleport.others` |
| `/yurtp ` | Randomly teleports the specified player to the specified world (requires permission). | `yurtp.teleport.others` |
| `/yurtp help` | Displays the help menu. | None |
# Custom commands to execute (supports placeholders: {player}, {x}, {z}, etc.)
commands:
on-teleport:
– “title {player} title {“text”:”Searching for a safe location…”,”color”:”yellow”}”
on-success:
– “title {player} title {“text”:”Teleport Successful!”,”color”:”green”}”
on-fail:
– “title {player} title {“text”:”Teleport Failed”,”color”:”red”}”
“`
#### Notes on `messages.yml`
All frontend messages support color codes (`&` in place of `§`) and can be fully translated or customized. After editing, run `/yurtp reload` to apply changes.
### 4. Frequently Asked Questions
**Q: Why can’t a player teleport?**
A: Verify that the world is not listed in `world-blacklist`, the player has the `yurtp.use` permission, and cooldown/balance requirements are met.
**Q: The teleport locations aren’t ideal. How can I improve them?**
A: Adjust the `radius` range, `height` limits, or relax the `blocked-materials` rules for the specific world. Enable `debug: true` in the config to view detailed location‑search logs in the console.
**Q: Does the plugin support sounds on 1.8?**
A: Yes. A built‑in cross‑version sound compatibility layer ensures sounds work across all supported versions without errors or silence.
**Q: Is Moonrise asynchronous server supported?**
A: Moonrise is not currently supported due to conflicts between its asynchronous architecture and some core plugin logic. We will evaluate potential compatibility in future updates.
– **Documentation & Updates**
The latest version and detailed documentation are always available within the community group.
—
**YuRandomTeleport — Every journey begins with anticipation.**
YuPay
# 🎮 YuPay —— Make Sponsorship Management a Pleasure
> **Minecraft server sponsorship has never been been this elegant.**
>
> Direct integration with WeChat Pay & Alipay, redeem code system, refund review, multi-language, full lifecycle event listening — everything you need, YuPay delivers it all at once. Free, no middlemen, no tricks. 100% of the revenue goes straight to your account. The only fees are those charged by Alipay and WeChat.
—
## 📦 What Is It
**YuPay** is a free, modern payment plugin tailored for Minecraft servers. It breaks down the hassle of “sponsorship management” into four steps: **Initiate → Pay → Receive → Record**. Every step is automated, every step traceable.
Server operators use it to collect sponsorships, players use it to scan and pay. Both sides enjoy a worry-free experience. Supports direct API integration with WeChat Pay and Alipay — no third-party relay, your funds stay secure in your own hands.
> ⚠️ This plugin is designed for scenarios where “players voluntarily sponsor server operations”. Please ensure usage complies with local laws and payment platform regulations.
—
## ✨ Highlights at a Glance
| Category | What You Get |
|———-|—————|
| 💳 **Payment** | WeChat + Alipay dual channels, Native QR scan payment, automatic fallback |
| 💰 **Economy** | Vault + PlayerPoints dual support, one-click switch |
| 🎁 **Rewards** | Base rewards, single milestone, total achievements, limited-time sprints — four trigger layers |
| 🔑 **Redeem Code** | Create/redeem/query/modify, supports paid codes, complete logs |
| 💵 **Refund** | Players can request refunds, admin approve/deny, forced refund, partial refund |
| 📊 **Data** | Leaderboards, order history, page browsing, one-click copy order ID |
| 🌐 **Multi-language** | Default Chinese + English, server owners can customize any language, different players see different languages |
| 🔌 **PAPI** | 40+ placeholders, use in scoreboards/titles/item lore |
| 🛡️ **Security** | Signature verification, IP whitelist, 24h event monitoring, anti-duplicate delivery |
| ⚡ **Performance** | Fully async, HikariCP connection pool, 600% startup speed boost |
| 🧩 **Extensibility** | Full lifecycle event API for deep integration by developers |
—
## 🔄 What a Complete Sponsorship Looks Like
1. Player executes a command, e.g. `/donate 50 wechat`
2. System creates order asynchronously, writes to database
3. Calls WeChat/Alipay API to generate payment QR code
4. Depending on your config, sends **clickable link**, **text-art QR** in chat, or **map QR** in inventory
5. Player scans and completes payment
6. Payment platform calls back to your server
7. Plugin verifies signature, confirms receipt, grants rewards (economy + commands)
8. Leaderboard and placeholders update in real time
9. All logs written, traceable anytime
Fully automated. You just configure the rewards, YuPay handles the rest.
—
## 🎁 Four Reward Layers, Mix and Match
YuPay’s reward system is like a Lego box — four trigger modes you can combine freely.
| Layer | Trigger | Example |
|——-|———|———|
| **Base Reward** | Every successful payment | `give {player} diamond 1` |
| **Single Milestone** | Single payment reaches threshold | 50 yuan → 5 gold blocks |
| **Total Achievement** | Lifetime total reaches new height | 500 yuan → SVIP permission group |
| **Limited Sprint** | Cumulative within specified time period | 200 yuan in 24h → enchanted golden apple |
Each layer’s commands are fully customizable, support variables like `{player}`, `{amount}`, `{points}`, and can integrate with permission/economy plugins like LuckPerms, CMI, etc.
> 💡 Adding `-n` (e.g. `/donate 10 -n`) makes it a **no-reward sponsorship** — pure server support, no rewards triggered.
—
## 🔑 Redeem Code System: More Than Just a Voucher
YuPay’s redeem code module goes far beyond typical “gift codes”:
– **Free codes**: Players enter to claim — great for event giveaways
– **Paid activation codes**: Players must scan and pay a specified amount before redeeming — suitable for selling item entitlements, redeeming codes from other platforms, etc.
– **Economy rewards**: Automatically grant Vault currency or PlayerPoints upon redemption
– **Custom commands**: Each code can bind a set of commands executed on redemption
– **Usage limits & expiry**: Independent control per code
– **Code PAPI**: Placeholders directly read any code’s status, amount, remaining uses
Create a paid activation code with a single command:
“`
/yp code create –code VIP2026 –amount 50 –economy vault –eco-amount 5000 –commands “lp user {player} parent set vip” –max-uses 100 –expire 30d
“`
—
## 💵 Refund System: Bad Debt Terminator
Refunds are no longer a nightmare. YuPay’s refund process is complete and reassuring:
– **Players request refund**: Submit application with reason
– **Admin reviews**: Approve/deny in an orderly manner
– **Forced refund**: Direct operation for urgent cases, no waiting for review
– **Partial refund**: Flexible handling, precise to the cent
– **Code refund**: Refund money and rollback usage count, status automatically restored
– **Refund callback**: Interfaces with WeChat/Alipay official refund API, money returns to original payment method
– **Complete logs**: Who refunded, how much, when, why — all clear
—
## 🌐 Thousand Players, Thousand Languages — No Language Fights
A lifesaver for international server operators.
– Comes with **Simplified Chinese** and **English** complete translations
– Server owners can add any language file in `language.mappings`
– Players switch preference with `/yp lang `, stored in database, persists across sessions
– New players automatically **detect client language** and match the best translation
– Different players on the same server see different language prompts — truly per-player localization
—
## 🔌 Complete PAPI Placeholder List
YuPay provides **40+ built-in PlaceholderAPI placeholders**, covering personal, server, leaderboard, and redeem code dimensions. All monetary values keep two decimal places. Full list below:
—
### 1. Personal Dimension (requires player context)
| Placeholder | Description | Example Return |
|————-|————-|—————-|
| `%yupay_is_banned%` | Whether the player is banned from sponsoring | `true` / `false` |
| `%yupay_total%` | Player’s lifetime total sponsorship (yuan) | `158.00` |
| `%yupay_total_orders%` | Player’s total orders (including failed) | `7` |
| `%yupay_success_orders%` | Player’s successful orders | `5` |
| `%yupay_rank%` | Player’s sponsorship rank (off-rank shows text from language file) | `3` or `Not ranked` |
| `%yupay_has_paid_in_
> 💡 **Dynamic parameters**: `` is in **milliseconds** (e.g. `86400000` = 24h), `` is monetary threshold (yuan). All monetary placeholders retain two decimals.
—
### 2. Server Dimension (no player needed)
| Placeholder | Description | Example Return |
|————-|————-|—————-|
| `%yupay_server_total%` | Server’s lifetime total sponsorship (yuan) | `12850.75` |
| `%yupay_server_total_orders%` | Server’s total orders (including failed) | `312` |
| `%yupay_server_success_orders%` | Server’s successful orders | `289` |
| `%yupay_server_orders_in_%` | Server orders in last `` ms | `45` |
| `%yupay_server_success_orders_in_%` | Server successful orders in last `` ms | `42` |
| `%yupay_server_amount_in_%` | Server total sponsorship in last `` ms (yuan) | `3200.00` |
—
### 3. Leaderboard Dimension (no player needed)
Two formats supported (first recommended):
| Placeholder | Description | Example Return |
|————-|————-|—————-|
| `%yupay_top__name%` | Player name at rank N | `Steve` |
| `%yupay_top__amount%` | Total sponsorship at rank N (yuan) | `2000.00` |
| `%yupay_top_name%` | (legacy format) Same as above | `Alex` |
| `%yupay_top_amount%` | (legacy format) Same as above | `1500.00` |
> `` ranges `1` ~ `10`. If rank doesn’t exist, name returns fallback text from language file (default “None”), amount returns `0.00`.
—
### 4. Redeem Code Dimension
Includes global statistics (no player needed) and specific code attributes (where `redeemed` and `can_redeem` require player context).
#### Global Statistics
| Placeholder | Description | Example Return |
|————-|————-|—————-|
| `%yupay_code_total%` | Total number of codes | `25` |
| `%yupay_code_active%` | Number of active codes (status ACTIVE) | `18` |
#### Specific Code Attributes — replace `` with actual code string (auto-uppercase)
| Placeholder | Description | Example (code = `VIP2026`) |
|-------------|-------------|----------------------------|
| `%yupay_code__status%` | Current status of the code | `ACTIVE` |
| `%yupay_code__amount%` | Required payment amount (yuan) | `50.00` |
| `%yupay_code__economy_type%` | Economy reward type | `vault` |
| `%yupay_code__economy_amount%` | Economy reward amount | `5000.00` |
| `%yupay_code__used%` | Number of times redeemed | `23` |
| `%yupay_code__max_uses%` | Max redeem count (-1 = unlimited) | `100` |
| `%yupay_code__expire%` | Expiry timestamp (ms), -1 = never | `1798675199999` |
| `%yupay_code__expire_formatted%` | Formatted expiry time | `2026-12-31 23:59` |
| `%yupay_code__remark%` | Code remark | `"VIP activation code"` |
| `%yupay_code__locked%` | Whether locked by a payment (someone is paying) | `true` / `false` |
| `%yupay_code__redeemed%` | Whether **current player** has redeemed this code | `true` / `false` |
| `%yupay_code__can_redeem%` | Whether **current player** can redeem now (comprehensive check) | `true` / `false` |
> 💡 `_can_redeem` checks: code status normal, not expired, uses left, not locked by others, and current player hasn't redeemed it.
---
### Usage Notes
- **All monetary placeholders** are in `yuan`, with two decimal places, e.g. `99.50`. Integer amounts also show `.00`.
- Dynamic time parameter `` always uses **milliseconds** — 24h = `86400000`, 7d = `604800000`.
- Code strings in placeholders are auto-uppercased; lowercase input works too.
- Server and leaderboard placeholders **do not require a player context**; personal and some code placeholders **require a player** or return empty/default.
- Placeholders work in any plugin that supports PlaceholderAPI (scoreboard, BossBar, DeluxeTags, chat prefix, item lore, etc.).
---
## 🧩 Gift for Developers
If you can write plugins, these events will make your secondary development experience fly:
All events support sync. You can intercept before order creation, trigger联动 other systems after payment, sync data on refund — every detail of the sponsorship lifecycle is observable.
---
## 🛡️ Security Is Not Just Talk
- **Signature verification**: WeChat/Alipay callbacks are fully signature-verified against forgery
- **Anti-duplicate delivery**: Order status check + idempotent handling
- **IP whitelist**: Callback interface can restrict access to official payment platform IPs only
- **TLS/HTTPS**: Supports certificate-encrypted communication
- **Event monitoring**: `/yp audit` one-click audit, 24h monitoring of which plugins are listening to YuPay's fund events
- **Map virtual lock**: When a payment QR is placed in the inventory, the player is locked in place, cannot drop/switch items, payment unlocks
---
## ⚡ Blazing Fast Startup
The rewritten dependency loading system means YuPay no longer requires cumbersome JVM startup parameters. All dependencies are automatically managed, verification speed increased by 600%, out-of-the-box. Drop it into the `plugins` folder, start the server, it's ready.
---
## 📊 Data at Your Fingertips
`/yp history` is one of your most-used commands. Order history supports **page browsing**, click an order ID to **copy it with one click** — reconciliation efficiency doubled.
`/yp top` lets you know at any time who is contributing to the server — leaderboard data syncs with placeholders in real time.
`/yp total` for personal stats, `/yp total all` for server-wide stats — all available at your fingertips.
---
## 🚀 Two-Minute Quick Start Guide
1. Drop `YuPay.jar` into the `plugins/` folder
2. Start the server, wait for `config.yml` and `messages.yml` to generate
3. Open `config.yml`, fill in your WeChat/Alipay parameters
4. Ensure the callback port (default `8080`) is open in your server firewall and security group
5. In-game, type `/donate 0.01` to test a small payment
6. Confirm callback works and rewards arrive — start business 🎉
---
## 🏆 Why Server Owners Are Using YuPay
- ✅ **Stable**: Production-tested, compatible with Spigot/Paper 1.8 to latest versions
- ✅ **Reliable**: Direct official API connection, no middlemen, money goes to your account directly
- ✅ **Worry-free**: From payment to rewards fully automated, you just configure
- ✅ **Flexible**: Reward logic fully programmable, command aliases freely definable
- ✅ **Secure**: Signature verification + anti-duplicate + IP whitelist + event monitoring
- ✅ **Transparent**: Every order, every refund, every code redemption has logs
- ✅ **Evolving**: Actively maintained, continuously iterated, community-driven
---
> 💬 **Plugin Discussion Group: 1080918424**
>
> For issues, feature requests, or just to chat — welcome. Every improvement of YuPay comes from feedback from server owners.
> 💛 **Support the Author on AiFaDian**: https://ifdian.net/item/012b6c1c4a0911f18d1b52540025c377
>
> If YuPay has helped your server, consider buying the author a milk tea ~ Your support is the biggest motivation for the plugin's continued evolution.
**Stop struggling with sponsorship management. Leave the professional stuff to YuPay, and focus on running your server well.**
> 🎉 **Good news**: You no longer need to manually add JVM startup parameters for Java 9+. YuPay's latest version has built-in smart dependency management — out-of-the-box.
## 2. Installation & Startup
1. Download `YuPay.jar`, place it in the server's `plugins/` directory
2. Start the server, the plugin will automatically generate `config.yml`, `messages.yml`, and SQLite database files
3. Edit `plugins/YuPay/config.yml`, fill in payment channel configuration parameters
4. Depending on your payment method, configure callback URLs in the payment platform backend:
- WeChat: `http(s)://your-domain-or-ip:port/pay/wechat/notify`
- Alipay: `http(s)://your-domain-or-ip:port/pay/alipay/notify`
5. Ensure the callback port (default `8080`) is open in firewall and security group
6. Execute `/yupay reload` or type `reload` in console to apply configuration
7. In-game, type `/donate 0.01` to test a small payment
## 3. Configuration Quick Reference
### 3.1 Core Payment Parameters
| Path | Description | Example |
|------|-------------|---------|
| `pay.default-method` | Default payment method | `wechat` / `alipay` |
| `pay.min-amount` | Minimum amount per order (yuan) | `0.01` |
| `pay.max-amount` | Maximum amount per order (-1 = unlimited) | `500` |
| `pay.max-daily-amount` | Daily cumulative limit (-1 = unlimited) | `1000` |
| `pay.order-subject` | Order subject template | `Sponsorship-{player}-{amount}yuan` |
### 3.2 WeChat Pay Parameters
| Path | Description |
|------|-------------|
| `wechat.enabled` | Enable (true/false) |
| `wechat.mchid` | Merchant ID |
| `wechat.appid` | Official account / Mini Program AppID |
| `wechat.serial-no` | API certificate serial number |
| `wechat.private-key-path` | Merchant private key (relative to `pems/` directory) |
| `wechat.public-key-path` | Platform public key (relative to `pems/` directory) |
| `wechat.public-key-id` | Platform public key ID |
| `wechat.api-v3-key` | API v3 key (32 characters) |
| `wechat.notify-url` | Complete callback notification URL |
Triggered when cumulative amount within a specified time period (milliseconds) reaches the target. Great for holiday events, weekend leaderboard pushes, etc.
1. Player or admin submits refund request: `/yp refund request [amount]`
2. Admin views pending list: `/yp refund pending`
3. Approve or reject: `/yp refund approve ` / `reject`
4. Upon approval, actual refund automatically executes; upon rejection, requester is notified
### 7.3 What Happens After Refund
- Payment platform (WeChat/Alipay) receives refund request, money returns to original payment method
- Plugin updates order refund status (`FULL_REFUND` / `PARTIAL_REFUND`)
- If code refund: code usage count -1, status restored to `ACTIVE`
- Executes commands configured in `commands.on-refund`
- Triggers `RefundCompletedEvent` for other plugins to react
- Complete refund logs written to database
## 8. Multi-Language System
### 8.1 Adding a Language
Add under `language.mappings` node in `config.yml`:
Then create `plugins/YuPay/messages_ja.yml`, translating based on `messages.yml`. Plugin will automatically fill in missing keys.
### 8.2 Switching Language
- Players switch manually: `/yp lang en` (supports aliases, e.g. `english`)
- First join auto-detects client language and matches best translation
- Language preference stored in database, remembered across sessions
## 9. Database Selection Guide
| Server Scale | Recommended Type | Reason |
|--------------|------------------|--------|
| Single small server | SQLite | Zero configuration, out-of-the-box |
| Multi-server network | MySQL | Unified data, cross-server sync |
| Large network | MySQL + connection pool | High concurrency support, connection reuse |
## 10. Troubleshooting Common Issues
### Callback server fails to start
- Check if port is occupied
- Confirm firewall/security group has opened the port
- Check console error logs
### Payment successful but rewards not received
- Check order `status` in database — should be `SUCCESS`
- Confirm `economy.enabled` and `commands.enabled` are both `true`
- Check console for economy plugin load errors
### Map QR code not showing
- Confirm ProtocolLib matching server version is installed
- Check if `qrcode.default-output-mode` is set to `map`
- If ProtocolLib missing, mode auto-falls back to `link`
### WeChat Pay says public key file not found
- Check existence of `plugins/YuPay/pems/` directory
- Confirm `wechat.public-key-path` is correct
- Go to WeChat Merchant Platform → API Security → API Certificates → download platform certificate
### Configuration lost after plugin upgrade
- YuPay has built-in smart config upgrader — automatically backs up old file (`.bak` suffix) and merges new keys
- Manual backup before upgrade for extra peace of mind
## 11. Database Tables
| Table Name | Stored Content |
|------------|----------------|
| `yu_payments` | All payment orders, including refund status |
| `yu_total_levels` | Cumulative reward tier records |
| `yu_banned_players` | Sponsorship blacklist |
| `yu_player_lang` | Player language preferences |
| `yu_redeem_codes` | Redeem code master table |
| `yu_redeem_logs` | Redemption records |
| `yu_refund_logs` | Refund operation logs |
| `yu_refund_requests` | Refund review requests |
## 12. Uninstallation Steps
1. Execute `/yp reload` (ensure in-memory config is flushed)
2. Stop the server
3. Delete `plugins/YuPay.jar`
4. For complete removal, delete `plugins/YuPay` folder (including database)
---
> 💬 Plugin Discussion Group: **1080918424**
> Don't struggle alone — bring your logs and config screenshots to the group, the author and helpful server owners are there.
> 💛 **Support the Author on AiFaDian**: https://ifdian.net/item/012b6c1c4a0911f18d1b52540025c377
>
> If YuPay has helped your server, consider buying the author a milk tea ~ Your support is the biggest motivation for the plugin's continued evolution.
```
yTrain
# 🎯 yTrain – Train Against Custom Zombies with Ease
## 📖 Description
A lightweight Bukkit/Spigot plugin designed to enhance PvE training by allowing players to spawn customizable zombies. Features a user-friendly GUI for managing zombie armor and totem counts, with full admin control over configurations.
—
## ⚙️ Features
– ✅ **Customizable zombie spawning** with adjustable health, absorption, and enchantments
– ✅ **GUI for toggling armor** and setting totem counts
– ✅ **Totem auto-equip** for zombies (simulated in 1.12, native in 1.16+)
– ✅ **Configurable zombie settings** (name, visibility, glowing, etc.)
– ✅ **Cooldown system** for spawning zombies
– ✅ **Blacklisted worlds support**
– ✅ **Admin configuration reload command**
—
## 🔨 Commands
📜 Command List
– **`/train`** – Open the training GUI to spawn a zombie
– **`/yTrain reload`** – Reload the plugin configuration (admin only)
—
## 🔑 Permissions
🔐 Permissions List
– **`ytrain.train`** – Use `/train` to open the GUI and spawn zombies
– **`ytrain.reload`** – Use `/yTrain reload` to reload the configuration
—
## 📦 Dependencies
**None**
—
## 🌐 Join Our Discord!
[)](https://discord.gg/HxHcyBWU3V)
### 🔗 [Click Here to Join!](https://discord.gg/HxHcyBWU3V)
YTEntityMoney
A plugin that rewards players with money based on the amount of damage they dealt to an entity. The reward is calculated by multiplying the entity’s dropped XP by the damage the player inflicted with their final hit, and then by a configurable multiplication rate.
Requirements:EssentialsX
Built For:EssentialsX
Commands: /multiplyamount
Usage Example: /multiplyamount 1 Also 1 is the default multiply ammount. Or you can config this ammount from the Config.yml that it will generate.
You Thief: Remastered Edition
**This mod is originally for modpack [AnimateCraft: Lankeren](https://modrinth.com/modpack/animatecraft-lankeren). If you like this content, I’m sure you’ll like that modpack, too. Welcome to check it out!**
—
Also, This mod is a remastered version of [You Thief!](https://modrinth.com/datapack/you-thief!). This time, we made a more precise mechanic, waiting for you to challenge!
Now when you open or break the villagers’ chests or barrels in the village, the villagers nearby will get angry and raise the trade prices extremely.
The mechanic is based on the vanilla gossip system of villagers. So, if the iron golems hear what you did from the villagers, they will attack you too. You will also get a bad luck effect for a day. Now think twice about the consequences before you steal!
Location will be detected, you will only offend villagers and iron golems when opening chests/barrels in the village. Placing/opening/breaking your own chest/barrel will not offend villagers.
But…You plan to place a chest next to Villagers’, and combine them into a big one? Nope.Nice try.The villagers are smart enough to know your trick. But they are kind of stupid, too.If you place your chest near a natrual generated chest, they cannot recognize that, so they may mistake it. Don’t confuse them!
So, how to steal “correctly”? Think about how do you steal Piglins’! You can also try the magical way. Drink invisibility potion, be completly invisible, and you can do whatever you want!
## Feel a bit harsh? We made it rewarding to be a thief! Now the loots in village chests & barrels have been *doubled*!
This mod is not compatible with Lootr.
**Credits**
– Thank Heket for making this into a real mod!
– The cover is made with resource pack [Fresh Animation](https://modrinth.com/resourcepack/fresh-animations) by FreshLX
## 版权声明|License
– **作者保留该作品的所有权利。禁止在其他社交平台(包括群聊、网盘等)重新上传或商用,否则后果自负。** This content is All Rights Reserved, meaning that you cannot redistribute/modify & distribute this content, or use it in commercial ways.
– **欢迎您将其收录到整合包中或用其制作视频,请在简介处附上此发布页面的链接和[我的bilibili主页](https://space.bilibili.com/190900020),也欢迎在简介艾特我,我很想看你们的视频!**
If you make a video about this content or put this content in your modpack, please give credit and link to this page, and I would love to know! Thank you.
YJ’s Casino and Economy
# YJ’s Casino and Economy
A Minecraft casino datapack for 1.21.10, offering functioning table games such as blackjack and baccarat as well as an economy system using diamonds.
This datapack is in BETA. Bugs are expected and players are responsible for their own worlds and servers when they decide to use this datapack. Please report any bugs to the Discord server or to the Issues page on Github. Specifically, bugs that might occur on multiplayer have not been tested. Report any bugs you experience on a multiplayer server.
## Creating Dealers and Table Games
Dealers can only be created by Opped players by using `/function yjcasino:create_dealer`. Right-clicking on your dealer will allow you to modify your dealer and set up the game they will deal. You will also be able to set your responsibility, which is the percentage of profit/loss from that table you will be responsible for. As an example, if your responsibility is 1% and a player wins a $100 bet, you will be responsible for paying for $1. If they lose the bet, you will get $1.
Any player, opped or not opped, can bet on a table by right-clicking on one of the iron pressure plates on the table. When players have submitted their bets, the game will begin to be dealt.
While acting, players will often indirectly use the `/trigger` command, which can flood the chat. To prevent this, I recommend that you use `/gamerule sendCommandFeedback false` to prevent command messages from appearing in the chat.
Rules for the games can be found on the [wiki](https://github.com/lemoncodes237/casino/wiki).
## Economy
The main currency of this datapack is diamonds. Each diamond is equal to $10 in-game. To deposit or withdraw your diamonds, you can use `/trigger bank`.
Each player has a unique ID, which can be seen using the Tab menu and looking at the number next to each player. If you want to get your own ID, you can also use `/trigger get_id`.
To pay players using the datapack currency, they can use `/trigger pay set [id]`, where `[id]` is the ID of the player they wish to pay. To make sure you are paying the right player, running this command will tell you the username of the player you are about to pay. You will then be allowed to input the amount of money you would like to pay that person. Cents are not supported in this payment, so only pay using whole dollars.
## Debugging
Problems can arise when unexpected events occur, such as a player logging out in the middle of the game on a multiplayer server. In these scenarios, you can use `/function yjcasino:debug` to cancel all active games and return bets to players. Only use this in extreme circumstances where an unsolvable bug occurred. To prevent abuse by players, this command can only be run once per hour.
## Disclaimer
This datapack in no way endorses gambling behavior that involves real money. As players play these games, they may realize that tend to lose money rather than win money. This is expected and the games are mathematically designed to behave that way. Do not actually gamble at casinos; doing so will always result in massive losses in the long run.
The purpose of this datapack is to provide a Minecraft environment where players can have fun with each other without putting any real-life money at risk as well to give players a way to create functioning casinos for city builds. Once again, this datapack in no way endorses or condones gambling that involves materials or currencies in real life.
## Installing
Install the datapack and the required resource pack. Put the resource pack in the `resourcepack` folder in your `.minecraft` folder and put the datapack in the `datapack` folder of your world or server. After installing, run the command `/reload` in your world to load the datapack.
## Discord
Join the YJ Datapacks Discord using this [link](https://discord.gg/Uhxd2wtg).
## Credits
Datapack and Resourcepack created by YJMinecraft
Yet Another TPA
# YATPA

YATPA is a teleport plugin/mod project for modern Minecraft servers:
– `paper/`: Paper plugin (1.21.x API target)
– `fabric/`: Fabric dedicated-server mod (1.21.x Mojmap/Fabric API scaffold)
What makes YATPA stand out is that it combines full teleport-request/home/back/spawn/RTP/death tooling with a clickable in-chat command UX (`/tp` menu, paged pickers, and paged logs), while also exposing granular cost controls per teleport type. Economy mode is configurable as `NONE`, `XP_LEVELS`, `ITEM`, or `CURRENCY`; Paper supports `CURRENCY` through Vault (with EssentialsX or another Vault economy provider). OPs have an optional GUI menu to fine tune settings in-game.
## Screenshots
#### Help (via /TPAHELP)

#### Clickable TP Menu (via /TP)

#### Clickable TP Logs for OPs (via /TPLOG)

#### Clickable Home List (via /TPHOME LIST)

#### Clickable User List (via /TPA with no username specified)

## Features
– Clickable teleport menu:
– `/tp`
– Includes shortcuts for homes, RTP, spawn, death-back, TPA/TPHere, toggle, block, and unblock.
– Player pickers are paginated (5 per page) for `/tpa`, `/tphere`, `/tpablock`, and `/tpaunblock`.
– Player teleport requests:
– `/tpa `
– `/tpahere ` or `/tphere `
– `/tpaccept`
– `/tpdeny`
– `/tpatoggle`
– `/tpablock `
– `/tpaunblock `
– Homes:
– `/tphome set [name]`
– `/tphome set default `
– `/tphome delete `
– `/tphome list`
– `/tphome [name]` or `/tpahome [name]`
– Home list is clickable and shows coordinates.
– The default home is marked with `(default)`.
– Utility teleports:
– `/rtp`
– `/spawn`
– `/tpaback` or `/tpdeath` (last death location, one use per death)
– OP commands:
– `/ytp `
– `/ytp `
– `/ytp [realm]`
– `/ytp [realm]`
– `/tpoffline `
– `/tpalog [page]`
– In-game admin config (OP):
– `/yatpa settings`
– `/yatpa gui` (Paper, paginated inventory editor for all settings; click to toggle/edit)
– `/yatpa set `
– `/yatpa reload`
– `/setspawn`
– Player help page:
– `/tpahelp`
– `/tphelp`
– `/yatpa help`
– Public help intentionally excludes admin commands.
– When teleport costs are enabled, a `Costs` section is shown at the bottom listing only teleports with non-zero costs.
## Notable Behavior
– Requests:
– Timeout + cooldown are enforced.
– Accept/deny messages are clickable.
– If an accepted delayed teleport is cancelled (move/damage), the other player is notified.
– Teleports:
– Delayed teleports show a countdown.
– Costs are validated before countdown and charged on execution.
– Players are told exactly what they paid (XP, items, or currency).
– `ytp`/`rtp` use safe landing checks to avoid unsafe blocks and lava.
– `/tpaback` and `/tpdeath` consume the saved death location after successful use, and require a new death to refresh.
– Teleport logging:
– `/tpalog` is paginated and clickable.
– Log lines include context details (for example home name, target player, coords, or offline target) where relevant.
– Costs and settings:
– Cost modes: `NONE`, `XP_LEVELS`, `ITEM`, `CURRENCY`.
– Realm-specific RTP costs and min/max RTP distance overrides are supported.
– Paper `/yatpa gui` and `/yatpa set` expose currency paths directly.
– Restrictions and routing:
– Per-dimension restrictions can disable `/rtp` only or all YATPA teleports.
– `/rtp` supports blacklist + optional overworld routing.
– Spawn destination is configurable via `settings.spawn.*` and `/setspawn`.
– Platform note:
– Vault/EssentialsX currency charging is Paper-only in this release.
– Command/UX behavior in this README applies to both Paper and Fabric unless noted.
## Configuration
Paper config files:
– `paper/src/main/resources/config.yml`
– `paper/src/main/resources/messages.xml`
– `paper/src/main/resources/plugin.yml`
Fabric `config.properties` supports the same restrictions with either:
– `settings.dimension_restrictions.disable_rtp=overworld,minecraft:the_nether`
– `settings.dimension_restrictions.disable_teleport=minecraft:the_end,my_custom_dimension`
– Dynamic keys like `settings.dimension_restrictions.disable_teleport.minecraft:the_nether=true`
Licensed under `GNU General Public License v3.0` (GPL-3.0-only). See [LICENSE](LICENSE).
XyPlayTimeRewards
# XyPlayTimeRewards
A modern playtime progression plugin designed for survival servers and long-term player retention.
Players accumulate playtime while online and unlock milestone rewards as they progress. The plugin includes a clean GUI interface, daily rewards system, and playtime leaderboard to encourage consistent player activity.
—
## Features
### Milestone Rewards
Players unlock rewards automatically as they accumulate playtime.
### Daily Rewards
Encourages players to return regularly and stay engaged.
### Playtime Leaderboard
Displays the most active players on the server.
### Clean GUI System
Modern inventory-based interface for viewing and claiming rewards.
### Flexible Rewards
Supports economy rewards, coins and custom commands.
### Lightweight & Optimized
Designed to have minimal performance impact even on busy servers.
—
## Commands
`/playtimerewards`
Opens the rewards menu.
`/playtimerewards top`
Displays the playtime leaderboard.
`/playtimerewardsadmin reset `
Reset a player’s reward progress.
`/playtimerewardsadmin settime `
Manually adjust recorded playtime.
—
## Permission
`xyplaytimerewards.admin`
Required to use administrative commands.
—
## Configuration
The plugin includes several configuration files allowing full customization.
config.yml
rewards.yml
data.yml
Server owners can easily adjust reward tiers, GUI messages, and reward commands to match their server’s progression style.
—
## Compatibility
Tested on **Minecraft 1.21**
Works with:
– Paper
– Spigot
– Bukkit
– Purpur
XTRA Gunpowder
When obtaining Gunpowder is such a chore go with XTRA Gunpowder Mod as your first choice!, with nothing but Sand and Charcoal, you make your gunpowder woes disappear!
Created this for my CO-OP world with a friend who complained about how annoying killing Creepers Were.
Xshards
# Xshards Plugin
Xshards is a comprehensive Minecraft plugin designed to manage a shard-based economy system with player transfers, leaderboards, daily rewards, streaks, and multiple earning methods with a customizable shop interface. All data is reliably persisted to the database using batch operations and transaction management.
## Key Features:
– **Shard Economy System**: Players can earn shards through various activities, with configurable earning rates and integration with PlaceholderAPI. Database storage support (SQLite or MySQL) with fixed persistence.
– **Reliable Data Storage**: NEW! Fixed critical shop persistence bug – all shop items, player shards, and streak data now properly save with batch operations and transaction management.
– **Per-Message Control**: Every message in the plugin can now be enabled or disabled, giving server owners full control over chat clutter.
– **Admin Controls**: Robust shard management including give and remove commands.
– **Fully Customizable Shop System**: Supports custom items with lore and model data, adjustable shop sizes, and a price editing system with a purchase confirmation interface. NEW! Customize shop GUI title via config, and per-item display names/lore via `/store editname` and `/store editlore` commands – all stored in database.
– **Shard Transfer System**: Enable true player-to-player economy with GUI confirmation dialogs.
– **Leaderboard GUI & Holograms**: View top players with ranking system, player heads display, and pagination. Full PlaceholderAPI support for hologram leaderboards (e.g., %xshards_top_name_1%).
– **Daily Rewards & Streaks**: Automatic daily bonuses with configurable streak multiplier (Easy/Mid/Hard modes).
– **Advanced AFK System**:
– 5-second countdown with movement detection
– Free movement while in AFK mode
– Persistent location storage
– Automatic return to previous location
– Protection from damage while AFK
– Dedicated world support (recommended)
– Safe teleportation system
– Configurable earning rates
– Seamless server restart handling
## Earning Methods:
– **Playtime Rewards**: Earn shards by staying online.
– **PvP Rewards**: Gain shards from player kills with a cooldown system.
– **AFK Rewards**: Accumulate shards while in AFK mode with countdown system, movement detection, and dedicated world support.
## Commands:
Includes general commands for checking shard balance, opening the shop, and entering/exiting AFK mode, as well as admin commands for managing the shop, player shards (give/remove), and plugin configuration.
## Permissions:
Configurable permissions for basic and admin commands, ensuring a tailored experience for players and server administrators.
## Installation:
Simply download the plugin JAR file, place it in the server’s `plugins` folder, and configure it as needed.
## Database Storage:
XShards now supports both SQLite (default) and MySQL database storage, providing improved data persistence and reliability. The plugin automatically creates the necessary database tables and handles all data operations seamlessly.
For support and further details, please refer to the project’s GitHub repository.