介绍
BRRP (Better Runtime Resource Pack) 是一个用于在运行时生成资源的前置库模组,是 ARRP (Advanced Runtime Resource Pack) 模组的一个分支。
欢迎加入腾讯 QQ 群 587928350,或使用 KOOK (KaiHeiLa) 频道邀请码 KlFS0n,体验此模组的最新更新。
注意:从 1.0.0 版本开始,模组 ID 从 better_runtime_resource_pack 更改为 brrp_v1,并修改了代码,因此不再兼容旧版本,但可以与旧版本共存。除非确有需要,请不要使用旧版本。
什么是运行时资源包?
运行时资源包(RRP)指 Minecraft 运行时生成的资源和数据文件,用于避免一些重复工作。对于包含大量相似方块和物品的模组,运行时资源包有助于显著减小模组文件的体积。
例如,大多数方块的战利品表都可以描述为“掉落方块本身”。有些方块只有使用精准采集时才会掉落。对于台阶方块,挖掘双层台阶时会掉落两个方块,而不是一个。在战利品表中,每个方块都需要一个战利品表 JSON 文件;创建这些文件相当耗时。此外,几乎每个方块都需要“方块状态”、方块模型和物品模型(方块模型可能不止一个)。如果还要考虑战利品表和配方(如果存在),每个方块至少需要 5 个 JSON 文件才能实现完整功能。相比之下,运行时资源包会在游戏实例中生成这些文件,而不是将它们存储在模组 JAR 文件中。
就功能而言,运行时资源包与常规资源包没有区别。普通资源包(包括模组内置资源包,以及手动安装的资源包或数据包)可以覆盖运行时资源包的内容,也可以与运行时资源包建立关联。一个典型例子是:方块模型由运行时资源包定义,而纹理文件仍像往常一样存储在模组文件中(因为在运行时生成纹理文件并不合适)。
与传统资源包相比,运行时资源包减少了 I/O 操作,但增加了对象序列化的过程,这是运行时资源包的一个缺点。生成资源包时,对象会被转换为字节形式(通常是 JSON)。这个过程称为序列化。游戏实例读取这些资源包时,会解析字节形式的内容,在游戏中生成对象。这个过程称为反序列化。在传统资源包中,所有资源都已序列化,游戏实例只需在加载资源时对它们进行反序列化。而运行时资源包则需要同时进行序列化和反序列化。
再次总结传统资源包和运行时资源包在游戏中的读取过程:
- 传统资源包 文件 →(读取为)字节形式 →(反序列化为)游戏内对象
- 运行时资源包 代码 → ARRP 对象 →(序列化为)字节形式 →(反序列化为)游戏内对象
我一直计划在未来版本中实现直接使用游戏内生成对象的功能,从而省去反序列化和序列化的过程。理论上这已经可行,但为了将其作为资源包使用,并允许传统资源包和数据包覆盖,还需要进行进一步研究。
关于此模组
这个模组(BRRP)可以视为 ARRP 的一个分支,支持 ARRP 的所有功能。安装 BRRP 后,即使安装了依赖 ARRP(而非 BRRP)的模组,游戏也能启动。因此,请勿同时安装 BRRP 和 ARRP。不过,如果某些模组在其 mod JAR 中嵌套了 ARRP,可能会出现问题,因此不建议将此模组嵌入其他模组的 JAR 中。
此模组尽量减少对 ARRP 的不兼容改动,因此不会删除任何类、字段或方法,只会将其弃用。如果某些模组对 ARRP 应用了 mixin,在 BRRP 上运行时可能会出现问题,但已尽可能降低发生此类问题的概率。
此模组为开源项目,采用 MPLv2 许可证发布。
常见问题
Better Runtime Resource Pack (BRRP) 支持哪些 Minecraft 版本?
Better Runtime Resource Pack (BRRP) 支持 Minecraft Java 版 1.16.2–1.21.1,共 23 个版本,可用的加载器:Fabric / Forge。下载时注意选择和你游戏版本一致的文件。
Better Runtime Resource Pack (BRRP) 怎么安装?
先用 PCL2 或 HMCL 启动器安装对应版本的 Fabric / Forge,再把下载的 .jar 文件放进游戏目录的 mods 文件夹,重新启动游戏即可。开启了版本隔离的,mods 文件夹在 versions/版本名 下面。
SolidBlock 的其他作品
查看全部 →Better Runtime Resource Pack (BRRP)
一个可在运行时生成资源的前置库模组,基于 ARRP 模组并进行了改进。
Mishang Urban Construction
An amount of blocks and items that make a beautiful city!
Extended block shapes
This mod adds more shapes for many vanilla blocks, including shapes that do not exist in vanilla Minecraft, like vertical slabs, vertical stairs or quarter pieces. Most of the blocks have vanilla behaviours, like what their base block behaves.
Extended Block Shapes 扩展方块形状
Adds stairs, slabs, fences, fence gates, buttons and pressure plates for many vanilla blocks.
评论
登录后评论和评分