收起左侧

    [棋牌搭建教程] 捕鱼游戏 HGE打鱼防止外挂,添加CRC效验方法含代码

    16
    回复
    3520
    查看
    [复制链接]

    管理员

    3548

    主题

    3597

    帖子

    1万

    积分

    管理员

    Rank: 9Rank: 9Rank: 9

    积分
    16389

    最佳新人活跃会员热心会员推广达人宣传达人灌水之王突出贡献优秀版主荣誉管理论坛元老

    发表于 2015-5-26 20:02:01 | 显示全部楼层 |阅读模式

    1、修改Cmd_Fish.h,加入函数,我这里写成了inline是避免编译时提示重复声明,你也可以将去掉,然后这里只留声明,实现挪到别的公共单元的cpp里。


    2、象这样,为每一个结构体加上crc字段:
    struct CMD_C_Fish20Config {
      int crc;
      DWORD game_id;
      int catch_count;
      double catch_probability;
    };

    3、修改Game_Manager.cpp中的SendSocketData函数:
    bool GameManager::SendSocketData(WORD sub_cmdid, void* data, WORD data_size) {
      if (client_kernel_ == NULL) return false;
      if (client_kernel_->IsLookonMode()) return false;
      if (data_size>sizeof(int)){
        *((int *)data)=FishCRC32((char *)data+sizeof(int),data_size-sizeof(int));
      }
      return client_kernel_->SendSocketData(MDM_GF_GAME, sub_cmdid, data, data_size);
    }
    这样子就不用挨个修改上面的函数赋值了。

    4、服务器端修改 table_frame_sink.cpp,处理收到游戏消息的命令,加上前置的处理:
    if (data_size>sizeof(int)){
            if(*((int *)data)!=FishCRC32((char *)data+sizeof(int),data_size-sizeof(int))){
            //无效的客户端数据包,踢掉他
            }
            data=(char *)data+sizeof(int);
            data_size-=sizeof(int);

    }




    温馨提示:
    1、本站所有信息都来源于互联网有违法信息与本网站立场无关。
    2、当有关部门,发现本论坛有违规,违法内容时,可联系站长删除,否则本站不承担任何责任。
    3、当政府机关依照法定程序要求披露信息时,论坛均得免责。
    4、本帖部分内容转载自其它媒体,但并不代表本站赞同其观点和对其真实性负责
    5、如本帖侵犯到任何版权问题,请立即告知本站,本站将及时予与删除并致以最深的歉意
    6、如果使用本帖附件,本站程序只提供学习使用,请24小时内删除!使用者搭建运营触犯法律,违法,违规,本站不承担任何责任。
    回复

    使用道具 举报

    金牌会员

    0

    主题

    373

    帖子

    1010

    积分

    金牌会员

    Rank: 6Rank: 6

    积分
    1010
    发表于 2015-5-31 17:27:59 | 显示全部楼层
    很不错
    回复 支持 反对

    使用道具 举报

    金牌会员

    0

    主题

    373

    帖子

    1010

    积分

    金牌会员

    Rank: 6Rank: 6

    积分
    1010
    发表于 2015-5-31 17:35:35 | 显示全部楼层
    顶顶多好
    回复 支持 反对

    使用道具 举报

    金牌会员

    0

    主题

    373

    帖子

    1010

    积分

    金牌会员

    Rank: 6Rank: 6

    积分
    1010
    发表于 2015-5-31 16:49:11 | 显示全部楼层
    LZ真是人才
    回复 支持 反对

    使用道具 举报

    至尊会员

    5

    主题

    407

    帖子

    1212

    积分

    至尊会员

    Rank: 9Rank: 9Rank: 9

    积分
    1212
    发表于 2015-5-31 17:30:35 | 显示全部楼层
    厉害厉害
    回复 支持 反对

    使用道具 举报

    荣誉会员

    1

    主题

    363

    帖子

    6764

    积分

    荣誉会员

    Rank: 5Rank: 5

    积分
    6764
    发表于 2015-5-31 17:45:26 | 显示全部楼层
    真的很期待。。。  加油
    回复 支持 反对

    使用道具 举报

    注册会员

    1

    主题

    56

    帖子

    63

    积分

    注册会员

    Rank: 2

    积分
    63
    发表于 2015-8-20 20:46:18 | 显示全部楼层
    感觉好贵哦
    回复 支持 反对

    使用道具 举报

    金牌会员

    0

    主题

    373

    帖子

    1010

    积分

    金牌会员

    Rank: 6Rank: 6

    积分
    1010
    发表于 2015-8-20 20:31:17 | 显示全部楼层
    这个是好东西。
    回复 支持 反对

    使用道具 举报

    金牌会员

    0

    主题

    373

    帖子

    1010

    积分

    金牌会员

    Rank: 6Rank: 6

    积分
    1010
    发表于 2015-8-20 19:50:38 | 显示全部楼层
    路过,淡淡的忧伤
    回复 支持 反对

    使用道具 举报

    荣誉会员

    1

    主题

    363

    帖子

    6764

    积分

    荣誉会员

    Rank: 5Rank: 5

    积分
    6764
    发表于 2015-8-20 20:00:50 | 显示全部楼层
    伤心!!!没有金币
    回复 支持 反对

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    在线客服
    热线电话

    微信扫一扫
    专注源码分享6年
    全国免费热线电话

    400-225-995

    周一至周日9:00-23:00

    反馈建议

    a5887776@163.com 在线QQ咨询

    Powered by Discuz! X3.4 Licensed © 2001-2013 Comsenz Inc.