Register serverside portals, which can be built using configured blocks, items to light them up and execute a command when accessed. Works with vanilla clients. If this mod is installed on the client as well, the portal frame can get displayed in different colors configured on the server.
NOTE v1.x - installing on a client does not work yet due to the fact, that debugging locally with non-authenticated clients is pretty insane. I'm currently working on a build script plugin to get local authentication to work, because you cannot debug like this. I'm not going to waste hours of copy pasting jars around, without a debugger attached.
To install this plugin fabric, fabric API and owo-lib is required.
This mod is available on modrinth with slug server-portals
.
The project source is available on github/michiruf with the latest
readme here.
Internally this plugin is packed with kyrptonaught's customportalapi and Polymer to ensure vanilla compability.
NOTE: The server must get restarted to load these changes!
So after every change of the portals, restart the server (unfortunately)!
List configured portals:
/serverportals list
Register a portal
/serverportals register NAME FRAME_BLOCK LIGHT_UP_ITEM COLOR COMMAND
For example: /serverportals register test minecraft:bone_block minecraft:ender_eye black "say hello"
will register a
portal, with bone blocks as frame, ender eyes as light up activation item to hold in hand while right-clicking and
printing out hello from the user that steps into it.
Unregister a portal by its index
/serverportals unregister NAME
The configuration is location in /config/server-portals.json5
.
Note that changing the configuration while the server is running, will be overwritten by
commands that configure portals.
LogLevel is currently unused.
{
"logLevel": 0,
"portals": [
{
"index": "say_hello_portal",
"frameBlockId": "minecraft:bone_block",
"lightWithItemId": "minecraft:ender_eye",
"color": 0,
"command": "say \"hello world\""
},
{
"index": "tp_portal",
"frameBlockId": "minecraft:gold_block",
"lightWithItemId": "minecraft:ender_eye",
"color": 5592575,
"command": "tp @p 0 100 0"
}
]
}
ProxyCommands can be found here. To create a portal to another server use the command:
/serverportals register NAME BLOCK ITEM COLOR "proxycommand \"server SERVERNAME\""
For example:
/serverportals register server_creative minecraft:bone_block minecraft:ender_eye black "proxycommand \"server creative\""
The customportalapi will check if a portal without a dimension is registered and will print this on every launch of the server:
[xx:xx:xx] [main/INFO] (Minecraft) [STDOUT]: [customportalapi]ERROR: Dimension is null
The configured command will get executed nevertheless.
Changelog per release cycle can be found here. This changelog contains information from one release to the next one.
- LoomProductionEnv could be good for real testing https://github.com/DaemonicLabs/LoomProductionEnv