Simple Animated Guns 游玩指南

本文最后编辑于:2025年6月2日 晚上

我的环境

平台Windows11 Pro-23h2

Minecraft 游戏版本1.20.1

Mod 列表

image-20250601225300806

  • 其中,Iris Shaders 为光影运行需要,并非必须 mod

Simple Animated Guns (以下将简称为 S.A.G) 版本1.3

汉化相关物品描述

我自己使用的是 i18n,该 mod 很方便,直接下载对应版本进行安装即可。

该 mod 的 MC 百科地址:[i18n] 自动汉化更新

S.A.G 的相关内容

S.A.G 模组在游戏内将会占据三页内容:

  • S.A.G Attachments:枪械配件
  • S.A.G Crafting:制作相关
  • S.A.G Guns & Ammo:枪械和子弹

新增加的可制作物品

在上述三页内容中的 Crafting 中,可以知道作者自己定义的可制作物品

硬化铁粒(hardened_iron_ingot)

合成:此物品可由 1 硬化铁锭合成得到 9 硬化铁粒

熔炼:无

硬化铁锭(hardened_iron_nugget)

合成:此物品可由 6 硬化铁粒合成得到 1 硬化铁锭

熔炼:此物品可由 1 富集铁熔炼得到 1 硬化铁锭

富集铁(enriched_iron)

合成:此物品可由 2 个铁锭 + 1 个煤炭合成得到 2 个富集铁

熔炼:无

塑料(plastic)

合成:无

熔炼:此物品可由 1 甘蔗熔炼得到 1 塑料

此外便是各种枪支零件,具体合成 / 熔炼方式可以自行使用 REI 模组查看。

枪械配件

目前,在 Mod 的 1.3 版本中只存在三种配件:

image-20250601231304962

第一个为全息瞄准镜(Holographic Sight)

第二个为前握把(foregrip)

第三个为炮口制动器(muzzle brake)

配件制作

知道有这些配件,还需要知道如何制作。如果你装载了 REI 这个 mod,你会发现使用快捷键 R(查看合成方法)和快捷键 U(查看用途)对这三个配件是无效的。

这是为什么呢?因为作者并未实现这三个配件的合成 / 熔炼方法:

image-20250602183237263

上图中是作者在 1.20.1 版本分支的最后一次提交记录。

新建配件合成配方

于是,我只好自己尝试创建符合 recipes 的合成配方:

在 mod 列表中找到 SimpleAnimatedGuns-1.20.1-v1.3-BETA-3.jar 将其复制一份并解压出来,能得到 SimpleAnimatedGuns-1.20.1-v1.3-BETA-3\data\anim_guns\recipes 这个存放合成配方的文件夹。那么,只需要自己创建合成配方 json 文件即可。

我结合作者定义的可参与合成的新物品,对于上述三种配件的合成方式设想如下:

  1. 全息瞄准镜(sight_holo.json

    Panim_guns:plastic (塑料)

    Gminecraft:glass_pane (玻璃板)

    Rminecraft:redstone (红石粉)

    Eanim_guns:enriched_iron (富集铁)

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    {
      "type": "minecraft:crafting_shaped",
      "pattern": [
        "PGP",
        " R ",
        " E "
      ],
      "key": {
        "P": { "item": "anim_guns:plastic" },
        "G": { "item": "minecraft:glass_pane" },
        "R": { "item": "minecraft:redstone" },
        "E": { "item": "anim_guns:enriched_iron" }
      },
      "result": {
        "item": "anim_guns:sight_holo"
      }
    }
  2. 前握把(grip_foregrip.json
    Ianim_guns:hardened_iron_ingot (硬化铁锭)

    Ganim_guns:hardened_iron_nugget (硬化铁粒)

    Eanim_guns:enriched_iron (富集铁)

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    {
      "type": "minecraft:crafting_shaped",
      "pattern": [
        " I ",
        "GEG"
      ],
      "key": {
        "I": { "item": "anim_guns:hardened_iron_ingot" },
        "G": { "item": "anim_guns:hardened_iron_nugget" },
        "E": { "item": "anim_guns:enriched_iron" }
      },
      "result": {
        "item": "anim_guns:grip_foregrip"
      }
    }
  3. 炮口制动器(muzzle_mbrake.json

    Ganim_guns:hardened_iron_nugget (硬化铁粒)

    Ianim_guns:hardened_iron_ingot (硬化铁锭)

    Eanim_guns:enriched_iron (富集铁)

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    {
      "type": "minecraft:crafting_shaped",
      "pattern": [
        "GIG",
        "   ",
        " E "
      ],
      "key": {
        "G": { "item": "anim_guns:hardened_iron_nugget" },
        "I": { "item": "anim_guns:hardened_iron_ingot" },
        "E": { "item": "anim_guns:enriched_iron" }
      },
      "result": {
        "item": "anim_guns:muzzle_mbrake"
      }
    }

修改方案注意

如果上述设计方案存在不合理之处,想要进行自行修改的话,请确保修改后 key 中的 item 项的值为真实存在的物品 id,此值不可瞎编。

举例来说,上面 muzzle_mbrake.jsonE(该字母可以随意指定)代表的 item 的值即是下面的 anim_guns:enriched_iron

1
"E": { "item": "anim_guns:enriched_iron" }

如果你想知道是否存在某个 id 值,可以在游戏中使用下面的命令进行测试:

1
/give @p anim_guns:sight_holo

你只需要对 anim_guns:sight_holo 中冒号前后的两者进行补全试探即可。

如果你不知道 S.A.G 该 mod 中的物品 id 在哪,你可以找到解压后的文件夹,路径为:

1
SimpleAnimatedGuns-1.20.1-v1.3-BETA-3\assets\anim_guns\lang\en_us.json

该 json 文件中定义了所有物品,你可以在该文件中确认 mod 相关的每一个物品 id。

另,pattern 表示物品在合成时的摆放样式,如果有格子需要为空,那么就填空格即可。

配件合成尝试

由于我们是新建了 json 文件,而非修改某个文件,一个很直接的实现想法就是:直接将三个 json 文件放到 recipes 文件夹中,然后重新压缩为 jar 再进行替换。

此方法很简单,但是我尝试后发现无法正确实现效果,附件仍然无法合成,可能是我在某些地方有遗漏?我没有再继续探究。

构建 Datapack_S.A.G 数据包

于是,我开始构建数据包来实现效果。

数据包是 原版 Minecraft 提供的官方机制,用于在不改动 MOD 本体的前提下,向游戏添加新的配方、结构、标签、函数等数据内容

数据包通常支持往游戏中添加:

  • 合成配方(Shaped / Shapeless)
  • 熔炉配方(smelting /blasting 等)
  • loot 表、函数、进度
  • ……

数据包的目录结构一般是:

1
2
3
4
5
6
7
8
📁 YourDatapack/
├── 📄 pack.mcmeta
├── 📁 data/
│   └── 📁 anim_guns/
│       └── 📁 recipes/
│           ├──📄 sight_holo.json
│           ├──📄 grip_foregrip.json
│           └──📄 muzzle_mbrake.json

其中 pack.mcmeta 的内容如下:

1
2
3
4
5
6
{
  "pack": {
    "pack_format": 15,
    "description": "S.A.G Custom Recipes"
  }
}

pack_format 取决于游戏版本,可以参考官方 Wiki

接下来将数据包整个复制下来,粘贴到下面的目录下:

1
.minecraft\saves\你的存档名\datapacks\

如果你开启了版本隔离,以我的存档为例,路径可能是:

1
F:\PCL2\.minecraft\versions\1.20.1-Fabric 0.16.14\saves\新的世界\datapacks\

使得最后路径为:

1
F:\PCL2\.minecraft\versions\1.20.1-Fabric 0.16.14\saves\新的世界\datapacks\Datapack_S.A.G

粘贴后的目录结构为(已忽略不相关文件夹):

1
2
3
4
5
6
7
8
9
10
11
12
13
14
📁 .minecraft
├── 📁 versions
│   └── 📁 1.20.1-Fabric 0.16.14
│       └── 📁 saves
│           └── 📁 新的世界
│               └── 📁 datapacks
│                   └── 📁 Datapack_S.A.G
│                       ├── 📄 pack.mcmeta
│                       └── 📁 data
│                           └── 📁 anim_guns
│                               └── 📁 recipes
│                                   ├── 📄 sight_holo.json
│                                   ├── 📄 grip_foregrip.json
│                                   └── 📄 muzzle_mbrake.json

之后进入相对应的游戏存档中,享受游戏吧。

如果你并未关闭游戏而是实时地增加数据包,你可能需要使用 /reload 命令来重载数据包,使其生效。

如果你想检查数据包是否被读取,可以使用下面的命令:

1
/datapack list

成功示例:

image-20250602212831033

配件安装 / 拆卸

配件安装其实很简单,将你拥有的配件使用鼠标右键应用到适配的枪上即可;配件拆卸也是如此,只需使用鼠标右键点击装备了配件的枪械即可将配件一件件拆卸下来。例如:

S.A.G1

枪械零件制作

枪械零件、蓝图的制作方法不像配件那样困难,因为作者已经写好了每一个合成 / 熔炼配方。如果你不知道该如何合成,可以去学习如何使用 REI 或者其他物品管理器 mod。

该部分较为简单,基本是鼠标点点就知道合成 / 熔炼方法,故不再详细介绍。

相关链接

我将本次编写的数据包托管在了 GitHub 上,以供下载:


Simple Animated Guns 游玩指南
https://4rozen.github.io/archives/Gamer/63649.html
作者
4rozeN
发布于
2024年7月20日
许可协议