2014-11-21 99 views
0

我想让我的Java游戏可以修改。我在想Lua,但我不太喜欢这个想法。基本上我只是想为我的游戏制作API,它将包含一些可供制作mod的人使用的方法。在我做mod之后,我想以某种方式将它编译成一个jar文件。最棘手的部分是加载文件(国防部)作为国防部。我从来没有做过这样的事情,但我已经使用Minecraft Forge API为游戏Minecraft创建了一些mod,所以我知道这是可能的。让我的游戏可以修改

+0

想到第一件事......写一个类加载器,在运行时从'plugins'或'mods'目录加载jar。有mods实现一些共同的接口。 – 2014-11-21 22:25:02

+0

另一个我的世界立方家伙nah ... – RussianVodka 2014-11-22 00:25:07

+0

当然。 :)但是我并没有制作类似Minecraft的游戏。 :)这只是一个例子。 – Samuel 2014-11-22 09:52:12

回答

1

我想使我的Java游戏可修改。

IMO,最好的办法是让你的程序的完整源代码免费提供给任何需要它的人。

但是,假设你的意思是你的游戏的“mods”不涉及黑客攻击核心代码的人,那么在Java中实现“插件”功能的标准方法是。基本上,你构建应用程序,这样,你想要的行为的区域是“MOD-能够”有:

  • 一个精心设计的interface说,“国防部”编码器可以实现,
  • 一个插件,发现装载机并从某处加载自定义代码(mods),并且允许您的应用程序查找代码的某种注册表机制。

此外,使代码开放源代码使mod编码器更容易编码和调试他们的mod。如果他们可以看到核心代码,他们可以弄清楚他们需要编写代码来与其交互。

+0

是的,但我想让游戏一次支持多个mod,并且将游戏开放源代码并不是解决方案。 – Samuel 2014-11-21 22:29:56

+0

@Samuel - 这不是解决方案。但我认为这是解决方案的**部分**。 – 2014-11-23 00:27:18

相关问题