MonitoringMinecraft MonitoringMinecraft

World Progress

Мод NeoForge

Аддон к AnvilLib для Майнкрафт — добавляет систему World Progress и предикат CompletedProgress для InWorldRecipe.

58 скачиваний 0 подписчиков
Оцените первым

WorldProgress

A world-level persistent progress / flag system for Minecraft
一个用于 Minecraft 的世界级持久化进度 / 标记系统


📖 简介 | Introduction

WorldProgress 是一个基于 AnvilLib 的附属库 Mod。
它为 Minecraft 提供了一套世界级(World-level)进度标记系统,可用于在整个存档范围内持久化记录"某件事是否已经发生"。

这些进度信息会被写入世界存档,并且可以:

  • 通过 API 在代码中查询 / 设置
  • 通过 命令 手动管理
  • 通过 AnvilLib 的 InWorldRecipe 作为 predicate 使用,从而控制配方是否可用

WorldProgress is an addon library mod for AnvilLib.
It provides a persistent world-level progress / flag system, allowing mods and datapacks to record whether certain events have been completed in a save.

Progress data is saved to disk with the world, and can be:

  • Queried or modified via Java API
  • Managed via commands
  • Used as a predicate in AnvilLib InWorldRecipe, enabling world-state–dependent recipes

📦 依赖 | Dependencies

  • NeoForge
  • AnvilLib (required)

✨ 特性 | Features

  • ✅ 世界级进度(与玩家无关)
  • 💾 自动随世界存档持久化
  • 🧩 提供简洁的 Java API
  • 🛠 内置管理指令
  • 🔗 与 AnvilLib InWorldRecipe 深度集成
  • 🌍 支持本地化显示名称(通过资源包)

🧩 API 使用 | API Usage

测试进度是否完成

Test whether a world progress is completed:

boolean completed = WorldProgressAPI.testProgress(server, progressId);
完成某个世界进度

Mark a world progress as completed:

WorldProgressAPI.achieveProgress(server, progressId);
移除某个世界进度

Remove a completed world progress:

WorldProgressAPI.removeProgress(server, progressId);
获取所有世界进度

Get all completed world progress IDs:

List<ResourceLocation> list = WorldProgressAPI.getProgressList(server);
获取进度的显示名称

Get localized display name of a progress:

String name = WorldProgressAPI.getProgressString(progressId);
本地化规则 | Localization rule

在语言文件中添加:

progress_name.<namespace>.<path>="显示名称"

如果未提供翻译,则会显示 namespace:path


⌨ 指令 | Commands

权限等级:2(默认 OP)

列出当前世界中所有已完成的进度

List all completed world progress in the current world

/worldprogress list
测试某个进度是否已完成

Test whether a progress is completed

/worldprogress test <id>
将某个进度标记为完成

Mark a progress as completed

/worldprogress achieve <id>
移除某个已完成的进度

Remove a completed progress

/worldprogress remove <id>

🔧 与 InWorldRecipe 集成 | InWorldRecipe Integration

WorldProgress 提供了一个新的 InWorldRecipe predicate

world_progress:complete_progress

示例 | Example

{
  "type": "world_progress:complete_progress",
  "progress_id": "world_progress:downed_ender_dragon"
}

该 predicate 仅在指定世界进度已完成时才会满足条件

This predicate passes only if the specified world progress has been completed.

配方示例(节选) | Recipe Example (Excerpt)

"non_conflicting": [
  {
    "type": "anvilcraft:has_cauldron",
    "offset": [0.0, -1.0, 0.0]
  },
  {
    "type": "world_progress:complete_progress",
    "progress_id": "world_progress:downed_ender_dragon"
  }
]

👉 这可以用于:

  • 击杀末影龙后解锁配方

  • 世界进入某阶段后启用新内容

  • 剧情 / 科技线控制

🎯 适用场景 | Use Cases

  • 🌍 世界阶段系统(World Stages)

  • 🐉 Boss 击杀判定

  • 🧪 科技线 / 配方解锁

  • 📜 剧情 / 事件触发

  • 🧩 作为其他 Mod 的底层库

📄 许可证 | License

LGPL3

Смотри также

Похожие подборки моды — по версиям Майнкрафта, загрузчикам и жанрам.

Сервера Майнкрафт

Играть интереснее на сервере — выбирай в рейтинге серверов Майнкрафт и заходи прямо сейчас.

SkyBars
SkyBars Java + BE
864 онлайн
1.8 — 26.2 версия
🎮 ВЫЖИВАНИЕ ⚔️ АНАРХИЯ 🚗 ГТА РП 🎤 ГОЛОСОВОЙ ЧАТ 🎁 БЕСПЛАТНЫЙ ДОНАТ 🌟 СМП 💻 ПК+ТЕЛЕФОН
Minestory
28 онлайн
1.21 — 26.2 версия
Выживание • Экономика • Кланы • Приваты • Ивенты • PVP • Работа
BULLCRAFT
BULLCRAFT Java + BE
96 онлайн
26.2 версия
Анархия! PvP | Работают поршни и вагонетки
Battle Mine
Battle Mine Java + BE
2 онлайн
1.21.4 — 26.2 версия
ОТКРЫТИЕ! 20 + различных ивентов, 10+ различных боссов, много интересных механник
MineLauncher
Лаунчер Майнкрафт без лицензии — все версии
Бесплатный лаунчер для ПК и Андроид — все версии 26.2, 1.21.11, 26.1.2, 1.21.4. Fabric, NeoForge, Forge, шейдеры, моды и скины в один клик.
Без лицензии Fabric, NeoForge, Forge Моды, шейдеры, скины Все версии Майнкрафта ПК и Андроид Для слабых ПК Сервера в лаунчере
Скачать бесплатно
Windows и Андроид · Бесплатно · Без лицензии
Наш чат