一、新人地图元宝数量限制传送脚本
你的需求是:在新人地图(chuji1)中,当人物元宝数超过500时,自动传入新人地图2(chuji2)。脚本需在现有的“等级达到25级传送”的基础上,增加一个“元宝检测”触发。
1. 在机器人脚本中添加元宝检测
这是自动检测的最佳方案,无需玩家触发。打开服务端目录:MirServer\Mir200\Envir\Robot_def\,找到并编辑 AutoRunRobot.txt 和 RobotManage.txt 文件。
• 在 AutoRunRobot.txt 中添加:
#AutoRun NPC SEC 5 @检查元宝传送
这行代码表示服务器每5秒执行一次“@检查元宝传送”这个脚本。
• 在 RobotManage.txt 中对应位置添加:
[@检查元宝传送]
#IF
CHECKMAPNAME chuji1
CHECKGAMEGOLD > 499
#ACT
MAPMOVE chuji2
SENDMSG 6 您在新人地图累积的元宝已超过500,自动传送至高级地图!
BREAK
脚本解析:
#IF 是条件判断,表示“如果”满足以下所有条件:
• CHECKMAPNAME chuji1:检测人物当前是否在 chuji1 地图。
• CHECKGAMEGOLD > 499:检测人物元宝是否大于499(即大于等于500)。
#ACT 是执行动作,当条件满足时执行:
• MAPMOVE chuji2:将人物移动到 chuji2 地图。
• SENDMSG 6 ...:屏幕中间显示提示信息。
• BREAK:跳出脚本。
2. 在NPC脚本中增加选项(备用方案)
如果你希望在某个NPC对话中提供此功能,可以在对应的NPC脚本中(通常在 Market_Def 目录下)添加:
[@检测元宝]
#IF
CHECKGAMEGOLD > 499
#ACT
MAPMOVE chuji2
SENDMSG 6 您身上的元宝超过500,传送成功!
#ELSEACT
MESSAGEbox 您身上的元宝不足500,无法传送!
重启生效:修改完机器人脚本后,必须重启服务端或让服务器重新加载机器人脚本,修改才能生效。
二、JS引擎挖取人形怪装备参数详解
JS引擎中,控制人形怪死亡后装备被挖取几率的参数是 ButchRate。
1. 参数位置与作用
• ButchRate=10:此参数控制人形怪(或其他可被挖取的怪物)死亡后,其身上装备可被挖出的基础几率。这个值设置在 !Setup.txt 中。
• ButchUserItemRate=2:此参数通常用于控制挖取出的装备的持久度。例如,=2 可能表示挖出的装备持久是全新的2倍,或是一个与装备掉落品质相关的修正系数。它不是控制触发几率的参数。
2. 数字“10”代表的具体几率
在JS引擎(及多数复古引擎)中,这个“10”代表的并非百分比,而是千分比。
• ButchRate=10 表示:挖取成功的基础触发几率为 10/1000,即 1%。
• 这个基础几率会受到其他因素的影响,例如玩家的幸运值、技能的等级(如“挖矿术”)、怪物本身的可挖取设置等。实际成功率会在这个1%的基础上进行计算。
简单来说:ButchRate=10 就是1%的基础触发率,数字越小越难挖到,数字越大越容易挖到。ButchRate=100 就是10%的基础几率。
3. 怪物个体的额外设置
除了引擎全局的 ButchRate 参数,每个怪物在数据库(Monster.DB)中还有一个独立的 BUTCH 字段,用于修正这个基础几率。例如:
• 怪物A的 BUTCH 字段值为 5,则玩家挖取怪物A的实际基础几率是 (ButchRate=10) + (BUTCH=5) = 15/1000,即1.5%。
• 怪物B的 BUTCH 字段值为 -5,则实际几率是 10-5=5/1000,即0.5%。
总结:要调整挖取人形怪装备的几率,主要修改 !Setup.txt 中的 ButchRate=10 这个数值,数值代表千分比。ButchUserItemRate 则主要影响挖出装备的品质。

