广告广告
  加入我的最爱 设为首页 风格修改
首页 首尾
 手机版   订阅   地图  繁体 
您是第 11714 个阅读者
 
<<   1   2  下页 >>(共 2 页)
发表文章 发表投票 回覆文章
  可列印版   加为IE收藏   收藏主题   上一主题 | 下一主题   
HsK 手机 会员卡
个人头像
个人文章 个人相簿 个人日记 个人地图
特殊贡献奖 优秀管理员勋章
头衔:CCN@HsKCCN@HsK
版主
级别: 版主 该用户目前不上站
版区: CS插件区
推文 x1701 鲜花 x1108
分享: 转寄此文章 Facebook Plurk Twitter 复制连结到剪贴簿 转换为繁体 转换为简体 载入图片
推文 x6
[插件] 区分 Zbot 和 Yapb/Podbot/Sypb , 解决 hamsandwich 重覆 Bug
精华文章

很多有写过 amxx 的人也用过 RegisterHam 吧.
例如 RegisterHam(Ham_TakeDamage,"player","fw_TakeDamage");

但是 "player" 是指定不到 zbot 的...
因此, 便发展出以下方法

在bot 入ser 时, 再进行一次
RegisterHamFromEntity(Ham_TakeDamage,id,"fw_TakeDamage");

的确可以令 zbot 也进行 Ham_TakeDamage 内容...
但是, 当 ser 中不是只有 zbot
那便可能做成
zbot 不进行 Ham_TakeDamage 内容
而 Yapb/Podbot/Sypb 进行 Ham_TakeDamage 内容2次 的bug了....

____ 前言很长哦=.='''

因此我参考了一下 podbot 和 sypb 源码..
写出以下代码..

复制程式
stock is_bot_type (id)
{
     if (!is_user_bot (id))
           return 0; // not bot

     new tracker[2], friends[2], ah[2];
     get_user_info(id,"tracker",tracker,1);
     get_user_info(id,"friends",friends,1);
     get_user_info(id,"_ah",ah,1);

     if (tracker[0] == '0' && friends[0] == '0' && ah[0] == '0')
           return 1; // PodBot / YaPB / SyPB

     return 2; // Zbot
}


当用到  hamsandwich 之中

复制程式
#include <amxmodx>
#include <fakemeta>
#include <hamsandwich>

#define PLUGIN_NAME        "Ham - Bot Get (ZBOT-PODBOT-SyPB)"
#define PLUGIN_VERSION        "1.0"
#define PLUGIN_AUTHOR        "HsK"

new bool:Ham_load = false;

public plugin_init()
{
        register_plugin(PLUGIN_NAME, PLUGIN_VERSION, PLUGIN_AUTHOR);

        RegisterHam(Ham_TakeDamage,"player","fw_TakeDamage");
}

public client_putinserver(id)
        set_task (1.0, "Ham_run", id);

public Ham_run (id)
{
        server_print("Bot Type : %s", (is_bot_type (id) == 2 ? "Zbot" : (is_bot_type (id) == 1 ? "SyPB/YaPB/PodBot" : "This is not Bot")));

        if (!is_user_connected(id) || Ham_load)
                return;

        if (is_bot_type (id) != 2)
                return;

        Ham_load = true;
        RegisterHamFromEntity(Ham_TakeDamage,id,"fw_TakeDamage");
}

public fw_TakeDamage(victim, inflictor, attacker, Float:damage, damage_type)
{
        if (victim == attacker || !attacker)
                return;

        client_print (attacker, print_chat, "** fw_TakeDamage **Damage! Bot id : %d", victim);
}

stock is_bot_type (id)
{
        if (!is_user_bot (id))
                return 0; // not bot

        new tracker[2], friends[2], ah[2];
        get_user_info(id,"tracker",tracker,1);
        get_user_info(id,"friends",friends,1);
        get_user_info(id,"_ah",ah,1);

        if (tracker[0] == '0' && friends[0] == '0' && ah[0] == '0')
                return 1; // PodBot / YaPB / SyPB

        return 2; // Zbot
}




HsK-Dev Blog By CCN
献花 x3 回到顶端 [楼 主] From:未知地址 | Posted:2012-06-30 02:18 |
zxzyman 手机
个人头像
个人文章 个人相簿 个人日记 个人地图
特殊贡献奖
小有名气
级别: 小有名气 该用户目前不上站
推文 x40 鲜花 x144
分享: 转寄此文章 Facebook Plurk Twitter 复制连结到剪贴簿 转换为繁体 转换为简体 载入图片

WOW!!


可以让ZP道具伤害都能对BOT造成效果

我正好也是PODBOT+ZBOT来搞ZP的.




题外:
BOT好像不会辨识ZP中的幸存者 或 复仇者... 

 


[ 此文章被zxzyman在2012-07-04 08:25重新编辑 ]


UWC3NG 终极魔兽-次世代 (繁体中文版)
     -按此连结-   

献花 x0 回到顶端 [1 楼] From:未知地址 | Posted:2012-07-04 08:19 |
ccw111
个人文章 个人相簿 个人日记 个人地图
小人物
级别: 小人物 该用户目前不上站
推文 x16 鲜花 x49
分享: 转寄此文章 Facebook Plurk Twitter 复制连结到剪贴簿 转换为繁体 转换为简体 载入图片

虽然未遇到过这个问题
不过分析bot的特性也要付出
大大辛苦了


献花 x0 回到顶端 [2 楼] From:未知地址 | Posted:2012-07-06 18:52 |
观众甲
个人头像
个人文章 个人相簿 个人日记 个人地图
特殊贡献奖
小有名气
级别: 小有名气 该用户目前不上站
推文 x319 鲜花 x963
分享: 转寄此文章 Facebook Plurk Twitter 复制连结到剪贴簿 转换为繁体 转换为简体 载入图片

@@迟来的教学 板上很多文章貌似只写支援zbot.


献花 x0 回到顶端 [3 楼] From:未知地址 | Posted:2012-07-08 14:14 |
yzhyzlm 会员卡
个人文章 个人相簿 个人日记 个人地图
小有名气
级别: 小有名气 该用户目前不上站
推文 x0 鲜花 x104
分享: 转寄此文章 Facebook Plurk Twitter 复制连结到剪贴簿 转换为繁体 转换为简体 载入图片

大大好像对Damage_Control2.amxx这个插件没用啊,攻击力还是很高。


加油
献花 x0 回到顶端 [4 楼] From:未知地址 | Posted:2012-07-15 12:57 |
williamyii77
个人文章 个人相簿 个人日记 个人地图
初露锋芒
级别: 初露锋芒 该用户目前不上站
推文 x0 鲜花 x9
分享: 转寄此文章 Facebook Plurk Twitter 复制连结到剪贴簿 转换为繁体 转换为简体 载入图片

辛苦你了
我收下了 表情


献花 x0 回到顶端 [5 楼] From:香港和记电讯 | Posted:2012-07-16 20:08 |
a7811311622 手机
个人头像
个人文章 个人相簿 个人日记 个人地图
特殊贡献奖 优秀管理员勋章 社区建设奖
头衔:我…在工作了…我…在工作了…
版主
级别: 版主 该用户目前不上站
版区: CS提问区
推文 x771 鲜花 x2152
分享: 转寄此文章 Facebook Plurk Twitter 复制连结到剪贴簿 转换为繁体 转换为简体 载入图片

我想问…既然知道ZBOT会在client_putinserver做个task去debug…
在那个时间点判断是否为ZBOT后无脑remove_task有效吗…? 表情


尚无签名,欢迎 [新增个性化签名]
献花 x0 回到顶端 [6 楼] From:台湾中华电信股份有限公司 | Posted:2013-02-28 22:25 |
tonyyoung
个人头像
个人文章 个人相簿 个人日记 个人地图
特殊贡献奖 社区建设奖
小有名气
级别: 小有名气 该用户目前不上站
推文 x389 鲜花 x567
分享: 转寄此文章 Facebook Plurk Twitter 复制连结到剪贴簿 转换为繁体 转换为简体 载入图片

下面是引用 zxzyman 于 2012-07-04 08:19 发表的 : 到引言文
WOW!!


可以让ZP道具伤害都能对BOT造成效果

我正好也是PODBOT+ZBOT来搞ZP的.




题外:
BOT好像不会辨识ZP中的幸存者 或 复仇者... 

 
BOT不都是看到敌人就开火吗…
分辨幸存者跟复仇者做啥啊…= _ =?


献花 x0 回到顶端 [7 楼] From:台湾中华电信股份有限公司 | Posted:2014-10-07 21:34 |
丘俊
个人文章 个人相簿 个人日记 个人地图
小人物
级别: 小人物 该用户目前不上站
推文 x0 鲜花 x0
分享: 转寄此文章 Facebook Plurk Twitter 复制连结到剪贴簿 转换为繁体 转换为简体 载入图片
Re:区分 Zbot 和 Yapb/Podbot/Sypb , 解决 hamsandwich 重覆 Bug
谢谢大大,学习了!


献花 x0 回到顶端 [8 楼] From:未知地址 | Posted:2016-11-22 20:56 |
spiral
数位造型
个人文章 个人相簿 个人日记 个人地图
路人甲
级别: 路人甲 该用户目前不上站
推文 x0 鲜花 x0
分享: 转寄此文章 Facebook Plurk Twitter 复制连结到剪贴簿 转换为繁体 转换为简体 载入图片

感谢大大分享让我可以了解研究BOT


献花 x0 回到顶端 [9 楼] From:台湾中华电信股份有限公司 | Posted:2017-01-04 11:36 |

<<   1   2  下页 >>(共 2 页)
首页  发表文章 发表投票 回覆文章
Powered by PHPWind v1.3.6
Copyright © 2003-04 PHPWind
Processed in 0.079955 second(s),query:16 Gzip disabled
本站由 瀛睿律师事务所 担任常年法律顾问 | 免责声明 | 本网站已依台湾网站内容分级规定处理 | 连络我们 | 访客留言