搜索
查看: 1272|回复: 16

[AMXX 带源码] [填坑]All Stats 1.3,CS数据统计插件

[复制链接]
  • TA的每日心情
    开心
    2020-3-8 22:16
  • 签到天数: 13 天

    [LV.3]偶尔看看II

    发表于 2019-6-11 15:09:01 | 显示全部楼层 |阅读模式
    本帖最后由 mwy5ym 于 2020-5-8 08:37 编辑

    =======================历史版本=======================
    My Stats 1.x系列
    My Stats 2.x系列2.x系列的推出是为了解决1.x系列数据不够丰富
    My Stats 3.x系列3.x系列的推出是为了解决2.x系列数据读写过慢
    My Stats 4.x系列4.x系列的推出是为了解决3.x系列的所有问题!
    其实4.x系列已经比较完善了, 就是换图的时候会卡(在上传统计数据)。
    可惜源码丢了, 但我又反编译了, 有兴趣的话可以看我的签名,我都放那了。

    为啥命名从My Stats改成了All Stats?因为原版代码丢了,这个版本是从零开始重新编写的。
    ======================插件功能说明======================
    功能亮点:
    更新更全面的网页版统计信息(可统计单个地图或全图, 页面内容可自定义)
    详尽的实时战况(双方HP,每枪命中多少伤害,是否穿墙,是否爆头,是否击杀等)
    数据采集和插件本身分离(换图等均不影响服务器)
    得分和评级双排行(计算方式均可自定义)
    兼容有论坛和无论坛模式(修改个别文件即可)
    杀敌徽章和音效: 多杀、爆头、穿墙穿墙爆头、刀杀等
    右上角向导信息(默认显示统计信息, 可自定义)
    第一人称观战时显示被观察者信息(可自定义)
    实现从网页到游戏的数据传输(猜猜这意味着什么?)
    网页显示服务器实时状态
    1. 支持多个命令(top等命令本身也可自定义)
    2. 按Y输入 top     显示排行榜(可切换地图或全图)
    3. 按Y输入 as      显示本局实时排名战况
    4. 按Y输入 ms      显示我的战况和统计详情(可切换地图或全图)
    5. 按Y输入 hs      显示被观察者的战况和统计详情(可切换地图或全图)
    6. 按Y输入 #123456 注册用户(仅限无论坛模式)
    7. 按Y输入 *123456 修改密码
    8. 按Y输入 !cser   修改签名
    9. ================================================================
    复制代码
    1. 目录
    2. --------------------------------
    3. gfx resource sound sprites ----- 插件资源文件
    4. addons
    5. |
    6. |-AllStats --------------------- 网页展示部分, 使用IIS等web服务器挂载目录, 请将网址配置在as.cfg文件中
    7. |
    8. |-amxmodx
    9. |   |
    10. |   |-configs
    11. |   |   |-as.cfg --------------- 插件参数设置, 网站地址配置等
    12. |   |
    13. |   |-data
    14. |   |   |-as.py ---------------- 数据中心核心, 可用记事本打开编辑配置项, 接收并存储数据, 可向指定服务器发送命令, 其他功能待扩展
    15. |   |   |-as_tables.sql -------- 数据库表, 建库后导入使用, 包含内容如下:
    16. |   |   |-as_views.sql --------- 数据库视图, 建库后导入使用, 包含内容如下:
    17. |   |   |-myip.txt ------------- 自定义ip地址数据
    18. |   |   |-wry.dat -------------- 纯真IP数据库
    19. |   |   |-lang
    20. |   |       |-as.txt ----------- 插件语言设置(个别消息内容部分(即等号=后面)如果添加减号-, 则不显示该条消息)
    21. |   |
    22. |   |-modules
    23. |   |   |-as_amxx.dll ---------- 插件核心, 采集和发布数据, 提供多个forward和native
    24. |   |   |-ipseeker_amxx.dll ---- ip地址查询模块
    25. |   |
    26. |   |-plugins
    27. |   |   |-as.amxx -------------- 插件命令和功能, 并提供第一视角观察时显示被观察者信息
    28. |   |   |-as_custom.amxx ------- 登录、改密码、改签名、得分和评级计算模块, 附源码, 可自定义
    29. |   |
    30. |   |-scripting
    31. |   |   |-as_custom.sma -------- 登录、改密码、改签名、得分和评级计算模块源码
    32. |   |   |-include
    33. |   |       |-as.inc ----------- 插件提供的头文件, 供编写自定义插件使用
    34. |   |
    35. |   |                              表 as_users:              用户信息, 记录用户姓名、头像、签名、注册时间、登录时间, 可以换成论坛等其他系统的用户表
    36. |   |                              表 as_fights:             实时战况
    37. |   |
    38. |   |                              表 as_map_ranking:        地图排名数据
    39. |   |                              表 as_map_bombs:          地图炸弹数据
    40. |   |                              表 as_map_rounds:         地图回合数据
    41. |   |                              表 as_map_weapons:        地图各武器数据
    42. |   |                              表 as_map_bodyhits:       地图各武器命中部位数据
    43. |   |                            视图 as_map_weapons_sum:    地图全武器数据
    44. |   |                            视图 as_map_bodyhits_sum:   地图全武器命中部位数据
    45. |   |                            视图 as_map_stats:          地图所有数据
    46. |   |
    47. |   |                              表 as_all_ranking:        全图排名数据
    48. |   |                            视图 as_all_bombs:          全图炸弹数据
    49. |   |                            视图 as_all_rounds:         全图回合数据
    50. |   |                            视图 as_all_weapons:        全图各武器数据
    51. |   |                            视图 as_all_bodyhits:       全图各武器命中部位数据
    52. |   |                            视图 as_all_weapons_sum:    全图全武器数据
    53. |   |                            视图 as_all_bodyhits_sum:   全图全武器命中部位数据
    54. |   |                            视图 as_all_stats:          全图所有数据
    55. --------------------------------
    复制代码
    ======================插件截图=======================
    貌似论坛设置了只有登录才能看到图片, 看不到的话请登录, 下载地址中有截图目录可供参考


    ======================插件录屏=======================
    貌似论坛设置了只有登录才能看到图片, 看不到的话请登录, 下载地址中有录屏目录可供参考
    <---图片太小了,论坛附件只能1M,网盘有完整录屏
    ======================更新日志=======================
    ================================================================
    1.3+ (相比上个版本更新文件: 修改as_amxx.dll、新增as.py、删除as.ini、as.pyc)
    新增自动清理功能(表as_fights), 可自定义清理频率和保留的记录数, 详情见as.py
    新增数据库配置项: 字符集, 建议采用utf8mb4, 历史原因这里就保持utf8不修改了
    数据库采用连接池方式
    合并as.ini和as.pyc到as.py
    删除'版本未生效'的提示

    ================================================================
    1.3
    改进了数据传输部分, 由旧的2通道(一收一发)改成新的4通道(数据发、数据收、命令发、命令收)
    新增服务器状态显示功能, 详情见servers.php(请自行修改其中的内外网IP转换部分)
    新增数据包过滤功能, 减少通信数据量, 详情见as.cfg中的as_socket_filter
    新增一个防止刷分的参数, 详情见as.cfg中的as_player_limit
    新增点击top.php标题可以按该分类进行排序
    修正一处fights.php时间戳有误的bug(重要修正)

    1.2
    新增从网页到游戏的数据传输, 并提供演示, 抛砖引玉, 用这个还可以做什么? 大家发挥一下自己的想象力
    分离出weapons.php, 改成iframe的方式嵌入stats.php中, 并新增点击标题可以按该分类进行排序
    修改网页配色, 替换网页的武器图片
    新增禁止用户同时多处登录

    PS: weapons.php 和 fights.php 都可以单独查看, 分别表示所有玩家的武器数据统计和全服战况

    ================================================================
    1.1 release
    新增数据同步
    新增游戏中注册(仅限无论坛模式)、登录、修改密码、修改签名
    添加网页界面top stats fights
    添加say命令 top as allstats ms mystats hs hisstats, 可自定义
    添加多杀、爆头杀敌、穿墙杀敌等语音和图标提示(仿CF)
    添加右上方信息面板(向导)

    ================================================================
    1.0d
    添加as.ini配置文件, as.py编译成as.pyc
    as.pyc添加命令功能, 数据收集改成多线程方式

    ================================================================
    1.0c
    修正死亡竞赛模式时, 每次杀敌都触发一血的bug
    规范化as_amxx.dll和as.py之间的通讯报文
    扩展as.py, 注明所有报文参数说明

    ================================================================
    1.0b
    修正获取中文名时乱码的bug

    ================================================================
    1.0a
    初版AllStats, 核心采用module的方式编写
    ======================下载地址=======================
    看我签名加Q群125821960(审核还是挺快的,大家别发广告)了解最新动态。
    安装步骤看起来复杂(我写的太详细了),其实操作起来还是简单的。
    ======================感谢=======================
    感谢"新人电竞"(newren.cn)协助插件测试,在线案例地址: cs.newren.cn/as/top.php

    本帖子中包含更多资源

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

    x
  • TA的每日心情
    开心
    2020-3-8 22:16
  • 签到天数: 13 天

    [LV.3]偶尔看看II

     楼主| 发表于 2019-6-11 15:10:11 | 显示全部楼层
    本帖最后由 mwy5ym 于 2020-5-8 09:19 编辑

    安装:(我在软件目录放了一些需要的安装包)
    0. 写在前面
    建议用win7或win10或server系统的自带的IIS + PHP + mariadb进行部署
    非win7或win10或server的老系统, 因为我没测试过, 建议用wampserver进行部署
    如果需要使用"网页到游戏的数据传输", 请安装php_zmq这个扩展

    1.复制cstrike下各文件夹到游戏安装目录的cstrike对应文件夹中(省事一点直接复制cstrike, 会自动合并同名文件夹的)

    2.在modules.ini 的third party modules部分添加
    as

    3.在plugins.ini 最后添加
    as.amxx debug
    as_custom.amxx debug

    4.数据存储部分需要安装 Python 3.7.x 或 3.8.x
    安装时记得勾上add to path, 如果忘了请手动添加2个内容[安装路径和Scripts路径]到环境变量path
    安装模块, 在命令行执行以下内容(可跳过, 现在as.py会自动判断并安装所需模块了)
    pip install dbutils
    pip install pymysql
    pip install pyzmq

    5.建立数据库(我的环境mariadb-10.3.11-winx64), 强烈推荐使用MariaDB(本项目实测效率比MySQL高好多)
    然后依次导入as_tables.sql和as_views.sql文件, 如使用navicat导入的话, 记得导入后F5刷新下

    6.运行as.py开始接收并保存数据到数据库
    如果报错, 用记事本打开as.py, 修改数据库连接信息(地址、端口、用户、密码、库名、字符集)

    7.安装web服务程序(以Windows系统自带的IIS为例), 记得先添加php文件格式支持(自行百度)
    打开IIS管理器, 在网站默认站点中添加虚拟目录
    别名: as
    物理路径: CS1.6\cstrike\addons\AllStats

    8.添加php文件格式支持(自行百度)
    添加php_zmq支持, 相关的文件在软件目录内有(这3行可选操作, 仅console.php和servers.php用到这个库)
    复制libzmq.dll到php安装目录, 比如d:\php(如果是用apache等其他web服务程序, 就放到执行文件对应的路径, 比如apache\bin)
    复制php_zmq.dll到php安装目录\ext文件夹, 比如d:\php\ext

    php.ini查找放开注释或添加以下内容(新手首次安装, 嫌麻烦的话可以直接用我的php.ini, 复制到C:\Windows目录)
    extension_dir = "ext"
    extension=gd2
    extension=mbstring
    extension=mysqli
    extension=zmq

    9.设置部分参考图片





    <-不推荐设置这项



    使用:
    运行as.py采集数据
    运行服务器1
    运行服务器2
    运行服务器3
    ...



    PS: 登录部分请自行修改as_custom.sma

    本帖子中包含更多资源

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

    x
  • TA的每日心情
    无聊
    5 小时前
  • 签到天数: 1290 天

    [LV.10]以坛为家III

    发表于 2019-6-11 16:46:26 | 显示全部楼层
    支持!支持!支持!
  • TA的每日心情

    2019-6-11 17:29
  • 签到天数: 1 天

    [LV.1]初来乍到

    发表于 2019-6-11 17:35:33 | 显示全部楼层
    专门上来支持一下
  • TA的每日心情
    开心
    2019-6-11 22:13
  • 签到天数: 110 天

    [LV.6]常住居民II

    发表于 2019-6-11 22:22:15 | 显示全部楼层
    专门登上了支持!!!
  • TA的每日心情
    开心
    2020-3-26 09:11
  • 签到天数: 62 天

    [LV.6]常住居民II

    发表于 2019-6-12 13:10:25 | 显示全部楼层
    3.6的时候用过,后来换了linux系统就没再用了!
  • TA的每日心情
    奋斗
    2020-3-23 00:00
  • 签到天数: 108 天

    [LV.6]常住居民II

    发表于 2019-6-23 02:27:35 | 显示全部楼层
    强大!!!!!!!!!!!!!
    回复

    使用道具 举报

  • TA的每日心情
    开心
    2020-3-8 10:08
  • 签到天数: 159 天

    [LV.7]常住居民III

    发表于 2019-6-24 21:38:20 来自手机 | 显示全部楼层
    支持这些
    回复

    使用道具 举报

  • TA的每日心情
    开心
    2019-10-21 12:59
  • 签到天数: 80 天

    [LV.6]常住居民II

    发表于 2019-6-30 22:12:51 | 显示全部楼层
    牛逼啊,支持LZ!!
  • TA的每日心情
    难过
    2019-7-17 14:16
  • 签到天数: 42 天

    [LV.5]常住居民I

    发表于 2019-7-17 14:23:42 | 显示全部楼层
    支持一下。
    回复

    使用道具 举报

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

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