YuRTP

# 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 |

#### Admin Commands

| Command | Description | Permission |
|———|————-|————|
| `/yurtp reload` | Reloads the configuration files (`config.yml` and `messages.yml`). | `yurtp.reload` |

#### Permission Nodes

| Permission | Default | Description |
|————|———|————-|
| `yurtp.use` | Everyone | Allows use of random teleport. |
| `yurtp.teleport.others` | OP | Allows teleporting other players. |
| `yurtp.bypass.cooldown` | OP | Bypasses the cooldown timer. |
| `yurtp.bypass.cost` | OP | Bypasses economy charges. |
| `yurtp.reload` | OP | Allows reloading the plugin configuration. |

### 3. Configuration Quick Reference

#### Core Options in `config.yml`

“`yaml
# Economy settings (requires Vault)
economy:
enabled: false
cost: 0.0

# Cooldown in seconds
cooldown:
seconds: 3

# Worlds where teleportation is forbidden
world-blacklist:
– lobby

# Default parameters (inherited by all worlds unless overridden)
default:
radius:
min: 500
max: 2000
height:
min: -64 # Leave blank to auto-detect from world
max: 320
safety:
check: true
allow-void: false
allow-water: false
allow-lava: false
max-attempts: 32
min-air-above: 8
blocked-materials:
– “MAGMA*”
– “CACTUS”
– “SWEET_BERRY_BUSH”
– “COBWEB”
– “*FIRE*”

# Per‑world overrides
worlds:
world_nether:
radius:
min: 200
max: 800
safety:
allow-lava: true

# 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.

### 5. Community & Support

– **QQ Group: 1080918424**
Bug reports · Feature suggestions · Update notifications · Technical discussions

– **Documentation & Updates**
The latest version and detailed documentation are always available within the community group.

**YuRandomTeleport — Every journey begins with anticipation.**

YUpdateChecker

[![Discord](https://img.shields.io/discord/1236019317208776786?style=flat&logo=discord&label=Discord&color=%235d6af2
)](https://discord.gg/kZJhKZ48j8)
# YUpdateChecker
Plugin and datapack update checker that works out of the box. No need to configure anything. Too good to be true? Well, yes. The catch is that it works only with projects downloaded from Modrinth, thanks to their awesome [API](https://docs.modrinth.com/api/).

## How it works?
It’s really simple. Plugin hashes a file (.jar or .zip), checks the hash using Modrinth API and logs the results. Yep, that’s it. Modrinth is doing the heavy lifting by hashing every single file that is uploaded and then making it available via their API. Only caveat is – you can’t change the contents of a downloaded jar or datapack. So no editing `plugin.yml` or MC functions. That’s how hashing works, different file – different hash. I mean, you can change it of course, it just won’t be picked by the plugin ¯\_(ツ)_/¯

### Additional info
– Messages are fully customizable with a lang file, supporting [PlaceholderAPI](https://github.com/PlaceholderAPI/PlaceholderAPI) and [MiniMessage](https://docs.advntr.dev/minimessage/index.html)
– Commands have tab completions
– Modrinth API is currently [rate limited](https://docs.modrinth.com/api#ratelimits) at 300 requests per minute per IP. Which means that an update check may take a little bit longer, if you have wayyy too many plugins/datapacks ~~or if you spam the check command~~. (Plugin makes 1 request per every Modrinth project that you use)

# Permissions
| Permission | Access to |
|——————————–|————————————–|
| `yupdatechecker.admin` | /yuc |
| `yupdatechecker.updates` | /updates |
| `yupdatechecker.updates.check` | /updates check |
| `yupdatechecker.updates.show` | /updates show [plugins | datapacks] |

# Media
Checking updates
![Gif presents an usage of the in-game commands. “/updates check” command is entered. Plugin proceeds to check updates while showing an action bar with current progress status. Upon completion a message is sent with a suggestion of running “/updates show” next. After running it, general data about the check is shown: how many plugins and datapacks were found on Modrinth, how many is up to date, and how long it took to complete the check.](https://i.imgur.com/rea1vRx.gif)

Looking through results
![Presented are results of “/updates show plugins” and “show datapacks”. Those are split into pages of 10 items, each listed under one another, with a name of a plugin/datapack and an information whether it’s up to date or whether it’s X versions behind. Names of the projects can be hovered for additional info like description and current/new version numbers. When clicked it will open an url with the latest plugin/datapack version that meets the config and Minecraft version requirements.](https://i.imgur.com/llPpHuL.gif)

# Integrity with other plugins
I make these plugins for me, according to my needs, meaning, I don’t search for every possible plugin that I don’t care about, that could be somehow better integrated with mine. But, if you care about better integration between this plugin and some other, then just let me know through [Discord](https://discord.gg/kZJhKZ48j8) or [GitHub](https://github.com/Ynfuien/YUpdateChecker) and I will see what I can do.

Same goes for any features that you think may be missing. If something isn’t outside the scope of the plugin, then I’ll probably do it.

# License
This project uses [GNU GPLv3](https://github.com/Ynfuien/YUpdateChecker/main/blob/LICENSE) license.

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**: `

### 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_

### 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 `

---

## 🧩 Gift for Developers

If you can write plugins, these events will make your secondary development experience fly:

| Event | Trigger | Modifiable Parameters |
|-------|---------|----------------------|
| `PrePaymentEvent` | Before payment | amount, payment method, order ID, cancel flag |
| `PaymentOrderCreatedEvent` | Order created successfully | read-only (has QR URL) |
| `PaymentCompletedEvent` | Payment success + rewards granted | read-only (full data) |
| `PaymentFailedEvent` | Payment failed / canceled | read-only |
| `RefundCompletedEvent` | Refund completed | read-only |
| `RedeemCodeRedeemedEvent` | Code redeemed | read-only |
| `RedeemCodeLifetimeEvent` | Code status changed | read-only (old → new state) |
| `PlayerPointsChangedEvent` | Economy changed | read-only |

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.**

***

# 📖 YuPay Operation Manual

## 1. Environment Requirements

| Item | Requirement |
|------|-------------|
| Server | Spigot / Paper / compatible forks / compatible hybrid servers, 1.8 – 1.26+ |
| Java | JDK 8 or higher |
| Optional dependencies | Vault (economy), PlayerPoints (points), PlaceholderAPI (placeholders), ProtocolLib (map lock) |

> 🎉 **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 |

### 3.3 Alipay Parameters

| Path | Description |
|------|-------------|
| `alipay.enabled` | Enable |
| `alipay.mode` | `public_key` or `cert` |
| `alipay.app-id` | App ID |
| `alipay.merchant-private-key` | Merchant private key (PKCS8, without headers/footers) |
| `alipay.alipay-public-key` | Alipay public key (required for public_key mode) |
| `alipay.app-cert-path` | App public key certificate (cert mode) |
| `alipay.alipay-cert-path` | Alipay public key certificate (cert mode) |
| `alipay.alipay-root-cert-path` | Alipay root certificate (cert mode) |
| `alipay.notify-url` | Async notification URL |
| `alipay.return-url` | Sync return URL |

### 3.4 Economy System

| Path | Description |
|------|-------------|
| `economy.enabled` | Enable economy rewards |
| `economy.type` | `vault` or `playerpoints` |
| `economy.rate` | 1 yuan = how many in-game currency/points |

### 3.5 QR Code Display

| Path | Description |
|------|-------------|
| `qrcode.default-output-mode` | `link` / `text` / `map` |
| `qrcode.text-qr-size` | Text mode QR side length (characters, default 12) |
| `qrcode.text-black-char` | Black pixel character (default `██`) |
| `qrcode.api-url` | Image generation API for link mode |

### 3.6 Callback Server

| Path | Description |
|------|-------------|
| `callback.port` | Listening port |
| `callback.host` | Bind address (`0.0.0.0` = all interfaces) |
| `callback.io-threads` | IO thread count |
| `callback.worker-threads` | Worker thread count |
| `callback.allowed-ips` | IP whitelist (CIDR format, empty = allow all) |
| `callback.access-log` | Enable access logging |

### 3.7 Database

| Path | Description |
|------|-------------|
| `database.type` | `sqlite` (standalone) or `mysql` (multi-server sync) |
| `database.mysql.*` | MySQL connection parameters |
| `database.connection-pool.*` | HikariCP connection pool parameters |
| `database.table-names.prefix` | Table prefix to avoid conflicts |
| `database.table-names.*` | Individual business table names (can be customized) |

## 4. Complete Reward Configuration Guide

### 4.1 Base Reward (on-success)

Executed on every successful payment — suitable for "base reward every sponsorship".

```yaml
commands:
on-success:
- "give {player} diamond 1"
- "effect give {player} minecraft:speed 30 1"
```

Available variables: `{player}` (player name), `{amount}` (amount), `{points}` (economy points earned)

### 4.2 Single Milestone (on-single-achieved)

Triggered when a single payment reaches a set amount. **Sort amounts from low to high**, multiple tiers allowed.

```yaml
commands:
on-single-achieved:
- amount: 50
commands:
- "say {player} reached 50 yuan in a single sponsorship!"
- "give {player} minecraft:gold_block 5"
- amount: 100
commands:
- "give {player} minecraft:diamond_block 3"
- "lp user {player} parent set vip"
```

### 4.3 Total Achievement (on-total-achieved)

Triggered when lifetime total reaches a new height. **Each tier triggers only once** — anti-duplicate mechanism built-in.

```yaml
commands:
on-total-achieved:
- total: 100
commands:
- "lp user {player} parent set vip"
- total: 1000
commands:
- "lp user {player} parent set ultimate"
- "give {player} minecraft:beacon 1"
```

### 4.4 Limited Sprint Reward (on-recent-achieved)

Triggered when cumulative amount within a specified time period (milliseconds) reaches the target. Great for holiday events, weekend leaderboard pushes, etc.

```yaml
commands:
on-recent-achieved:
- time: 86400000 # 24 hours
total: 200
commands:
- "give {player} minecraft:enchanted_golden_apple 5"
- time: 604800000 # 7 days
total: 500
commands:
- "give {player} minecraft:elytra 1"
```

### 4.5 Refund Trigger Commands (on-refund)

Executed after a successful refund — can be used to notify admins, log events.

```yaml
commands:
on-refund:
- "say {player}'s order {order} has been refunded {amount} yuan"
```

## 5. Command System

### 5.1 Player Commands

| Command | Function | Default Aliases |
|---------|----------|----------------|
| `/donate [payment] [output] [-n]` | Initiate sponsorship | `/pay`, `/zanzhu` |
| `/ytop` | Sponsorship leaderboard Top10 | `/paytop`, `/yt` |
| `/ytotal [player|all]` | Query total sponsorship | `/paytotal`, `/ytt` |
| `/yp history [page]` | My sponsorship history | `/yupay history` |
| `/yp lang [language]` | Switch personal language preference | |
| `/yp code redeem ` | Redeem a code | |
| `/yp cancel` | Cancel current map payment | |

> 💡 The `-n` flag means "no-reward sponsorship" — pure server support, no reward commands or economy items triggered.

### 5.2 Admin Commands

| Command | Function |
|---------|----------|
| `/yp reload` | Hot reload configuration |
| `/yp set

### 5.3 Key Permission Nodes

| Permission Node | Operations |
|----------------|------------|
| `yupay.command.pay` | Initiate sponsorship |
| `yupay.command.top` | View leaderboard |
| `yupay.command.total` | Query total sponsorship |
| `yupay.command.history` | View order history |
| `yupay.reload` | Reload config |
| `yupay.ban` | Manage blacklist |
| `yupay.convert` | Currency conversion |
| `yupay.audit` | Event listener audit |
| `yupay.admin` | Includes all above admin permissions |

## 6. Redeem Code System In-Depth

### 6.1 Code Creation Command Details

Code creation uses named parameters in `--param value` format, freely combinable:

```bash
# Free welfare code (unlimited uses, never expires)
/yp code create --code FREEGIFT --max-uses -1 --economy vault --eco-amount 100 --remark "New player gift"

# Paid activation code (pay 50 yuan to redeem, 100 uses, expires after 30 days)
/yp code create --code PREMIUM --amount 50 --economy vault --eco-amount 5000 --max-uses 100 --expire 30d --commands "lp user {player} parent set vip"

# Command-only code (no economy, no payment)
/yp code create --code WELCOME --commands "give {player} diamond 5; say {player} Welcome back!"
```

**Parameter quick reference:**

| Parameter | Description | Example |
|-----------|-------------|---------|
| `--code` | Code string (auto-uppercase) | `VIP2026` |
| `--amount` | Required payment amount (0 = free) | `50` |
| `--economy` | Economy type (vault / playerpoints / none) | `vault` |
| `--eco-amount` | Economy reward amount | `5000` |
| `--max-uses` | Max redeem count (-1 = unlimited) | `100` |
| `--expire` | Expiry time (`30d` / `24h` / `2026-12-31` / `never`) | `30d` |
| `--commands` | Commands to execute on redemption (semicolon-separated) | `"cmd1; cmd2"` |
| `--remark` | Remark description | `"VIP activation code"` |

### 6.2 Code Status Explanation

| Status | Meaning |
|--------|---------|
| `ACTIVE` | Usable |
| `DEPLETED` | Uses exhausted (automatic) |
| `EXPIRED` | Expired (automatic) |
| `DISABLED` | Manually disabled by admin |

### 6.3 Code PAPI Placeholders

Using code `VIP2026` as example:

| Placeholder | Example Return |
|-------------|----------------|
| `%yupay_code_total%` | Total number of codes |
| `%yupay_code_active%` | Number of active codes |
| `%yupay_code_VIP2026_status%` | `ACTIVE` |
| `%yupay_code_VIP2026_amount%` | `50.00` |
| `%yupay_code_VIP2026_used%` | `23` |
| `%yupay_code_VIP2026_max_uses%` | `100` |
| `%yupay_code_VIP2026_expire_formatted%` | `2026-12-31 23:59` |
| `%yupay_code_VIP2026_can_redeem%` | `true` / `false` |
| `%yupay_code_VIP2026_locked%` | `true` / `false` |
| `%yupay_code_VIP2026_redeemed%` | Whether current player has redeemed |

## 7. Refund System In-Depth

### 7.1 Refund Method Comparison

| Method | Command Example | Use Case |
|--------|-----------------|----------|
| Direct refund | `/yp refund ORDER001 50` | Confirmed refund needed, quick processing |
| Forced refund | `/yp refund ORDER001 50 -f` | Skip amount check, refund directly |
| Partial refund | `/yp refund ORDER001 30` | Refund part of the amount |
| Approval workflow | `/yp refund request ORDER001` → wait for approve | Scenarios requiring approval |
| Code refund | `/yp refund -r ` | Refund code payment + restore usage count |

### 7.2 Refund Approval Workflow

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`:

```yaml
language:
mappings:
zh_cn:
file: "messages.yml"
aliases: [zh, cn, chinese]
client-locales: ["zh_cn", "zh_*"]
en:
file: "messages_en.yml"
aliases: [english, eng]
client-locales: ["en_*"]
ja:
file: "messages_ja.yml"
aliases: [japanese, jp]
client-locales: ["ja_*"]
```

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.
```

云游轻量生存整合包【YunGames Lite Survival Optimization】

A vanilla-friendly client modpack for solo players, built on Fabric 1.21.8+.

This pack enhances the core Minecraft experience with performance optimizations, UI improvements, and immersive sound and visual tweaks—without altering gameplay mechanics or breaking vanilla saves.

![General game screen display and information prompts for using shortcuts](https://cdn.modrinth.com/data/cached_images/6df8e14974f29fbeb86f4b633918cdfda1a6aaa9.png)
General game screen display and information prompts for using shortcuts

![Features night vision capability that can be activated at any time.](https://cdn.modrinth.com/data/cached_images/210d0f3ed70bf0a66818aec46b86eb63043a2e03.png)
Features night vision capability that can be activated at any time.

# 🎯 Built-in Features
– Fully compatible with vanilla worlds and singleplayer saves
– Includes Sodium, Lithium, Krypton, FerriteCore for performance
– Enhanced UI with EssentialGUI, REI, Inventory Profiles Next
– Dynamic lighting, footsteps, and sound physics for immersion
– Built-in Chinese localization and resource packs for better accessibility
– Shader-ready with Iris pre-installed

# 🧩 Recommended Resource Packs
– CozyUI+ – clean and modern interface[CozyUI+](https://modrinth.com/resourcepack/cozyui-plus)
– BDcraft Music & Sound – immersive audio experience[BDcraft Music & Sound](https://bdcraft.net/downloads/musicpack-minecraft/)

# 🌤 Shader Support
Due to licensing restrictions, no shaders are bundled with this client. However, you’re not limited to the listed resource packs, shaders, or world saves — thanks to the built-in Resourcify mod, you can easily download any additional content you need directly from the in-game resource manager (top-right corner of the interface). No external tools or community uploads required — true self-sufficiency!

This client is perfect for players who want to enhance their experience without compromising the vanilla survival feel. It’s fully compatible with non-modded servers, so you can enjoy plugin-based multiplayer worlds without any issues.

如果有任何建议和疑问可以:
– 语音文字方式交流,[点击加入 · 小黑盒语音](https://chat.xiaoheihe.cn/iyeek8ln)
– 加入腾讯QQ群交流,[点击加入 · 作者QQ群交流](https://qm.qq.com/cgi-bin/qm/qr?k=j6D_aoLEs6vw50N_g9-OjjPBCwnJb-8z&jump_from=webapi&authKey=hiDPS1qMop0aCTlP4Volf0CkGsHpzkSvOy9dWZAIy7ojXeCgfIZW5gZfI0eBjduR)

中文介绍

一个适合单人玩家的原版兼容整合包,基于 Fabric 1.21.8+ 构建。
整合包在不改变原版玩法的前提下,提供性能优化、界面增强、沉浸式音效与视觉体验。

# 🎯·客户端内置
– 完全兼容原版世界与单人存档
– 集成 Sodium、Lithium、Krypton、FerriteCore 等性能优化模组
– UI 强化:EssentialGUI、REI、Inventory Profiles Next
– 沉浸式体验:动态光源、脚步声、音效物理
– 内置基础汉化与材质包,提升中文玩家体验
– 支持光影,预装 Iris,随时开启视觉增强

# 🧩·资源包推荐
– CozyUI+ – 简洁现代的界面[CozyUI+](https://modrinth.com/resourcepack/cozyui-plus)
– BDcraft Music & Sound – 沉浸式音频体验[BDcraft Music & Sound](https://bdcraft.net/downloads/musicpack-minecraft/)

# 🌤·光影包推荐
由于一些版权问题,未内置任何光影

# 🛠·安装下载
这是写给新手如何安装这个整合包,可以使用 Modrinth App、 hmcl、pcl、pclce等等启动器,通过导入整合包的方式进行安装客户端

# ⚠·注意事项
导入的整合包本包含config设置,但是由于各个用户环境不一致,所以可能并未被调用
客户端自行导入并成功启动后,记得
1.资源包一定要加载 内置我写的汉化 资源包,想要更好的体验可以加上 CozyUI+ 资源包
2.按键设置记得修改自己喜欢的设置,其中比较特殊的按键设置,I键是投影模组 litematica 的功能,可以通过游戏设置界面的 模组 选项来选择各个模组的设置,包括设置投影模组litematica,找到功能设置 I 键的地方,修改或者按ESC键清除即可解决重复功能的问题

内涵的一些文件加配置只针对该整合包,不适用于任何其它地方,禁止分发、销售、牟利、暴力拆解破解等破坏性使用。可以用于个人学习,游玩使用!

以上列出的材质,光影,甚至存档等等,并不局限于这些,客户端内置 Resourcify 模组,可以通过客户端相关界面右上角选择下载所需资源,做到真正不求与人,自力更生!

客户端适合希望提升体验但不破坏原汁原味的玩家,也能正常访问非模组的插件服务器生存!

Yummy Dirt

The texture for dirt (and related blocks) has almost never been changed, even after 1.14 (“The Texture Update”). So I decided to change all of the textures to be less noisy(?) and, some may say, tastier.
– Changed dirt, coarse dirt, rooted dirt, grass, podzol, mycelium, snowy grass, and hanging roots
– Every one has at least 2 texture variations and multiple rotation variations

(don’t eat dirt)

YumeWPack

## 🇺🇸 English — YumeWPack

**YumeWPack** is designed for **performance, convenience, and atmosphere**.
It replaces outdated Optifine with a modern optimization stack, making Minecraft **faster, smoother, and more beautiful**.

Instead of clutter and overload, this pack focuses on **minimalism and comfort**:
– 🎮 **Performance**: Faster startup, higher FPS, stable gameplay.
– 🌄 **Atmosphere**: Better lighting, immersive sounds, small details that make the world feel alive.
– ⚡ **Convenience**: No annoying warnings, quick quitting, handy tools for building.

Perfect for players who want to **enjoy Minecraft without hassle** — smooth, optimized, and immersive.

📂 Click to expand the full mod list

### ⚡ Optimization
| Mod | Description |
|—–|————-|
| Sodium | Main graphics optimization |
| Lithium | Game logic optimization |
| Indium | Indigo shader support |
| Entity Culling | Hides invisible entities to increase FPS |
| More Culling | Extra rendering optimizations |
| FastQuit | Allows instant quitting without delays |
| BadOptimizations | Misc performance improvements |
| ImmediatelyFast | Render optimizations |
| ThreadTweak | Thread optimization |
| FerriteCore | Memory optimization |
| Clean F3 | Minimalist F3 debug screen |
| ModernFix | Large-scale performance fixes |
| C2ME (Concurrent Chunk Management) | Optimizes chunk handling |
| Krypton | Networking optimization |

### 🌄 Atmosphere / Visuals
| Mod | Description |
|—–|————-|
| Lighty | Improved lighting |
| Drip Sounds | Rain and dripping sound effects |
| Falling Leaves | Leaves falling from trees |
| Hysteria Shaders | Shader enhancement |
| Iris Shaders | Shader support |
| Complementary Shaders – Reimagined | Extra shader effects |
| Glowing Torchflower | Light-emitting plants |
| Fancy Crops | Improved crop visuals |
| Motschen’s Better Leaves | Better leaf textures |
| Animatica | Animation support |
| Fresh Animations | Improved mob animations |
| Fresh Animations – Extensions | Additional animation features |
| Very Many Players | Visual tweaks for large servers |

### 🛠 Tools / Gameplay Enhancements
| Mod | Description |
|—–|————-|
| World Play Time | Shows time spent in the world |
| Litematica | Tool for building and copying structures |
| Item Logger | Tracks item usage |
| Easy Shulker Boxes | Quick access to shulker contents |
| Enchant Icons | Shows enchantment icons |
| Status Effect Bars | Stylish status effect indicators |
| Horse Buff | Enhances horses |
| Pick Up Notifier | Shows items picked up |
| Customizable Elytra | Elytra customization |
| Toggle Item Frames | Manage item frames |
| Better Beds | Improved beds |
| Eating Animation | Eating animation improvements |
| Not Enough Animations | Extra animations |
| RightClickHarvest | Harvest crops with right click |
| Text Formatting Everywhere | Colored text support |
| More Chat History | Extended chat history |
| Chat Heads | Avatars in chat |
| Skin Shuffle | Switch skins randomly |
| Super Duper Vanilla | Vanilla enhancements |
| Dungeons and Taverns | New structures and gameplay features |
| Reese’s Sodium Options | Extra Sodium settings |
| Particular | Particle effects |
| Detail Armor Bar | Improved armor bar display |
| Even Better Enchants | Enhanced enchantments |
| Visual: Armor Trims | Decorative armor trims |
| Model Gap Fix | Fixes for model gaps |
| Mob Crates | Mob-in-a-box feature |
| Simple Grass Flowers | Adds grass flowers |
| DashLoader | Faster resource loading |

### 📦 Libraries / APIs
| Mod | Description |
|—–|————-|
| Fabric API | Base Fabric API |
| MaLiLib | Mod library |
| ukulib | Mod library |
| OctoLib | Mod library |
| JamLib | Mod library |
| MonoLib | Mod library |
| YACL (YetAnotherConfigLib) | Configuration library |
| CIT Resewn | Custom item textures |
| Architectury API | Cross-platform mod API |
| Cardinal Components API | Mod component API |
| TCDCommons API | Library for mods |
| ETF Entity Texture Features | Custom entity textures |
| Text Placeholder API | Text API support |
| Language Reload | Fast language reload |
| Prism | Mod library |
| MidnightLib | Mod library |
| Collective | Mod library |
| Forge Config API Port | Configuration API port |
| owo-lib | Mod library |
| ThreadTweak | Thread handling API |

## 🇷🇺 Русский — YumeWPack

**YumeWPack** создан для **производительности, удобства и атмосферы**.
Он заменяет устаревший Optifine на современный набор оптимизаций, делая Minecraft **быстрее, плавнее и красивее**.

Вместо перегрузки и хаоса этот пак делает акцент на **минимализм и комфорт**:
– 🎮 **Производительность**: Быстрый запуск, высокий FPS, стабильная игра.
– 🌄 **Атмосфера**: Улучшенное освещение, звуки, мелкие детали делают мир живым.
– ⚡ **Удобство**: Нет раздражающих предупреждений, быстрый выход, полезные инструменты для строительства.

Идеален для игроков, которые хотят **наслаждаться Minecraft без проблем** — плавно, оптимизированно и атмосферно.

📂 Нажмите, чтобы раскрыть полный список модов

### ⚡ Оптимизация
| Мод | Что делает |
|—–|————|
| Sodium | Оптимизация графики |
| Lithium | Оптимизация логики игры |
| Indium | Поддержка шейдеров Indigo |
| Entity Culling | Скрывает невидимые сущности для FPS |
| More Culling | Дополнительная оптимизация рендеринга |
| FastQuit | Быстрый выход из игры |
| BadOptimizations | Разные улучшения производительности |
| ImmediatelyFast | Оптимизация рендера |
| ThreadTweak | Оптимизация потоков |
| FerriteCore | Оптимизация памяти |
| Clean F3 | Минималистичный F3 экран |
| ModernFix | Крупные исправления производительности |
| C2ME (Concurrent Chunk Management) | Оптимизация чанков |
| Krypton | Оптимизация сети |

### 🌄 Атмосфера / Визуал
| Мод | Что делает |
|—–|————|
| Lighty | Улучшенное освещение |
| Drip Sounds | Звуки дождя и капель |
| Falling Leaves | Падающие листья с деревьев |
| Hysteria Shaders | Улучшенные шейдеры |
| Iris Shaders | Поддержка шейдеров |
| Complementary Shaders – Reimagined | Доп. эффекты шейдеров |
| Glowing Torchflower | Светящиеся растения |
| Fancy Crops | Красивые культуры |
| Motschen’s Better Leaves | Красивые листья |
| Animatica | Поддержка анимаций |
| Fresh Animations | Улучшенные анимации мобов |
| Fresh Animations – Extensions | Дополнения к анимациям |
| Very Many Players | Визуальные улучшения для больших серверов |

### 🛠 Инструменты / Игровые улучшения
| Мод | Что делает |
|—–|————|
| World Play Time | Показывает время в мире |
| Litematica | Инструмент для построек и копирования схем |
| Item Logger | Логирует предметы |
| Easy Shulker Boxes | Быстрый доступ к шёлкерам |
| Enchant Icons | Иконки зачарований |
| Status Effect Bars | Индикаторы эффектов |
| Horse Buff | Улучшение лошадей |
| Pick Up Notifier | Уведомления о поднятых предметах |
| Customizable Elytra | Настройка элитр |
| Toggle Item Frames | Управление рамками для предметов |
| Better Beds | Улучшенные кровати |
| Eating Animation | Анимация еды |
| Not Enough Animations | Доп. анимации |
| RightClickHarvest | Сбор урожая ПКМ |
| Text Formatting Everywhere | Цветной текст |
| More Chat History | Расширенный чат |
| Chat Heads | Аватары в чате |
| Skin Shuffle | Смена скинов |
| Super Duper Vanilla | Улучшения ванильного контента |
| Dungeons and Taverns | Новые структуры и механики |
| Reese’s Sodium Options | Настройки Sodium |
| Particular | Эффекты частиц |
| Detail Armor Bar | Индикатор брони |
| Even Better Enchants | Улучшенные зачарования |
| Visual: Armor Trims | Декоративные узоры брони |
| Model Gap Fix | Исправление моделей |
| Mob Crates | Мобы в ящиках |
| Simple Grass Flowers | Цветы в траве |
| DashLoader | Быстрая загрузка ресурсов |

### 📦 Библиотеки / API
| Мод | Что делает |
|—–|————|
| Fabric API | Основное API Fabric |
| MaLiLib | Библиотека для модов |
| ukulib | Библиотека для модов |
| OctoLib | Библиотека для модов |
| JamLib | Библиотека для модов |
| MonoLib | Библиотека для модов |
| YACL (YetAnotherConfigLib) | Библиотека настроек |
| CIT Resewn | Кастомные предметы |
| Architectury API | Кроссплатформенное API модов |
| Cardinal Components API | Компоненты для модов |
| TCDCommons API | Библиотека для модов |
| ETF Entity Texture Features | Кастомные текстуры мобов |
| Text Placeholder API | API для текста |
| Language Reload | Быстрая перезагрузка языков |
| Prism | Библиотека для модов |
| MidnightLib | Библиотека для модов |
| Collective | Библиотека для модов |
| Forge Config API Port | Порт API конфигов |
| owo-lib | Библиотека для модов |
| ThreadTweak | Оптимизация потоков |

Yuki Suou Totem (Alya hides her feelings in russian)

🖤 Yuki Suou Totem Resourcepack — *Alya Sometimes Hides Her Feelings in Russian Edition*
Carry quiet elegance—replace your Totem of Undying with Yuki Suou from *Alya Sometimes Hides Her Feelings in Russian*!
This resourcepack transforms the vanilla totem into a custom Yuki model, perfect for fans of her composed demeanor, student council charisma, and Suou family legacy.

✨ Features
✅ Replaces the Totem of Undying with Yuki
🧩 Compatible with vanilla gameplay and datapacks
🔁 Modular asset structure for easy editing and anime swaps
🛠️ Works with Minecraft 1.16+

Yreb’s Sugarcane 512x

This resource pack replaces Minecraft’s default multi-stalk sugarcane with a single, clean cane.

Vanilla sugarcane stacks several noisy sprites into one block, which turns big farms into a wall of visual static. This pack cuts that down massively, while still keeping the plant from looking flat or boring.

Youtubers Essentials

This Modpack Requires Fabric to run. it includes **Optimization** mods and **utility** mods as well also a great **Alternative To Optifine** adding a lot of features like connected glass, custom textures loader, custom gui loader etc. This Modpack Was Made By [mcwarriorxd](https://modrinth.com/user/mcwarriorxd)
(Mods That Give Unfair Advantage Isnt Available e.g: xaero’sminimap,freecam etc)
This Is A Must Have ModPack For **Youtubers**

YouTuber Swords

Youtuber Swords

The YouTuber Swords datapack adds a bunch of new unique, crazy, and OP swords themed around your favorite YouTubers. Unlike my other datapacks, this one is meant to be overpowered and fun to mess around with, while not needing to fit perfectly into an SMP. This pack requires my Moar Swords datapack to be installed in order to use this datapack.


You can craft them in the Vanilla Crafting Table. All recipes can all be found HERE, or in-game in the Recipe Guide

The datapack REQUIRES this Library, as well as this Resource Pack.

Moar Swords must be installed for this pack to work!

Moar Diamonds must be installed to Craft any of the Swords!


Learn more from this video:




Free YouTuber Swords

  • Admin4cc Sword:
    • On Hit: Spawns a burning cow that explodes after a few seconds.
    • Right Click: Shoots a random Moar Wand ability (if Moar Wands is installed).
    • Passive: Has a red particle trail.
  • Dream Sword:
    • On Hit: Makes blaze drop more blaze rods.
    • Right Click: Makes all nearby mobs/players glow for 1 second..
    • Passive: 15% speed boost, auto water clutch, and auto lava boat clutch.
  • Techno-Blade:
    • On Hit: Makes mobs drop potatoes and porkchops.
    • Right Click: Shoots arrows..
    • Passive: No attack cooldown.
  • Logdotzip Sword:
    • On Hit: Makes mobs drop Steak.
    • Right Click: Summons his development team to shoot explosive lasers..
    • Passive: Spawns a chicken named Drumstick. Doesn’t have a loot table.
  • Craftee Sword:
    • On Hit: Makes mobs drop rarely drop diamonds.
    • Right Click: Throw a random TNT..
    • Passive: Leave a trail of fake gold that turns mobs that walk over it into gold.
  • MrBeast Sword:
    • On Hit: Puts the target in a circle. If they leave it, they die.
    • Right Click: Throw damaging money..
    • Passive: Get a load of useful buffs.
  • Grian Sword:
    • On Hit: Summons TNT on the target.
    • Right Click: Throw eggs… (Grian isn’t the chicken man though).
    • Passive: While flying with an Elytra, slowly get firework rockets.
  • Mumbo Jumbo Sword:
    • On Hit: Sometimes drops redstone components.
    • Right Click: Shoots a redstone laser that explodes on contact with mobs..
    • Passive: Leave a trail of charged redstone that zaps mobs that walk over it with lightning.
  • Element Animation Sword:
    • On Hit: Drop an anvil of cubic villagers on the target.
    • Right Click: Throw damaging villagers at mobs..
    • Passive: Gives all mobs that can wear hats villager noses.
  • Sigils Sword:
    • On Hit: Sends the target flying high into the sky.
    • Right Click: Cause mobs you are looking at to get stunned in place due to their weak knees..
    • Passive: Green Particle Trail.

Patron Exclusive Totems ($1+)

  • xNestorio Sword:
    • On Hit: Turns the mob into a walking AI that mines rapidly in front of them. This mob has armor that looks like a suit.
    • Right Click: Launches a giant arrow where you aim that destroys blocks or deals a ton of damage to mobs..
    • Passive: Gives a random positive potion effect every 30 seconds.
  • Henwy Sword:
    • On Hit: Rarely turns mobs into gold.
    • Right Click: Throws damaging feet where you aim..
    • Passive: Provides some armor.
  • Jelly Sword:
    • On Hit: Bounces the mob into the air.
    • Right Click: Throw a damaging game controller where you aim..
    • Passive: Slide down the sides of blocks.
  • Captainsparklez Sword:
    • On Hit: Summons a creeper on the target that explodes after a second. AWW MAN.
    • Right Click: Set your spawnpoint..
    • Passive: Speed + Jump Boost.
  • JeromeASF Sword:
    • On Hit: Rips zombies arms off, like Chewbacca.
    • Right Click: Throws damaging diamond axes where you aim..
    • Passive: Grants strength 2.
  • Ssundee Sword:
    • On Hit: Slows the hit mob a bit.
    • Right Click: Throws a fireball where you aim..
    • Passive: Jumping does a TNT jump with no fall damage.
  • Purpled Sword:
    • On Hit: Sends the target flying high into the sky.
    • Right Click: Cause mobs you are looking at to get stunned in place due to their weak knees..
    • Passive: Green Particle Trail.