定义

**附加包(Add-on)**是朝向Minecraft全版本自定义的坚实一步,它受Mojang官方支持。由资源包+行为包组成。目前,还只有基岩版的平台支持附加包(包括Windows 10、Gear VR和Fire TV)。这些版本现在允许玩家去更改他们世界的样貌(材质)、改变物品及生物的模型、修改生物的行为,这些功能都可以通过资源包和行为包来实现。此处提供的文档受官方支持与核实,是由Minecraft开发团队提供籍以协助社区发布的。

以上改编自MinecraftWIKI


如果您玩过JAVA版,那么您可以把附加包理解为JAVA版的数据包
说来很巧,附加包数据包在许多地方都有相似之处
首先它们都使用的JSON,其次也都是官方的而非第三方,也无需任何多余的启动器框架才能加载原版即可。

至于两者谁强谁弱,这也无法一口肯定
在有些地方数据包远远胜过了附加包(如数据包在1.16加入的自定义维度),也有些地方则相反(如附加包的精华部分——实体)


Addon大部分文件均由JSON编写
在1.9.0.3beta加入了前所未有的的JavaScript脚本引擎,虽然现在也不怎么完善,也只对WINDOWS10平台开放,安卓需使用方启加载,IOS彻底没救。但也让开发者不再受限于第三方的MODAPI。
(比如IC/HZ与张卓伟的方块启动器的MODPE)
除此之外,JavaScripts脚本引擎的experimental_ui基于HTML5,因此还会涉及到HTML与CSS等语言

基岩版"MODAPI"

在JAVA版中有许多的MODAPI,如:Forge,Fabric...
而基岩版也是如此,也有许多形形色色的”MODAPI“

格式

  • 官方格式
    • 附加包
      • 资源包
        • 材质包
        • 音乐包
        • 语言包
        • 着色器
      • 行为包
        • 函数
        • 脚本引擎(JavaScript)
    • Mod SDK
    • Mod API(Python)
  • 非官方格式
    • 交换型
      • PTPMod
    • 解释型
      • ModPE
      • CoreEngine Mods
      • InnerCore Mods
    • 编译型
      • Native Mods
    • 混合型
      • InnerCore Native Mods

加载器

  • 外置型
    • GenericLauncher
    • BlockLauncher
    • Toolbox
    • ModdedPE
  • 内嵌型
    • InnerCore
    • 中国版
  • 实例型
    • Horizon
    • 服务器

服务端

  • 完全重写类
    • mcpelauncher-server
    • mcpeserver
    • Naïve
    • PocketMine
    • PocketMine MP
    • Cobblestone Server
    • SSMod
    • SSJS
    • NukkitX
  • BDS(修改基岩版专用服务器类))
    • Bedrock Delicated Launcher(BDL,Liuxn平台)

      • BDLMod
    • Element Zero(EZ)注入框架

      • EZDLL(C++)
      • EZJS(JavaScript)
    • 梦之故里(DT)注入器

      • 梦故DLL(C++)
        • BDSNetRunner(CSR,依赖于梦故注入器或LL)插件平台
          • CSRDLL(.Net)
            • IPYR(Python,依赖于CSR)
            • NetJSR(JavaScript)
            • CSharpLuaRunner(Lua)
            • ILR(Lua)
      • 梦故JSR(JavaScript,依赖于梦之故里或BDX)
    • BedrockX框架(BDX)

      • BDXLUA (Lua)
        • BDXGLang(GUI接口)
      • BDXDLL (C++,BDXDLL与LiteLoader插件兼容)
        • BDXJSR(兼容梦故JSR脚本)
      • 梦故JSR(JavaScript,依赖于梦之故里或BDX)
    • LiteLoader注入框架(LL,依赖于BDX)

      • LiteLoader(C++,BDXDLL与LiteLoader插件兼容)
      • BDSNetRunner(CSR,依赖于梦故注入器或LL)插件平台
        省略...
    • BDXCore注入框架(BDXC,依赖于原生BDS或LL)

      • BDXCore(C++)
      • Pyr(Python)

前世今生(发展史)

自从Minecraft的原始Java版早期开发以来,已经计划为开发人员实现添加和更改游戏内容的官方方式。官方游戏定制的计划可以追溯到2010年7月5日的Alpha v1.0.1_01,在发布之后计划称为Mod API。 据说它在Beta 1.8中发布。然后将Mod API重新命名为插件API,最初声明计划用于1.3的版本,然后用于1.4版本,然后由Curse意外地声明它将在1.5中实现。

在MINECON 2012,Mojang分享了他们对插件API未来的愿景。该API将由Bukkit团队开发并旨在简化模型和下载过程,虽然包含稍微有限的功能集。最初发布开发者网站后 (http://dev.minecraft.net) 和GitHub页面,这些都在一年内被删除。

开发人员曾多次提到,游戏代码中的许多更改都在准备插件API,包括2014年7月29日的Dinnerbone、Grum于2015年7月5日在“The Minecraft Team - Behind the Scenes”小组讨论和2015年10月19日,在Java版1.9的战利品表上工作时再次和Dinnerbone。一位用户回复说“我认为官方回复‘我们正在努力’真的会有很多帮助”。Dinnerbone回答说:“我们正在努力。”

2016年8月12日,Searge发推文说:“MINECON 2016上将会有关于API的消息。我会谈谈我正在研究的事情以及我们的计划。但现在没有更多细节。“第二天,Grum证实了携带版上的这一点。Minecon上概述了附加组件开发的计划和路线图。

以上摘自MinecraftWIKI