很多朋友经常说:我和别人是一样的版本,为什么我的游戏卡,他的游戏不卡,是不是你们引擎不行?其实道理很简单。抛开fu务器质量的缘故,以及引擎自身的不足,版本导致的游戏卡占了很大的比重。下面就如何对版本进行优化传奇素材网做一点简要的说明。仅供大家参考。
【关于M2的相关设置】
1、M2选项-性能设置-怪物处理控制-处理间隔。
数字越大,怪物行动越迟钝,CPU占用越低。数字越小,怪物行动越灵活,CPU占用越高。这里的CPU的高低,大家都明白,是决定游戏是不是卡的缘故之一。
2、很多游戏爆出装备的时候。事无巨细,甚至某种85合击的版本一瓶太阳水掉落在地上,也要全服公告。这样的文字提示,肯定也会给M2增加负担,建议取消这些无意义的物品掉落提示。
【关于怪物的刷新】
D:\Mirserver\Mir200\Envir目录下的MonGen.TXT文本为怪物刷新脚本。这个脚本看起来很简单。[地图坐标X坐标Y怪物名字刷新范围刷新数量刷新时间]表面上看按照这个格式对号入座即可了,其实不然。
很多人写版本图省事,所有的怪物一律统一刷新时间,BOSS全部30分钟一刷新,小怪全部10分钟刷新一次。如果你全部设置了10分钟一刷新,那么M2每10分钟就要全局的检测一次,目前所有游戏里存在的10分钟刷新的怪物数量与MONGEN中设置的是否相符。如果不相符会补齐,要在一个时间内同时做出这么多的检测,M2的负担可想而知.建议将这些怪物的刷新时间分散开,比如11分钟12分钟。这样M2在一个时间内执行的检测与补充就会少一些,运算负担就会减少一些。
有些人写版本把一个地图内所有的怪物刷新坐标点全部设置在一个位置。这样的话,M2的分析处理能力势必会被拖累。,刷新坐标点也都区分开,一个坐标不要刷新太多的怪物。否则你也会出现,本来设置刷100只怪,结果只有60只。
还有一些版本只有50~60个人玩,但是刷怪设置了5~6万只怪,那么平均折合一个人要消灭掉1000只怪,这现实吗。肯定不可能的。没事儿的时候大家可以对比一下,游戏在刷新1万只怪所产生的CPU占用大小与刷新5万只怪所战胜的CPU占用大小,那绝对是5倍的数值。
提醒大家,还有关于游戏自助刷怪升级的脚本,这个脚本千万尽量不要存在在游戏里,这个是一个坑爹的功能。尤其刷怪练级的脚本。当几个刷怪NPC在哪里不停的刷的时候,M2负担极大,游戏不可能不卡。
如何有效的控制怪物爆率
怪物爆率文件在D:\Mirserver\Mir200\Envir\MonItems下面,一般默认的怪物爆率就已经非常不错,但根据服务器人数,有时候还是需要对爆率进行调整。
关于调整沃玛装备
沃玛装备为底级装备,控制沃玛装备的爆率只需要控制白野猪0.txt白野猪8.txt白野猪.txt这3个文本就可以了,根据白野猪的刷怪时间数量,以及怪物的强度,控制如下:1/50容易1/100一般1/150中等1/200难
关于调整祖玛装备
祖玛装备为中级装备,控制祖玛装备的爆率只需要对祖玛雕像3.txt祖玛弓箭手3.txt祖玛卫士3.txt幽冥卫士0.txt幽冥弓箭手0.txt这五个文本进行调整就足够控制整个服务器的祖玛装备爆率,根据怪物的刷怪时间数量,以及怪物的强度,控制如下:1/200非常容易1/400容易1/600一般1/1000比较难1/1500很难
关于调整赤月装备
赤月装备为高级装备,只有BOSS级的怪物才会爆出,建议此爆率不要低与1/400
关于新衣服爆率控制
暗之虹魔教主.txt暗之黄泉教主.txt暗之骷髅精灵.txt暗之双头金刚.txt暗之双头血魔.txt暗之沃玛教主.txt重装使者.txt以上7个文本为控制新衣服爆率文本,根据怪物的刷怪时间数量,以及怪物的强度,控制如下:1/50容易1/80一般 1/100中等 1/150难 1/200很难 建议此爆率不要底与1/50
关与各种BOSS级怪物的爆率调整,由于BOSS级的怪物刷新时间比较长,控制如下:1/50容易1/80一般 1/100中等 1/150难 1/200很难,一般爆率不需要做大幅度调整,只需要对上面说明的几个文本进行设置就可以对整个服务器的爆率高底进行调整!
【关于机器人脚本】
D:\Mirserver\Mir200\Envir\Robot_def目录下为机器人脚本。
AutoRunRobot.txt为触发命令脚本
RobotManage.txt为执行命令脚本
当触发命令脚本中一秒一执行的命令出现的情况下、游戏就会变卡,并且游戏里玩家越多,将会余越卡,建议大家取消掉1秒一执行的机器人脚本,如果有必要存在的话,那么修改为5秒,乃至10秒等延长时间。
【关于个人定时器】
很多版本中的个人定时器使用的很不科学、上线就开始触发个人定时器,搞一个安全区在线泡点,并且一秒一执行,当人多的时候一起执行当然会非常卡。尤其玩家在带着个人定时器等计时命令的时候,在进行PK或者打怪等动作的时候,就需要通过游戏网关向M2不停的传送数据,M2在不停的分析数据反馈给游戏网关上的玩家,这样一来,M2的负担大了,游戏自然就变卡了。
建议取消:安全区泡点,将泡点最好划分开不同地图,尽量一个泡点地图里不要存在太多的人。这样游戏就不会那么卡了。另外:很多人的个人定时器都是1秒一循环。然后给100万经验。建议大家转换个思路,修改为5秒一循环,给500万经验。这样循环的次数少了,M2的负担就减轻了。
【关于GOTO的使用】
GOTO越多,游戏的循环会越多。有些版本表面看着很简洁。使用了很多GOTO,其实这样一来循环就会很多。大家都知道当计算出现死循环的时候,系统是直接崩盘,那么游戏出现死循环的时候,会直接M2死掉。能用DELAYGOTO替代的尽量用这个替代,不能用这个替代的尽量用其他思路取代。
能在当前脚本完成的功能尽量不要#CALL到别处完成。减少GOTO使用率对于版本优化是一个很重要的一步。
尽量优化版本,而不是通过修改M2(!Setup.txt)ScriptGotoCountLimit参数,让GOTO一直执行,太多GOTO会使M2直接关闭
【关于版本中的NPC】
有的GM总说自己的游戏加载的时候好慢,或者关闭的时候好慢。这些人的游戏里NPC刷新达到600~700个。这些NPC有多少是没有用的?有多少NPC是玩家一辈子都点击不到的?加载这些东西,然后在保存这些NPC产生的数据,会不浪费时间吗?如果这些NPC里留下一个小小的后门,你找出来是不是也浪费你的脑细胞啊?
NPC闪的解决办法
D:\Mirserver\Mir200\Envir\Market_prices和D:\Mirserver\Mir200\Envir\Market_saved文件夹下面的所有文件是记录商店和玩家卖到商业的物品的临时记录文件,NPC闪时只需要删除2个文件夹下面的所有文件即可,删除后服务器内的所有商人会重新进行商品刷新,会有1-2分钟时间商店无东西卖,请等2分钟后商店就会自动刷新。
【关于查看游戏中玩家的私聊记录】
不建议开启