介绍
BRRP(Better Runtime Resource Pack,更好的运行时资源包)是一个用于在运行时生成资源的库模组,是 ARRP(Advanced Runtime Resource Pack,高级运行时资源包)模组的一个分支。
欢迎加入腾讯 QQ 群 587928350 或 KOOK(开黑啦)频道邀请码 KlFS0n 体验本模组的最新更新。
注意:自 1.0.0 版本起,模组的 ID 已从 better_runtime_resource_pack 更改为 brrp_v1,并修改了代码且不兼容旧版本,但可以与旧版本共存。除非有需要,请不要使用旧版本。
什么是运行时资源包?
运行时资源包(RRP)是指在 Minecraft 运行时生成的资源与数据文件,用于避免一些重复性工作。对于拥有大量相似方块和物品的模组,运行时资源包有助于显著减小模组文件的大小。
例如,大多数方块的战利品表可以描述为“掉落方块本身”。有些方块只有在使用精准采集时才会掉落。对于台阶方块,当破坏双层台阶方块时会掉落两个方块而不是一个。在战利品表中,每个方块都需要一个战利品表 JSON 文件;创建它们相当耗时。此外,几乎每个方块都需要一个“方块状态”、方块模型和物品模型(方块模型可能不止一个)。如果把战利品表和配方(如果存在)也算上,每个方块至少需要 5 个 JSON 才能实现完整功能。相比之下,运行时资源包让它们在游戏实例内部生成,而不是存储在模组 JAR 文件中。
运行时资源包在功能上与常规资源包没有区别。常规资源包(包括模组内置资源和手动安装的资源包或数据包)可以覆盖运行时资源包的内容,或与运行时资源包产生关联。一个典型的例子是,方块模型定义在运行时资源包中,而它们的纹理文件照常存储在模组文件中(因为在运行时生成纹理文件并不合适)。
与传统资源包相比,运行时资源包减少了 I/O,但增加了对象序列化的过程,这是运行时资源包的一个缺点。当生成资源包时,对象会被转换为字节形式(通常是 JSON)。这个过程称为序列化。当游戏实例读取这些资源包时,这些字节形式的内容会被解析以在游戏中生成对象。这个过程称为反序列化。在传统资源包中,所有资源都是已序列化的,游戏实例只需在加载资源时对其进行反序列化。然而,运行时资源包需要同时经历序列化和反序列化的过程。
再次总结传统资源包和运行时资源包在游戏中的读取过程:
- 传统 文件 → (读取为)字节形式 → (反序列化为)游戏内对象
- 运行时 代码 → ARRP 对象 → (序列化为)字节形式 → (反序列化为)游戏内对象
我的计划是在未来版本中可以直接使用游戏中生成的对象,而无需经历反序列化和序列化的过程。这在理论上已经可行,但为了以资源包的形式存在并允许被传统资源包和数据包覆盖,还需要进一步研究。
关于本模组
本模组(BRRP)是 ARRP 的一个分支。自 1.0.0 起,本模组已独立于 ARRP,不再提供 ARRP 的功能,但可以与 ARRP 模组共存。
本模组是开源的,并在 MPLv2 许可证下发布。
更多详情请见 GitHub。
常见问题
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
大量方块和物品,助你打造美丽城市!
Extended block shapes
这个模组为许多原版方块添加了更多形状,包括原版 Minecraft 中不存在的形状,比如竖直台阶、竖直楼梯或四分之一方块。大多数方块都保留了原版特性,与其基础方块的行为一致。
Extended Block Shapes 扩展方块形状
为许多原版方块添加楼梯、台阶、栅栏、栅栏门、按钮和压力板。
评论
登录后评论和评分