跳到正文

Server Portals

作者:michiruf

Register serverside portals, which can be built using configured blocks, items to light them up and execute a command when accessed. [vanilla compatible!]

收藏

介绍

中文介绍正在准备中,下面暂时显示原文。

Server Portals

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.0 – 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.

Installation

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,
kyrptonaught’s CustomPortalApi-Polymer and
because of that with Polymer.

Usage instructions

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

Example configuration file

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"
    }
  ]
}

Usage together with ProxyCommands

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\""

Known error reports in server logs

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

Changelog per release cycle can be found here.
This changelog contains information from one release to the next one.

License

MIT License

Further reading (for devs)

  • LoomProductionEnv could be good for real testing https://github.com/DaemonicLabs/LoomProductionEnv

常见问题

Server Portals 支持哪些 Minecraft 版本?

Server Portals 支持 Minecraft Java 版 1.19–1.20.2,共 8 个版本,可用的加载器:Fabric。下载时注意选择和你游戏版本一致的文件。

Server Portals 怎么安装?

先用 PCL2 或 HMCL 启动器安装对应版本的 Fabric,再把下载的 .jar 文件放进游戏目录的 mods 文件夹,重新启动游戏即可。开启了版本隔离的,mods 文件夹在 versions/版本名 下面。运行环境:仅服务端。

评论

登录后评论和评分

michiruf 的其他作品

查看全部 →