Project1

标题: 读档后第一次战斗,选敌人很卡 [打印本页]

作者: 阮声悠悠    时间: 2018-4-24 17:54
标题: 读档后第一次战斗,选敌人很卡
本帖最后由 阮声悠悠 于 2018-4-24 20:15 编辑

由于不方便,就不上传工程了,我描述一下我的情况,不知道各位大神是不是也遇到过

操作如下
双击游戏——读档——进入战斗
那结果这场战斗中选择敌人会很卡

如果这样操作
双击游戏——读档——打开菜单——关闭菜单——进入战斗
那不会卡

或者这样操作
双击游戏——读档——切换一张地图——进入战斗
也不会卡

也或者这样操作
双击游戏——读2档——返回界面——读1档——进入战斗
也是不会卡的

另外,我还做过一次测试
我新开一个存档,在第一个城市操作
双击游戏——读档——进入战斗
不会卡

但我用旧的存档操作
双击游戏——读档——进入战斗
会卡

很有意思的现象①
并不是每次读档后立刻进入战斗都会卡
每操作
双击游戏——读档——进入战斗
5次左右,就会有一次是不卡的,很规律!!!!

有意思现象②
并不是选敌人才会卡,走起路来也有稍微一点卡,只要打开菜单再退出来就正常了

很尴尬的一个bug
我正在寻找解决办法
目前的思路是
在战斗开始前执行一段脚本
效果等同于
打开菜单和关闭菜单
或许这样就不会卡了

另外一条思路可以解决
让玩家读档后,首个界面不是地图,而是菜单界面
玩家退出菜单后,就正常了
但这个效果不好。。。汗~

不知道各位大大是不是有解决的方案
作者: 阮声悠悠    时间: 2018-4-24 20:55
本帖最后由 阮声悠悠 于 2018-4-25 00:17 编辑

真心的测试了很久,至到我绝望了
在论坛搜防卡,找到了这个!!!!
所以解决了!
https://rpg.blue/forum.php?mod=v ... =%E9%98%B2%E5%8D%A1


但是,它骗了我
重启电脑又测试了一遍,还是不行

试了一晚上(真的试了一晚上,好痛苦)
找到了两个解决办法

在Scene_Battle 1的  def main下面加入
RUBY 代码复制
  1. screen = Spriteset_Map.new
  2.     screen.dispose

这样就解决了,但是每次进入战斗,会有一两秒停顿,不适用


同样在这个地方,加入
RUBY 代码复制
  1. $game_map.setup($game_map.map_id)
  2.       $game_player.center($game_player.x, $game_player.y)

也能解决,虽然不会停顿,但是每次战斗,所有的事件都会刷新一遍,这个刷新包括回到事件初始位置,还有恢复“暂时消除事件”

所以两个方案都不行
汗...关电脑睡了,祝好运

另外,还发现了一个问题
因为我的菜单是透明的,所以用了这个方法
RUBY 代码复制
  1. screen = Spriteset_Map.new
  2.     screen.dispose

我发现,我把这两行注释掉,再操作
打开菜单——关闭菜单——进入战斗
还是会卡,所以我觉得问题应该和screen = Spriteset_Map.new有关!!!
作者: 灯笼菜刀王    时间: 2018-4-25 09:59
感觉你努力的方向错了哎,为什么不去解决卡的根本原因,反而一味研究治标的方法...

打开菜单什么的终究不是正常解决手段,不排除掉原因,始终会出问题吧。

先从硬件原因排查,把工程拿到别的电脑上试试会不会卡
然后,把添加的脚本一个一个排除掉测试,看看是什么脚本引起的
有能力的话就再缩小范围,查找出现卡顿的地方。

缩小了问题所在的范围,就方便发论坛请高手查看原因了。这样比你忙了一晚上搞什么加载地图,这边不卡换成那边卡更靠谱吧......
作者: guoxiaomi    时间: 2018-4-25 16:34
是不是搞了个巨大的windowskin文件?




欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1