酒狐的魔法书

酒狐的魔法书

东方小女仆与铁之咒语与法术书

Winefox的法术书

中文说明 · Minecraft 1.21.1 · NeoForge · MIT

连接《东方小女仆》与《Iron's 法术与法术书》:女仆可以阅读法术书、管理魔力并选择自己的法术,而玩家可以召唤女仆上战场作为回报。


🌟 模组总览

Winefox的法术书将《东方小女仆》中的女仆转变为真正的施法者:将法术书放入她的饰品栏,她就会根据情况选择法术、规划魔力消耗、尊重冷却时间、进行侧移和重新定位——如果她使用 GeckoLib 模型,还会播放施法动画。

除主线功能外,本模组还提供:

  • Winefox Hex —— 一个独立学派,拥有专属伤害类型和属性,围绕玩家与女仆的协同作战设计:玩家先手标记,女仆跟进输出,并肩作战的收益远大于各自为战;
  • 附属模组兼容 —— 为 Iron's Spells 的 15 个附属模组中数百个法术提供了行为分类。已安装的附属模组会自动生效;未安装的也不会引发错误。

关于名称:只有 GeckoLib 女仆模型才会播放施法动画,而"Winefox"正是这样的一个模型。


⚡ 快速上手

  1. 安装依赖模组:东方小女仆和Iron's 法术与法术书,以及它们自身的依赖(Curios、GeckoLib)。
  2. 安装本模组。
  3. 给女仆一本已铭刻法术的法术书并放入她的饰品栏,或给她一件附魔武器/护甲。
  4. 打开女仆 GUI,将她的任务切换到魔法攻击或魔法支援。
  5. 启用法术战斗中显示法术名称(默认开启)后,她正在施放的法术会显示在她头顶。

🧙 女仆施法

施法媒介

她的主手、护甲栏、女仆饰品栏和 Curios 栏都会被扫描;任何"法术容器"(法术书、附魔武器、附魔护甲)中的法术都会进入她的法术列表。

  • 一次只能生效一本法术书,与玩家相同;附魔装备不受此限制且可叠加。
  • 法术等级 = 法术自身等级 + 装备提供的亲和加成。
  • 不属于任何行为类别的法术会被忽略——这是"她就是不肯施放那个法术"最常见的原因。参见七种行为类别。
  • 装备的任何变化都会立即重新计算法术列表;/reload 更新法术标签后,已加载的女仆也会重新扫描。

两种任务

任务 使用的类别 目标
魔法攻击 攻击 / 防御 / 移动 / 自我治疗 / 负面效果 她自己的敌对目标
魔法支援 防御 / 自我治疗 / 友方增益 / 负面效果 / 友方治疗 她的主人和队友正在战斗的对象

魔法攻击是常规战斗角色:寻找目标、重新定位、施法,并可选择以近战武器终结。

魔法支援从不主动开战。它会治疗、增益和净化主人及同队生物(包括同一主人的其他女仆),并沿途对敌人施加减益。

两种任务共享相同的解锁条件:主手或护甲栏中有附魔武器,或饰品栏中有已铭刻法术的法术书。

七种行为类别

女仆的法术列表被分为七种行为类别;游戏内配置界面使用相同的名称。每个类别在法术标签和装备数据包中也有英文字段名:

类别 法术标签 配置选项(键名) 装备 spells 字段
攻击 attack_spells 额外攻击法术 ID(extraAttackSpells) attack
防御 defense_spells 额外防御法术 ID(extraDefenseSpells) defense
移动 movement_spells 额外移动法术 ID(extraMovementSpells) movement
自我治疗 support_spells 额外自我治疗法术 ID(extraSupportSpells) support
友方增益 positive_effect_spells 额外友方增益法术 ID(extraPositiveEffectSpells) positive_effect
负面效果 negative_effect_spells 额外负面效果法术 ID(extraNegativeEffectSpells) negative_effect
友方治疗 support_effect_spells 额外友方治疗法术 ID(extraSupportEffectSpells) support_other

另外两个标记标签不参与分类:summon_spells(召唤类)和 maid_should_recast_spells(需要多次施放)。它们仅标记法术,不决定女仆是否可以施放该法术。

魔力

  • 女仆拥有自己的魔力条,与玩家独立;用 Jade 指向她即可查看。
  • 上限使用与玩家相同的公式:"最大魔力"词缀适用于法杖和法师装备,最大魔力倍率选项会整体缩放。
  • 自然恢复默认为约每秒 2%,受魔力恢复词缀影响。
  • 被闪电击中是一个永久标记,保存在女仆身上——击中一次就永不消失。启用被闪电击中的女仆魔力恢复速度提升 100 倍后,此类女仆每 0.5 秒即可回满整条魔力条,实际上等同于无限魔力。该选项默认关闭。

女仆如何选择法术

她每隔一个短暂间隔做一次决定(上限由最大连招延迟刻设定,默认为 10 刻):

  1. 剔除当前无法施放的法术:任何魔力不足或仍在冷却中的法术。如果多重施法尚未完成,她会先完成它。
  2. 为每个行为类别加权,按加权随机选择一个类别,然后在其中等概率选择一个法术。

权重的经验法则:

  • 友方生命值越低,友方治疗权重越高;濒死的队友优先于一切;
  • 附近有友方时,支援类别的权重在该轮占据主导,战斗类别则按兵不动;
  • 她自身生命值越低,防御和移动权重越高;
  • 对目标没有视线时,她很少选择攻击法术,而是重新定位;
  • 如果友方缺少某个增益,或携带可净化的减益,对应法术的权重会急剧上升;
  • 如果上一轮选中了防御/负面效果,两者的权重都会下降,以避免她连续施放同一类别。

搜索半径来自最大法术攻击搜索范围(默认 64 格),携带弦月印记的敌人会被优先锁定。她需要接近到开始施法距离(默认 15 格)或法术自身的施法距离才能开始施法。

其他战斗行为:

  • 走位:在她的射程一半以内后退,射程内且有视线时原地绕圈,施法时移动速度降低,被命令坐下时停止重新定位。
  • 近战终结:由允许女仆在法术攻击期间使用近战武器控制,默认开启。

施法动画

本模组将 Iron's Spells 的施法动画接入东方小女仆的动画系统;使用 GeckoLib 模型的女仆在施法时会播放对应的动画。

模型包作者可以在自己的动画文件中定义以 iss: 为前缀的动画片段;键名参见东方小女仆的 iss.animation.json。

动画资源由 Iron's Spells 的原版文件转换而来。部分姿势可能存在骨骼错位;后续版本会持续修复。


🍶 Winefox Hex 学派

Winefox Hex 是本模组新增的独立学派,拥有专属伤害类型和两个属性(Winefox Hex 法术强度 / Winefox Hex 魔法抗性),可与 Iron's Spells 本身的法师装备词缀叠加。

它专为**"玩家 + 女仆"**设计:其法术在两者之间传递价值——玩家施加标记,女仆跟进引爆,玩家施放的护罩和净化术也会覆盖附近的女仆。单人可以游玩,但女仆小队才是它的完整形态。

该学派仍在成长中;后续版本会持续添加新方向。

学派物品

物品 说明 获取来源
狐灵精髓 该学派的法器:在卷轴锻造台合成学派卷轴的材料,也是高阶法术的施法工具 满好感女仆的晨间礼物(95%);被女仆击杀的妖精掉落(驯服女仆 25% / 召唤女仆 35%,每级抢夺附魔 +5%);宝箱:林地府邸 25%、下界要塞 20%、要塞图书馆 15%,外加 Iron's Spells 的烈焰法师塔、墓穴和城堡图书馆
弦月陈酿 可饮用。女仆饮用后必定获得狐火爆发 10 秒:新冷却时间按正常的 10% 计算,且饮用瞬间现有冷却时间削减 90%。其他任何人饮用后有 60% 概率分别获得恶心、中毒和魔力混乱 村庄房屋/神庙、掠夺者前哨站、林地府邸,外加 Iron's Spells 的各种酒桶、宝藏桶和食物桶

该学派的卷轴也有几率出现在要塞图书馆、下界要塞和 Iron's Spells 的烈焰法师塔、墓穴及城堡图书馆宝箱中。本模组附带一个创造模式标签页,包含所有物品和全部等级的所有学派卷轴。

法术列表

法术 等级 稀有度 冷却 女仆类别 说明
弦月印记 1–8 普通 10 秒 负面效果 以 16 格射线标记单个目标;基础 12 秒,每级 +1 秒。印记本身不造成伤害——它是一根等待点燃的引信
狐影灵火 3–8 罕见 15 秒 攻击 多重施法:每次施放释放一个追踪狐影,4 秒窗口内最多 3 个,从两侧包抄;每个狐影伤害 = 法术强度 × 2
狐影伏击 1–4 普通 8 秒 防御 标记自身 10 秒;下次命中敌对生物时,一只狐影落地撕咬(伤害 = 法术强度)。最好在战斗前施放
弦月护罩 3–8 罕见 30 秒 防御 赋予自身和 6 格内自己的女仆伤害吸收(吸收 II,基础 4 秒,6 级起升级为吸收 III)和真正的隐身(基础 3 秒,装备也会隐藏,丢弃仇恨);两种持续时间每级 +0.5 秒
解除束缚 2–5 普通 20 秒 自我治疗 将自身或 16 格内视线中的一位女仆身上的减益持续时间减半;最高等级(5)时直接移除
醉雾 1–8 普通 12 秒 负面效果 1 秒施法后,在落点(最远 24 格)展开 5 格半径的迷雾,持续 6 秒基础 + 每级 0.5 秒;5 级起施加醉酒 II。自己的女仆免疫
酿酒师之瓶 1–8 普通 8 秒 攻击 投掷酒瓶,直接命中造成学派伤害;碎片留下酒池,使敌人持续醉酒,同时自己的女仆在其中恢复魔力
魔力转移 1–10 普通 15 秒 友方增益 引导至多 5 秒,将你的魔力转移给准星所指的玩家或女仆;消耗约比输送量多 20% 的魔力。在魔法支援任务下,女仆会对魔力不足的友方施放此法术
召唤女仆 1–6 罕见 150 秒 —— 召唤一队临时女仆,持续 10 分钟。女仆自身永远不会施放此法术

印记引爆与酿造汹涌

目前该学派中"玩家 + 女仆"协同作战最清晰的体现:

  1. 用弦月印记标记敌人(基础 12 秒,每级 +1 秒)。
  2. 对其造成任意Winefox Hex 伤害——狐影灵火、狐影伏击的撕咬和酿酒师之瓶的直接命中都符合条件。
  3. 印记立即引爆:伤害 = 基础 10 + 施加时的法术强度。
    • 由玩家引爆:3 格半径,无连锁;
    • 由自己的女仆引爆:伤害 ×1.5,4 格半径(玩家满层酿造汹涌时为 5 格),且可以连锁引爆下一个被标记的目标。
  4. 每次引爆为玩家叠加一层酿造汹涌:滚动刷新 10 秒,最多 3 层,每层提供 +10% 学派法术强度。女仆引爆同样计入玩家。

印记自然到期时会在 2 格内进行小型自爆(3 点原版魔法伤害,不获得酿造汹涌层数,不连锁)。

简而言之:玩家标记,女仆引爆——保持引爆不断,酿造汹涌永不中断。

醉酒

醉酒是一种中性效果。它不造成伤害,但处于该状态下的生物:

  • 移动速度降低 30%(按效果等级缩放);
  • 行走时摇摇晃晃,面向随机抖动(玩家不承受抖动,因为视角在客户端);
  • 射出的箭矢和其他抛射物大幅偏离目标。

自己的女仆对醉雾和酒池免疫。

召唤女仆

本学派的法术之一:召唤一队临时女仆协助完成当前战斗。

  • 数量随等级增长(1 级 2 名,6 级 7 名,穿戴法术强度装备后更高),可持续 10 分钟。在此期间再次施放该法术不会增加新队伍——而是提前解散现有队伍。
  • 每名女仆随机抽取一个模型,并按召唤等级抽取装备和法术;部分女仆骑乘扫帚升空,在召唤者头顶盘旋施法。
  • 她们无法交互、不接受指令、从不坐下;只会与召唤者并肩作战。她们死亡时不掉落装备,时间到后消失。默认情况下,苦力怕也会主动避开她们。

三种内置装备方案(可通过数据包替换或扩展):

装备方案 权重 扫帚 定位
战士 40 从不 以攻击法术为主,护甲最重
法师 35 允许 攻击 + 负面效果 + 少量防御/移动
支援 25 允许 友方治疗 + 友方增益 + 少量攻击

每种装备方案按召唤等级分为三个层级——1–2、3–4 和 5–6。更高层级意味着更完整的护甲、更多的法术和更高的法术等级上限。

⚠️ 召唤女仆目前偏强,后续版本会持续添加平衡限制(数量、持续时间、允许的法术都可能变化)。如需现在限制,请在配置的召唤女仆下调整上限——默认已将其限制为 3 级、史诗稀有度且不含仅学习学派(即秘术学派)法术。你也可以用数据包替换装备方案。


🧩 附属模组支持

本模组附带以下 Iron's Spells 附属模组的法术行为分类。已安装的附属模组自动生效;未安装的不会引发错误(第一行是 Iron's Spells 本体):

模组 已分类法术数
怪物与法术书 107
Iron's 法术与法术书(本体) 101
Somake 法术 66
学徒法典 53
Ender 的法术与东西:安魂曲 46
Hazen 与东西 38
灾变:法术书 34
东方秘法 22
洞察秘术 21
GTBC 的法术书 16
Peyro 的镰刀与法术 16
GTBC 的地卜扩展 12
Fire 的末影扩展 11
SnackPirate 的气象法术扩展 10
无梦法术与法术书 4
雪之女仆法术 1

需要多次施放的法术(灾变、安魂曲、Fire 的末影扩展等)有专门处理,女仆会像玩家一样完成剩余施放。

未覆盖的法术不会引发错误;女仆只是永远不会选择它们。可在配置的法术兼容下添加分类,或使用数据包标签自行分类。


⚙️ 配置

所有配置均为服务器配置(多人游戏中以服务器的设置优先)。可通过模组列表中的配置界面编辑,或编辑 <世界>/serverconfig/winefoxs_spellbooks-server.toml。下表中第二列是该文件中的键名。

战斗与 AI

界面名称 键名 默认值 说明
最大法术攻击搜索范围 maxSpellRange 64 目标搜索半径(8–192)。数值越大扫描开销越高
开始施法距离 startSpellRange 15 开始施法的距离(2–64);法术自身射程优先
最大魔力倍率 maxManaMultiplier 1.0 女仆魔力上限的整体倍率
被闪电击中的女仆魔力恢复速度提升 100 倍 lightningManaRegen 关闭 此类女仆每 0.5 秒回满整条魔力条
法术战斗中的步行速度 spellBattleWalkSpeed 1.0 战斗中重新定位时的速度倍率
最大连招延迟刻 maxComboDelayTick 10 两次施法之间的最长等待时间;数值越低连招越紧凑
法术战斗中显示法术名称 showChatBubblesInSpellBattle 开启 在聊天气泡中显示当前法术
允许女仆在法术攻击期间使用近战武器 meleeAttackInMagicTask 开启 关闭时,女仆只施法,绝不近战

飞行女仆

界面名称 键名 默认值
空军女仆基础概率 airForceBaseChance 0.1
每级空军概率 airForceChancePerLevel 0.1
空军跟随高度 airForceFollowHeight 4.0
空军跟随半径 airForceFollowRadius 6.0
空军飞行速度 airForceFlySpeed 0.4
最小空中施法距离 airForceMinAttackRange 5.0

召唤女仆

界面名称 键名 默认值 说明
召唤女仆可携带的最高法术等级 summonedMaidMaxSpellLevel 3 取此值与装备方案层级上限中的较小者;只会降低,不会提高。10 = 无限制
召唤女仆可携带的最高法术稀有度 summonedMaidMaxSpellRarity 史诗 高于此稀有度的法术完全退出奖池。传奇 = 无限制
允许召唤女仆携带仅学习学派法术,即秘术 summonedMaidAllowEldritch 关闭 这些法术通常需要玩家先学习
苦力怕躲避召唤女仆 creeperAvoidSummonedMaid 开启

狐灵精髓晨间礼物

界面名称 键名 默认值 说明
启用满好感女仆晨间礼物 vulpineGiftEnabled 开启 总开关;其他来源不受影响
晨间礼物搜索半径 vulpineGiftRadius 8.0 在床周围搜索符合条件的女仆
需要完整的正常睡眠周期 vulpineGiftRequireFullSleep 开启 关闭时,因怪物或雷暴而提前醒来也算

法术兼容

用于将附属模组或数据包的法术添加到行为类别中。七个类别各有一个"额外……法术 ID"列表;界面名称和键名参见七种行为类别。此处还有四个条目:

界面名称 键名 说明
额外召唤法术 ID extraSummonSpells 将法术标记为召唤类;不影响可用性
女仆应重复施放的法术 ID maidShouldRecastSpells 女仆会完成此处列出的法术的剩余施放
女仆每个法术 ID 的开始施法距离 extra_spell_casting_range 按法术 ID 覆盖开始施法的距离
额外法术效果注册表 extra_spell_caused_effects 声明法术施加哪种生物效果

⚠️ 此部分只能添加,不能移除,且更改需要重启游戏。如需阻止女仆施放某法术,请参见下一节。


📦 数据包自定义

排除法术

女仆可施放哪些法术由法术标签决定。要禁用某个法术(例如容易误伤友军的大范围 AoE),可以用数据包将其从对应标签中移除。

创建 <世界>/datapacks/<你的包>/pack.mcmeta:

{ "pack": { "pack_format": 48, "description": "女仆法术黑名单" } }

然后是 <你的包>/data/winefoxs_spellbooks/tags/irons_spellbooks/spells/attack_spells.json:

{
  "values": [],
  "remove": [
    { "id": "irons_spellbooks:fireball" }
  ]
}

运行 /reload 即可生效:法术目录会立即重建,已加载的女仆也会重新扫描法术列表。

行为标签(一个法术恰好属于一个行为标签;将其从该标签中移除即可——各类别的标签名参见七种行为类别)。

要查看某个法术属于哪个标签,可以用任意压缩软件打开本模组的 jar 文件,查看 data/winefoxs_spellbooks/tags/irons_spellbooks/spells/ 目录——七个行为标签和两个标记标签都以 json 形式存放,包含模组的默认分类。复制一份作为自定义包的起点。

标记标签——从 summon_spells 或 maid_should_recast_spells 中移除条目只会移除召唤/多重施法标记;女仆仍会施放该法术。

⚠️ 配置附加项会在标签之后合并,因此不要将同一个法术 ID 同时列入 extraAttackSpells 等配置中——否则它会被直接加回去。

施法距离与施加效果

位于 data/<命名空间>/magic_maid_spell_data/ 下:

  • default_casting_range.json —— 女仆开始施放每个法术的距离;
  • default_caused_effect.json —— 声明法术施加哪种生物效果,以便女仆判断是否需要对目标重新施加增益或净化减益。

两者在 /reload 时生效;配置文件中的匹配条目优先于数据包。

召唤女仆装备方案

位于 data/<命名空间>/summoned_maid_loadouts/<名称>.json;最小骨架:

{
  "weight": 40,
  "broom_mode": "default",
  "tiers": [
    {
      "conditions": [
        { "condition": "winefoxs_spellbooks:summon_level", "min": 1, "max": 2 }
      ],
      "spell_level_cap": 3,
      "weapon": {
        "rolls": 1,
        "entries": [ { "type": "tag", "expand": true, "name": "modid:weapon_tag" } ]
      },
      "armor": {
        "helmet": {
          "chance": 0.3,
          "pools": [ { "rolls": 1, "entries": [ { "type": "tag", "expand": true, "name": "modid:helmet_tag" } ] } ]
        }
      },
      "spells": {
        "attack": {
          "rolls": { "min": 1, "max": 2 },
          "entries": [ { "type": "tag", "expand": true, "name": "modid:attack_spells" } ]
        }
      }
    }
  ]
}

字段说明:

  • weight —— 选中权重;0 表示禁用该装备方案;
  • broom_mode —— always / never / default(按概率随机);
  • model_filter(可选)—— { "mode": "all" | "allowlist" | "denylist", "models": [...] };
  • tiers[].conditions —— 目前支持 winefoxs_spellbooks:summon_level 的 min / max 范围;
  • tiers[].spell_level_cap —— 该层级的法术等级上限,与配置选项取较小者合并;
  • tiers[].weapon / armor / spells —— 物品和法术奖池;rolls 接受整数或 { "min": n, "max": m },条目引用物品标签/法术标签;
  • spells 下的键是七种行为类别:attack、defense、movement、support、positive_effect、negative_effect、support_other(参见七种行为类别)。

内置的 warrior.json、mage.json 和 support.json 可作为模板使用。

晨间礼物掉落

晨间礼物的内容来自战利品表 winefoxs_spellbooks:gameplay/maid_morning_gift(默认为 95% 概率掉落一个狐灵精髓);整合包可以覆盖它来发放其他物品。


💻 命令

两个命令都需要权限等级 2:

/wsb cast <目标> <法术> [等级]
/wsb summon [目标] [数量] [召唤等级] [装备方案] [持续时间] [空军]
  • /wsb cast —— 让指定实体施放一个法术,等级 1–10。它仅跳过施放前的可用性检查,仍会消耗魔力,因此测试前请先提高目标的魔力上限。
  • /wsb summon —— 不带参数时为自身召唤。数量 1–10,召唤等级 1–10,装备方案 接受装备方案 ID(留空随机),持续时间 以秒为单位(-1 表示永久),空军 强制骑乘扫帚的开关。

🔌 兼容与集成

  • Curios —— 法术书占用 Iron's Spells 定义的法术书栏位;女仆最多佩戴一本。饰品栏作为替代方案受支持。
  • Jade —— 指向女仆可查看她的魔力;指向召唤女仆还可查看她的法术数量,按住 Shift 查看完整列表。
  • JEI —— 本模组的所有物品都有信息页面(右上角的"i")。
  • 高级战利品信息 —— 本模组注入宝箱的战利品和女仆晨间礼物都会在 JEI / EMI / REI 中显示概率。
  • Patchouli —— 在东方小女仆的可记忆的幻想乡中,Winefox的法术书类别下有 12 个指南条目,涵盖魔力、施法媒介、任务、动画、模组集成、故障排除、学派及其物品和法术(包括召唤女仆)、数据包、命令和配置。

❓ 常见问题

她完全不施法。 按顺序检查:

  1. 她的任务是否设置为魔法攻击/魔法支援?
  2. 法术书是否在饰品栏中,且法术槽是否已铭刻?
  3. 法术是否属于行为标签?不属于任何行为类别的法术会被忽略。
  4. 魔力是否足够,冷却是否已结束?出现"法术重载中"气泡表示两者之一。
  5. 敌人是否在最大法术攻击搜索范围之外,或者她还没有接近到开始施法距离?

她的 AoE 法术总是打到队友。 用数据包将该法术从其行为标签中移除,然后运行 /reload。

我的配置改动没有生效。 法术兼容下的更改需要重启游戏;数据包侧的更改只需 /reload。

女仆为什么不施放召唤女仆? 这是设计使然——该法术专为玩家保留(也可用 /wsb summon);女仆不会用它来召唤另一队女仆。

我的支援女仆从不治疗任何人。 魔法支援只对同队目标生效,而且她需要在对应类别(友方治疗/友方增益)中有法术才会切换到支援行为。


🛠️ 要求与版本

项目 版本
Minecraft 1.21.1
加载器 NeoForge
Java 21+
东方小女仆 1.5.0+
Iron's 法术与法术书 3.14.0+
GeckoLib / Curios 随依赖一起安装

施法动画仅对使用 GeckoLib 模型的女仆生效;其他模型可正常施法但不播放动画。


📝 许可证

以 MIT 许可证 发布。你可以自由使用、修改和分发,但需保留原始版权声明。