Ala Lab 工作室

模组移植到新版本.

模组或插件卡在旧版 Minecraft 上了?我们把它移植到新的游戏版本或其他加载器,并重写在新版本中不再可用的代码,顺便修复崩溃和错误。看过代码后,我们再告诉您价格和工期。

游戏版本
1.7.10 → 26.3
模组
Forge, NeoForge, Fabric
插件
Spigot, Paper, Folia
申请回复
8 小时内

我们做什么

我们移植什么.

您自己的模组、整合包里的模组或服务器插件都可以,只要有源代码以及修改它的权利。

新的游戏版本

模组还停留在旧版本,玩家却已经转到新版本。

  • 从 1.12.2、1.16.5 和 1.20.1 移植到 1.21.x 和 26.x
  • 替换过时和已被移除的游戏代码
  • 把配方、标签和数据迁移到新格式
  • 一套代码同时支持两个游戏版本

订单示例: 把 1.20.1 Forge 模组移植到 1.21.1,以便在新版本上组建整合包。

其他加载器

同一个模组,换一个加载器。

  • Forge → Fabric 或 NeoForge
  • Fabric → NeoForge,以及反向移植
  • 一套代码同时支持两个加载器
  • 替换新加载器上没有的依赖

订单示例: 只有 Forge 版的模组:做一个 Fabric 版,好和 Sodium 一起放进整合包。

插件:新核心与新版本

服务器更新后,插件无法启动了。

  • 把插件从 1.8.8 和 1.16.5 更新到 1.21 和 26.x
  • Spigot → Paper,用上它更快的 API
  • 适配 Folia 和区域化运行
  • 替换每个版本都会出问题的 NMS 代码

订单示例: 服务器更新到 1.21 后,1.16.5 的插件不能用了。

修复与改进

模组或插件能用,但有错误。

  • 游戏崩溃和日志中的错误
  • 与其他模组和插件不兼容
  • 内存泄漏、FPS 和 TPS 下降
  • 新功能(如果模组的许可证允许)

订单示例: 服务器每隔几小时就崩溃一次:从日志中找出原因并修复。

变化在哪里

为什么旧模组无法启动.

Minecraft 几乎每次更新都会改动自身代码:重命名类、移除旧的注册方式、更改数据格式。因此旧的 .jar 在新版本上无法加载,需要重写。我们自己的模组 Ala Industrial 同时为两个游戏版本发布,所以我们很熟悉这些改动。

  • 跨越多个版本1.12.2 → 1.21

    工作量最大的移植:数据、注册和渲染都是新的。常常相当于在旧逻辑上做一个几乎全新的模组。

  • 更换加载器Forge → Fabric

    加载器不同,事件和 API 也不同。模组逻辑保留,外围代码重新编写。

  • 插件Spigot → Paper

    Paper 提供自己更快的 API,而 Folia 需要把插件改造为多线程运行。

需要源代码和修改权:您是作者、模组的许可证允许,或作者已同意。没有源代码,移植通常无法进行。您的情况能不能做,我们分析后告诉您。

移植

移植时会改变什么.

移植的难度取决于从哪里移植到哪里。下面是常见情况,看过代码后我们会给出准确评估。

移植变化内容难度
1.20.1 → 1.21.x变化内容用物品数据组件取代 NBT,新的注册表和配方格式难度中等
1.12.2 → 1.21.x变化内容几乎全部:注册、渲染、数据、网络。保留逻辑,重写代码难度高
1.21.x → 26.x变化内容游戏代码、渲染和输入中的局部改动难度低或中等
Forge → Fabric 或 NeoForge变化内容事件、注册和加载器配置。模组逻辑不变难度中等
Spigot → Paper变化内容旧代码通常可以运行,我们改用 Paper 更快的 API难度低
Paper → Folia变化内容插件按多线程下的区域化运行重写难度高

任务示例

大家找我们做什么.

典型订单,隐去了客户名称。移植就是从这样的消息开始的。

聊天

  1. <Player1> 一个 1.12.2 Forge 模组,作者已经弃坑了。想在 1.21.1 上用。
  2. [Ala Lab] 把源代码发过来,并确认一下许可证,我们看看改了什么,在开工前告诉您工期。
  3. <Player2> 有一个 Fabric 模组,想放进 NeoForge 整合包。
  4. [Ala Lab] 逻辑保留,外围代码按 NeoForge 重写。也可以同时支持两个加载器。
  5. <Player3> 服务器更新到 26.x 后,插件有一半功能失效了。
  6. [Ala Lab] 把启动日志发给我们,我们替换出错的调用,并在装有您插件的测试服务器上检查。
  7. <Player4> 装了我们的模组后,进入世界时游戏就崩溃。
  8. [Ala Lab] 把崩溃日志发过来,我们找出原因、修复,并在同一个整合包上验证。
写下您的想法

合作流程

四步移植到新版本.

每一步您都清楚:已经完成什么,接下来做什么。

移植之路

  1. 提交申请

    发来模组或插件、源代码链接,以及要移植到的版本。我们会在 8 小时内回复。

  2. 报价

    我们查看代码以及版本之间的变化,并在开工前确定工作范围、价格和工期。

  3. 移植与测试

    我们完成移植,修复发现的错误,并在目标版本和加载器上进行游戏内测试。

  4. 交付

    成品 .jar、更新后的源代码和更改清单。代码交付条件在开工前约定。

价格

价格取决于什么.

勾选需要做的内容,就能看到工作量如何增长。看过代码后我们给出价格,并在开工前确定下来。

模组或插件需要做什么?

大致工作量

小型

小型模组或插件,移植到相邻版本。

  • 命令插件从 1.20.1 移植到 1.21.x
  • 只有几件物品的模组移植到新版本
  • 修复一个崩溃
中型

带方块和机制的模组,或更换加载器。

  • 模组从 Forge 移植到 Fabric
  • 插件从 Spigot 移植到 Paper
  • 模组从 1.20.1 移植到 1.21.1,适配新的数据格式
大型

大型模组或非常旧的版本。

  • 带渲染和界面的模组从 1.12.2 移植到 1.21
  • 适配 Folia 的插件
  • 同时支持两个加载器和两个版本的模组

这只是参考,不是报价。任务明确后我们会给出准确的费用和工期。

商量移植

常见问题

关于模组移植的常见问题.

能不能直接在新版本上运行旧模组?

不能。模组和插件使用游戏的内部代码,而这些代码几乎每个版本都会变。旧的 .jar 在新版本上要么无法加载,要么会崩溃,所以必须重写代码。

你们移植别人的模组吗?

移植,前提是您有源代码和移植的权利:您是作者、模组的许可证允许,或作者已同意。我们会在开工前检查许可证。

移植要多少钱?

取决于模组的规模、版本跨度和加载器。看过代码后我们给出价格,并在开工前与工期一起确定下来。

玩家的世界和物品能保留吗?

我们会尽量保留方块和物品的名称,让旧世界还能打开。如果新版本需要迁移数据,我们会提前告知,并在世界副本上进行验证。

能让模组同时支持 Forge 和 Fabric 吗?

可以。我们自己的模组就是用同一套代码同时发布 Fabric 和 NeoForge 版本,您的模组也可以这样做。

最后我能拿到什么?

目标版本和加载器的成品 .jar、更新后的源代码和更改清单。版权和发布后的支持在开工前约定。

您的下一个项目

我们要在您的世界里
建造什么?

提交申请,告诉我们您想在游戏里看到什么。我们会在 8 小时内回复,与您一起梳理任务,哪怕现在只有一句话。

  • 我们一起梳理任务
  • 开工前商定成本
  • 我们明确交付成果

如何联系您

我们要做什么

0/5000

您的申请会直接通过 Telegram 发给我们。我们会按您提供的联系方式回复。我们如何处理您的数据。