介绍

Game Stages只是GS系列mod的框架,该mod的功能仅为定义“阶段”(Stages)。


阶段系统是类似于权限系统的。
“阶段”就相当于权限组,而“阶段”内又存在着很多“规则”,这些“规则”相当于权限节点。
玩家拥有了“阶段”就拥有了相应的权限节点——也就拥有了使用某些物品或功能的权限

相应的,如果玩家没有某个“阶段”,就缺少相应的权限节点——也就不能使用某些物品或功能。


声明

GS实际上只是允许创建“阶段”。添加“规则”的功能则需要依靠其附属mod实现。


在较低的版本(低于1.13)中所有“阶段”都不需要提前声明。

而在较高(1.13及以上)的版本中,需要通过known_stages.json文件提前声明所有阶段,

该文件的位置应该在~/config/gamestages/known_stages.json

示例如下:

["stone_stage", "iron_stage", "gold_stage", "diamond_stage"]

在以上例子中,声明了stone_stage(石头阶段)、iron_stage(铁阶段)、gold_stage(金阶段)、diamond_stage(钻石阶段)

需要注意的是:阶段名称只能由0-9、小写字母和下划线组成,不可以有中文、空格、大写字母。


假人功能

mod使用假玩家代替玩家实现自动化操作。
假玩家(fake Player)是很多mod实现“右击”功能的基础,mod创建了一个虚拟的玩家,使设备可以执行一些玩家才有能力做的事情,比如右击使用某些物品、设备,或收获作物。
已知使用了假玩家的设备有:
植物收获器 (Plant Interactor)自动点击器 (Auto Clicker)执行模块 (Activator Module)使用者 (Mechanical User)自动执行器 (Autonomous Activator)自动玩家模拟器 (Automated User)活化工具台 (Dynamism Tablet)玩家模拟器 (Player Simulator)
但假玩家无法获得阶段,因此会导致这些设备无法正常工作。
所以这个mod提供了一种为它们定义默认阶段的方法。使得这些设备可以在这个mod下正常运作。

可以通过~/config/gamestages/fake_players.json文件来实现。

下面是一个示例文件:

[
  {
    "fakePlayerName": "test123",
    "stages": [
      "stage1",
      "stage2",
      "stage3"
    ]
  },
  {
    "fakePlayerName": "fake456",
    "stages": [
      "fish",
      "pepper",
      "cheese"
    ]
  }
]


命令

/gamestage add (silent) <player> <stage>
给玩家添加一个阶段,如果带有“silent”字段,则静默执行,不通知玩家
/gamestage remove  (silent) <player> <stage>从玩家移除一个阶段,如果带有“silent”字段,则静默执行,不通知玩家
/gamestage info (player)列出玩家所拥有的所有阶段。如果未指定玩家,将检索命令使用者
/gamestage check (player) <stage>检查玩家是否拥某个阶段。如果未指定玩家,将检查命令使用者
/gamestage clear (player)
清除玩家拥有的所有阶段。如果未指定玩家,将清除命令使用者
/gamestage all (player)给与玩家所有已知阶段。如果未指定玩家,将给与命令使用者
/gamestage reloadfakes重载GS数据

以上命令可以通过命令方块执行,但是更推荐通过CT、KubeJS或FTB Quests等其他mod来执行。


CT支持

CT为GS提供了支持

具体请阅读https://docs.blamejared.com/1.16/zh/mods/RecipeStages/RecipeStages/