✨ New Features & Enhancements
- ✅ Added
/rtp
command (Random Teleportation)- Teleports players to a safe random location.
- Always places player at the highest safe block.
- Prevents unsafe teleportation (lava, void, unsafe blocks).
- ⏳ Added RTP cooldown system:
- Configurable cooldown per player in
config.yml
. - Players receive a message if they must wait before teleporting again.
- Configurable cooldown per player in
- 🌐 Added localization support:
- New language entries in
french.yml
,english.yml
,spanish.yml
. - Fully translatable messages for teleportation in progress, success, failure, and cooldown.
- New language entries in
🧼 Refactoring & Internal Changes
- Unified RTP request handling with
RtpRequestStore
(supports Redis & Local storage).
📌 Notes
- ⚙️ Configure RTP cooldown in
Config.Rtp.Cooldown
. - 🔁 All changes are backward-compatible.
- 🌐 To update language files, use
/lang update
.
What's Changed
- Add Spanish language support and update .gitignore by @fuzeblocks in https://github.com/fuzeblocks/HomePlugin/pull/18
- Add RTP (Random Teleportation) feature with cooldown and localization… by @fuzeblocks in https://github.com/fuzeblocks/HomePlugin/pull/19
Full Changelog: https://github.com/fuzeblocks/HomePlugin/compare/0.7.9...0.8
✨ New Features & Enhancements
✅ New TPA System (Teleport Requests)
- Added
/tpa
,/tpaccept
,/tpdeny
with full tab-completion support. - Requests are now stored via an abstraction
TpaRequestStore
with two implementations:- LocalTpaRequestStore (in-memory, fast for single-server setups)
- RedisTpaRequestStore (shared across multiple servers, ideal for networks)
- Players can only teleport once the target accepts the request.
- Added configurable TPA timeout (
Config.Tpa.Tpa-duration
, default: 30 seconds).
✅ Improved Tab Completion
/tpaccept <player>
and/tpdeny <player>
now suggest only valid requesters.- Dynamically pulls data from cache/Redis for real-time accuracy.
✅ CacheManager Integration
- Centralized access for all active TPA requests.
- Supports both Redis and Local modes seamlessly.
🔧 Internal Changes
- Refactored
TpaRequestStore
to unify Redis & Local implementations. - Added
getAllTpaSenders()
+getTpaTarget(UUID)
to simplify request lookups. - Safer cleanup of expired or invalid TPA requests.
- Enhanced Redis handling with UUID-safe storage and retrieval.
🌐 Language Updates
Added new language entries in french.yml
, english.yml
, and custom.yml
:
Tpa.Request-Sent
→ "You have sent a teleport request to {player}"Tpa.Request-Received
→ "{player} has sent you a teleport request. Use /tpaccept or /tpdeny."Tpa.Request-Expired
→ "Your teleport request to {player} has expired."Tpa.No-Pending
→ "You have no pending TPA requests."
📌 Notes
- ⚙️ If running in a networked setup, enable Redis in
config.yml
. - 🔁 All changes remain backward-compatible.
- 🌐 Update language files manually with
/lang update
.
Full Changelog: https://github.com/fuzeblocks/HomePlugin/compare/0.7.8...0.7.9
✨ New Features & Enhancements
✅ Fair Home Placement System
-
Homes can no longer be set in unfair or exploitable locations:
- Too high or too low (Y coordinate)
- In water blocks or on portal blocks
- In blacklisted worlds (
world_nether
,world_the_end
) - On floating platforms (air-only support beneath)
-
Fully configurable via
PreventUnfairLocation: true
inconfig.yml
✅ TPA Timeout Configuration
- TPA request timeout is now configurable:
Config.Tpa.Tpa-duration
(default:30
seconds)
✅ Compatibility Updates
- Support for Minecraft 1.21.7
- Fix: replaced
Material.isAir()
with== Material.AIR
for proper 1.14.x compatibility
✅ Commands & Permissions
- New supported commands:
/tpa
,/tpaccept
,/tpdeny
- Fixed permission node:
homeplugin.command.tpa
🧼 Refactoring & Internal Changes
- Removed deprecated
updateLanguage()
logic (replaced by/lang update
) - Improved floating platform detection logic (more precise conditions)
- Refined Redis connection handling with cleaner logging
🌐 Language Improvements
-
Added new language entries in
french.yml
,english.yml
, andcustom.yml
:Invalid-height
,Water-location
,Portal-location
,Floating-platform
,End-disabled
📌 Notes
- ⚙️ Make sure
PreventUnfairLocation
is enabled to enforce fair home placement. - 🔁 All changes are backward-compatible.
- 🌐 To manually update language files, use
/lang update
.
Resources: [PlaceholderAPI](https://www.spigotmc.org/resources/placeholderapi.6245/)
✨ New Features & Improvements
-
✅ New TPA command with full cache support
- Efficient management of TPA requests stored in cache (Redis or local).
- Methods to add, check, retrieve, and remove TPA requests.
-
✅ CacheManager overhaul
- Unified handling of player homes, spawn locations, and TPA requests cache.
- Support for clearing all homes globally via
clearAllHomes()
including Redis support.
-
✅ Automatic language file updater at plugin startup
- Backs up existing language files automatically.
- Regenerates missing files while preserving current translations.
- Merges missing keys without overwriting existing ones.
- Provides success/failure messages during update.
🧼 Code Refactoring
- Improved modularity between cache stores and manager class.
- Enhanced error handling in language file update process.
- Prep for centralized language key management.
📌 Notes
- Backward-compatible cache changes.
- Language updater removes manual update requirements.
- Use
/lang update
command to manually trigger language file update.
Resources:
PlaceholderAPI support: https://www.spigotmc.org/resources/placeholderapi.6245/
✨ Features
✅ Automatic language file updater implemented New system to automatically detect and insert missing keys in the language file (french.yml or other) without overwriting existing values. Usage : /lang update
✅ Future-proofing for localization Ensures compatibility with future updates by maintaining key integrity and reducing manual maintenance. 🧼 Code Refactoring
✅ Internal message handling improved Preparation for centralized language key management in all modules.
✅ Fix update checker
📌 Notes
🛠 This update is backward-compatible with existing language files. No manual intervention is required after deployment.
PlaceholderAPI: https://www.spigotmc.org/resources/placeholderapi.6245/
✨ Features
✅ Home Admin management commands implemented: New commands to manage private homes efficiently. ✅ Improved Admin messages: Player name is now included in teleportation confirmation for better clarity.
🧼 Code Refactoring
✅ Permission & language handling streamlined: Unified permission checks and language key usage across command classes.
✅ Cleanup: Deployment scripts added to .gitignore to prevent accidental commits.
✅ Miscellaneous internal changes: Minor modifications to prepare for future modularization.
📌 Notes
🛠 The GUI remains partially incompatible with Minecraft 1.21.7. A full patch is in progress.
PlaceholderAPI: https://www.spigotmc.org/resources/placeholderapi.6245/
✨ Features
- ✅ Minecraft version support expanded: Compatible with 1.14.0 to 1.21.6
- ✅ Java compatibility refactored: Plugin now compiled with Java 11 to support older servers
- ✅ Improved command logic:
- Refactored
HomeCommand
internals - Added tab completer for
/sethome
- Refactored
- ✅ Permission-based home limit system:
Define home limits per player/group via permissions:
homeplugin.limit.1
→ max 1 homehomeplugin.limit.5
→ max 5 homeshomeplugin.limit.10
→ max 10 homeshomeplugin.limit.x
-> your number, but 100 it's the maximum- Fallback to default if no permission is found
- Compatible with LuckPerms
🧼 Code Refactoring
- Cleaned up logic for compatibility across Minecraft versions
- Removed Java 16+ language features
- Improved GUI separation for maintainability
📌 Notes
🛠 The GUI is currently **not fully compatible with Minecraft 1.21.7.
PlaceholderAPI: https://www.spigotmc.org/resources/placeholderapi.6245/
Update: added a GUI and command to rename your homes; more messages translated.
PlaceholderAPI: https://www.spigotmc.org/resources/placeholderapi.6245/
GUI Update
- Added the ability to teleport to or delete a home directly from the GUI.
- New messages added for improved user feedback.
- Fixed several bugs related to home management.
PlaceholderAPI: https://www.spigotmc.org/resources/placeholderapi.6245/
This update introduces a new GUI to list your homes, improved translations, and a reworked spawn/home API for better flexibility and integration. Also we have added new Placeholder expansion !
PlaceholderAPI: https://www.spigotmc.org/resources/placeholderapi.6245/
- More translatable message.
- Support now multi-version (1.8.x-1.21.x).
- Update soon...
PlaceholderAPI: https://www.spigotmc.org/resources/placeholderapi.6245/
In this version, i have added : Redis system and configuration, added a plugin loader for your (developer). and i have refactored the code for more visibility.
Thank's for use my plugin
Note : if you find an issues go : here