转生NPC脚本的核心在于使用全局变量记录转生次数,并通过检测等级与物品条件来控制转生流程。首先需在Market_Def目录下创建NPC脚本文件,并在MerChant.txt中注册NPC。以下为基于GOM引擎的完整脚本示例,包含十六转的全部逻辑。
NPC注册与基础结构
在Mir200\Envir\MerChant.txt中添加一行:
盟重城转生使者3325341转生使者015000
在Mir200\Envir\Market_Def目录下创建文件盟重城\转生使者-3.txt,脚本内容如下:
主菜单与转生逻辑
[@main]
#act
movS1欢迎来到转生使者处\
当前转生次数:<$GLOBAL(G101)>转\
请选择您的转生目标:\
<一转/@Zhuansheng1><二转/@Zhuansheng2><三转/@Zhuansheng3>\
<四转/@Zhuansheng4><五转/@Zhuansheng5><六转/@Zhuansheng6>\
<七转/@Zhuansheng7><八转/@Zhuansheng8><九转/@Zhuansheng9>\
<十转/@Zhuansheng10><十一转/@Zhuansheng11><十二转/@Zhuansheng12>\
<十三转/@Zhuansheng13><十四转/@Zhuansheng14><十五转/@Zhuansheng15>\
<十六转/@Zhuansheng16>
第一转脚本
[@Zhuansheng1]
#IF
CheckLevel<70
#act
msgbox等级不足70级,无法一转!
break
#IF
CheckItem修炼手镯<10
#act
msgbox需要10个修炼手镯!
break
#act
Take修炼手镯10
SetGlobalVarG1011
Level51
ReCalcHuman
msgbox恭喜您完成一转!等级降至51级,属性提升1.1倍!
第二转至五转脚本
[@Zhuansheng2]
#IF
CheckGlobalVarG101<1
#act
msgbox请先完成一转!
break
#IF
CheckLevel<75
#act
msgbox等级不足75级!
break
#IF
CheckItem蛇魔水晶<5
#act
msgbox需要5个蛇魔水晶!
break
#act
Take蛇魔水晶5
IncGlobalVarG1011
Level53
ReCalcHuman
msgbox恭喜完成二转!等级降至53级,属性提升1.2倍!
[@Zhuansheng3]
#IF
CheckGlobalVarG101<2
#act
msgbox请先完成二转!
break
#IF
CheckLevel<78
#act
msgbox等级不足78级!
break
#IF
CheckItem蛇妖的心脏<5
#act
msgbox需要5个蛇妖的心脏!
break
#act
Take蛇妖的心脏5
IncGlobalVarG1011
Level56
ReCalcHuman
msgbox恭喜完成三转!等级降至56级,属性提升1.3倍!
[@Zhuansheng4]
#IF
CheckGlobalVarG101<3
#act
msgbox请先完成三转!
break
#IF
CheckLevel<80
#act
msgbox等级不足80级!
break
#IF
CheckItem蛇王油<5
#act
msgbox需要5个蛇王油!
break
#act
Take蛇王油5
IncGlobalVarG1011
Level58
ReCalcHuman
msgbox恭喜完成四转!等级降至58级,属性提升1.4倍!
[@Zhuansheng5]
#IF
CheckGlobalVarG101<4
#act
msgbox请先完成四转!
break
#IF
CheckLevel<85
#act
msgbox等级不足85级!
break
#IF
CheckItem蛇王衣(男)<1
CheckItem蛇王衣(女)<1
CheckItem霸主之剑<1
#act
msgbox需要蛇王衣(男)、蛇王衣(女)各一件及霸主之剑一把!
break
#act
Take蛇王衣(男)1
Take蛇王衣(女)1
Take霸主之剑1
IncGlobalVarG1011
Level60
ReCalcHuman
msgbox恭喜完成五转!等级降至60级,属性提升1.5倍!
属性倍数实现方法
攻击、魔法、道术的倍数需通过引擎的StdModeEx或PowerRate参数实现。在MonItems或ItemDB中设置转生属性加成,或在M2引擎的“功能设置”中开启“转生属性倍率”功能,设置G101变量对应的倍率值。例如,一转时设置AttackRate=110,二转设置AttackRate=120,以此类推至十六转的AttackRate=260。
后续转生扩展
第六转至十六转的脚本结构与前五转一致,只需修改等级要求、物品名称、降级数值及倍率参数。每增加一转,将CheckGlobalVar的检测值加1,IncGlobalVar递增1,并调整Level指令的目标等级。建议在脚本末尾添加[@CheckZhuansheng]检测段,用于校验玩家当前转生状态,防止数据异常。
NPC注册与基础结构
在Mir200\Envir\MerChant.txt中添加一行:
盟重城转生使者3325341转生使者015000
在Mir200\Envir\Market_Def目录下创建文件盟重城\转生使者-3.txt,脚本内容如下:
主菜单与转生逻辑
[@main]
#act
movS1欢迎来到转生使者处\
当前转生次数:<$GLOBAL(G101)>转\
请选择您的转生目标:\
<一转/@Zhuansheng1><二转/@Zhuansheng2><三转/@Zhuansheng3>\
<四转/@Zhuansheng4><五转/@Zhuansheng5><六转/@Zhuansheng6>\
<七转/@Zhuansheng7><八转/@Zhuansheng8><九转/@Zhuansheng9>\
<十转/@Zhuansheng10><十一转/@Zhuansheng11><十二转/@Zhuansheng12>\
<十三转/@Zhuansheng13><十四转/@Zhuansheng14><十五转/@Zhuansheng15>\
<十六转/@Zhuansheng16>
第一转脚本
[@Zhuansheng1]
#IF
CheckLevel<70
#act
msgbox等级不足70级,无法一转!
break
#IF
CheckItem修炼手镯<10
#act
msgbox需要10个修炼手镯!
break
#act
Take修炼手镯10
SetGlobalVarG1011
Level51
ReCalcHuman
msgbox恭喜您完成一转!等级降至51级,属性提升1.1倍!
第二转至五转脚本
[@Zhuansheng2]
#IF
CheckGlobalVarG101<1
#act
msgbox请先完成一转!
break
#IF
CheckLevel<75
#act
msgbox等级不足75级!
break
#IF
CheckItem蛇魔水晶<5
#act
msgbox需要5个蛇魔水晶!
break
#act
Take蛇魔水晶5
IncGlobalVarG1011
Level53
ReCalcHuman
msgbox恭喜完成二转!等级降至53级,属性提升1.2倍!
[@Zhuansheng3]
#IF
CheckGlobalVarG101<2
#act
msgbox请先完成二转!
break
#IF
CheckLevel<78
#act
msgbox等级不足78级!
break
#IF
CheckItem蛇妖的心脏<5
#act
msgbox需要5个蛇妖的心脏!
break
#act
Take蛇妖的心脏5
IncGlobalVarG1011
Level56
ReCalcHuman
msgbox恭喜完成三转!等级降至56级,属性提升1.3倍!
[@Zhuansheng4]
#IF
CheckGlobalVarG101<3
#act
msgbox请先完成三转!
break
#IF
CheckLevel<80
#act
msgbox等级不足80级!
break
#IF
CheckItem蛇王油<5
#act
msgbox需要5个蛇王油!
break
#act
Take蛇王油5
IncGlobalVarG1011
Level58
ReCalcHuman
msgbox恭喜完成四转!等级降至58级,属性提升1.4倍!
[@Zhuansheng5]
#IF
CheckGlobalVarG101<4
#act
msgbox请先完成四转!
break
#IF
CheckLevel<85
#act
msgbox等级不足85级!
break
#IF
CheckItem蛇王衣(男)<1
CheckItem蛇王衣(女)<1
CheckItem霸主之剑<1
#act
msgbox需要蛇王衣(男)、蛇王衣(女)各一件及霸主之剑一把!
break
#act
Take蛇王衣(男)1
Take蛇王衣(女)1
Take霸主之剑1
IncGlobalVarG1011
Level60
ReCalcHuman
msgbox恭喜完成五转!等级降至60级,属性提升1.5倍!
属性倍数实现方法
攻击、魔法、道术的倍数需通过引擎的StdModeEx或PowerRate参数实现。在MonItems或ItemDB中设置转生属性加成,或在M2引擎的“功能设置”中开启“转生属性倍率”功能,设置G101变量对应的倍率值。例如,一转时设置AttackRate=110,二转设置AttackRate=120,以此类推至十六转的AttackRate=260。
后续转生扩展
第六转至十六转的脚本结构与前五转一致,只需修改等级要求、物品名称、降级数值及倍率参数。每增加一转,将CheckGlobalVar的检测值加1,IncGlobalVar递增1,并调整Level指令的目标等级。建议在脚本末尾添加[@CheckZhuansheng]检测段,用于校验玩家当前转生状态,防止数据异常。

