Compatibility
Minecraft: Java Edition
1.21.x
Platforms
Creators
Details
Licensed MIT
Published 3 weeks ago
Updated last month
Changelog
Changelog
All notable changes to the "MinimalPrice" project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
[1.0.0] - 2026-01-17
Added
- Core Price Management:
- Implemented category and product models.
- Added SQLite database support (
database_v2.db) for persistent storage. - CRUD operations for categories and products via
PriceRepository.
- User Interface:
- Added
/minimal(alias/price,/mp) command suite. - Interactive chat interface (
/minimal view) with clickable categories and items. - Secure input validation and tab completion support.
- Added
- Discord Integration:
- DiscordSRV Support: Automatic integration if the plugin is present.
- Forum Channels: Synchronizes categories and prices to a Discord Forum Channel specified in the config.
- Real-time Sync: Updates Discord threads instantly when prices or categories change in-game.
- Embed Redesign: Clean, modern embed design using Markdown headers and bold text for readability.
- Direct API Handling: Uses
DiscordRestUtilto bypass JDA version conflicts and handle Discord API v10 direct requests. - Resilience: Implemented robust rate limit handling (429 Retry-After) and startup cleanup logic.
- Localization & Configuration:
- Full support for English (
en) and Russian (ru) languages. - Configurable currency symbol (default
$). - Reload command (
/minimal reload) to update config and messages without restarting.
- Full support for English (
Fixed
- Discord Empty Embeds: Fixed an issue where Discord posts were created before data was fully loaded, resulting in empty messages. Implemented
initFutureto ensure data readiness. - Race Conditions: Resolved initialization race conditions between
PriceManagerandDiscordManager. - JDA Compatibility: Fixed compatibility issues with DiscordSRV's bundled JDA by using a custom HTTP client for Forum interactions.
- Bot Token Handling: Improved token retrieval to handle various formats (e.g., "Bot TOKEN").
Technical
- Implemented "Package by Feature" architecture.
- Used
HikariCPfor efficient database connection pooling. - Added extensive debug logging for Discord synchronization.
Š”ŠæŠøŃŠ¾Šŗ изменений (Russian Version)
ŠŃе Š·Š°Š¼ŠµŃнŃе ŠøŠ·Š¼ŠµŠ½ŠµŠ½ŠøŃ ŠæŃŠ¾ŠµŠŗŃа "MinimalPrice" Š±ŃŠ“ŃŃ Š·Š°Š“Š¾ŠŗŃŠ¼ŠµŠ½ŃŠøŃŠ¾Š²Š°Š½Ń в ŃŃŠ¾Š¼ ŃŠ°Š¹Š»Šµ.
[1.0.0] - 2026-01-17
ŠŠ¾Š±Š°Š²Š»ŠµŠ½Š¾
- Š£ŠæŃŠ°Š²Š»ŠµŠ½ŠøŠµ ŃŠµŠ½Š°Š¼Šø (ŠÆŠ“ŃŠ¾):
- Š ŠµŠ°Š»ŠøŠ·Š¾Š²Š°Š½Ń Š¼Š¾Š“ŠµŠ»Šø ŠŗŠ°ŃŠµŠ³Š¾Ńий Šø ŃŠ¾Š²Š°Ńов.
- ŠŠ¾Š±Š°Š²Š»ŠµŠ½Š° ŠæŠ¾Š“Š“ŠµŃŠ¶ŠŗŠ° Š±Š°Š·Ń Š“Š°Š½Š½ŃŃ
SQLite (
database_v2.db) Š“Š»Ń ŠæŠ¾ŃŃŠ¾Ńнного Ń ŃŠ°Š½ŠµŠ½ŠøŃ. - CRUD Š¾ŠæŠµŃŠ°ŃŠøŠø Š“Š»Ń ŠŗŠ°ŃŠµŠ³Š¾Ńий Šø ŃŠ¾Š²Š°Ńов ŃŠµŃез
PriceRepository.
- ŠŠ¾Š»ŃŠ·Š¾Š²Š°ŃŠµŠ»ŃŃŠŗŠøŠ¹ ŠøŠ½ŃŠµŃŃŠµŠ¹Ń:
- ŠŠ¾Š±Š°Š²Š»ŠµŠ½ Š½Š°Š±Š¾Ń ŠŗŠ¾Š¼Š°Š½Š“
/minimal(аллиаŃŃ/price,/mp). - ŠŠ½ŃŠµŃŠ°ŠŗŃŠøŠ²Š½ŃŠ¹ ŃŠ°Ń-ŠøŠ½ŃŠµŃŃŠµŠ¹Ń (
/minimal view) Ń ŠŗŠ»ŠøŠŗŠ°Š±ŠµŠ»ŃŠ½Ńми ŠŗŠ°ŃŠµŠ³Š¾ŃŠøŃми Šø ŃŠ¾Š²Š°Ńами. - ŠŠµŠ·Š¾ŠæŠ°ŃŠ½Š°Ń Š²Š°Š»ŠøŠ“Š°ŃŠøŃ ввоГа Šø ŠæŠ¾Š“Š“ŠµŃŠ¶ŠŗŠ° Š°Š²ŃŠ¾Š“Š¾ŠæŠ¾Š»Š½ŠµŠ½ŠøŃ (Tab Completion).
- ŠŠ¾Š±Š°Š²Š»ŠµŠ½ Š½Š°Š±Š¾Ń ŠŗŠ¾Š¼Š°Š½Š“
- ŠŠ½ŃŠµŠ³ŃŠ°ŃŠøŃ Ń Discord:
- ŠŠ¾Š“Š“ŠµŃŠ¶ŠŗŠ° DiscordSRV: ŠŠ²ŃŠ¾Š¼Š°ŃŠøŃŠµŃŠŗŠ°Ń ŠøŠ½ŃŠµŠ³ŃŠ°ŃŠøŃ ŠæŃŠø Š½Š°Š»ŠøŃŠøŠø плагина.
- ФоŃŃŠ¼-каналŃ: Š”ŠøŠ½Ń ŃŠ¾Š½ŠøŠ·Š°ŃŠøŃ ŠŗŠ°ŃŠµŠ³Š¾Ńий Šø ŃŠµŠ½ в ŃŠŗŠ°Š·Š°Š½Š½Ńй в ŠŗŠ¾Š½Ńиге Discord Forum Channel.
- Š”ŠøŠ½Ń ŃŠ¾Š½ŠøŠ·Š°ŃŠøŃ Š² ŃŠµŠ°Š»Ńном Š²Ńемени: ŠŠ³Š½Š¾Š²ŠµŠ½Š½Š¾Šµ обновление ŃŃŠµŠ“ов в Discord ŠæŃŠø изменении ŃŠµŠ½ или ŠŗŠ°ŃегоŃий в ŠøŠ³Ńе.
- РеГизайн Embed-ŃŠ¾Š¾Š±Ńений: ЧиŃŃŃŠ¹, ŃŠ¾Š²ŃŠµŠ¼ŠµŠ½Š½ŃŠ¹ Гизайн Ń ŠøŃŠæŠ¾Š»ŃŠ·Š¾Š²Š°Š½ŠøŠµŠ¼ Markdown заголовков Šø Š¶ŠøŃŠ½Š¾Š³Š¾ ŃŠµŠŗŃŃŠ°.
- ŠŃŃŠ¼Š°Ń ŃŠ°Š±Š¾Ńа Ń API: ŠŃŠæŠ¾Š»ŃŠ·Š¾Š²Š°Š½ŠøŠµ
DiscordRestUtilŠ“Š»Ń Š¾Š±Ń Š¾Š“Š° ŠŗŠ¾Š½ŃŠ»ŠøŠŗŃов веŃŃŠøŠ¹ JDA Šø ŠæŃŃŠ¼ŃŃ Š·Š°ŠæŃŠ¾Ńов Šŗ Discord API v10. - Š£ŃŃŠ¾Š¹ŃивоŃŃŃ: Реализована Š½Š°Š“ŠµŠ¶Š½Š°Ń Š¾Š±ŃŠ°Š±Š¾Ńка Š»ŠøŠ¼ŠøŃов Š·Š°ŠæŃоŃов (429 Retry-After) Šø логика Š¾ŃŠøŃŃŠŗŠø ŠæŃŠø запŃŃŠŗŠµ.
- ŠŠ¾ŠŗŠ°Š»ŠøŠ·Š°ŃŠøŃ Šø ŠŠ¾Š½ŃигŃŃŠ°ŃŠøŃ:
- ŠŠ¾Š»Š½Š°Ń ŠæŠ¾Š“Š“ŠµŃŠ¶ŠŗŠ° Š°Š½Š³Š»ŠøŠ¹ŃŠŗŠ¾Š³Š¾ (
en) Šø ŃŃŃŃŠŗŠ¾Š³Š¾ (ru) ŃŠ·Ńков. - ŠŠ°ŃŃŃŠ°ŠøŠ²Š°ŠµŠ¼Ńй ŃŠøŠ¼Š²Š¾Š» валŃŃŃ (по ŃŠ¼Š¾Š»ŃаниŃ
$). - ŠŠ¾Š¼Š°Š½Š“а ŠæŠµŃŠµŠ·Š°Š³ŃŃŠ·ŠŗŠø (
/minimal reload) Š“Š»Ń Š¾Š±Š½Š¾Š²Š»ŠµŠ½ŠøŃ ŠŗŠ¾Š½ŃŠøŠ³Š° Šø ŃŠ¾Š¾Š±Ńений без ŠæŠµŃŠµŠ·Š°ŠæŃŃŠŗŠ° ŃŠµŃŠ²ŠµŃŠ°.
- ŠŠ¾Š»Š½Š°Ń ŠæŠ¾Š“Š“ŠµŃŠ¶ŠŗŠ° Š°Š½Š³Š»ŠøŠ¹ŃŠŗŠ¾Š³Š¾ (
ŠŃŠæŃŠ°Š²Š»ŠµŠ½Š¾
- ŠŃŃŃŃŠµ ŃŠ¾Š¾Š±ŃŠµŠ½ŠøŃ Discord: ŠŃŠæŃŠ°Š²Š»ŠµŠ½Š° ŠæŃŠ¾Š±Š»ŠµŠ¼Š°, когГа поŃŃŃ Š² Discord ŃŠ¾Š·Š“авалиŃŃ Š“Š¾ полной загŃŃŠ·ŠŗŠø ГаннŃŃ
, ŃŃŠ¾ ŠæŃŠøŠ²Š¾Š“ило Šŗ ŠæŃŃŃŃŠ¼ ŃŠ¾Š¾Š±ŃŠµŠ½ŠøŃŠ¼. ŠŠ½ŠµŠ“ŃŠµŠ½
initFutureŠ“Š»Ń Š³Š°ŃŠ°Š½ŃŠøŠø Š³Š¾ŃŠ¾Š²Š½Š¾ŃŃŠø ГаннŃŃ . - ДоŃŃŠ¾ŃŠ½ŠøŃ Š³Š¾Š½ŠŗŠø (Race Conditions): Š£ŃŃŃŠ°Š½ŠµŠ½Ń ŠŗŠ¾Š½ŃŠ»ŠøŠŗŃŃ ŠøŠ½ŠøŃŠøŠ°Š»ŠøŠ·Š°ŃŠøŠø межГŃ
PriceManagerŠøDiscordManager. - ДовмеŃŃŠøŠ¼Š¾ŃŃŃ Ń JDA: ŠŃŠæŃŠ°Š²Š»ŠµŠ½Ń ŠæŃŠ¾Š±Š»ŠµŠ¼Ń ŃŠ¾Š²Š¼ŠµŃŃŠøŠ¼Š¾ŃŃŠø Ń JDA, вŃŃŃŠ¾ŠµŠ½Š½Ńм в DiscordSRV, ŠæŃŃŠµŠ¼ ŠøŃŠæŠ¾Š»ŃŠ·Š¾Š²Š°Š½ŠøŃ каŃŃŠ¾Š¼Š½Š¾Š³Š¾ HTTP ŠŗŠ»ŠøŠµŠ½ŃŠ° Š“Š»Ń ŃŠ°Š±Š¾ŃŃ Ń ŃŠ¾ŃŃŠ¼Š°Š¼Šø.
- ŠŠ±ŃŠ°Š±Š¾ŃŠŗŠ° ŃŠ¾ŠŗŠµŠ½Š° Š±Š¾ŃŠ°: УлŃŃŃŠµŠ½Š¾ ŠøŠ·Š²Š»ŠµŃŠµŠ½ŠøŠµ ŃŠ¾ŠŗŠµŠ½Š° Š“Š»Ń ŠæŠ¾Š“Š“ŠµŃŠ¶ŠŗŠø ŃŠ°Š·Š»ŠøŃнŃŃ ŃŠ¾ŃŠ¼Š°ŃŠ¾Š² (Š½Š°ŠæŃŠøŠ¼ŠµŃ, "Bot TOKEN").
Š¢ŠµŃ Š½ŠøŃŠµŃкое
- ŠŠ½ŠµŠ“ŃŠµŠ½Š° аŃŃ ŠøŃŠµŠŗŃŃŃŠ° "Package by Feature".
- ŠŃŠæŠ¾Š»ŃŠ·Š¾Š²Š°Š½ŠøŠµ
HikariCPŠ“Š»Ń ŃŃŃŠµŠŗŃивного ŠæŃлинга ŃŠ¾ŠµŠ“инений Ń Š±Š°Š·Š¾Š¹ ГаннŃŃ . - ŠŠ¾Š±Š°Š²Š»ŠµŠ½Š¾ ŠæŠ¾Š“ŃŠ¾Š±Š½Š¾Šµ Š»Š¾Š³ŠøŃŠ¾Š²Š°Š½ŠøŠµ Š¾ŃŠ»Š°Š“ŠŗŠø Š“Š»Ń ŃŠøŠ½Ń ŃŠ¾Š½ŠøŠ·Š°ŃŠøŠø Ń Discord.



