《Kingsvein》模组制作基础指南,涵盖新区域、物品及生物的制作方法。 免责声明 警告:模组的安装和卸载通常是安全的,但创建或安装模组仍有可能损坏游戏数据或存档!在这种情况下,你可能需要重新安装游戏!请备份你的存档文件,并自行承担模组制作的风险! 简介、文件路径、控制台命令 欢迎阅读《Kingsvein》模组制作简要指南!本指南仍在完善中,内容并非详尽无遗,但足以帮助你开始制作《Kingsvein》的大多数类型内容。首先,进行模组制作有两个重要的文件夹位置。 模组目录位于X: Users Username AppData Roaming Kingsvein Mods,在存档/读档菜单左上角点击小文件夹按钮即可轻松访问。制作新模组时,在此处新建一个文件夹并放入你的文件。 游戏数据存储在X: Program Files (x86) Steam SteamApps common Kingsvein Content,对于查看现有数据格式示例非常重要。在Steam中右键点击《Kingsvein》,选择管理>浏览本地文件,即可轻松打开此目录。 在游戏中按下Shift+~键可以调出控制台。 一些重要的控制台命令:h 列出命令或提供命令的更多信息。输入“dm”可切换调试模式,该模式下: - 只需按下“~”键即可调出控制台 - 右键点击角色属性并滚动鼠标滚轮可修改属性值 - 按B键可随时切换建造模式 - 重新聚焦窗口时会自动刷新模组文件 - 启用模组文件常见拼写错误警告系统 按b键进入建造模式,可进行地形编辑、物品放置等操作。 输入“go”和“gob”可前往指定区域(例如:go zSE1)。“gob”会直接进入建造模式。前往不存在的区域会生成一个全新区域。 输入“z”可显示区域数据列表,但不会显示模组文件夹中的区域。 若要永久启用调试模式,打开位于X: Users Username AppData Roaming Kingsvein的config.ini文件,将“debugMode=False;”改为“debugMode=True;”。建造模式 通过控制台命令【b】进入建造模式。 在建造模式下,你可以查看和编辑区域、角色乃至地形类型。使用WASD键平移镜头。

左侧面板用于创建物品或角色。 点击顶部标签可查看不同类别。 使用鼠标滚轮滚动物品或角色列表。 左键点击物品可创建1个,右键点击可创建堆叠。 右侧面板用于编辑区域并显示地形类型。
将鼠标悬停时会显示快捷键和热键列表。 区域的ID可在顶部的文本框中编辑。 大多数按钮在鼠标悬停并阅读提示后即可明白其功能。 这些按钮下方是地形类型。 左键或右键点击可将地形类型分配给相应的点击方式。点击区域即可放置该地形类型。 使用鼠标滚轮可滚动地形类型列表。 中键点击地形类型可查看或编辑该地形类型的属性。 打开区域设置窗口。 在此处可以编辑区域的许多数值,例如调色板、暗度颜色等。 按住右键点击调色板文本框可查看可通过鼠标滚轮选择的选项列表。 按住右键点击颜色文本框可调出可通过鼠标滚轮选择的颜色选择器。
将当前区域保存至游戏数据。注意不要覆盖你的成果! 按T键切换触发模式。此模式允许你在区域内放置事件触发器。

点击【新建触发器】以创建新的触发器,或点击【+任务】为当前编辑的触发器添加任务。 按住左键在区域上拖动可设置触发框。右键点击可为同一触发器添加额外的触发框。中键点击可移除额外的触发框。 左键点击任意触发框即可编辑其触发器。 按住右键点击【效果ID】文本框,可通过鼠标滚轮滚动查看可能的任务列表。 按住右键点击【触发条件】文本框,可通过鼠标滚轮滚动查看可能的元素列表。 【触发条件】也可包含多个元素(例如:“物理、毁灭、火焰”)。 一些常见任务如下: travel_point:处理大多数区域间的常规移动。 fx:在指定位置播放特效或声音。 setGlobalVar:设置一个存储在玩家存档中的变量。生成是一种复杂的效果,用于创建单个角色或角色群体。 进入战斗会强制在指定区域开始战斗。注意:任何任务也可以通过控制台、对话或动作来调用。 ---------- 要编辑角色,中键点击他们即可打开其属性窗口。

编辑角色注意事项: 若开启调试模式,右键点击属性并滚动鼠标滚轮可修改其数值。 若开启调试模式,点击角色属性窗口中的红色或绿色宝石可更改敌对/中立状态。右键点击可将其加入你的队伍。 要让一个角色骑乘另一个角色,将他们放置在该角色身上。(这是被附身者添加灵节点的方式。) 要将角色旋转90度,拿起他们并按【R】键。 要更改角色的职业,将鼠标悬停在他们身上并按【C】键。 要编辑角色的外观,将鼠标悬停在他们身上并按【E】键。 左键点击箭头可从玩家可用的选项中选择。 右键点击箭头可从所有选项中选择。 底部的文本框是身体部位的精灵选择器。按住右键并滚动鼠标滚轮可选择要编辑的部位。大多数角色属性要么无法直接编辑,要么编辑后极易出错。但也有一些属性非常实用。以下是部分重要属性: dialogNodeID:指定与角色对话时使用的对话节点。 ai_lua:用于AI的lua脚本。“idle”几乎是所有NPC的通用脚本。 aggressiveness(攻击性):影响战斗中的站位。高攻击性(1及以上)会使角色尽可能靠近目标,而非保持攻击距离。 bravery(勇气):影响AI在战斗中逃跑的可能性。 intelligence(智力):影响AI思考的最长时间,以及它们达成“足够好”的行动并停止思考的难易程度。 区域与位置 既然你已了解如何在建造模式下编辑区域,接下来让我们设置区域以便其他人可以访问。 首先,保存你的区域。
在建造模式中,现在你的区域数据将保存在【Kingsvein】Content Data ZoneData文件夹中。你可以通过建造菜单右上角的文件夹按钮打开此目录。找到zoneID.txt和zoneID.png文件(其中zoneID是你的区域ID)。复制这些文件,在Mods目录中创建一个新文件夹,并将文件放入其中。 现在玩家可以通过传送触发器或控制台访问你的区域。但我们希望他们能从世界地图进入该区域,为此需要创建一个地点。 查看游戏正常的地点数据,路径为【Kingsvein】Content SystemSaves defaultLocations.txt。我们需要使用此格式来定义新地点。在Mods目录的文件夹中,创建一个新的文本文件,并模仿defaultLocations.txt中的格式在其中添加新的【地点】。 以下是示例: 【地点】ID=myNewPlace; name=酷寒地牢; x=25; y=16; locationItem=locBase; enterOnTravelPointNum=0; discovered=true; zoneThisLocationIsIn=overworld1; 此示例会在世界地图上创建一个酷寒地牢。如果该文件位于Mods目录中,任何尚未包含酷寒地牢的存档都会自动在世界地图上添加一个! 注意:你也可以通过在Mods目录中放入自己的版本并使用相同的ID来覆盖游戏的默认地点或区域。游戏加载区域时总是会优先检查Mods。注意:在存档中首次创建地点后,修改数据将不会对其产生影响!玩家拥有的版本将永远不会被覆盖! 注意:请将地点或区域数据存储在各自的文本文件中,与其他数据类型(如【物品类型】或【角色类型】)分开。如果游戏在文本文件中检测到【地点】或【区域】,将不会在启动时加载该文件,而是等待至合适时机。 区域合并 你也可以将一个区域的内容直接应用到另一个区域上。这在你想要修改世界地图时尤其有用,但也可用于任何区域。 要执行此操作,请创建一个具有唯一名称的新文本文件。在该文件中,添加【区域合并】。 请勿在该文件中放入任何其他内容!以下是示例: [区域合并] 文件名=zShopOfSecretsZoneMerge; 合并区域=zShopOfSecrets; 合并对象=zSE1; X=79;Y=28; 相关属性说明: “filename”(文件名):指文件的名称。 “mergeWith”(合并对象):指要合并到的区域的ID。(示例:“mergeWith=zSE1;”) “mergeZone”(合并区域):指要叠加到目标区域上的区域ID。 “X”:放置区域左上角的X坐标。 “Y”:放置区域左上角的Y坐标。 “fReq”(公式需求):可选属性,用于指定一个公式需求,只有当该公式计算结果大于0时,区域合并才会生效。 注意:区域合并会在任何进入该区域的存档上应用一次,即使是已经进入过该区域的存档也不例外。区域合并将在玩家下次进入区域时生效(不包括加载存档)。 应用后,全局变量zoneID + "_merged"(例如myModZone_merged)会被设为1,以便游戏记住不对该存档文件再次应用相同的合并ID。 注意:区域合并会覆盖现有物品!请注意不要覆盖重要内容。 注意:区域合并的尺寸必须大于1x1,否则游戏会认为文件已损坏。 创建物品类型 你可以创建自己的物品,或覆盖游戏中的普通物品。 游戏物品均存储在Kingsvein Content Data SystemData Definitions items中。查看这些文件可了解格式。 现在,查看Kingsvein Content ModSamples items_mod1.txt中的示例物品。此示例创建了一个使用自有纹理的新物品。将“items_mod1.txt”和“items_mod1.png”复制到Mods目录下的新文件夹中,这样你就能在游戏的建造模式中使用该物品。 要覆盖现有物品,需将你的物品ID设置为现有物品的ID。此外,如果你希望保留物品的所有原始属性,只修改部分属性,可以使用“cloneFrom”。 例如: [物品类型] ID=c_armor_ore1; cloneFrom=c_armor_ore1; pR=pBlue; 此示例将所有矿石铠甲的颜色改为蓝色,而不改变其他任何属性。(如果多个模组都修改同一物品,使用cloneFrom也允许这些模组的修改“叠加”生效。)创建行动与影响效果 你可以创建供职业、物品、角色类型使用的行动,或用于装备、支援技能及角色类型的反应效果中。 让我们来看一个行动示例——骑士的【英勇】: 【行动】ID=c_Kn_Brave; 名称=英勇; 图标=icon_c_Kn_brave; 提示文本=使【物理攻击】提升<math= c:rank>,持续【时间】2。<br>每个【时间】代表一个战斗回合。; 等级提升提示文本=每提升1级,【物理攻击】额外+1。; 右上角提示文本=; 魔法值消耗=1; 是否造成伤害=false; 最大等级=3; 可超出最大等级上限=1; 经验值消耗=70 * d:u_clever_XPmult; 经验值消耗=350 * d:u_clever_XPmult; 经验值消耗=600 * d:u_clever_XPmult; AI评分系数=0.75; 施法者动画=c_charge; 施法者动画速度=1。5; 施法者特效=施法中; 施法者特效颜色=红色; 施法者特效=快速充能螺旋_大; 施法者特效颜色=红色; 施法者特效=快速充能螺旋; 施法者特效颜色=红色; 目标特效=能力提升音效1; [行动范围] ID=骑士_勇气; 复制自=自身及相邻; 不可选择敌人; [属性影响] ID=骑士_勇气; 非伤害性; 属性=物理攻击; 数值=角色等级; 持续时间=60; 概率=100-100*是否为骑手; 不可见未命中=false; 地面特效=低重叠向上线条; 地面特效颜色=红色; [范围属性影响] ID=骑士_勇气; 复制自=单个格子; [行动]定义所有重要属性,如名称、描述、经验消耗、特殊属性等。 [行动范围]是供玩家选择的作用区域。在这种情况下,它会高亮显示施法者及相邻格子。每个【效果施加器】(数量不限)都会施加一种效果。【效果作用范围】决定了(以所选的行动作用范围格子为中心)哪些格子会受到效果影响。 在这种情况下,两个作用范围都使用“cloneFrom”来应用通用的作用范围。可通过“cloneFrom”调用的预定义作用范围包括: 一格 相邻 相邻+1 相邻+2 相邻+3……+9 自身及相邻 自身及相邻+1 自身及相邻+2 自身及相邻+3……+9 全体队友 全体角色 全体友方 全体敌方 现在,我们来编辑“Brave”技能,使其有50%的几率在2回合内提升2点魔法攻击。为此,我们需要添加一个新的【效果施加器】和【效果作用范围】。[属性影响效果] ID=c_Kn_Brave; 是否有害=false; 影响属性=魔法攻击; 影响幅度=2; 持续时间=60; 触发概率=50 - 100* m:tIsRider; 未命中是否显示=false; 地面特效=upwardLines_low_overlap; 地面特效颜色=红色; [范围属性影响效果] ID=c_Kn_Brave; 复制自=oneTile; 注意:你会发现触发概率并非简单的“50”,而是“50 - 100 * m:tIsRider”。当目标正在骑乘坐骑时,m:tIsRider的值为1。由于在《Kingsvein》中,增益效果只会作用于坐骑而非骑手,因此我们使用“-100* m:tIsRider”来确保该技能无法作用于骑手。 注意:此效果持续两回合,但持续时间设为60。在《Kingsvein》中,一回合为30个时间单位,因此两回合的效果应设为60。

查看其他现有动作以更好地理解它们!这些动作可在【数据】-【系统数据】-【定义】-【动作】下找到。 注意:“持续时间”也可使用特殊系统设置无限期或回合制计时器。实现这些效果的方式如下: -1 = 无限期 -2 = 即时+永久 -3 = 直到下一回合开始 -4 = 直到下一回合结束(包含当前回合) -5 = 直到接下来2个回合结束(用于希望持续到下一回合结束的技能) -6 = 直到接下来3个回合结束,以此类推 创建其他类型 你可以按照与创建【物品类型】相同的方式创建【角色类型】、【角色职业】和对话。在【Kingsvein】-【内容】-【数据】-【系统数据】-【定义】-【角色】中可找到游戏的常规类型和职业。按照原始数据中的格式创建你自己的内容,或者使用相同ID覆盖现有类型。 你也可以通过游戏内的地形类型编辑器创建自己的地形类型。在编辑器中完成新地形类型的制作后,点击剪贴板按钮将地形类型数据复制到剪贴板,然后将新地形类型粘贴到你的模组文件中。 公式 公式用于行动、属性影响、触发器、对话框等场景,它们允许实时计算数值并具有独特的语法。 公式支持+、-、/、*等常规数学运算,并遵循标准的运算顺序规则。 以下是一些有效的公式示例: 2 + 7 * 15 -w:power - c:PhysAtk - c:skill_Sword w:magnitude * 0.4circleAs plus, but rounds off the edges of squares. 5playerOnly the player's tile. 6playerPartyAll tiles with the player's party in them. 66allButPlayerPartyAll tiles with Actors that aren't in the player's party. 7allActorsAll tiles with Actors. 17allActors_nonIncappedAll tiles with Actors that aren't incapped. 8allTilesAll tiles in the zone. This usually lags too much to be usable. 10useWeaponAoEInherits all properties of the caster's weapon's Action AoE. Individual properties can be overriden. 11useWeaponAVAoEInherits all properties of the caster's weapon's primary AvAffecter AoE. Individual properties can be overriden. 25diagonalXTiles in an X shape, diagonal from the origin.施法者的下一个延迟法术 所有处于施法者下一个延迟技能范围内的格子 附录:元素(1/2) 以下是截至v1.062版本的所有元素完整列表,部分元素附有功能说明。元素用于在物品、角色和地形上触发反应。 部分元素虽未标注,但目前处于未使用状态。元素注释:无 无 无 物理 魔法 近战 远程 使用 检查 通过观察施加 挥砍 粉碎 重挥砍 未使用 重粉碎 未使用 轻粉碎:用于非纯物理但仍能破坏易碎物品的情况 猛击:由【AI想要猛击此地格】物品使用,且仅用于骑士的猛击或类似行为(盾牌猛击、冲撞) 弧形射击 爆炸:用于火 clot 和其他重型爆炸物 机械:用于机械/装置/开关 机械2 镐 挖掘 向下挖掘 未使用 螺旋挖掘器 清除螺旋孔洞 生长 枯萎 未使用 掩埋 专注 未使用 祈祷 未使用 火焰 解冻:融化冰冻物体 火焰蔓延 催化:将血液转化为油 亵渎:将血液转化为冰并对冰造成伤害 热量:用于地形上的火焰效果,如融化冰,但不会点燃炸弹、木材等或引发玩家元素反应 冰 水 深水(用于深水地形) 深渊(用于深渊地形) 沉没(应用于落入水中的物品,参见动作项落水) 电气模拟 电气(未使用) 扩散 弧光草(由弧光草植物使用) 吉尔(用于倾倒吉尔) 大地 土 风 生命 治疗MP 治疗 毁灭 火 近战冰 近战电气 近战毁灭 尖刺(尖刺物品造成的伤害) 酸 毒 油 基于HP 破坏物品 粉碎(凿子技能“粉碎”) 打击指令(由“打击!”使用) 打击目标(由“打击!”使用) 射击指令(由“射击!”使用) 射击目标(由“射击!”使用) 接地(由接地被动技能使用) 骑乘(骑乘时同时应用于骑手和坐骑) 下马(强制或非强制下马时应用) 非攻击(由不进行攻击的“武器”使用,如未上弦的十字弓等)武器 剑 匕首 拳套 斧 锤 链枷 矛 弓 瞄准 盾牌 鞭 加农炮 未使用 标枪 投掷斧 未使用 飞镖 未使用 引燃 使火焰持续更长时间 熄灭 终止火焰 磨砺 强化尖刺和尖牙 腐化之触 根据负面状态造成额外伤害 驱散 移除魔法危险区域 融骨 未使用 灵体免疫 灵体对带有此元素的事物免疫 反机械 未使用 反不死 未使用 对不死无效 对不死生物无效 机械师能力 未使用 武器强化 武器强化带来的伤害 清除危险区域和增益物品 清除危险区域和增益物品 清除危险区域 仅清除站立时有害的危险区域 压力板下压 当有人在 tiles 上静止站立时(重复触发)。触发器不能将此用作其“触发元素”值。 压力板上抬 压力移动 当有人移动到物体相邻位置时。触发器不能将此用作其“triggeredByElement”值。pressureMoveAcross:当有人移入或移出某个地格时。触发器不能将此用作其“triggeredByElement”值。pressureJumpAcross:当有人跳入或跳出某个地格时。pressureMoveTo:当有人移动到某个物体上时。触发器不能将此用作其“triggeredByElement”值。元素行者:用于穿过火焰、酸液等 火焰行者:用于穿过火焰 元素行者状态:用于穿过火焰、酸液等 物品已装备:当物品被角色装备时应用于该物品 物品已合成:当拥有此反应元素的物品成功合成时触发 动作已开始:物品的动作开始后调用(与动作已使用相同,但会立即触发) 动作已使用:物品的动作使用后调用(例如:十字弩发射后产生反应) 计时器结束:物品的计时器结束时调用(计时器由具有计时器特殊属性的物品启动)。计时器结束也会在战斗回合开始时调用。武器 buff:使用武器攻击时添加该行动 已应用武器 buff:当武器 buff 被应用时,施法者会触发此效果 法术 buff:使用“法术”攻击时添加该行动 已应用法术 buff:当法术 buff 被应用时,施法者会触发此效果 法术打击 已应用法术打击 圣骑 buff:由扎瓦尔德的圣骑特性使用 长枪旗帜:由长枪旗帜被动技能使用 战斗开始:在战斗开始时触发(用于支援技能/角色类型反应,以及触发器) 战斗结束:在战斗结束时触发(用于支援技能/角色类型反应) 战斗失败:在战斗失败时触发(用于触发器) 战斗胜利:在战斗胜利时触发(用于触发器) 游戏结束:在游戏正常结束时触发(用于触发器) 附录:元素(2/2) 元素 备注 地砖反应:用于物品当物品下方的地格ID发生变化时调用 物品反应_计时结束:当地格上的物品通过计时结束产生反应时调用,以便清理所有“X”物品 物品坠落:当物品被推到地格上时应用。与角色坠落不同,不允许物品进入通常无法占据的地格 角色坠落:如果地格有此元素反应,角色可以被推入通常无法占据的地格,然后触发此反应 角色坠落中:由角色坠落动作自身调用 执行动作:当角色在其回合中或使用充能/施放技能时作为施法者执行动作时调用 未执行动作:当角色在其回合中未执行任何动作时调用 未移动:当角色在其回合中未进行任何移动时调用 回合开始:当角色开始回合时调用 覆盖回合结束:当角色结束回合时调用,并阻止元素。结束回合(来自触发)。由【大门:锚点】使用 结束回合(当角色结束回合时调用) 跳过回合 切换离开回合(当玩家将角色切换为另一个角色时应用于该角色) 移动技能已使用(当角色使用移动(或应移动)的技能时应用于该角色) 使用近战武器攻击(由某些通常不会触发武器 buff,但应导致如【战争之人】等被动技能触发的动作应用) 撤销移动(当撤销角色的移动(在其被重新定位后)时应用于角色) 白天(当时间推进到白天或在白天进入区域时调用) 夜晚(当时间推进到夜晚或在夜晚进入区域时调用) 夜晚 新的一天(在新的一天或重新进入一天内未去过的区域时调用)9 d:fireDmg:3*2 100 * lessThan:10:t:HP 除常规数字外,公式还可使用特定格式为【前缀:数值】的内置计算方式。 以下是最常用的计算方式: 计算前缀 可能值 示例 施法者属性值 c 任意属性值 c:PhysAtk 目标属性值 t 任意属性值 t:PhysAtk 武器值 w power、maxRange、weight、throwDamageMod、throwRangePenalty、任意有效元素(若拥有指定元素则返回1) w:power 副手武器值 w2 power、maxRange、weight、throwDamageMod、throwRangePenalty、任意有效元素(若拥有指定元素则返回1) w2:power 角色是否在队伍中? party 角色ID party:remir 角色是否在区域内存活? alive 角色ID alive:altahn 是否装备支援技能?连续多次调用,用于长时间远离 闪光术(instaBright):由闪光和虚空光束使用 更亮(brighter):由虚空之眼等物品用于追踪光照等级 更暗(darker):由虚空之眼等物品用于追踪光照等级 失去行动能力(incapped):当角色失去行动能力时调用 敌人被击倒(enemyKOd):当敌人被击倒时应用于当前回合角色 闪避(dodged):发生“未命中!”时应用 格挡(blocked):发生“格挡成功!”时应用 装填中(reloading):用于因装填武器触发的反应 装填(reload):用于自动装填已装备武器的特殊动作 修理(repair):用于修复损坏物品的触发器 铁路(railway):用于矿车移动范围效果(AoE)展开绳索未使用移除绳索未使用展开链条未使用移除链条未使用徒手特定武器分类近战射程瞄准破坏者武器切换斗篷武器拳击匕首武器锤子匕首武器盾牌射击武器捕鱼通过可捕鱼的武器类型施展(即矛)拳套近战容器手动关闭容器时触发移除衰减未使用血液生成的血液移除血液移除血液物品的动作(如血刺)尖刺生成尖刺造成的伤害 - 也会移除旧的破损尖刺岩石爆炸物品岩石爆炸扩散岩石爆炸大门锚点激活用于大门:锚点移除大门闪电标记用于大门:闪电过场动画销毁用于过场动画销毁旋风动画未使用替换胶囊未使用楼梯未使用物品被推动物品被推动时应用于推动目标物品被推动0使用0度角度推动物品时应用于推动目标物品被推动90物品被推动180物品被推动270我被推动专门应用于被推动的物品(不适用于 tiles、角色或其他物品)被推入由造成推击伤害的“被推入”动作应用被推入0由“推入”动作:在0度、90度、180度、270度角度造成推击伤害 玩家推入:在旅行模式下,玩家持续走进物体时触发 玩家0度推入:在旅行模式下,玩家以0度角度持续走进物体时触发 玩家90度推入 玩家180度推入 玩家270度推入 爆发1:由团块使用 爆发扩散1:由团块使用 爆发2 爆发扩散2 爆发3 爆发扩散3 排水:未使用 充能精魂:由充能精魂动作使用 方块破坏:未使用 普通形态:由 castellans 用于切换形态 剑形态:由 castellans 用于切换形态 矛形态:由 castellans 用于切换形态 链枷形态:由 castellans 用于切换形态 燃烧状态:未使用 衰减:未使用 污染者:未使用 已匹配:由匹配物品使用triggermatchedSelf(未使用) openGates(未使用) closeGates(未使用) gameLoaded:加载新游戏时应用此触发器。 zoneLoaded:加载区域时应用此触发器。 enterZone:进入区域时应用于区域内的所有地格和角色。 leavingZone:离开区域时应用于区域内的所有地格和角色。 removeShadow:用于通常在下方有阴影的悬浮物品。 somethingHappened:用于触发器和杂项。 monsterBeaconUsed(未使用) bossMoveTile:由允许特定 Boss 行走至该位置的特殊标记使用。 附录:公式 - 前缀 除常规语法外,公式还可包含修改单个值的额外前缀。以下是截至 v1 版本的完整列表。062 前缀语法效果示例 小于小于:#:公式 若<#则返回1,否则返回0 小于:3:c:物理攻击 大于大于:#:公式 若>#则返回1,否则返回0 大于:1:cb:生命值 等于等于:#:公式 若=#则返回1,否则返回0 等于:100:d:复活命中率 不等于不等于:#:公式 若≠#则返回1,否则返回0 不等于:20:cDur:中毒 介于介于:#:#:公式 若介于(且不等于)两个#之间则返回1 介于:2:7:c:生命值 最小最小:#:公式 将公式限制为最小值# 最小:5:c:物理攻击 最大最大:#:公式 将公式限制为最大值# 最大:8:t:魔法攻击 绝对值绝对值:公式 返回“绝对值”(若为负数,则变为正数) 绝对值:c:物理防御 向下取整向下取整:公式 降低至最接近的整数 向下取整:d:d_valiant 向上取整向上取整:公式 增加至最接近的整数 向上取整:d:mpCostMult_onlyWithCT 四舍五入四舍五入:公式 四舍五入到最接近整数取整:c:MP 非非:公式 若小于或等于0则返回1 非:t:魔法防御 调试 调试:公式 将结果输出到屏幕顶部 调试:c:物理攻击 目标坐标 目标坐标:#X:#Y:公式 将目标坐标设置为给定的#X和#Y坐标 目标坐标:25:56:geo:fire 当前施法者 当前施法者:公式 使用当前角色作为施法者 当前施法者:c:物理攻击 当前目标 当前目标 使用当前角色作为目标 当前目标:t:魔法攻击 交换施法者与目标 交换施法者与目标:公式 交换施法者和目标以进行计算。适用于仅限目标或仅限施法者的数学计算。 交换施法者与目标:m:t破损武器 交换施法者与坐骑 交换施法者与坐骑:公式 交换施法者及其坐骑以进行计算。swapCasterMount:c:HP swapCasterActor swapCasterActor:actorID:formula 在计算时交换施法者与指定角色。 swapCasterActor:zavarde:c:物理攻击 注意:前缀可以叠加。"swapCasterTarget:abs:moreThan:3:t:PhysAtk"是有效的语法。 注意:前缀只能应用于单个数值——"lessThan:5:c:PhysAtk"有效,但"lessThan:5:c:PhysAtk - 2"会返回负数。 若要将前缀应用于更复杂的公式,可能需要创建一个公式全局变量,并使用"d:"来引用它(例如"lessThan:5:d:myPhysCalc")。 附录:全局公式 可全局访问的全局公式在各文件中被定义为【FormulaGlobal】,并用于技能、物品、触发器及其他内容中。其中一些是硬编码的,现列举如下。它们也经常被其他【FormulaGlobal】修改——例如,“supportAbilWpnDmgMult”在c_supports.txt中被修改,以向其添加特定支援技能的伤害倍率。这使得此列表对于理解实际公式而言相当不完整,但无论如何,以下是所有硬编码公式的列表: ID 公式 supportAbilAllDmgMult 1 + dsa:c_innerEye:d_innerEye supportAbilWpnDmgMult d:supportAbilAllDmgMult + timedHitCheck:use * 0.01 - 0.01 * t:背部防御 * m:背向 + dsa:机会主义者特性:机会主义者效果 + dMin0:远程熟练伤害倍率支援技能全伤害修正0支援技能武器伤害修正d:支援技能全伤害修正 + 满血额外伤害特性 * not:m:目标百分比生命值损失 + 非相邻额外伤害特性 * m:距离:2 * w:近战魔力消耗修正sa:燃烧专注特性 + dsa:寒冷专注特性:寒冷专注效果 - 专注魔力消耗倍率1充能时间修正0充能时间倍率1魔力消耗修正_仅含充能时间0魔力消耗倍率_仅含充能时间1充能时间修正_仅含魔力0充能时间倍率_仅含魔力1剑伤害dMaxNeg1:剑伤害0 * d:物理防御百分比 * d:支援技能武器伤害倍率 - d:支援技能武器伤害修正g剑伤害dMaxNeg1:剑伤害0 * d:物理防御百分比 * d:支援技能武器伤害倍率 - d:支援技能武器伤害修正拳头伤害dMaxNeg1:拳头伤害0 * d:物理防御百分比 * d:支援技能武器伤害倍率 - d:支援技能武器伤害修正武器伤害dMaxNeg1:武器伤害0 * d:物理防御百分比 *支持技能ID:c_counter 公式存储于数据中:d:iceDmg:2 + d:hammerDmg 数学公式:参见数学附录 m:sameHostile 全局变量:任意字符串 g:turnsTaken + g:exampleVariable 图像、声音与音乐 若图像和音效的文件名相同,它们将相互覆盖。请使用独特的文件名,以确保您的文件不会被其他模组覆盖。 音效和音乐仅支持.wav格式。音乐文件名必须以“Song-”开头。 将模组上传至Steam创意工坊 上传至Steam创意工坊是一个非常简单的过程。不用担心首次上传是否完美——所有模组上传默认设为私密! 将所有模组文件放入本地Mods目录下的一个文件夹中。 添加一个512x512像素的d:supportAbilWpnDmgMult - d:supportAbilWpnDmgMod锤子伤害dMaxNeg1:锤子伤害0 * d:物理防御百分比 * d:supportAbilWpnDmgMult - d:supportAbilWpnDmgMod链枷伤害dMaxNeg1:链枷伤害0 * d:物理防御百分比 * d:supportAbilWpnDmgMult - d:supportAbilWpnDmgMod长矛伤害dMaxNeg1:长矛伤害0 * d:物理防御百分比 * d:supportAbilWpnDmgMult - d:supportAbilWpnDmgMod标枪伤害dMaxNeg1:标枪伤害0 * d:物理防御百分比 * d:supportAbilWpnDmgMult - d:supportAbilWpnDmgMod弓伤害dMaxNeg1:弓伤害0 * d:物理防御百分比 * d:supportAbilWpnDmgMult - d:supportAbilWpnDmgMod瞄准伤害dMaxNeg1:瞄准伤害0 * d:物理防御百分比 * d:supportAbilWpnDmgMult - d:supportAbilWpnDmgMod盾牌伤害dMaxNeg1:盾牌伤害0 * d:物理防御百分比 * d:supportAbilWpnDmgMult - d:supportAbilWpnDmgMod剑伤害0-w:力量 - c:物理攻击 - c:skill_Sword+ t:PhysDeffistDmg0-w:力量 -物理攻击 - 拳头技能 + 物理防御武器伤害0 - 力量 - 物理攻击 + 物理防御锤子伤害0 - 力量 - 物理攻击 * 15 - c:技能_锤子 + t:物理防御链枷伤害0-w:力量 - c:物理攻击 - c:技能_链枷+ t:物理防御长矛伤害0-w:力量 - c:物理攻击 - c:技能_长矛+ t:物理防御标枪伤害0-w:力量 - c:物理攻击 - c:技能_长矛+ t:物理防御弓箭伤害0-w:力量 - c:物理攻击 - c:技能_弓箭+ t:物理防御瞄准伤害0-w:力量 - c:物理攻击 - c:技能_瞄准+ t:物理防御盾牌伤害0-w:力量 - c:物理攻击*0 - c:技能_盾牌*0 + t:物理防御物理防御百分比1物理命中100 * c:命中 - t:物理闪避 物理命中武器100 * c:命中 - t:物理闪避 + d:支援技能武器命中修正支援技能武器命中修正0剑命中d:物理命中武器拳头命中d:物理命中武器锤子命中d:物理命中武器链枷命中d:物理命中武器长矛命中d:物理命中武器 - sa:c_长矛旗帜 * m:相同敌对 * 999弓箭命中d:物理命中武器瞄准命中d:物理命中武器盾牌命中d:物理命中武器魔法防御百分比1 支援技能魔法伤害倍率d:支援技能全伤害倍率 +无法识别内容,已删除冰、电、风、生命、大地及毁灭属性伤害计算方式相同:0-c:魔法攻击 - x - c:技能_火焰 + t:魔法防御 - d:支援技能魔法伤害修正 - d:支援技能火焰伤害修正…… 冰、电、风、生命、大地及毁灭属性武器最大伤害计算方式相同:0:火焰武器伤害0:x * d:魔法防御百分比 * d:支援技能武器伤害倍率 * d:支援技能火焰伤害倍率…… 冰、电、风、生命、大地及毁灭属性武器伤害计算方式相同:0-c:魔法攻击 - x - c:技能_火焰 + t:魔法防御 - w:威力 - d:支援技能魔法伤害修正 - d:支援技能火焰伤害修正…… 冰、电、风、生命、大地及毁灭属性魔法伤害显示最小值计算方式相同:0:魔法伤害0显示:x 冰、电、风、生命、大地及毁灭属性火焰伤害显示最小值计算方式相同:0:火焰伤害0显示:x…… 冰、电、风、生命、大地及毁灭属性魔法伤害0显示计算方式相同:c:魔法攻击 + x 冰、电、风、生命、大地及毁灭属性火焰伤害0显示计算方式相同:c:魔法攻击 + x + c:技能_火焰…… 火焰命中:100 + c:技能_火焰 - d:目标魔法闪避率…… 冰、电、风、生命、大地及毁灭属性计算方式相同冰、电、风、生命、大地以及毁灭生命伤害也遵循相同规则 物理伤害最大值0:生命物理伤害0:x * 支援技能魔法伤害倍率 * 支援技能生命伤害倍率 生命物理伤害0:物理攻击 - x - 生命技能等级 + 目标物理防御 - 支援技能魔法伤害修正 - 支援技能生命伤害修正 生命物理伤害显示:物理攻击 + x + 生命技能等级 大地物理伤害最大值0:大地物理伤害0:x * 支援技能魔法伤害倍率 * 支援技能大地伤害倍率 大地物理伤害0:物理攻击 - x - 大地技能等级 + 目标物理防御 - 支援技能魔法伤害修正 - 支援技能大地伤害修正 大地物理伤害显示:物理攻击 + x + 大地技能等级 附录:未使用的全局公式 以下旧公式已完全弃用: ID公式 黑暗命中惩罚:黑暗值 * 25 * 最小值0:黑暗命中惩罚生效 黑暗命中惩罚生效:1 - 视野 - 失明 细剑伤害:最大值负1:细剑伤害0 * 物理防御百分比 * 支援技能武器伤害倍率 -匕首伤害修正dMaxNeg1:匕首基础伤害0×物理防御百分比×支援技能武器伤害倍率-支援技能武器伤害修正 副手匕首伤害dMaxNeg1:副手匕首基础伤害0×物理防御百分比×支援技能武器伤害倍率 副手拳头伤害dMaxNeg1:副手拳头基础伤害0×物理防御百分比×支援技能武器伤害倍率 斧头伤害dMaxNeg1:斧头基础伤害0×物理防御百分比×支援技能武器伤害倍率-支援技能武器伤害修正 鞭子伤害dMaxNeg1:鞭子基础伤害0×物理防御百分比×支援技能武器伤害倍率-支援技能武器伤害修正 细剑基础伤害0:武器威力-角色物理攻击-剑术技能等级+目标物理防御 匕首基础伤害0:武器威力-角色物理攻击-匕首技能等级+目标物理防御 副手匕首基础伤害0:副手武器威力-角色物理攻击-匕首技能等级+目标物理防御 副手拳头基础伤害0:副手武器威力-角色物理攻击-拳头技能等级+目标物理防御 斧头基础伤害0:武器威力-角色物理攻击-斧头技能等级+目标物理防御 鞭子基础伤害0:武器威力-物理攻击 - 技能_链枷加成 + 物理防御 剑命中率 物理武器命中率 细剑命中率 物理武器命中率 匕首命中率 物理武器命中率 鞭子命中率 物理武器命中率 斧头命中率 物理武器命中率 魔法伤害最大值0:魔法伤害0(x) * 魔法防御百分比 * 辅助能力魔法伤害倍率 魔法伤害0 - 魔法攻击 - x + 魔法防御 - 辅助能力魔法伤害修正 魔法武器伤害最大值0:魔法伤害0(x) * 魔法防御百分比 * 辅助能力武器伤害倍率 魔法武器伤害0 - 魔法攻击 - x + 魔法防御 - 辅助能力魔法伤害修正 - 武器威力 魔法命中率100 - 目标魔法闪避 魔法投射物命中率 命中率 * 100 - 目标魔法闪避 - 目标物理闪避 - 黑暗命中惩罚 面向魔法命中率100 - 目标魔法闪避 目标魔法闪避 魔法闪避 - 魔法闪避 * 发痒状态 * 灵魂穿刺特性将同名PNG图片放入该文件夹中(例如:MyMod/MyMod.png)。 打开《Kingsvein》,进入主菜单,选择【模组】,然后点击你的模组上的【上传】按钮。 输入你的模组文件夹名称。 输入描述模组的标签,例如【游戏玩法】【物品】【地点】等,标签之间用逗号分隔。 等待上传完成,然后点击勾选标记在线查看你的模组! 编辑模组的描述、图片等内容,准备好后将其【可见性】设置为【公开】。 如果需要编辑模组的内容、预览图片或标签,可以通过游戏内的【编辑内容】和【编辑标签】选项进行操作。为此,你需要输入模组的ID编号。 ID编号是模组URL中的长数字。例如,在Krakenslayer模组中,ID号为3156939551。 附录:可编辑类型 以下是所有可通过文本文件创建或编辑的数据类型列表。 此外,还有一些未列出的类型无法直接编辑(例如,区域包含角色、物品和触发器,但需通过游戏内建造模式创建,而非手动输入)。 注意事项: 除上述类型外,模组还可替换纹理、音效和音乐。 AoE指范围效果。 反应是该类型受元素或角色属性影响时发生的情况。 范围效果、效果、反应和光照在各类型中均采用标准化格式(例如,物品效果和支援技能效果使用相同格式)。类型 说明 是否可使用cloneFrom? 地形类型 此类地形需使用游戏内编辑器进行设置。 地形光照 地形反应 角色属性 详见ModSamples/ActorValueSample.txt ✓ 角色属性效果 详见ModSamples/ActorValueSample.txt 角色属性反应 详见ModSamples/ActorValueSample.txt 角色类型 包括人形生物、怪物、坐骑和 wisps ✓ 角色类型探测范围 ✓ 角色类型反应 属性效果 角色类型光照 物品类型 详见ModSamples/items_mod1.txt ✓ 物品效果 装备该物品时对角色生效。物品效果于武器 物品效果于护甲 物品亮度 物品反应 物品反应于武器 物品反应于护甲 日志条目 用于物品、角色类型和角色职业 区域 最好使用游戏内区域编辑器(“建造模式”) 区域合并 最好使用游戏内区域编辑器(“建造模式”) 对话节点 对话选项 对话节点覆盖 位置 在世界地图上放置区域入口的地点/地牢数据 ✓全局范围效果 可被克隆或用作角色类型移动类型 ✓全局触发器 可从任何区域调用或由动作调用的触发器 全局触发器效果 角色预制体 可在建造模式中放置或被触发器引用的“示例”角色 角色职业 骑士、凿工等✓角色职业反应角色职业效果行动包括职业技能、武器攻击、消耗品行动、敌人行动等 ✓行动范围 ✓影响者影响者范围 ✓支援技能 ✓支援技能反应支援技能效果 关卡数据程序化区域的参数 ✓关卡数据区域关卡数据使用的区域数据 组合部件将区域定义为可重复使用的组合部件,通常由关卡数据放置 公式全局参见ModSamples/FormulaGlobalSample.txt 特效数据参见ModSamples/FXsamples.txt ✓绘制顺序特效参见ModSamples/FXsamples.txt ✓绘制顺序特效光效参见ModSamples/FXsamples.txt 生成数据生成角色组的数据 ✓特殊生成根据特殊规则生成物品/地形 ✓动画参见ModSamples/AnimationSample.附录:范围效果形状类型 创建范围效果时,你可以从以下选项中选择特定形状。最好指定名称(shape=line;),但使用数字也可行(shape=2;)。 若使用plus形状,可通过将最大范围值加上0.5使其成为正方形。(例如:1.5的范围可覆盖中心周围的所有8个方格。) 数字 形状 说明 0 plus 默认形状。忽略物品/地形的移动消耗。 1 walkpath 采用寻路的移动形状。会计算物品/地形的移动消耗。 111 walkpathShape_straightLinesPlus1 与walkpathShape类似,但在非直线方向上的范围减少1。 112 walkpathShape_straightLinesPlus2 与walkpathShape类似,但在非直线方向上的范围减少2。 2 line 直线。 3 wideLine 直线,但宽度为3格。




换一换 




















