当前位置 : 145z游戏站 | 热血传奇 | 技术教程 | 

传奇雇佣兵脚本配置与功能使用详解

热度:
雇佣兵脚本通过添加智能NPC伙伴,增强角色战斗与辅助能力。核心脚本通常由Merchant.txt定义NPC,配套脚本文件控制逻辑,数据库条目设定属性。

雇佣兵脚本核心组成部分
1.NPC脚本:定义雇佣交互界面。基础模板如下,需放置于Merchant.txt:

雇佣兵管理员3333333雇佣兵使者0201300000

此行代码在盟重省(333333)创建名为“雇佣兵使者”的NPC,外观代码2013。
2.对话脚本:控制交互选项,文件为雇佣兵管理员.txt,存放于Market_Def。内容示例:

[@main]
雇佣兵助你征战沙场!\\
<雇佣战士/@hire_warrior>拥有高生命与物理攻击\\
<雇佣法师/@hire_mage>拥有远程魔法与群体伤害\\
<雇佣道士/@hire_taoist>拥有治疗与施毒能力\\
<查看状态/@status><提升等级/@upgrade>\\
<解散雇佣兵/@dismiss>

3.数据库设置:在Monster.DB中创建雇佣兵怪物数据,设定基础属性如生命值、攻击力、防御力。关键字段Race需设置为188或类似值,标识为友方单位。
4.核心功能脚本:实现雇佣、升级、解散等逻辑。需处理等级、忠诚度、经验值增长及战斗AI。

雇佣兵完整功能脚本示例
以下为带注释的QFunction-0.txt脚本片段,实现雇佣与管理:

;---雇佣战士---
[@hire_warrior]
#if
check[310]1;检测是否已雇佣
#act
messagebox你已拥有雇佣兵!
break
#elseact
set[310]1;设置雇佣标志
MonGen雇佣兵战士10;在NPC旁刷新雇佣兵
SetMerchantName雇佣兵战士我的战士;为其命名
SetMerchantLevel雇佣兵战士1;设置初始等级
SetMerchantLoyalty雇佣兵战士100;设置初始忠诚度
SetMerchantExp雇佣兵战士0;设置初始经验
SetMerchantAttackMode雇佣兵战士主动攻击;设置攻击模式
messagebox雇佣成功!你的战士已就位。
break

;---查看状态---
[@status]
#if
check[310]1
#act
GetMerchantLevel雇佣兵战士<$OUTPUT(Level)>;获取等级
GetMerchantLoyalty雇佣兵战士<$OUTPUT(Loyalty)>;获取忠诚度
GetMerchantExp雇佣兵战士<$OUTPUT(Exp)>;获取经验
messagebox等级:<$OUTPUT(Level)>\忠诚度:<$OUTPUT(Loyalty)>\经验值:<$OUTPUT(Exp)>
#elseact
messagebox你尚未雇佣任何士兵。
break

;---提升等级(消耗金币)---
[@upgrade]
#if
check[310]1
checkgold500000;检查是否有50万金币
#act
take金币500000
IncMerchantLevel雇佣兵战士1;等级+1
IncMerchantLoyalty雇佣兵战士5;忠诚度+5
messagebox你的雇佣兵等级提升了!
#elseact
messagebox金币不足或雇佣兵不存在。
break

;---解散雇佣兵---
[@dismiss]
#if
check[310]1
#act
set[310]0
MonClear雇佣兵战士;清除该雇佣兵
messagebox雇佣兵已解散。
break


高级参数配置与战斗AI
在数据库或脚本中定义雇佣兵行为:
1.属性成长:每次升级,通过脚本提升DC(物理攻击)、MC(魔法攻击)、SC(道术)、AC(防御)、MAC(魔防)、MaxHP(生命值)。
2.忠诚度系统:雇佣兵受伤或死亡降低忠诚度,使用特定物品或金币可恢复。忠诚度过低可能导致临阵脱逃。
3.战斗指令:通过聊天框命令控制,如@雇佣兵攻击、@雇佣兵守护、@雇佣兵休息。
4.经验共享:击杀怪物后,雇佣兵按比例获得经验,经验满则自动升级。脚本需监听KillMon事件并分配经验值。
5.装备佩戴(可选):高级脚本允许为雇佣兵佩戴装备,需在数据库增加Need字段识别,并通过脚本命令实现穿戴。

安装与调试步骤
1.将Merchant.txt条目添加至服务端Mir200\Envir\Merchant.txt。
2.将雇佣兵管理员.txt放入Mir200\Envir\Market_Def\。
3.将雇佣兵怪物数据添加至DBServer\Monster.DB。
4.将功能脚本片段合并至Mir200\Envir\Market_Def\QFunction-0.txt。
5.重启游戏服务器M2Server.exe,在指定坐标找到NPC测试功能。
6.调试:若雇佣兵不出现,检查MonGen坐标与地图代码;若不攻击,检查Race代码与攻击模式;若属性无增长,检查升级脚本触发与数据库字段。

注意事项
不同游戏引擎命令可能有差异,需根据M2Server版本调整。忠诚度与经验值数据需使用变量存储,防止重置。为避免影响平衡,需合理设定雇佣兵属性成长系数与雇佣成本。
[顶部]