找回密码
 注册
搜索
查看: 711|回复: 12

无法小风神,请教问题

[复制链接]
门派:天龙寺
发表于 2019-2-21 13:42:05 | 显示全部楼层 |阅读模式
防flood的问题,比如有时我在马房那里要接送信任务的时候,一跑到马房,就出现flood,road.wait=0.10 road.steps=45,这我在lujing.lua里的设定,是不是跟这个步数的设定有关?谢谢了

评分

1

查看全部评分

门派:桃花岛
发表于 2019-2-21 13:58:27 | 显示全部楼层
跑多快都有可能flood,就算公版的0.2秒,跑7步,依然会因为网络不好而flood。

尤其从武当或华山到褚万里,由于路程遥远,跑到之后30%的可能都会flood,导致要信,看信都不能正常完成!

而从褚万里跑到目标地点送信时,也有同样的问题发生,flood导致不能完成送信!
门派:天龙寺
 楼主| 发表于 2019-2-21 14:01:51 | 显示全部楼层
那我就把步数稍调一点再看看,慢慢测试一下
门派:桃花岛
发表于 2019-2-21 14:03:22 | 显示全部楼层
function songxin_start()--选择内力准备,会视为新手,直接去大理城马房,否则是大理城驿站。
    flag.idle = nil
        if newbie==1 then return go(sxaskjob,'大理城','马房') else return go(job_songxin,'大理城','驿站') end
    return
end
function sxaskjob()--这是到达马房后的函数,你是在这里flood
    return zhunbeineili(songxin_begin)
end
function songxin_begin()
    flag.idle = nil
    return go(job_songxin,'大理城','驿站')
end
门派:桃花岛
发表于 2019-2-21 14:07:38 | 显示全部楼层
修改也很简单,只需要加入3秒等待,再打坐,就能把flood给等过去。

function sxaskjob()--这是到达马房后的函数,你是在这里flood,加入等待3秒操作,防flood
           wait.make(function()
        wait.time(3.0)  
        return zhunbeineili(songxin_begin)
        end)
end

评分

1

查看全部评分

门派:桃花岛
发表于 2019-2-21 14:12:06 | 显示全部楼层
当然,送信任务选择内力准备,其实不是很必要,因为直送的话,没有杀手出来,准备内力也没用!

不直送的话,也就是送信等杀手,你在目的地还是会打坐等待。

所以现在大家都是手里拿着恢复武器跑来跑去做任务,根本不会打坐,实在内力不够就嗑药!这样效率就上来了!

门派:桃花岛
发表于 2019-2-21 14:15:27 | 显示全部楼层
如果将来你不内力准备,flood就会发生在大理城驿站的地方,处理如下——

function job_songxin()
    DeleteTriggerGroup("check_job")
    EnableTriggerGroup("songxin_ask",true)
    -- ain 防止不存钱
  --  if score.goldlmt==nil
  --    score.goldlmt=28000
  --  end
    job.time.b=os.time()
    exe('ask zhu wanli about job')
        create_timer_s('walkWait4',3.0,'job_songxin1')
end
function job_songxin1()
        exe('ask zhu wanli about job')
end

function songxin_ask()
        DeleteTimer("walkWait4")
    EnableTriggerGroup("songxin_ask",false)
    EnableTriggerGroup("songxin_accept",true)
end

加入timer,不断向褚万里要任务,直到要成功为止,然后在要成功的函数里,关闭这个timer,防止flood.

评分

1

查看全部评分

门派:桃花岛
发表于 2019-2-21 14:17:37 | 显示全部楼层
然后,还有的时候,flood没有发生在要任务,而是要完任务看信时,会发生flood,处理如下——

function songxin_xin()
        DeleteTimer("walkWait4")
    job.time.b=os.time()
    --messageShow('送信任务:任务开始。')
    EnableTriggerGroup("songxin_accept",false)
    EnableTriggerGroup("songxin_letter",true)
    job.last="songxin"
    sxkiller1=0
    sxkiller2=0
    --exe('set po 掌;look letter')
                wait.make(function()
        wait.time(3.0)  
        exe('look letter')
        end)

end

等3秒再看信,这个不会损失效率,因为拿到信后,会有大概3秒的busy,正好用来等待,防止 flood

评分

1

查看全部评分

门派:天龙寺
 楼主| 发表于 2019-2-21 14:18:22 | 显示全部楼层
嗯,明白了,在容易flood的地方。加上一个等待,防止flood
门派:桃花岛
发表于 2019-2-21 14:20:17 | 显示全部楼层
最后,送信端的flood处理起来更为复杂,如果选择送信等杀手,基本不会flood,但要是直送,flood发生率非常高。

这个在之前的帖子里已经详细说明了,你可以参考一下——

http://www.sjever.net/bbs/forum.php?mod=viewthread&tid=219287
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|书剑永恒MUD ( 闽ICP备14012032号|闽公网安备 35050202000162号 )

GMT+8, 2025-6-9 18:11 , Processed in 0.046432 second(s), 27 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表