Compatibility
Minecraft: Java Edition
Platforms
Supported environments
90% of ad revenue goes to creators
Support creators and Modrinth ad-free with Modrinth+Creators
Details
Portals!
This is a server-side portal mod. Portal types and size limits can be controlled through datapacks. This mod is still very much a work in progress so if you see any issues, please be sure to report it.
Usage
Linking portals
Each portal is activated by providing an item, and will link to all other portals using the same item. Customizing the name of the item and/or adding Custom Model Data will distinguish the item from other items.
Example:
Portal A
uses aPaper
namedNether Portals
Portal B
uses aPaper
without a namePortal C
uses aPaper
namedNether Portals
Portal A
and Portal C
will link. Portal B
will be unlinked. Beware, attempting to use an unlinked portal may result in unforseen consequences.
Locking
Portal types that support locking can be locked by sneaking and using the controller block. Items cannot be removed from locked controllers. Players with the proper permissions can lock any portal controller, regardless of the portal type (as long as they have the ability to modify blocks in that space). By default this is controlled through one of the following permissions:
Single Players
Operator
linkedportals.masterkey
permission node in a permission mod like luckperms
Datapack configuration:
Block Tags:
linkedportals:valid_frames
- Identifies valid frame blocks for the default portal type.linkedportals:portal_controller_base
- Identifies blocks that can be converted to portal control blocks. Breaking a controller block will drop the original block.
Item Tags:
linkedportals:valid_activators
- Identifies items that are spent to convert base blocks to controllers.
Portal Types:
Portal types are configured with json files in the data/<namespace>/linkedportals/types/<portal_type_name>.json
path. Each portal type will be its own file. The default portal type can be disabled by overwriting the default.json portal type or by replacing the linkedportals:valid_frames
tag with an empty tag.
Portal types use rule tests to check for valid frames or internal blocks. This supports any custom rule tests added by mods or the standard structure processor tests. The most common will be block_match
, blockstate_match
, or tag_match
.
valid_frame_rule
Rule test to validate frame blocks.valid_interior_rule
Rule test to validate blocks inside the frame. Defaults to a block test for air.size_limit
Controls the maximum size of the portal frame width and height. Defaults to 21.lockable
Controls whether this portal type is lockable by players. Defaults totrue
.
Format
{
"valid_frame_rule": {
"predicate_type": "minecraft:tag_match",
"tag": "linkedportals:valid_frames"
},
"valid_interior_rule": {
"predicate_type": "minecraft:blockstate_match",
"block_state": {
"Name": "minecraft:air"
}
}
"size_limit": 21,
"lockable": false
}