当前位置: > 极品版本 > 文章内容


经常有传奇管理人员抱怨服务器配置不行,8G内存,四核处理器都不够开五个区。只要服务器连续运行几天,新开传奇的人物角色就会逐渐变卡。排除网络带宽问题和攻击现象之外,实在找不出问题。其实问题就是出在服务端程序的不合理设置方面。只要注意了以下几点要素,完全可以确保游戏运行流畅不卡!

一、机器人脚本中每秒执行一次的脚本尽量少用

D:\Mirserver\Mir200\Envir\Robot_def目录下为机器人脚本。
AutoRunRobot.txt为触发命令脚本\
RobotManage.txt为执行命令脚本
当触发命令脚本中一秒一执行的命令出现的情况下、游戏就会变卡,并且游戏里玩家越多,将会余越卡,建议大家取消掉1秒一执行的机器人脚本,如果有必要存在的话,那么修改为5秒,乃至10秒等延长时间。

二、个人定时器尽量少用,尤其是安全区泡点

很多版本中的个人定时器使用的很不科学、上线就开始触发个人定时器,搞一个安全区在线泡点,并且一秒一执行,当人多的时候一起执行当然会非常卡。尤其玩家在带着个人定时器等计时命令的时候,在进行PK或者打怪等动作的时候,就需要通过游戏网关向M2不停的传送数据,M2在不停的分析数据反馈给游戏网关上的玩家,这样一来,M2的负担大了,游戏自然就变卡了。

建议取消:安全区泡点,将泡点最好划分开不同地图,尽量一个泡点地图里不要存在太多的人。这样游戏就不会那么卡了。另外:很多人的个人定时器都是1秒一循环。然后给100万经验。建议大家转换个思路,修改为5秒一循环,给500万经验。这样循环的次数少了,M2的负担就减轻了。

三、脚本中GOTO循环语句使用太多,导致M2引擎处理不过来

能在当前脚本完成的功能尽量不要#CALL到别处完成。减少GOTO使用率对于版本优化是一个很重要的一步。
处理办法:尽量优化版本,而不是通过修改M2(!Setup.txt) ScriptGotoCountLimit参数,让GOTO一直执行,太多GOTO会使M2直接关闭

以上三点是导致服务器经常变慢的真正原因,所以每个脚本程序员都必须注意结构化合理设计,尽量优化脚本语句的使用。养成良好的编程习惯!

相关文章