teeworlds吧 关注:934贴子:9,383

用MariaDB进行DDNet统计数据分析

只看楼主收藏回复

以前@latrOMMiOlOs 发过一个"ddnet中国服琅(zuo)琊(si)榜",统计了一下ddnet里面的玩家数据.
后来@放屁小能手 也发过一个"DDNet CHN 统计数据分析",用的mathmatica,
在后来我也在"【退坑】无限期AFK"里用Bash做了一些相关的数据统计,因为当时刚学Bash,想用来练练手.
然而直到最近我才发现有个专门做这个的工具:数据库...
用这个可以更简单更快地统计出所需要的数据,比如如果想统计出国服玩家的总过图时间的前20名,只需要简单的一条命令和0.8秒不到的时间

真是不知比Bash快到那里去了.


IP属地:广东1楼2017-12-25 20:13回复
    上面的时间一栏是用秒数表示的,可能比较不够形象,我们把时间格式化一下:

    虽然500多小时很惊人,但是其实大部分时间都在摸鱼,ddrace其实是一个很休闲的游戏


    IP属地:广东2楼2017-12-25 20:55
    回复
      2025-08-03 17:03:56
      广告
      不感兴趣
      开通SVIP免广告
      上面我们之统计了国服玩家的数据,那么国外玩家在上面消耗的时间又有多少呢,把 where Server="CHN"去掉,再运行一次查询语句:

      哇,外国玩家更疯狂,时间直接突破了数据库时间类型的上限,我们得想个替代方案来格式化时间了


      IP属地:广东3楼2017-12-25 20:59
      回复
        换成使用concat函数并手动计算时分秒以后,我们终于能看到正常显示的时间排名了

        不出所料,**tee(brainless tee)排名第一,这个是dummy的默认名字.看来很多老玩家都懒得给日夜和他们并肩作战的dummy改名,我的dummy应该也在其中贡献了不少时间.
        第二名这是无名tee(nameless tee),这个则是玩家的默认名字,一方面可能是以为有不少玩家喜欢匿名游戏,另一方面则有可能是新人直接不改名就进入游戏,然后玩的时候又不知道怎么改名.
        值得一体的还有(1)这个ID,这是清空姓名栏以后游戏显示的默认ID.相当于匿名的一种.
        然后其他上榜的都是大神了.比如其中的Starkiller是现总pts第一名,而HaHAxD*则是现pts第二名(milk以化为历史的眼泪沉入海底了).这说明过图总时间和总pts可能还是有一定的正比关系的


        IP属地:广东5楼2017-12-25 21:14
        回复
          既然我们上面提到了milk,我们也顺便来看一看milk的统计数据吧.

          即使是被神话的milk他总过图时间也达到了800+小时,可见milk的技术也是得靠时间堆出来的,一分耕耘一分收获,此言不需.


          IP属地:广东6楼2017-12-25 21:20
          回复
            Aoe的数据

            总过图时间也有700+小时


            IP属地:广东7楼2017-12-25 21:22
            回复
              在ddnet服务器上的第一个成绩数据产生在2013-07-18 09:38:42,完成者是onionly .me',完成的地图是Rainbow Sunrise

              前十条记录里的都是ddnet的元老级人物了,其中deen也榜上有名。
              至于国富的第一条记录则是由233在2014-08-26 11:47:47
              完成Basics这张地图产生。

              以上都是国服元老,其中还混进了个德国佬sam


              IP属地:广东8楼2017-12-25 21:35
              回复
                前面对过图时间进行了统计,下面我们再统计一下过图次数的数据。以下分别是国服玩家去重前和去重后(同一张地图的重复完成记录记为一次)过图次数的前20名。


                第一名毫无疑问的是国服大佬Siufu,里面也能见到有不少后起之秀的ID比如Dan_cao,l24和w001等


                IP属地:广东9楼2017-12-25 21:44
                回复
                  2025-08-03 16:57:56
                  广告
                  不感兴趣
                  开通SVIP免广告
                  突然有一个新想法,如果一个玩家不以赚pts为目的,重复性地完成地图,那大概可以说是十分休(xian)闲(yu)了,这里以 总完成地图数/去重后完成的地图数为指标,统计出国服前20名的休闲玩家(这里设了一个小门槛,就是去重后完成的地图数要大于10,防止出现新人狂刷某张地图的情况)。


                  IP属地:广东10楼2017-12-25 21:58
                  收起回复
                    以地图的角度来看,被完成次数最多的地图应该就是最受欢迎的地图了吧。以下则是全球和国服被完成最多次的地图的前20排名。


                    其中被完成最多次的run_g5没记错的话就是一张一直线的race地图,估计大家都喜欢在这里刷一刷时间记录。
                    第二张Just2Easy是一张一星novice图,可以说一张很多错的ddrace入门教学图了。
                    国服玩家和国际友人的选图口味并没有太过明显的差异,不过也注意到NUT_short_race6这张迷宫地图只在国服上榜了前20。


                    IP属地:广东11楼2017-12-25 22:12
                    回复
                      应950要求做了一个中阶2星以上地图的完成次数统计,在这里只统计了国服玩家的数据,新人可以把完成这些地图作为自己的小目标~

                      其实DDNet官网上的个人资料页面也有类似的统计,不过那里统计的是全球玩家的数据而且没有我区分得这么细(2星以上)。我当初有段时间也是不断从完成人数最多而我又还没过的的地图开始刷的。


                      IP属地:广东12楼2017-12-25 23:19
                      回复
                        受cy启发,做了一个国服玩家第一次过图时间的列表,按从早到晚排序。


                        IP属地:广东14楼2017-12-25 23:58
                        回复
                          大家有什么意见或者统计分析需求可以再这里提一提,我什么时候有了新想法也会在这个贴子补充。


                          IP属地:广东15楼2017-12-26 15:12
                          回复
                            用Python对SQL里得到的数据进一步进行统计和可视化。IDE用的Jupyter Notebook,Python连接MariaDB数据库用的MySQL官方提供的 mysql.connector库(因为本是同源所以可以通用)。统计分析用了Numpy和Pandas库,而绘图用了matplotlib和seaborn库。


                            IP属地:广东17楼2017-12-28 01:09
                            回复
                              2025-08-03 16:51:56
                              广告
                              不感兴趣
                              开通SVIP免广告
                              统计了一下国服玩家和全球玩家的总分数分布情况,如下表所示。

                              其中总分值为0Points的玩家应该是只过了Flappy brid之类的娱乐图而留下的记录。
                              虽然早已知道,可是从这张表我们还是可以直观看出,无论是平均数,还是25分位,50分位,75分位值,国内玩家都是明显偏低的。
                              然后是分数分布的柱状图,由于低分段玩家太多,因此在表示某分段玩家数的纵坐标用的指数坐标轴。

                              随着分数的上升玩家数基本呈指数衰退,而右边的离群点一般都是刷得比较狂热的刷子(比如我


                              IP属地:广东18楼2017-12-28 01:18
                              收起回复