本文由火星电竞产品顾问Alan原创

电竞!棋牌行业后的下一个大风口?

自从官方明令禁止德州扑克、腾讯等公司全面下架彩票玩法后,棋牌游戏也批不下来新的游戏版号,大量的棋牌行业企业面临转型。而同时在竞技领域 英雄联盟全球总决赛的观看人数超过了NBA总决赛的观看人数。在这背后是由于社会的转型和发展,导致年轻群体热衷与电子游戏,王者荣耀在活跃人数已经在上亿级别,大量的年轻群体只接触电竞,接触体育较少,电竞背后的巨大流量和潜力也开始被资本关注。
可能由于这个原因 大量棋牌行业从业者 开始入局电竞,但是呢基本上所有人都不懂电竞怎么做,包含那些元素,层级关系是怎么样的,怎么设计数据结构和数据库表
本文我们主要是来将一下 电竞产品的核心数据模块怎么设计

一、数据结构

赛事(Series)

意甲代表联赛事件的发生。 欧盟LCS联赛每年有两个赛事:2017年春季,2017年夏季,2016年春季,2016年夏季等。
比赛(match)

两个战队对战构成一场比赛,一场比赛又分为好几局,如bo5的意思为5局3胜 在2017年夏季举行的欧洲LCS中,A组的比赛是:G2 vs FNC,MSF vs NIP等。
小局(game)

一场比赛bo5分为5个小局,第一局,第二局等等

1.3.1 基础数据的数据结构
基础数据有游戏、赛事、比赛、战队、玩法等5项数据
基础数据定义一些固定的数据,比如比赛 RNG vs EDG 中含有战队RNG,战队RNG的ID是永远不会变的
比赛 RNG vs EDG 下的全场胜负玩法中含有基础玩法全称胜负,基础玩法全称胜负的ID是永远不会变的

1.3.2 胜率数据的数据结构
胜率数据在具体某一场比赛下,即比赛详情接口,比赛详情下就是这场比赛的玩法数据
玩法所属的基础玩法有个层级字段对应玩法属于那个层级的 全场/第1局/第n局
基础玩法放到具体某一场比赛下就可以组成一个玩法,玩法ID,基都是不同的,础玩法的ID是不变的

二、核心数据框架

2.1 数据概述
整个电竞竞猜 由基础数据和实时胜率数据组成
基础数据:游戏、赛事、战队、基础玩法、比赛
实时胜率数据:实时的玩法数据和选项胜率数据

2.2 数据获取方式
自己去写爬虫,或者直接接第三方写好的数据(例如https://www.marzsport.cn/)
通过接websock接收第三方数据和定时请求的方式去获取数据。
举例:胜率实时推送

{"channel":"odds",                               //数据类型(odds胜率)
"data":{"event":"update",                           //事件(数据更新)"data":[{"id":15178,                         //选项ID"match_id":202,                     //比赛ID"odds":"2.27",                      //实时胜率"last_update":"1607882993",         //最近更新时间"status":1                          //选项状态(1开、2锁、4封、5结算、99取消)}]
}
}

三、数据字段设计

3.1 游戏数据

游戏接口设计{"id": 1,                                       //游戏ID"name_cn": "DOTA2",                            //游戏中文名"name_en": "DOTA2",                            //游戏英文名"tag": "DOTA2",                                //简称"logo": "XXXXXX"                               //游戏logo}

3.2 赛事数据

赛事数据设计
{"id": 22,                                         //赛事ID"game_id": 6,                                     //所属游戏ID"name_cn": "ESEA MDL北美 - 保级赛",                 //赛事中文名"name_en": "ESEA MDL North America Relegation",   //赛事英文名"logo": "XXXXXXXXX"                               //赛事logo
}

3.3 战队数据

战队接口设计
{"id": 8,                                               //战队ID
"game_id": 1,                                          //所属游戏ID
"name_cn": "VG",                                       //战队中文名
"name_en": "Vici Gaming",                              //战队英文名
"logo": "XXXXXXXXXXXXXXX"                              //战队logo
}

3.4 基础玩法数据

基础玩法数据设计
{"id": 3,                                           //游戏ID"name_cn": "英雄联盟",                              //游戏中文名"name_en": "LOL",                                  //游戏英文名"tag": "LOL",                                      //游戏简称"logo": "xxxxxxx",                                 //游戏logo"group_count": 132,                                //基础玩法数量"groups": [{"id": 133,                                 //基础玩法ID"game_id": 3,                              //所属游戏ID"name_cn": "获胜者",                        //玩法中文名"name_en": "Winner"                        //玩法英文名"match_stage": "final",                    //玩法层级(全场final、第x局mapx或者rx,篮球:q1第1节,1st上半场)"sort_index": 380000,                      //玩法排序(数字大在前)"tag": "win"                               //玩法类别(胜负类win、)"value": ""                                //玩法value值(只有dhp和ou类型的玩法 有值其他为空) }]
}

3.5 比赛数据

比赛模块接口示例:
{"id": 107,                                         //比萨赛ID"bo": 3,                                           //bo"status": 2,                                       //比赛赛状态"start_time": "2020-12-10 17:23:00",               //开始时间"end_time": "2020-12-10 21:08:00",                 //结束时间"start_time_stamp": 1607592180,                    //开始时间"end_time_stamp": 1607605680,                      //结束时间"win_team": 277,                                   //获胜队伍ID"odds_type": 55,                                   //玩法类型(赛中玩法中、会开赛中玩法、赛前)"name_en": "PSG.LGD - VS - Elephant",              //系列赛名称英文"name_cn": "PSG.LGD - VS - Elephant",              //系列赛名称中文"game_id": 1,                                      //游戏ID"live_url": "xxxxxx.m3u8",                         //直播流地址"series": {                       "id": 4,                                       //赛事ID"name_en": "OGA Dota PIT China",               //赛事英文名     "name_cn": "OGA Dota PIT - 中国",               //赛事中文名"logo": "xxxxxxxxx"                            //赛事logo},"teams": [{"team_id": 275,                            //战队ID"score": 0,                                //大比分"index": 2,                                //左右边(1左边、2右边)"team": {"id": 275,                             //战队ID"name_cn": "Elephant",                 //战队中文名"name_en": "Elephant",                 //战队英文名"logo": "XXXXXXXXXXXX"                 //战队logo}},{"team_id": 277,"score": 1,"index": 1,"team": {"id": 277,"name_cn": "PSG.LGD","name_en": "PSG.LGD","logo": "XXXXXXXXxx"}}]
}

3.6 盘口胜率数据

{"id": 23,                                            //比赛ID"bo": 3,                                             //bo数据"status": 3,                                         //比赛状态(1未开始、2进行中、3已结束、-1隐藏状态、99取消)(状态为隐藏的比赛无可下盘,建议前端隐藏)"start_time": "2020-12-09 18:00:00",                 //开始时间"end_time": "2020-12-10 00:00:00",                   //结束时间"start_time_stamp": 1607508000,                      //开始时间"end_time_stamp": 1607529600,                        //结束时间"win_team": 45,                                      //获胜队伍ID"odds_type": 55,                                     //比赛玩法状态(54赛前、55、赛中玩法中、56会开赛中玩法)(赛中玩法中:比赛正在开赛中玩法,会开赛中玩法:比赛会开赛中玩法,赛前:比赛不开赛中玩法)"name_en": "Colorful - VS - Fortitude",              //比赛英文名"name_cn": "Colorful - VS - Fortitude",              //比赛中文名"game_id": 21,                                       //游戏ID"live_url": "XXXXXXm3u8",                            //直播流地址"series": { "id": 15,                                        //赛事ID"name_en": "DreamHack Open Asia",                //赛事英文名"name_cn": "DreamHack公开赛 - 亚洲",               //赛事中文名"logo": "xxxxxxx.png"                            //赛事logo},"teams": [{"team_id": 44,                               //队伍ID"score": 0,                                  //队伍比分"index": 2,                                  //左右队(1左队,2右队)"team": {"id": 44,                                //队伍ID"name_cn": "Fortitude",                  //队伍中文名"name_en": "Fortitude",                  //英文名"logo": "xxxxx"                          //队伍logo}},{"team_id": 45,"score": 2,"index": 1,"team": {"id": 45,"name_cn": "Colorful","name_en": "Colorful","logo": "xxxxxs"}}],"handicap": [{"id": 393,                              //玩法ID"match_id": 480,                        //所属比赛ID"group_id": 480,                        //基础玩法ID"name_cn": "获胜者",                     //玩法中文名"name_en": "Winner",                    //玩法英文名"match_stage": "map1",                  //玩法层级"sort_index": "280000",                 //玩法排序"tag": "win",                           //玩法类型"value": "",                            //玩法value值"status": "5",                          //玩法状态"odds":[{"id": 39566,                    //选项ID"game_id": 1,                   //游戏ID"match_id": 480,                //所属比赛ID"status": 5,                    //选项状态(1开、2锁、4封、5结算、99取消)"name_en": "Team Rockets",      //选项英文"name_cn": "Team Rockets",      //选项中文"team_id": 539,                 //相关队伍ID"odds": "1.33",                 //实时胜率"enable_parlay": 1,             "limit": [10, 5000]             //最小、最大限制0: 101: 5000"win": 1                        //选项是否为答案(1是、0不是、-1待定)},{"id": 39567,"game_id": 1,"match_id": 480,"status": 5,"name_en": "Hot Pot Brother","name_cn": "Hot Pot Brother","team_id": 540,"odds": "3.14",0,"enable_parlay": 0,"limit": [10, 5000]             //最小、最大限制0: 101: 5000"win": 0}]}]
}

四、玩法相关常

  1. 为什么会有名称相同的玩法?

玩法归属与游戏下,不同游戏玩法不同
玩法归属在玩法层级下,不同层级玩法都不同,例如全场胜负、第一局胜负和第2局胜负是不同玩法
让分类玩法名称都是让分,但value不同意义不同,是不同的玩法
2. 部分玩法中的$T2是什么意思?

T1指对阵左队team1,T1指对阵左队team1 ,T1指对阵左队team1,T2指team2,玩法是基础数据,T1和T1和T1和T2应用到具体某一场比赛中取具体名称,例如玩法第二局$T2击杀数,应用到比赛SKT vs EDG 时,玩法名称就为第二局EDG击杀数
3.关于value详细解释

只有hdp和ou类别的玩法value字段有值,其他都是空
hdp:让分类别,value2.5有+2.5和-2.5两种,
让分玩法value: “+2.5”(value: "+2.5,代表选项1:T1+2.5,选项2:T1 +2.5,选项2:T1+2.5,选项2:T12-2.5)
让分玩法value: “-2.5”(value: "-2.5,代表选项1:T1−2.5,选项2:T1 -2.5,选项2:T1−2.5,选项2:T12+2.5)
ou:大小类别
大小玩法value: “2.5”(value: "2.5,代表选项1:大于>2.5,选项2:$T12+2.5))

开发电竞竞猜产品如设计赔率模块?相关推荐

  1. 暴惠款疾风电竞屏144Hz以及240Hz刷新率的显示器是什么感受

    自进入六月以来,大家就不约而同地开启了618"买买买"模式,只要功课做得好,好物四舍五入就等于不要钱!由于今年全民宅家线上消费,促使了这次618在规模上要比往年更大一些,优惠因此也 ...

  2. 竞彩足球混合过关赔率API调用示例代码

    <?php // +---------------------------------------------------------------------- // | 竞彩足球混合过关赔率A ...

  3. 竞彩足球混合过关赔率API调用示例代码2020版

    $user = 'smmz'; $secret = '2e54c7eae2c5a6c01'; //竞彩足球混合过关数据 // +------------------------------------ ...

  4. python爬虫之使用BeautifulSoup模块抓取500彩票网竞彩足球赛果及赔率

    目录 前言 分析思路 数据储存 代码 结果展示 结语 前言 竞彩足球是目前比较受欢迎的一种体彩彩种,玩法较为灵活多样,赔率可观,今天就来记录一下如何抓取竞彩足球的开奖信息和赔率. 分析思路 我使用的网 ...

  5. 电商网站产品数据库设计

    2.平常设计的话都会把产品的属性放到产品表,比如颜色.规格.尺码等.不过我把属性单独拿出两张表,一张表存属性名,一张表存属性值. 3.本来考虑要品牌表的,但是后来想想品牌可以放到属性表里,把产品当成一 ...

  6. Web前端期末大作业--响应式电竞博客网页设计(HTML+CSS+JavaScript)实现

  7. RNGUZI疑是玩电竞竞猜的APPO(∩_∩)O哈哈~APP?QQ是什么让他输?qun是放水吗?还是身体不适91435456?

    LOL是一款全民游戏,已经蔓延到全球了,对于越来越火热的游戏,就有越来越多的人出来钻漏子了,其中最为可怕的就是UZI失冠,很多都觉得打假赛,也有人说是去买RNG输 ,然后自己捞一笔,这些都是不可否定的 ...

  8. 电商产品设计实战(二):电商整体产品架构

    http://www.aoyii.com/ecm-pd-02.html 电商产品架构是整个电商数字系统的基本框架,它代表了这个虚拟数字世界的游戏规则,也反映出了电商企业的商业核心战略,一个好的电商产品 ...

  9. 开发类似比心的电竞社交类约玩陪玩app,前景如何

    曾经,学校门口流动摊位上的海报,个个都是知名明星的脸,现在,游戏人物从中占有一席之地,不仅仅是海报,尺子.笔袋.书签甚至橡皮包装上都印有游戏人物的图案,坐公交时,也常有大叔抱着手机打个不停,中国电竞市 ...

最新文章

  1. java dexclassloader_DexClassLoader加载apk
  2. 在ubuntu14.04中安装搜狗输入法
  3. Net任意String格式转换为DateTime类型
  4. Apocalypse Someday(POJ-3208)
  5. PyTorch入门-词向量
  6. 【Elasticsearch】es 7 Failed to parse value [analyzed] as only [true] or [false] are allowed
  7. Arcgis Javascript那些事儿(七)--AMD详解
  8. dirent.h和dirent.c下载
  9. matlab 添加文本框textbox
  10. 树莓派Python读取DHT11温湿度数据
  11. KVM#TyporaKVM虚拟机笔记
  12. 腾讯校招都会问些什么?| 五面腾讯(Java岗)经历分享
  13. Hive实现获取指定月的第一天和最后一天
  14. 在线 Python运行工具
  15. 外星人电脑装linux双系统,在外星人电脑上安装windows10和ubuntu16.04双系统小记
  16. java实时获取窗口大小_把游戏窗口的大小改变为640 X 480?
  17. 0202插入删除-算法第四版红黑树-红黑树-数据结构和算法(Java)
  18. RGCF:Learning to Denoise Unreliable Interactions forGraph Collaborative Filtering论文解读
  19. 计算机快捷键任务管理器,任务管理器快捷键,教您win10怎么打开任务管理器
  20. 线性方程组的直接法——约当消去法

热门文章

  1. Linux系统连接华为oceanstor数据存储
  2. FusionStorage与oracle,传统存储OceanStor和fusionstorage的区别点
  3. EC20 4G模块上网配置
  4. 操作系统概念作业题(1~6章)
  5. i5-1135G7和i7-1165G7参数对比哪个好
  6. 思科华为DHCP实验
  7. vue中实现及封装html合同文本在线编辑保存的功能
  8. 基于C开发一款简洁实用的Mp3播放器
  9. 想把会议录音转成文字,有哪些语音转文字方法?
  10. Sequel Pro常用快捷键