Competitive Random Gates
Randomly spawned rifts can now be configured as "Ownerless" competitive events.
- No Owner: Use ownership-mode: NONE in your gateway config.
- Free-For-All Drops: Loot dropped in competitive gates is not protected and can be picked up by anyone.
- PvP Enabled: PvP can now be enabled specifically within the gate area using allow-pvp: true.
Enhanced Drop System
- Custom Drops: Gate mobs now drop plugin-managed items instead of vanilla drops.
- Stacking Fixed: Drops now stack properly!
- Auto-Cleanup: All drops are tracked and automatically removed when the gate ends.
Bug Fixes
- Hologram Cleanup: Fixed an issue where holograms from Random Rifts would persist after the gate ended or the server restarted. Added a safety sweep to remove "stuck" holograms.
- Drop Persistence: Fixed bugs where items dropped by gate mobs would not be removed when the gate closed.
- Ownership Logic: Fixed issues where players could not join or attack certain rifts due to incorrect ownership flags.
Configuration Changes
A new random-gates section has been added to the Gateway configuration:
YAML:random-gates: ownership-mode: NONE # Options: NONE, FIRST_HIT allow-pvp: true # Allow PvP in the gate area drops: ground-drop: true # Drop items on ground stack: true # Allow items to stack merge-radius: 2.0 hologram: remove-on-end: true # Force hologram cleanup
No more accidental team kills! When you're inside a rift with your party, you can no longer damage each other by mistake. This includes:
You can toggle this on/off in config if you prefer PvP-enabled parties.
- Sword and melee attacks
- Arrows and projectiles
- Splash potions
Smarter Random Rift Spawning
Random rifts now spawn more predictably and fairly:
- Rifts won't cluster together in bursts anymore
- Spawn rates scale better with your player count
- More active servers get more rifts automatically
Combat Protection
- Can't leave your party while in combat (prevents combat logging)
- 30-second cooldown after leaving/joining parties (prevents exploit abuse)
Config Validation on Startup
The plugin now checks your configuration when the server starts!
- Warns you about invalid settings in console (spawn chances, timing values, world names)
- Automatically uses safe defaults instead of crashing
- Clear messages tell you exactly what's wrong and how to fix it
[InfinityRifts] ⚠ random-spawn.timing.spawn-chance should be 0-100, will be clampedConfiguration Changes
YAML:random-spawn: enabled: true timing: check-interval: 600 # Used by all strategies spawn-chance: 30 # Used by ChanceBasedSpawnStrategy max-active: 3 # Enforced by all strategies lifetime: 1800 player-scaling: enabled: true base-player-count: 5 # Used by ChanceBasedSpawnStrategy extra-chance-per-player: 1.5 max-chance: 75
Rifts can now spawn automatically in the world without player intervention!
Random Rift Spawning System
- Per-Rift Configuration: Each gateway type now has its own random-spawn:
Setting Description timing.check-interval How often (seconds) the system checks for spawns timing.spawn-chance Base % chance per check timing.max-active Maximum concurrent rifts of this type timing.lifetime How long the rift persists before despawning player-scaling Increase spawn chance based on online players worlds.overrides Per-world enable/disable and spawn modifiers Global Spawn Conditions
A new spawn-conditions: section applies to ALL gateway spawns both item-based and random!
Category Conditions Worlds Whitelist/blacklist specific worlds Biomes Whitelist/blacklist specific biomes Location Min distance from spawn, min distance from other rifts, height limits, blocked blocks, sky access, solid ground Time Restrict to DAY, NIGHT, DAWN, or DUSK Weather Restrict to CLEAR, RAIN, or THUNDER Player Min XP level, required permissions, blocked gamemodes, per-gateway cooldowns Configuration Changes
All gateway config files now include:
YAML:# Random spawning (automatic world spawns) random-spawn: enabled: true timing: { ... } player-scaling: { ... } worlds: { ... } restrictions: { ... } biomes: { ... } despawn: { ... } announcements: { ... } debug: { ... } # Global spawn conditions (items + random) spawn-conditions: enabled: true bypass-permission: "infinityrifts.bypass.conditions" worlds: { ... } biomes: { ... } location: { ... } time: { ... } weather: { ... } player: { ... } messages: { ... }
- Added Priority Pickup: Items dropped by gateway mobs and final rewards are now protected for 30 seconds.
- Theft Prevention: During this window, only gateway participants can pick up the items. After 30s, they become available to everyone.
- New Command: /rift party
- Validation: Lists all current party members and their status.
Party System
Party Teleportation
- Invite players to your party before starting a riftCode:/rift invite <player> - Accept a party invitationCode:/rift join <player> - Kick a player from your partyCode:/rift kick <player> - Leave a party or disband it (if leader)Code:/rift leave
Persistent Parties
- All party members automatically teleport together when the leader uses a gateway item
- Party stays active after a rift ends
- Start another rift with the same party without re-inviting
- Party only disbands when leader uses /rift leave
or all members leaveLeader Pays for All
Commands Summary:
- Entry cost is only charged to the party leader
- Party members join free of charge
Command Description /rift invite <player> Invite to party /rift kick <player> Kick from party /rift join <player> Accept party invite /rift leave Leave/disband party or gateway
- Entry Fees: Configure the cost in gateway settings to charge players for entry (Vault plugin must be installed)
YAML:settings: cost: 100.0 # [NEW] Cost to enter rewards: money: 1000.0 # [NEW] Reward to win
- Auto-Resume: On server startup, any interrupted rifts are automatically restored and resumed from their last known wave and time.
Added Folia Support
Infinity Rifts now supports Folia, Paper's regionized multithreading fork, while maintaining full backward compatibility with traditional servers.
- Gateway spawning - Mob spawning uses location-bound scheduling
- Particle effects - Portal particles run on the spawn region's thread
- Wave timers - Global timers for gateway/wave clocks
- Reward commands - Console commands run on global scheduler
Leave Command
You can now exit a gateway at any time using the new leave command!
Command:
/rift leave
- Instantly exit your current gateway session
- No permissions required - available to all players
- Perfect for when you need to step away mid-battle
bStats Metrics Integration
We've added anonymous plugin metrics to help us understand how the plugin is being used and improve future updates.
- Metrics are collected anonymously via bStats
- You can view public stats at: https://bstats.org/plugin/bukkit/Infinity Rifts/28482
- Can be disabled in plugins/bStats/config.yml
if desiredDramatically Smaller Plugin Size
The plugin JAR has been optimized and is now ~78% smaller!
Before After ~7 MB 1.52 MB
Thank you for using Infinity Rifts!
