《我的世界》Java版官宣取消代码混淆,模组开发迎来全新纪元

游戏官方迈出历史性一步,代码彻底透明化,旨在为模组开发者创造更友好的开发环境。

10月29日,《我的世界》游戏官网正式宣布,Java版将全面取消代码混淆,这是该游戏自发布以来对代码处理方式的重大改变。

长期以来,Java版《我的世界》一直使用代码混淆(隐藏部分代码)——这是游戏行业的一种常见做法。该措施使得模组开发者无法直接查看游戏源代码,所有类和函数名称都被打乱成无意义的字符串,给模组开发带来了额外困难。

01 历史背景:从完全混淆到逐步开放

《我的世界》Java版的代码混淆自游戏发布以来一直存在。在混淆模式下,开发者看到的不是直观的Creeper(苦力怕)类,而可能是brc这样的随机字母组合。

这种状况使得模组开发者必须投入大量时间和精力“逆向工程”来推测每个类和函数的作用。

2019年,Mojang采取了初步开放措施,发布了 “官方混淆映射表” (Mojmap)。

这一举措缓解了部分问题,但开发者仍需通过映射表间接理解代码结构。

现在,官方决定彻底消除这一障碍。

02 变革详情:透明化代码的未来

根据官方公告,这一历史性变更将从“Mounts of Mayhem”更新完整发布后的第一个快照版本开始实施。

从此,Java版《我的世界》的客户端和服务器.jar文件将不再经过混淆处理。

这一改变意味着:

  • 游戏将保留所有原始名称,包括变量、字段、方法和类等元素的技术名称

  • 调试过程将变得更加简单直接

  • 崩溃日志将变得可读,大幅缩短故障排查时间

  • 模组开发者可以直接查看和理解游戏源代码

03 社区响应:开发者的一致好评

游戏社区对这一决定普遍表示欢迎。一位开发者在其博客中写道:“这是极好的消息!Mojang始终支持游戏模组,这一举措将吸引更多人参与模组开发”。

更重要的是,即使不制作模组,开发者现在也可以深入学习《我的世界》的代码结构,特别是像世界生成这样的复杂系统,从中获得编程技巧的启发。

SpigotMC社区的讨论参与者同样持积极态度,认为从长远来看,这一变革“值得为此付出适应期的代价”。

04 过渡措施:平稳迁移的方案

Mojang意识到,这一变革可能会对现有模组工具构成挑战,因为这些工具通常是为处理混淆代码而设计的。

为保障平稳过渡,官方制定了分阶段实施计划:

  • 从下一个快照版本开始,将同时提供未混淆的“实验性发布”版本和传统的混淆版本

  • 模组开发者将有机会测试他们的工具和工作流程

  • 在完全过渡到非混淆版本前,提供充足的适应时间

知名的Fabric模组开发团队已发布指导方针,帮助开发者适应这一变化。

他们建议新开发的模组直接使用官方映射表,以便未来更容易升级。

05 法律条款:EULA保持不变

官方特别强调,取消代码混淆不会影响《我的世界》最终用户许可协议(EULA)和《我的世界使用指南》。

这两份文件仍然适用于Java版《我的世界》及其所有模组。

为增强透明度,每个.jar文件内将现在包含一个LICENSE文件,直接链接到EULA。

取消代码混淆不仅简化了当前的模组开发流程,更意味着新一代模组制作者能够更轻松地入门。

他们不再需要先克服理解混乱代码的障碍,而是可以直接关注创意和功能的实现。

《我的世界》正在从一个封闭的花园演变为真正开放的创作平台,这预示着游戏模组生态系统的空前繁荣可能即将到来。

发表回复

后才能评论