Pocket Dimensions
0.0.8Create custom pocket dimension for you players! They can invite and kick other players and go between the real world and their pocket dimension using a special item!
0.0.8latestPocket Dimensions 0.0.82 days ago Pocket Dimensions 0.0.8-ALPHA
Minecraft 26.3 support, stronger protection, and storage/admin reliability improvements. - Minecraft 26.3 (Wilderness Bound): - One jar now supports Minecraft 1.19.4 through 26.3; Java 17+ (26.x servers need Java 25). - Gamerules work across 1.19.4, 1.21.11+ and 26.3 spellings; /pdgamerule accepts either camelCase or snake_case and configs keep working unchanged. - Dimensions are found, loaded, reset and deleted correctly on 26.1+ servers, where world data lives under <main world>/dimensions/minecraft/..., as well as on older servers and hosts that flatten folder names. - 26.3 shelves are protected like containers; cushions and the new block variants need no extra setup. - Configs are upgraded automatically; new protection options are added without touching existing values. - Protection: - Visitors can no longer strip logs, till/path blocks, bone-meal crops, wax copper, carve pumpkins, brush suspicious blocks or harvest beehives with right-click tools. - Boats, minecarts, armor stands, end crystals, spawn eggs and sign editing are blocked for untrusted visitors; riding normal minecarts/boats and using cushions still works. - Pets stay protected even if the attacker leaves the dimension before a projectile lands. - Chested animals, storage minecarts/boats and armor stands stay protected even when mob damage is disabled. - Malformed pocket-dimension worlds now remain protected instead of becoming public. - Admin and data safety: - Border sizes are validated, so a bad value can no longer make a dimension unenterable; economy upgrades only charge for valid tiers. - /pdadmin cleanup rejects negative or overflowing day counts. - /pdadmin reset clears the old in-dimension position and logout flag, so players return to the new spawn instead of stale coordinates. - Delete/reset removes every copy of a dimension folder, verifies deletion and refuses suspicious paths. - /pdleave only saves your own dimension position; /pdtp remembers the admin's return point. - Storage: - Interrupted JSON -> SQL migrations resume on the next start instead of being skipped forever. - Source files are never renamed after a failed import. - Unreadable JSON is quarantined and writes are refused instead of rewriting the store from empty data. - SQL purges are transactional. - Quality of life: - /pdgamerule is owner-or-admin only and rejects extreme integer values. - Invites are re-checked on accept, so revoked trust cannot be used to enter. - GUI trust promotion and border upgrades require their matching permission nodes. - Shift-click crafting produces keys bound to the crafter. - /givepd drops leftover keys at your feet instead of deleting them on a full inventory. - Glow on key items works on modern servers.0.0.7Pocket Dimensions 0.0.7Aug 29, 2026 Pocket Dimensions 0.0.7-ALPHA
A full four-way codebase audit (storage, world lifecycle, commands/GUI, compatibility) — this release fixes everything it found. Upgrade is drop-in; existing configs/data are untouched on load.Critical
- The config auto-updater actually works now. A Bukkit quirk (contains()resolving through jar defaults) made it a silent no-op, so upgrades never received new config keys on disk. Fixed withisSet(). - Accepting an invite while inside any pocket dimension no longer corrupts your main-world return point (which could soft-lock you out of the overworld via/pdleave, kick, or the key item).Economy & load order
- Removedload: STARTUP, which silently broke the Vault economy hook on every boot — creation costs and upgrades work now. - Creation cost +PocketDimensionCreateEventfire only when a world is genuinely created — reloading an unloaded world is free (previously each re-entry after auto-unload charged again). Failed creations are refunded.World lifecycle
- Unloaded dimensions reload with their preset generator re-attached — VOID worlds no longer regenerate new chunks as vanilla terrain after an auto-unload or/pdtp. - Logging out inside your own dimension now saves your exact position; rejoin restores you there (not your last exit point) and re-applies border + gamerules. - Failed teleports say so instead of playing success feedback while not moving.Protection hardening
- Projectiles no longer bypass mob protection (the shooter is tier-checked). - Fire is covered (protection.block-fire: true): visitor ignition and all non-player ignition are cancelled, and fire no longer consumes blocks inside dimensions. - Item frames / paintings / armor stands / leash knots / chested horses / chest & hopper minecarts / chest boats are protected from visitors; leashing, shearing and farmland trampling blocked below builder. - Protection fails closed on malformed world names instead of failing open.Mob teleporting
- Trust gate: visitors can no longer teleport mobs out of someone else's dimension into their own. - Failed mob teleports report a message.Storage
- Corrupt JSON files are quarantined (*.corrupt-<timestamp>) and un-quarantineable files refuse writes — one bad file can never wipe a store. - JSON → SQL migration is complete: trusts, settings and meta flags are imported too, malformed keys no longer crash startup, and source files are renamed only after a fully successful migration (failures retry). - Trust/settings caches no longer poison themselves after a database blip.Commands & GUI
-/pdadmin delete|reset|cleanupeach require their own permission node; admin unloads clear empty-dimension bookkeeping. -/pdgameruleaccepts both new (26.x) and legacy gamerule names. -features.gui-menuandfeatures.admin-toolsconfig switches are honoured. - Placeholders are%pd_in_pd%,%pd_border%,%pd_visitors%,%pd_dimension_loaded%(the expansion previously registered under a name the docs didn't match).Smaller fixes
First-join key drops at your feet on a full inventory · malformed crafting recipes warn instead of crashing startup · the key item no longer also opens the chest behind it ·/pdreloadwarns whenstorage.typeneeds a restart ·/pdlistshows "never" instead of the epoch · MySQL driver SPI registration preserved in the shaded jar · flattened world-name fallback in kick/invite/teleport/gamerule paths · dead message keys removed. Requires Java 17+. Full permission and config reference in the README.0.0.6Pocket Dimensions 0.0.6 AlphaAug 29, 2026 Pocket Dimensions 0.0.6-ALPHA
Compatibility
- One jar now supports Minecraft 1.19.4 → 26.2 (Bukkit / Spigot / Paper / Purpur). - All gamerules are resolved by name at runtime with fallbacks for the 1.21.11+ rule renames (spawnMobsdoMobSpawning,advanceWeatherdoWeatherCycle, and so on) — a future rule rename can no longer crash the plugin. - Default gamerules live inconfig.yml(default-gamerules:— added to existing configs automatically). Unknown rules are skipped with a console warning instead of crashing.Trust & Protection
- Owners grant trust tiers:/pd trust <player> [builder|trusted],/pd untrust <player>— persisted per owner. - Visitors (untrusted players, even past invitees) can no longer build, break, open containers, use buckets or hurt the owner's mobs in someone else's dimension. Doors and buttons stay usable; explosions never break blocks inside dimensions. - Trusted players can build and invite others into the dimension (co-op). - Bypass:pocketdimensions.bypass.protection· Global switch:features.trust-protection.Dimension Settings & Generation
- New-dimension presets: FLAT (classic flat), VOID (empty world with a platform), NORMAL (terrain, random seed) — plus environments NORMAL / NETHER / THE_END. Global defaults indimension:*, per-player choice via/pd settingsor the menu. Applies only at creation; existing worlds are never regenerated. -/pd setspawnsets the in-dimension spawn point for invites and first entries. - Item customization: custom model data, glow, optional crafting recipe (binds to the crafter), configurable interact cooldown, optional first-join handout. - Entry/exit titles + sounds and owner entry notifications (per player:pocketdimensions.feedback).Economy (Vault) — disabled by default
- Install Vault + an economy plugin, seteconomy.enabled: true, and you can charge a one-timecreation-costand configured borderupgradestiers (/pd upgrade). - Without Vault everything is free; upgrades remain a free, permission-gated tier system.Admin Tools
-/pdlist— every dimension with owner, loaded state, border and last seen. -/pdadmin delete <player> confirm(world and data),/pdadmin reset <player> confirm(world only),/pdadmin cleanup <days> confirm(inactive dimensions). All refuse while players are inside. - Entity cap warnings (world-management.entity-cap).GUI — /pd menu
Two-view inventory: travel in/out, trust management (left-click cycles tier, right-click removes), preset/environment/notification settings, and border upgrades. Each section permission-gated (pocketdimensions.commands.player.pd.menu.*).Storage
- Configurable backends: JSON (default, same files as before), SQLite, MySQL via JDBC — both drivers bundled, nothing to install. - Switchingstorage.typeauto-imports your existinglastlocs.json/pdborders.jsononce and renames them*.imported. Trust, settings and gamerule overrides use the same backend automatically. - JSON writes are atomic and serialized (no lost updates), and saved locations now remember yaw/pitch.World Management
- Empty dimensions unload (after saving) after a configurable grace period; players who log out inside are returned on rejoin.Invites
- Multiple simultaneous invites:/pd acceptinvlists senders when several are pending,/pd acceptinv <player>picks one.Developer API & Integrations
- Cancellable events:PocketDimensionCreateEvent,PlayerEnterDimensionEvent,PlayerLeaveDimensionEvent,InviteSendEvent,MobTeleportEvent. - PlaceholderAPI:%pd_in_pd%,%pd_border%,%pd_visitors%,%pd_dimension_loaded%.Bug Fixes
-/pd kickno longer crashes when the target is offline, and now verifies the target is actually inside your pocket dimension (previously anyone could "kick" players from the overworld). - Editing thepdleavesection ofmessages.ymlnow works (keys were mismatched; the section is nowpd.leave). - Entering your own dimension from inside someone else's no longer corrupts your main-world return location. - Servers whose main world is not namedworldno longer error when leaving/kicking. - A newer invite no longer disappears early when an older invite expires. - The mob-teleport cooldown is now actually checked when right-clicking mobs. -/pdworldborderrejects players who have never played instead of storing data for a bogus UUID. -/pdgamerulechanges persist across dimension unload/reload instead of being reset by the defaults. - Fixed the/pd acceptinvfall-through and the self-invite UUID comparison.Quality of Life
-/pdreloadreloads config, messages, mob-teleport settings, protection lists and the economy hook. -/givepdconfirms when a dimension item is given;/pdtab completion is permission-filtered. Requires Java 17+. See the README for the full permission and config reference.0.0.5Pocket Dimensions 0.0.5Feb 15, 2026 - Added 1.21.11 compatibility: Fixed crash related toDO_MOB_SPAWNINGremoval by implementing dynamic GameRule resolution. - Added Bi-directional Mob Teleportation: - Players can send mobs into their PD and retrieve them back to the main world. - Mobs teleport to the player's last known location in the respective dimension. - Ownership check: Only the owner of the PD can teleport mobs to/from it. - Added Modular Tool System: - Newtoolssection inconfig.yml. - Configurablemob-teleportertool (required: true/false). -/givepd <player> [dimension|mobtool]command updated with tab-completion. - Added Automatic Config Updater: - Automatically adds new configuration keys to existing files on startup without loss of user data. - Improved Quality of Life: - Full Tab-Completion for all commands (/pd,/givepd,/pdgamerule,/pdtp,/pdworldborder). - Cooldown system to prevent accidental double-teleportation when interacting with mobs. - Modular Permissions: - Added specific permissions for storing/retrieving mobs and giving tools. - Registered all legacy permissions inplugin.yml. - Bug Fixes: - Fixed issue where players would teleport along with mobs. - Fixed logic for right-clickable entities (horses, sheep, etc.) to ensure teleportation works consistently.0.0.4Pocket Dimensions 0.0.4Jan 20, 2026 Added */pdleaveCommand: Added a new command to leave the current pocket dimension and return to your previous location (or spawn). * Permission: pocketdimensions.commands.player.pdleave */pdworldborderCommand: Added a command to set and update the world border size for a specific player's pocket dimension. * Permission: pocketdimensions.commands.pdworldborder *messages.yml: Added a full messages configuration file, allowing you to translate or customize every message sent by the plugin. * Fail-safe Messages: Added hardcoded default messages. The plugin will now safely fall back to internal defaults if a message is missing from your config. Configuration Changes * Key Item Customization: You can now fully customize the "Key Item" (used to enter dimensions) in config.yml. * Change the Material, Display Name, and Lore. * World Border Settings: * Added default-world-border-size to config.yml to set the global default size. * Individual sizes set via /pdworldborder are saved to pdborders.json and now persist across restarts. Changed * Folder Organization: All Pocket Dimension worlds are now generated inside a dedicated pocketdimensionworlds/ folder to keep your server root clean. * Note: If you have existing worlds in the root folder, you may need to move them into this new folder manually. * Safety Checks: Added strict permission checks to /givepd, /pdgamerule, and other commands to prevent unauthorized use. * Location Saving: Improved how the "last location" is saved, ensuring players return to the correct spot even after visiting someone else's dimension.0.0.3Pocket Dimensions v0.0.3Sep 25, 2024 -Fixed an Issue with positions not saving when logging off while inside Pocket Dimension. -Added the Ability to customise gamerules per pocket dimension. (Permission: pocketdimensions.commands.pdgamerule)0.0.2Pocket Dimensions v0.0.2Jul 4, 2024 0.0.2. -Now it saves the location in the pocket dimension aswell. -Teleports instantly instead of having to click twice when first loading the pocket dimension. -Fixed a bug in pdtp where it wouldn't teleport if the dimension wasn't loaded.0.0.1Pocket Dimensions v0.0.1Jun 28, 2024 Initial Upload Tested 1.19.4-1.20.4 May work in newer
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
Let Me Despawn
Improves performance by tweaking mob despawn rules. Say bye to pesky unintentional persistent mobs.
25MSueta
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