Compatibility
Minecraft: Java Edition
Platforms
Supported environments
Links
Creators
Details
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



