YuPay
1.5.1.1YuPay is a modern, feature-rich payment and donation plugin designed for Minecraft servers (compatible with 1.8.x-1.26.x). It seamlessly integrates WeChat Pay and Alipay
1.5.1.1latestYuPay 1.5.1.1Jul 31, 2026 Fixed bug1.5.1.0YuPay 1.5.1.0Jun 19, 2026 YuPay - 1.5.1.0 全新发布 1. 下单,支付成功,退款支持email发送通知到您的邮箱,并可自由配置每一项的开关 2. 支持给任意订单不管任何状态的自定义仅管理员可见的备注信息 3. 实现对1.8.x-1.26.x的paper/spigot/purpur/folia/leaves以及混合端作了全版本适配 4. 修复在客户端/服务端加载了奇怪插件与mod的情况下的地图未出现的bug 5. 强化配置更新机制 6. 版本更新检查机制
1.5.0.0YuPay 1.5.0.0May 30, 2026 YuPay 1.4.1.0 → 1.5.0.0 Major Update: 1. Fixed a long-standing bug where rewards could occasionally be duplicated after payment. 2. Fixed a long-standing bug where payment would still be processed after cancellation. 3. Introduced a wide range of APIs for seamless third-party plugin integration. 4. Added more Bukkit events for third-party plugins to listen to. 5. Implemented richer and more comprehensive commands. 6. Expanded in-game interaction capabilities. 7. Improved the refund mechanism. 8. Fixed bugs related to refunds. 9. Fixed an issue where configuration file updates failed to fill in missing entries. 10. Implemented a cross-server mechanism supporting multi-server environments.1.4.1.0YuPay 1.4.1.0May 12, 2026 Yupay Plugin Update Notice v1.4.1.0 (Upgrade from v1.4.0.3) Dear Server Owners & Admins, This update brings the following improvements and fixes:
Fixes
Fixed a crash caused by residual processes not being cleaned up when the plugin failed to start
Fixed startup failures in some modules
Enhancements
Strengthened the card key system for improved security
Strengthened the refund system with better transaction rollback logic
Strengthened permission nodes for more granular access control
Optimization
Improved compatibility on hybrid server environments --- 💖 Support & Feedback -
Aifadian (Sponsor / Get plugin): https://ifdian.net/item/012b6c1c4a0911f18d1b52540025c377 -
Player QQ Group: https://qm.qq.com/q/CihYemKufS -
GitHub (Bug reports / Suggestions): https://github.com/vicuna-main/YuPayIssueReport We recommend upgrading as soon as possible for a more stable experience. Thank you for your support! — Yupay Development Team
1.4.0.2YuPay 1.4.0.2May 10, 2026 1. 修复安装了protocol后无法扭头看二维码的BUG 2. 修复安装了protocol后矫正包过于频繁的问题 3. 增强history指令,现可以查看退款记录以及退款金额明细 4. 增强退款、卡密明细,现可以一键点击复制 5. 纠正部分文本错误1.4.0.1YuPay 1.4.0.1May 9, 2026 1.4.0.0 → 1.4.0.1 更新日志 - 修复了 Purpur 核心下的声音异常问题。 - 在没有 ProtocolLib 依赖的环境下,大幅增强了地图回收功能,物品复制现象减少 99%。 - 二维码生成速度提升 600%。 - 修复了在高版本 Paper 核心上二维码生成错误的 Bug。 - 完善了指令补全机制,现已实现 100% 全覆盖,所有指令均可无死角自动补全。1.4.0.0YuPay 1.4.0.0May 9, 2026 Yupay Sponsorship Plugin v1.4.0.0 – The “No Joke” Update (From 1.2.3.1 to 1.4.0.0) Server owners, this is the one you’ve been waiting for! Refunds, card keys, turbocharged performance, and a security guard that never sleeps — all packed into a seamless upgrade. Here’s the full rundown
1.
Seamless Upgrade — Fully Backward-Compatible No matter which older version you’re on, just drop in the new file and you’re done. No config loss, no headaches — truly a silent migration. 2.
Refund System Lands — Drama Ends Here Players can request refunds in-game; you can approve, reject, force-refund, or even issue partial refunds. Every single refund action leaves a clear trace, so disputes are a thing of the past. 3.
Payment History on Steroids — Paginate & Copy in a Snap Browse through historical payments page by page, and filter by date, amount, or status with ease. The little magic touch? One-click copy for order IDs — reconciliation just got twice as fast. 4.
PAPI Null Fix — No More Vanishing Act Fixed the problem where PAPI variables would simply disappear when the object was null. Now everything displays gracefully, leaving no awkward gaps in your menus or scoreboards. 5.
Ultimate Multilingual Evolution — Every Player, Their Own Language Ships with Simplified Chinese and English by default, and you can customize texts for any language you want. Here’s the real kicker: each player can independently set their own preferred language — a true “different player, different language” experience that makes global servers shine. 6.
Explosive Startup Boost — Dependency Check 600% Faster We rewrote the startup routine. Dependency verification is now 6 times faster, and the plugin no longer relies on JVM launch arguments. Just toss it into your plugins folder and you’re ready to roll. 7.
24/7 Security Radar — Guarding Every Cent A background security monitor now runs around the clock, detecting if any other plugin is trying to secretly listen in on Yupay. Any suspicious behavior triggers an immediate alert — consider your sponsorship funds under full-time bodyguard protection. 8.
Developer’s Playground — Full Lifecycle Events Now Open We’ve exposed hooks for the entire payment and card-key lifecycle. Devs can now tap into every tiny action, offering limitless possibilities for deep integration and custom extensions. 9.
Card Key System + 10+ PAPI Variables Arrive A brand-new card key module is live — create, edit, query, and redeem keys, with a full redemption history at your fingertips. Along with it come over 10 dedicated PAPI variables, so you can display card key info wherever your imagination desires.
Player & Community QQ Group: 1080918424 Ideas, feedback, bug reports, or just hanging out — you’re always welcome. See you there!
1.2.3.0YuPay 1.2.3.0Apr 15, 2026
感谢各位服主和玩家的支持!本次更新我们集中修复了一些“陈年老 BUG”,并根据大家的反馈优化了赞助流程中的细节体验。 ####YuPay 赞助系统 v1.22.1-1.2.3.0 更新日志
玩家体验优化 - 🖐️ 支付锁定状态新增按 [E] 退出 现在,当您拿着二维码地图等待支付时,除了输入
/yupay cancel或按 [Q] 丢出地图外,直接按 [E] 打开背包也会自动取消本次赞助并返还您原来的手持物品。三种退出方式任您选择,提示消息也更加明确了! - 📝 无偿赞助提示更清晰 使用-n参数进行无偿赞助时,游戏内会给出明确的消息提示,告知您本次赞助不会发放任何游戏内奖励,避免产生误解。 - 🗺️ 修复低版本服务器生成二维码地图失败的问题 针对部分 1.8 - 1.12 核心的服务器,我们修复了因注解兼容性导致的“无法生成二维码地图”或“地图生成报错”的问题。现在即便在较老的服务端核心上,地图支付功能也能稳定运行。 ####后台与管理功能改进 - 💰 支付宝证书模式兼容修复 修复了在后台配置支付宝证书模式(公钥证书)时无法正常发起支付或回调失败的问题。现在无论您使用普通公钥模式还是证书模式,赞助流程均能顺畅走通。 - ⚙️ 新增依赖库校验跳过开关 在
config.yml中新增了跳过启动时第三方库校验的选项。如果在某些特殊网络环境下启动极慢,现在可以通过配置加速启动过程(仅建议服主在遇到特定网络问题时开启)。 - 📋 支付宝接口调试日志配置 为服主增加了更详细的支付宝通讯日志开关。当遇到支付疑难杂症时,服主可以通过开启此配置快速定位是网络问题还是证书配置问题。 --- 📥 升级建议: 建议所有正在使用 YuPay 的服主更新至此版本,以获得更稳定的支付宝兼容性和更友好的玩家支付引导。
YuPay 团队 - 让每一次支持都充满温度 ❤️ ---如升级后遇到任何问题,欢迎加入交流 QQ 群 1080918424 反馈。
Thank you to all server admins and players for your continued support! This update focuses on resolving long-standing bugs and refining the in-game donation experience based on your feedback. ####YuPay Donation System v1.22.1-1.2.3.0 Changelog
Player Experience Improvements - 🖐️ Added [E] Key to Cancel Payment Lock While holding a QR code map awaiting payment, you can now press [E] to open your inventory to instantly cancel the donation. This will automatically return your original item. In addition to
/yupay canceland pressing [Q], you now have three intuitive ways to exit the payment screen. Hints in chat have been updated accordingly! - 📝 Clearer No-Reward Donation Prompt When using the-nparameter for a donation without in-game rewards, a distinct message will now appear in chat confirming that no perks or currency will be granted, preventing any potential confusion. - 🗺️ Fixed Map Generation on Legacy Server Versions Resolved an annotation compatibility issue that caused QR code maps to fail generation on older server cores (1.8 - 1.12). The map payment feature is now stable and reliable even on legacy Spigot/Paper forks. ####Backend & Admin Enhancements - 💰 Alipay Certificate Mode Compatibility Fix Fixed a critical issue where Alipay Certificate Mode (Public Key Certificate) configurations would fail to initialize or process callbacks correctly. The payment flow is now seamless regardless of whether you use standard public key mode or certificate mode. - ⚙️ Added Option to Skip Library Checksum Verification A new configuration option has been added to
config.ymlallowing admins to skip the startup checksum verification of runtime libraries. This can significantly speed up server startup in specific network environments. (Recommended for advanced troubleshooting only.) - 📋 Alipay API Debug Logging Introduced a configurable debug logging level for Alipay API communications. When encountering payment issues, admins can now enable detailed logs to quickly identify whether the problem is network-related or a certificate misconfiguration. --- 📥 Upgrade Recommendation: All server owners currently using YuPay are strongly encouraged to update to this version to ensure full Alipay compatibility and to provide a smoother guidance experience for donating players.
YuPay Team — Making every contribution feel rewarding ❤️If you encounter any issues after upgrading, feel free to join our QQ community group 1080918424 for support and feedback.
1.2.2.1YuPay 1.2.2.1Mar 23, 2026 Update to support JDK 81.2.2.0YuPay 1.2.2.0Mar 23, 2026 YuPay Release Notes · v1.2.2.0-SNAPSHOT
---Callback Server Upgrade
The built‑in HTTP callback server has been replaced from the JDK’scom.sun.net.httpserverto Undertow 2.3.18.Final. Undertow is a production‑grade HTTP server from the JBoss/WildFly project, widely used in enterprise Java applications. For plugin users, the most noticeable changes are: - Callback notifications are no longer queued or blocked when the server is busy – responses to WeChat Pay / Alipay notifications become more timely. - A request body size limit (default 64 KB) is added; abnormal requests are rejected directly, saving server resources. - An optional IP whitelist is added – when configured, only requests from the official WeChat/Alipay servers can reach the callback endpoint. - When the plugin stops, the callback server waits for in‑flight requests to finish before shutting down, so ongoing order confirmations are not interrupted. ---First Launch Instructions
Undertow and its dependencies are not bundled inside the plugin JAR. They will be automatically downloaded from Maven Central and cached inplugins/YuPay/libs/when the server starts for the first time. On first launch you will see log messages similar to the following – this is normal:
After the download completes, subsequent startups use the cached files without requiring an internet connection. Note: The server must be able to access `repo1.maven.org` on first launch. Please ensure network connectivity. ---[LibraryLoader] Downloading: undertow-core-2.3.18.Final.jar ← https://repo1.maven.org/maven2/... [LibraryLoader] ✓ Download completed: undertow-core-2.3.18.Final.jar (xxx KB) [LibraryLoader] ✓ Verification passed (newly downloaded): undertow-core-2.3.18.Final.jarNew Configuration Options in config.yml
The following optional fields have been added under the existingcallback:node. If omitted, the default values (shown in parentheses) will be used:
Old configuration files do not need to be modified manually. Any unspecified fields will fall back to the defaults, and the plugin can be updated without issues. ---callback: port: 8080 host: "0.0.0.0" # Threading model io-threads: 2 # Number of IO threads – recommended not to exceed CPU cores (default 2) worker-threads: 8 # Number of worker threads for business processing (default 8) # Timeouts (milliseconds) read-timeout-ms: 10000 write-timeout-ms: 10000 # Security max-body-size: 65536 # Maximum request body size in bytes (default 64 KB) allowed-ips: [] # IP whitelist – leave empty to disable # Debugging access-log: false # When enabled, logs every callback to the console # Shutdown behavior shutdown-grace-ms: 3000 # Grace period for graceful shutdown (milliseconds)Other Fixes
- Fixed an issue where cumulative sponsorship tier records were not saved when using SQLite. The original code used MySQL‑specificON DUPLICATE KEY UPDATEsyntax, which caused errors on SQLite and resulted in lost tier records. The plugin now automatically selects the correct syntax based on the database type. - Fixed a missing app_id consistency check for Alipay callbacks. The plugin now verifies that theapp_idin the callback matches the one configured. - Added a timestamp replay attack prevention check for WeChat Pay callbacks. Callbacks with a timestamp older than 5 minutes are rejected. --- If you encounter any issues after the upgrade, please feel free to join our QQ group 1080918424 for feedback.1.2.1.1YuPay 1.2.1.1Mar 21, 2026 YuPay 1.2.1 → 1.2.1.1 Changelog
Update Overview This update focuses on comprehensive stability and maintainability improvements. We have invested significant effort in thoroughly testing all features across all major Minecraft versions from 1.8 to 1.21, ensuring consistent and reliable performance in various server environments. Additionally, the core code has been deeply refactored, and built-in dependencies have been removed, resulting in a smaller plugin size, cleaner structure, and easier future maintenance.
Version Compatibility & Testing 1. Full Version Compatibility Testing Conducted complete regression testing on all major Minecraft versions from 1.8.x to 1.21.x*. * Resolved compatibility issues that caused feature malfunctions, command errors, or UI display problems across different API versions, ensuring consistent behavior on all supported platforms. * Improved interaction logic with economy plugins (Vault) across different versions, eliminating potential compatibility risks.
Improvements 1. Code Refactoring * Performed a comprehensive refactoring of the plugin's core logic, resulting in clearer functional module separation. * Optimized code structure, eliminated redundant code, and significantly improved readability and maintainability, laying a solid foundation for future feature development. * Standardized exception handling and logging for easier troubleshooting. 2. Size Optimization Removed all built-in dependencies* (such as HikariCP). These are now dynamically loaded via the server’s
lib/directory or environment. * This greatly reduces the plugin JAR file size and avoids conflicts caused by dependency version mismatches. 3. Configuration & File Structure * With the removal of bundled dependencies, the plugin file structure is now leaner, containing only the core functional code.Bug Fixes * Fixed command tab-completion issues on certain versions caused by API changes. * Resolved issues where certain features failed to work correctly on 1.13+ versions due to Material name changes. * Fixed potential exceptions in item generation and detection across different versions.
Configuration Changes This update does not modify the structure of
config.ymlormessages.yml. The configuration version remains unchanged. Important Note*: Because built-in dependencies have been removed, please ensure that required dependencies (such as Vault) are properly installed and configured on your server, and that their versions are compatible with your server core.Update Guide 1. Backup: Stop your server and back up the existing
plugins/YuPay/folder. 2. Replace: Delete the oldYuPay-1.2.1.jarfile and place the newYuPay-1.2.1.1.jarinto theplugins/directory. 3. Start: Start your server. The plugin will automatically load the new code. 4. Verify: After startup, check the console logs to ensure the plugin loads without errors. It is recommended to test core functions (such as/pay) in-game to confirm everything works as expected.Feedback & Support If you encounter any issues with the new version, please feel free to join our QQ group for support: 1080918424. Version: 1.2.1.1 Release Date: March 21, 2026
1.2.1YuPay 1.2.1Mar 20, 2026 YuPay 1.2 → 1.2.1 Changelog
This update focuses on feature enhancements and user experience improvements. It introduces a no‑reward donation mode, global blacklist, dynamic PAPI placeholders, in‑game configuration changes, and numerous hardcoded message cleanups, making the plugin more maintainable and flexible. ---Overview
New Features
1. No‑Reward Donation Mode (
- Players can donate without receiving any economy or command rewards by adding-n/--no-reward)-nto the command, e.g.,/pay 100 -n. - Order identification: No‑reward orders have aFREE_prefix in the order ID. - Use case: Pure support for the server without affecting game economy.2. Global Blacklist
- Use the keywordallto ban or unban all players at once. - Commands: -/yupay ban all [reason]– disables donations for everyone. -/yupay unban all– removes the global ban. - Use case: Quickly stop all donations in case of emergencies.3. Dynamic PAPI Placeholders
- New placeholders: -%yupay_top_<rank>_name%and%yupay_top_<rank>_amount%– supports both new (top_1_name) and old (top1_name) formats. -%yupay_is_banned%-%yupay_total_orders%,%yupay_success_orders%-%yupay_orders_in_<time>%,%yupay_success_orders_in_<time>%,%yupay_amount_in_<time>%- Server‑wide equivalents:%yupay_server_total_orders%,%yupay_server_success_orders%,%yupay_server_orders_in_<time>%,%yupay_server_success_orders_in_<time>%,%yupay_server_amount_in_<time>%- All time placeholders accept milliseconds as<time>.4. Enhanced Dynamic Configuration Editing
- New configuration optionseconomy.enabledandcommands.enabled. -/yupay setnow supports: -economy-enabled true/false– toggle economy rewards. -commands-enabled true/false– toggle command rewards. -min-amount,max-amount,max-daily-amount– adjust amount limits on the fly. - New/yupay configcommand to view current configuration (admin only).5. Message System Cleanup
- All hardcoded text has been moved tomessages.yml. - New message keys added: -pay-success-no-reward– success message for no‑reward donations. -config-header,config-footer,config-line– config display interface. -set-invalid-boolean– error for invalid boolean input. - Updatedban-usageandunban-usageto includeall. - Database‑related logs now use consistentdb-*keys.6. Database Enhancements
- New methods inPaymentDAO: -getOrderCountByUUID(),getOrderCountByUUIDInTime()-getServerOrderCount(),getServerOrderCountInTime(),getServerAmountInTime()---Optimizations & Improvements
Code Structure
- Unified QR code generation intoQRCodeUtils. - MergedMessageUtilsmethods intoMessageManager. - Streamlined no‑reward flag handling inPayCommandandYupayCommand.Version Compatibility
- Config version upgraded to 5. - Messages version upgraded to 5. - Vault is now a soft dependency (removed fromdependlist).Logging
- Database operations now use centralized message keys. - Blacklist actions log detailed information. ---
- Fixed no‑reward mode still triggering economy and command rewards. - Fixed map QR code display issues on some server versions. - Fixed global ban not preventing players from donating. ---Bug Fixes
Configuration Changes
New config.yml Options
economy: # Whether economy rewards are enabled enabled: true commands: # Whether command rewards are enabled enabled: trueNew messages.yml Keys
---pay-success-no-reward: "&a&l✅ &fDonation successful! You chose no-reward mode and received no bonuses." config-header: "&6&m⎯⎯⎯&r &e&l⚙ YuPay Configuration &6&m⎯⎯⎯&r" config-footer: "&6&m⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯&r" config-line: "&e{key}&7: &f{value}" set-invalid-boolean: "&cPlease enter true or false"Upgrade Guide
Automatic Update
1. Stop your server. 2. Replace the JAR withYuPay-1.2.1-SNAPSHOT.jar. 3. Start the server. The plugin will automatically update config files while preserving your custom values. 4. Check the console log for confirmation.Manual Update (if automatic fails)
1. Back up yourconfig.ymlandmessages.yml. 2. Delete the old config files. 3. Start the server to generate fresh configs. 4. Restore your custom settings manually from the backups. ---
For any questions or feedback, join our community: QQ Group: 1080918424 --- Version: 1.2.1-SNAPSHOT Release Date: March 20, 2026Support
1.2-SNAPSHOTYuPay 1.2-SNAPSHOTMar 19, 2026
Dear Server Owners, thank you for using YuPay! This update brings a host of new features, optimizations, and bug fixes designed to provide you with a more powerful and flexible donation management experience. Below are the detailed changes from version 1.1.1 to 1.2. ---YuPay 1.2 Update Notes
New Features
1. Donation Blacklist System
- Administrators can now ban specific players from using the donation feature, with an optional reason. - Commands: -/yupay ban <player> [reason]– Ban a player from donating -/yupay unban <player>– Unban a player - Banned players attempting to use/paywill receive a warning message, including the reason if provided. - The database automatically creates theyu_banned_playerstable; no manual intervention required.2. Currency Conversion Feature
- Administrators can use the/yupay convertcommand to convert between Vault currency and PlayerPoints. - Conversion rates can be set inconfig.yml(under theconversion-ratessection). - Command format:/yupay convert <player> <source_type(vault/points)> <target_type(vault/points)> <amount>3. Donation Amount Limits
- Configurable minimum/maximum single donation amounts (pay.min-amount/pay.max-amount, -1 for unlimited). - Configurable daily cumulative donation limit (pay.max-daily-amount); players exceeding this limit cannot donate further that day. - Clear warning messages are shown when limits are exceeded.4. Multiple QR Code Output Modes
- In addition to the original clickable link, now supports: - Text QR Code: Generates an ASCII-art QR code in chat, suitable for clients that cannot click links (e.g., Bedrock Edition). Can be used via/pay <amount> text. - Map QR Code: Generates a map item with the QR code placed in the player's inventory (requires ProtocolLib). Can be used via/pay <amount> map. - Default output mode can be set inconfig.yml(qrcode.default-output-mode:link/text/map).5. Order History Query
- Players can use/yupay history [page]to view their own donation records (order ID, amount, status, time). - Administrators can use/yupay history <player> [page]to view other players' history.6. More PAPI Placeholders
-%yupay_has_paid_in_<time_milliseconds>%– Whether the player has donated within the specified time (true/false) -%yupay_recent_amount_gt_<time_milliseconds>_<amount>%– Whether donations within the specified time exceed a threshold (true/false) -%yupay_pay_methods_count%– Number of available payment channels -%yupay_pay_methods_list%– List of available payment channel names (comma separated) -%yupay_is_limited%– Whether the player is currently restricted by the daily limit (true/false) -%yupay_daily_remaining%– Remaining donation amount for today7. Customizable Order Subject
- The product name for payment orders can now be customized inconfig.ymlunderpay.order-subject, supporting{player}and{amount}variables.8. Fully Customizable Command Aliases
- All command aliases can now be fully customized in thecommandssection ofconfig.yml, no longer restricted byplugin.yml. For example, you can change/payto/donate. ---
- New Configuration Options: -Configuration Changes
pay.min-amount– Minimum single donation amount (default: 0.01) -pay.max-amount– Maximum single donation amount (default: -1) -pay.max-daily-amount– Maximum cumulative daily donation amount (default: -1) -pay.order-subject– Order subject template -conversion-rates.vault-to-points/points-to-vault– Currency conversion rates -qrcode.default-output-mode– Default QR code output mode -qrcode.text-qr-size/text-black-char– Text QR code parameters -database.mysql.jdbc-params– Customizable MySQL JDBC parameters -database.table-names.banned-players– Blacklist table name (default:yu_banned_players) - Automatic Database Updates: On first startup of version 1.2, the plugin will automatically create the blacklist table and update indexes. It is recommended to back up your database beforehand, but the plugin includes a safe update mechanism. ---
- New Subcommands for `/yupay`: -Command Changes
set <option> <value>– Dynamically modify configuration (e.g., default payment method, economy type, conversion rates) -ban / unban– Manage the blacklist -convert– Currency conversion -history– Order history query - The `/pay` command now supports a third parameter to specify output mode: -/pay 10– Uses the default mode -/pay 10 wechat text– Specifies WeChat as the payment method and outputs a text QR code - All command aliases can be fully customized via the `commands` section in `config.yml`. ---
The following permission nodes have been added, allowing fine-grained control using plugins like LuckPerms: | Permission Node | Description | Default | |-----------------|-------------|---------| |Permission Changes
yupay.command.pay| Allows use of the pay command | All players | |yupay.command.top| Allows viewing the leaderboard | All players | |yupay.command.total| Allows viewing total donation amounts | All players | |yupay.command.history| Allows viewing one's own donation history | All players | |yupay.reload| Allows reloading the configuration | OP | |yupay.ban| Allows managing the blacklist | OP | |yupay.convert| Allows performing currency conversion | OP | |yupay.admin| Includes all OP permissions above | OP | |yupay.user| Includes all basic player permissions | All players | ---
- New Optional Dependency: -Dependency Changes
ProtocolLib– Required for the map QR code feature (can be ignored if not using map mode) ---
- Leaderboard Display Error: After players change their names, the leaderboard no longer shows duplicate entries; it now groups by UUID and uses the latest player name. - Database Connection Optimization: The connection pool now supports SQLite and allows custom JDBC parameters, improving MySQL stability. - Message Text Supports More Placeholders: For example,Bug Fixes
{command}is now available to dynamically display the actual command name, ensuring help messages are correct even after aliases are customized. ---
1. Before updating, please back up your configuration files (Important Notes
config.ymlandmessages.yml). The plugin will automatically preserve your modified settings, but it's better to be safe. 2. If using MySQL, it is recommended to setjdbc-paramsin the configuration for optimal performance (example parameters are provided). 3. To use the map QR code mode, you must installProtocolLib; otherwise, this mode will not work. 4. The text QR code mode requires no additional dependencies, but the ASCII art may not display perfectly in all chat fonts. You can adjusttext-qr-sizeandtext-black-charfor better results. --- Thank you again for your support! If you have any questions or suggestions, feel free to join our QQ discussion group: 1080918424. Wishing your server great success! —— YuPay Development Team1.1.1-SNAPSHOTYuPay 1.1.1-SNAPSHOTFeb 27, 2026 YuPay Changelog - Version 1.1.1 Dear server owners and players, thank you for using YuPay! This update (1.1.1) focuses on optimizing and enhancing configuration management, the logging system, sound compatibility, and PlaceholderAPI integration, making the plugin even smoother to use. Here are the detailed changes:New Features & Enhancements 1. Smart Configuration Update Mechanism (No more manual tweaking!) When an outdated configuration file is detected, the plugin automatically backs up the old file (e.g., config.yml.backup_1) and generates a brand new default configuration. Automatically preserves your custom settings: The plugin intelligently identifies keys present in both the old and new configurations and migrates only those values from the old config to the new one. This ensures that your crucial settings—such as payment keys, database passwords, exchange rates—are never lost, while you still get the latest default options. The configuration update process is fully transparent, with detailed logs printed to the console. 2. Enhanced Messaging System (Goodbye to startup error logs) The message manager (MessageManager) now has a built-in fallback mechanism. Even before updating configuration files, it can load default messages from the plugin's JAR, ensuring all logs and prompts display correctly. No more repetitive "message missing" warnings at startup; console output is much cleaner. 3. Improved Sound Utilities (More stable cross-version compatibility) SoundUtils now uses lazy initialization, performing version detection only after the plugin has fully loaded, avoiding issues with accessing plugin instances during class loading. All log output now uses the plugin's own Logger and supports customization via the message file, making it easier to unify log formatting. Friendlier error messages when sound playback fails, with fallback sounds ensuring functionality remains unaffected. 4. PlaceholderAPI Expansion Upgrade (More useful placeholders) Version synchronization: The placeholder expansion version now matches the plugin's main version (changed from 1.0 to 1.1.1), no longer hardcoded. New placeholders: %yupay_total_all% – Total server-wide donations (CNY) %yupay_recent_day% – Player's donations in the last 24 hours %yupay_recent_week% – Player's donations in the last 7 days %yupay_recent_month% – Player's donations in the last 30 days Existing placeholders (%yupay_total%, %yupay_rank%, %yupay_top{n}_name%, %yupay_top{n}_amount%) remain stable and fully functional. 5. Internal Code Optimizations Removed all hardcoded log texts; now unified through the message manager for better multi-language support. Improved command registration logic to ensure custom primary names and aliases work correctly. Enhanced exception handling in database queries to prevent a single failure from affecting the entire plugin.
Bug Fixes Fixed the issue where "message missing" warnings repeatedly appeared at startup due to outdated message files. Fixed the bug where the PlaceholderAPI expansion version always showed as 1.0. Fixed compatibility issues in SoundUtils that could cause sound constants not to be found on older server versions. Fixed the problem where user customizations could be accidentally overwritten during configuration updates (now smart retention is implemented).
How to Update Replace the old YuPay.jar in your server's plugins folder with the new version. Highly recommended: On the first startup with the new version, the plugin will automatically back up and update your configuration files. If you've made custom changes before, please check config.yml and messages.yml to ensure your custom values are retained, and verify that the new version numbers (config-version and messages-version) have been updated to 1. If you use PlaceholderAPI, the new placeholders will take effect immediately without any extra steps.
Feedback & Support If you encounter any issues or have suggestions, feel free to join our community group: 1080918424 (QQ)
1.1-SNAPSHOTYuPay 1.1-SNAPSHOTFeb 27, 2026 YuPay Changelog
[1.1]
You can now customize the main names and aliases of all commands throughNew Feature: Dynamic Command Registration
commands.namesandcommands.aliasesinconfig.yml, without modifyingplugin.yml. - Main Name Customization: For example, change/payto/donateby simply settingpay: "donate"in the configuration. - Alias Extension: Add multiple additional aliases for each command, making it easier for players to remember and use. - Hot Reload Support: After executing/yupay reload, new command names and aliases take effect immediately without restarting the server.
The plugin now automatically detects the versions ofNew Feature: Automatic Configuration File Update (Multi-language Support)
config.ymlandmessages.ymlon startup and intelligently merges newly added configuration items while preserving all your custom settings. - Version Control: Newconfig-version/messages-versionfields have been added at the top of configuration files. The plugin determines whether an update is needed based on these version numbers. - Dynamic Messages: Log prompts during the update process have been changed from hardcoded text to being read frommessages.yml. You can now freely modify these prompt texts to achieve multi-language adaptation.
- Fixed an issue where some aliases were not properly refreshed after reloading commands, ensuring the reliability of dynamic command registration.Bug Fixes
This update involves changes to configuration file versions. The plugin will automatically merge newly added items and update version numbers on first startup. We recommend backing up your original configuration files before upgrading, just in case. --- Thank you for using YuPay! If you have any questions or suggestions, please join our QQ group: 1080918424.Upgrade Notice
1.0-SNAPSHOTYuPay 1.0-SNAPSHOTFeb 8, 2026
Similar projects
Plugin →VeinMiner
Mine the whole vein on mining a single ore/block. Make the tedious mining experience to something satisfying and fun! FTB Ultimine alternative
99.3MSueta
Simple Voice Chat
A working voice chat in Minecraft!
76.8MSueta
Chunky
Pre-generates chunks, quickly and efficiently
18.4MSueta
VeinMiner Enchantment
Veinminer Addon - Adds vineminer enchantment to enchanting tables. Only tools with the enchantment can veinmine
18MSueta
JourneyMap
Real-time map used for mapping in-game or your browser as you explore.
14.7MSueta
WorldEdit
A Minecraft Map Editor... that runs in-game! With selections, schematics, copy and paste, brushes, and scripting. Use it in creative, or use it temporarily in survival.
11.6MSueta