搜索
查看: 4360|回复: 17

更换队伍插件瘫痪服务器

[复制链接]
发表于 2008-3-29 12:33:00 | 显示全部楼层 |阅读模式 来自 中国–浙江–温州
今天写了个插件是指定局数CT和T队伍更换,和BOT测试没问题,放到32人服务器上的时候到了更换队伍的时候就把服务器瘫痪了,是不是更换的人数太多的关系就会挂服务器呢。
发表于 2008-3-29 13:24:46 | 显示全部楼层 来自 中国–江西–南昌

回复: 更换队伍插件瘫痪服务器

还有换队伍不平衡,有时候人数20:10
回复

使用道具 举报

发表于 2008-3-29 14:04:01 | 显示全部楼层 来自 中国–北京–北京–海淀区

回复: 更换队伍插件瘫痪服务器

  1. #include <amxmodx>
  2. #include <amxmisc>
  3. #include <cstrike>
  4. #define PLUGIN "Test"
  5. #define AUTHOR "Jim"
  6. #define VERSION "1.0"
  7. new g_maxplayers
  8. new g_round
  9. new g_pcvar_tcl
  10. new g_limitteams
  11. new g_autobalance
  12. public plugin_init()
  13. {
  14. register_plugin(PLUGIN, VERSION, AUTHOR)
  15. register_event("TextMsg", "round_restart", "a", "2=#Game_Commencing", "2=#Game_will_restart_in")
  16. register_logevent("round_end", 2, "1=Round_End")
  17. g_pcvar_tcl = register_cvar("teamchange_level", "3")
  18. g_maxplayers = get_maxplayers()
  19. }
  20. public round_restart()
  21. {
  22. g_round = 0
  23. }
  24. public round_end()
  25. {
  26. g_round++
  27. if(g_round % get_pcvar_num(g_pcvar_tcl))
  28. {
  29.   g_limitteams = get_cvar_num("mp_limitteams")
  30.   g_autobalance = get_cvar_num("mp_autoteambalance")
  31.   set_cvar_num("mp_limitteams", 0)
  32.   set_cvar_num("mp_autoteambalance", 0)
  33.   change_team()
  34. }
  35. }
  36. public change_team()
  37. {
  38. new CsTeams:team
  39. for(new id = 1; id <= g_maxplayers; id++)
  40. {
  41.   if(is_user_connected(id))
  42.   {
  43.    team = cs_get_user_team(id)
  44.    if(team == CS_TEAM_T)
  45.     cs_set_user_team(id, CS_TEAM_CT)
  46.    else if(team == CS_TEAM_CT)
  47.     cs_set_user_team(id, CS_TEAM_T)
  48.    
  49.    if(is_user_alive(id))
  50.     user_silentkill(id)
  51.   }
  52.    
  53. }
  54. set_cvar_num("mp_limitteams", g_limitteams)
  55. set_cvar_num("mp_autoteambalance", g_autobalance)
  56. }
复制代码
顺手写了个,不知道能不能解决你们的问题,测试一下告诉我结果吧,参数是
teamchange_level 3 就是打多少局就换队,另外活人在换队时会处死,但是不会death -1。
回复

使用道具 举报

发表于 2008-3-29 14:06:21 | 显示全部楼层 来自 中国–北京–北京–海淀区

回复: 更换队伍插件瘫痪服务器

处死是为了排除武器方面的问题,比如警察带着钳子变匪等等。如果不想这样可以去掉
if(is_user_alive(id))
    user_silentkill(id)
如果去掉以后没问题的话
回复

使用道具 举报

 楼主| 发表于 2008-3-29 14:42:01 | 显示全部楼层 来自 中国–浙江–温州

回复: 更换队伍插件瘫痪服务器

估计会挂服务器。。。。等下放上去测试下。
回复

使用道具 举报

发表于 2008-3-29 20:43:36 | 显示全部楼层 来自 中国–广西–柳州–柳北区

回复: 更换队伍插件瘫痪服务器

我已经测试了,人数少的时候可以正常换队,可人数一多就挂,我的显示
麻烦了赛盟的老大Simen.newbieg还是没有解决,地址:http://bbs.simen.cn/viewthread.php?tid=43682&extra=page%3D1&page=1,郁闷啊。
回复

使用道具 举报

发表于 2008-3-30 10:16:23 | 显示全部楼层 来自 中国–山东–青岛

回复: 更换队伍插件瘫痪服务器

人多时挂掉服务器,跟发送的信息太多有关系,不过这里的挂掉服务器并不仅仅是因为发送信息太多还跟出生点多少有关系。

试试这个插件,在1.6测试完全正常并且人数始终保持平衡。

题外话:论坛怎么不能选择楷体呢

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注个册吧

×
回复

使用道具 举报

发表于 2008-3-30 11:29:18 | 显示全部楼层 来自 中国–广西–柳州–柳北区

回复: 更换队伍插件瘫痪服务器

7 楼的老兄你的插件怎么用?给个说明啊。
回复

使用道具 举报

发表于 2008-3-30 11:41:03 | 显示全部楼层 来自 中国–山东–青岛

回复: 更换队伍插件瘫痪服务器

真是抱歉,忘记说了

参数是“fy_zhuanhuanjushu #”,默认是每3局自动换边。
回复

使用道具 举报

发表于 2008-3-30 11:54:14 | 显示全部楼层 来自 中国–广西–柳州–柳北区

回复: 更换队伍插件瘫痪服务器

谢谢,去测试测试先。
回复

使用道具 举报

游客
回复
您需要登录后才可以回帖 登录 | 注个册吧

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