
StalApi
一个为Minecraft模组提供可复用功能和方法的库模组,减少重复实现常见功能的需求。
查看大图如果你没有安装需要将 StalApi 作为前置依赖的模组,则无需将其添加到你的模组列表或整合包中。
StalAPI 是一个库模组,旨在为我的其他模组提供集中化、可复用的系统、功能和工具。
其目标是避免在多个项目中重复代码,同时为各种渲染和动画系统提供通用基础。随着时间的推移,StalAPI 将包含自定义着色器、后处理特效、用于渲染模组实体的工具,以及用于处理物品和实体动画的实用程序。 StalAPI 还提供了一个披风管理系统,用于向特殊玩家(如贡献者、测试版玩家和活动获胜者)分发专属奖励披风。 该 API 的设计会随着新可复用系统和功能的开发而不断演进。
目前,模组开发者可以将 StalAPI 作为其模组的跨版本披风库使用,从而在 StalAPI 更新时,无需更新其模组即可管理和自定义披风。
如何将 StalApi 集成到你的模组中:
在 neoforge.mods.toml 中声明依赖
如果你的模组使用 StalAPI 的披风系统,建议使用 必需依赖 (type="required")。这可以确保披风与你的模组直接关联,并保证在加载你的模组时 StalAPI 始终可用。
[[dependencies.{yourmodid}]]
modId = "stalapi"
type = "required"
versionRange = "[1.0.0,)"
ordering = "AFTER"
side = "CLIENT"
将 {yourmodid} 替换为你自己的模组 ID。
如果 StalAPI 对你的模组并非必需,也可以使用可选依赖 (type="optional"),但当你的模组披风系统依赖于 StalAPI 时,推荐使用 required。
如何为你的模组添加自己的披风:
将你的 GitHub 仓库添加到已验证列表
只需调用一次公共的 CapeRepository.register(...) API,通常在你的模组构造函数或通用设置阶段调用:
import leroidesafk.stalapi.capes.CapeRepository;
import net.neoforged.fml.ModList;
// 仅在启动时调用一次(模组构造函数、通用设置等)
if (ModList.get().isLoaded("stalapi")) {
CapeRepository.register("YourGitHubUsername", "your-cape-repository");
// 或者指定特定分支:
// CapeRepository.register("YourGitHubUsername", "your-cape-repository", "main");
}
ModList.get().isLoaded("stalapi") 检查仅在您使用可选依赖时才需要。
如果 StalAPI 声明为 required,则保证在加载你的模组时它可用。
添加并整理你的披风
注册仓库后,你可以使用以下文件夹结构将披风添加到你的 GitHub 仓库中:
your-repository/
├── data.json ← 可选:全局/团队部分,始终会被检查
├── <capeName>.png ← 属于全局部分的披风
├── <capeName>.png.mcmeta ← 可选:动画
├── <modId>/ ← 可选:每个兼容模组一个文件夹。
│ │ 此文件夹中的披风仅在
│ │ 安装了对应模组时可用。
│ ├── data.json
│ ├── <capeName>.png
│ └── <capeName>.png.mcmeta ← 可选:动画
└── <anotherModId>/
├── data.json
└── ...
data.json 格式
无论文件位于仓库根目录还是模组特定文件夹中,都使用相同的 data.json 格式:
{
"global_name": "Section Name",
"players": {
"<player-uuid>": ["capeName1", "capeName2"]
},
"capes": {
"capeName1": {
"name": "Displayed Name",
"rarity": "legendary"
},
"capeName2": {
"name": "Another Name",
"rarity": "rare"
}
}
}
global_name- 仅在根目录的data.json中使用和读取。它定义了界面中显示的全局/团队部分的名称。对于特定模组的data.json,此字段将被忽略;部分名称取自模组名称。players- 将玩家的 UUID(带连字符)映射到其拥有的披风名称列表。capes- 包含每个披风的元数据,包括其显示的name和可选的rarity。
支持的稀有度值为:
common、uncommon、rare、epic、legendary 和 mythic。
如果未指定稀有度,则使用默认颜色。
与原版披风不同,披风纹理支持透明度、可变分辨率和动画。
关键要点
- StalAPI 的默认仓库 (
Leroidesafk/stalapi-data) 除了你自己的仓库外,始终会被检查。 - 如果多个模组(或错误地同一个模组)注册了完全相同的 owner/repository/branch 组合,则只会被检查一次,以防止重复。
<modId>文件夹必须与对应模组的 ID 完全匹配。- 根目录中的
data.json始终会被检查,可用于全局/团队披风。 - 特定于模组的披风应放置在匹配该模组 ID 的文件夹中。
- 动画披风可以选择性地包含一个
.png.mcmeta文件。 - 该模组使用你的 Mojang 披风以及任何其他添加披风的模组的披风作为默认披风,以避免披风冲突。
- 你有两个可以同时激活的选项,用于将披风预览为鞘翅,或查看披风的 360 度版本。
示例:

你也可以看看我的其他模组
正在加载版本记录…




正在加载评论…
评论在新手盒子客户端中发表,这里同步展示。