问题核心在于脚本中使用了不正确的Gmexecute命令。该命令用于模拟游戏管理员指令,但您脚本中的“出来”并非有效的GM命令,导致系统提示“此命令不正确”,且无法实际发放奖励物品。
具体原因分析:
1. 无效的GM命令:Gmexecute 出来 时乘六龙ゞ盔 Self 这一行是错误根源。引擎无法识别“出来”这个命令。
2. 命令执行流程:脚本逻辑是先扣除了200元宝(GAMEGOLD - 200),然后尝试执行一个无效命令,导致发放物品失败。系统公告SENDMSG是独立执行的,所以仍会显示,但物品并未通过有效途径进入玩家背包。
解决方案(直接修改脚本):
请将您脚本中出错的 [@开始抽奖] 段落进行修改。找到以下行:
Gmexecute 出来 时乘六龙ゞ盔 Self
将其直接替换为:
GIVE 时乘六龙ゞ盔 1
修改后的完整脚本段落应为:
[@开始抽奖]
#if
random 500
#act
GAMEGOLD - 200
GIVE 时乘六龙ゞ盔 1
SENDMSG 6 抽奖获得:时乘六龙ゞ盔 1
SENDMSG 1 恭喜『%s』在抽奖员获得物品:时乘六龙ゞ盔 !
goto @main
break
修改说明:
• GIVE 是传奇NPC脚本中标准的“给予物品”命令,格式为 GIVE 物品名称 数量。
• 修改后,当玩家抽中时,脚本会先扣除200元宝,然后直接通过GIVE命令将“时乘六龙ゞ盔”放入玩家背包,最后发送提示消息并返回主界面。逻辑清晰且可靠。
操作步骤:
1. 找到并打开您的抽奖NPC脚本文件(通常在 Mir200\Envir\Market_Def\ 下的对应文件夹中)。
2. 定位到 [@开始抽奖] 段落。
3. 按上述方案,将 Gmexecute 开头的错误行替换为 GIVE 命令。
4. 保存脚本文件。
5. 在游戏服务器控制器(M2Server)上,重新加载NPC脚本(通常在“控制”->“重新加载”菜单中有“重读NPC脚本”选项),或直接重启M2Server引擎使修改生效。
完成以上修改后,玩家再次点击抽奖,将正常扣除元宝并100%获得对应物品,不会再出现权限报错和奖励缺失的问题。如果抽奖有多个奖项,请用同样的方法修正其他奖项的发放命令。

