跳到正文

SDM Ore Stages

作者:Sixik

为方块和矿石添加基于阶段的进度——在玩家解锁特定 SDM Stages 之前隐藏或替换它们。

收藏

介绍

介绍由机器翻译自 CurseForge 原页面,仅供参考。

SDM Ore Stages

SDM Ore Stages 是对经典模组 Ore Stages 的现代化重制版本,
适配Minecraft 新版本(1.21 及更高版本),并全面集成到 SDM Stages 生态系统中。

该模组允许你逐步限制方块的访问权限——隐藏、替换方块,或使其无法访问,
直到玩家达到所需的进度阶段。

主要特性

  • 通过 SDM Stages 实现逐步推进系统——不再需要 GameStages。
  • 隐藏和替换方块:例如,在解锁阶段前,可以将 diamond_ore 替换为 stone。
  • 支持 CraftTweaker 和 KubeJS,可灵活配置。
  • 全面支持 BlockState——可以设置状态(如 snowy=false、axis=y 等)。

运行要求

⚠️ 仅支持 Minecraft 1.21 及更高版本。
不支持旧版本(1.20.x 及以下),这些版本无法运行。(也许以后会移植。)

工作原理?

如果玩家**没有所需阶段**:

  • 方块会显示为替代方块(例如,用 stone 代替 diamond_ore)。
  • 玩家无法与其互动(PCM、破坏、激活)。
  • 方块被破坏时,会掉落替代方块的物品。
  • 挖掘速度与替代方块相同。
  • 如果方块在没有玩家参与的情况下被破坏(爆炸、液体、矿车),则会使用“默认行为”。

示例:KubeJS

// server_scripts/example.js

// Replaces the grass with an oak log until the "one" stage is opened
OreStages.addOreStageBlockReplaced("one", "minecraft:grass_block", "minecraft:oak_log");

// Replaces iron ore with stone until the "two" stage is opened
OreStages.addOreStageBlockReplaced("two", "minecraft:iron_ore", "minecraft:stone");

// Hides diamond ore up to the "three" stage
OreStages.addOreStageBlockState("three", "minecraft:diamond_ore");

/*
OreStages.addOreStageBlock(stage as String, hidden as Block);            // By default, stone or deep slate is used.        
OreStages.addOreStageBlockState(stage as String, hidden as BlockState);  // By default, stone or deep slate is used.       

OreStages.addOreStageBlockReplaced(stage as String, hidden as Block, replaced as Block);
OreStages.addOreStageBlockStateReplaced(stage as String, hidden as BlockState, replaced as BlockState);
*/

示例:CraftTweaker

import mods.orestages.OreStages;

// Replaces the grass with an oak log until the "one" stage is opened
OreStages.addOreStage("one", <blockstate:minecraft:grass_block:snowy=false>, <blockstate:minecraft:oak_log:axis=y>);

// Replaces iron ore with stone until the "two" stage is opened
OreStages.addOreStage("two", <block:minecraft:iron_ore>, <block:minecraft:stone>);

// Hides diamond ore up to the "three" stage
OreStages.addOreStage("three", <block:minecraft:diamond_ore>);

/*
OreStages.addOreStage(stage as string, hidden as Block);          // By default, stone or deep slate is used.        
OreStages.addOreStage(stage as string, hidden as BlockState);     // By default, stone or deep slate is used.    

OreStages.addOreStage(stage as string, hidden as Block, replaced as Block);
OreStages.addOreStage(stage as string, hidden as BlockState, replaced as BlockState);
*/

集成

模组 描述
SDM Stages 阶段系统与玩家进度
CraftTweaker 通过 ZS 脚本进行配置
KubeJS 通过 JS 脚本进行配置

给整合包作者的说明

这款模组非常适合:

  • 带有渐进式矿石与资源探索的 RPG/任务整合包。
  • 帮助新玩家循序渐进地学习机制的教育类整合包。
  • 需要平衡进度或科技树的服务器。

原项目

本项目基于原模组 Ore Stages
(作者:Darkhax),并针对 Minecraft 的现代版本进行了彻底的重写与更新,
集成了 SDM API,性能也有所提升。

常见问题

SDM Ore Stages 支持哪些 Minecraft 版本?

SDM Ore Stages 支持 Minecraft Java 版 1.16.5–1.21.1,共 5 个版本,可用的加载器:Fabric / Forge / NeoForge。下载时注意选择和你游戏版本一致的文件。

SDM Ore Stages 怎么安装?

先用 PCL2 或 HMCL 启动器安装对应版本的 Fabric / Forge / NeoForge,再把下载的 .jar 文件放进游戏目录的 mods 文件夹,重新启动游戏即可。开启了版本隔离的,mods 文件夹在 versions/版本名 下面。

评论

登录后评论和评分

Sixik 的其他作品

查看全部 →