将 Minecraft Mod 转换为服务器插件

问题描述 投票:0回答:3

我开发 Forge Minecraft 模组已经有一段时间了。我想知道是否有可能真正将它们放在服务器上。我似乎无法找到直接的答案。我知道这可能不是放置此内容的地方,但我只是很想知道。请告诉我我是否可以做到,如果可以,如何做到。

minecraft bukkit minecraft-forge
3个回答
2
投票

你不能将 MC mod 变成服务器插件,因为 Bukkit 和 Forge 是不同的东西(从插件开发人员那里获取);但是,您可以使 mod 在 Forge 服务器上工作。

制作 Forge 服务器时,除了 Forge 客户端之外,服务器的所有玩家都必须安装客户端 Mod 才能正常工作,所以要做好准备。

第一步是实际安装服务器。接下来,转到 Forge 服务器文件夹,并将 mod 上传到该文件夹中。然后重新启动服务器,然后就可以了。服务器模组可以在这里找到。

因此,如果您不想阅读本文,其要点是,,您不能,但是您的 mod 可以在 Forge 服务器上使用,但不能作为 Bukkit 或 Spigot 服务器的插件,并且您的玩家将需要客户端模组包。希望这有帮助!


1
投票

如果您只想将 Mod 制作为服务器端,而无需让您的“客户端”下载它,请将

acceptableRemoteVersions = "*"
添加到您的 @Mod 行。

这样玩家就不必拥有模组即可连接到服务器。这样你就可以拥有像 dynmap 或 whotookmycookies 这样的插件/模组,而玩家也不必拥有模组。

如果您想将它们放在服务器上,是的,可以。但请记住,如果您仅针对单人游戏世界进行开发,您将遇到“侧面”问题。 代码会损坏,因为有些代码专门仅限于客户端,而有些代码仅限于服务器端。

您必须调整一些与数据包同步的代码,以确保所有图形事件都会发生,并且用户输入将返回给您。

单人游戏世界在这方面就不那么挑剔了。因此,请确保您在“正确”的一侧运行所有代码,并记住

if(!world.isRemote)
(测试您是否在服务器端运行)是您的朋友。

@Mod(modid = MyMod.MODID, name = MyMod.NAME, version = MyMod.VERSION), acceptableRemoteVersions = "*"
public class MyMod {
   ....
}

0
投票

好吧,我有同样的问题,我正在尝试一起使用沉浸式门户和此模组列表:

DeluxeMenus-1.14.0-Release.jar
EssentialsX-2.21.0-dev+81-cde7184.jar
EssentialsXChat-2.21.0-dev+81-cde7184.jar
EssentialsXDiscord-2.21.0-dev+81-cde7184.jar
EssentialsXDiscordLink-2.21.0-dev+81-cde7184.jar
EssentialsXSpawn-2.21.0-dev+81-cde7184.jar
floodgate-spigot.jar
Geyser-Spigot.jar
Graves-4.9.jar
GriefPrevention.jar
LuckPerms-Bukkit-5.4.126.jar
PlaceholderAPI-2.11.5.jar
Vault.jar
ViaBackwards-4.10.1.jar
ViaRewind-3.1.1.jar
ViaVersion-4.10.1.jar

和沉浸式门户(织物,而不是纸张) 我想要一个更简单的解决方案,因为 arclight 不支持纸质模组,如 https://github.com/IzzelAliz/Arclight/wiki/FAQ

所示
© www.soinside.com 2019 - 2024. All rights reserved.