Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

35 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

KOB

Build Status License Stars Forks

前言

KOB项目致力于打造一套线上对战小游戏平台,采用现阶段流行技术实现。

项目简介

功能说明

该项目的模块结构流程图如下所示:

对于整个系统的匹配逻辑,考虑到匹配过程中的耗费的时间或资源问题,将匹配操作单独作为一个服务,使用Rest方式实现服务间通信。

匹配成功之后,对client游戏过的程序执行流程图如下所示:

整体的流程是:

​ 用户开始匹配的时候,会向后端发送请求,会在后端开启一个新的websocket连接。接收到开始匹配的请求之后,将匹配的请求发送给匹配系统,匹配系统按照某种算法衡量用户的相似度。匹配系统将相似度最高的两名客户端分别返回给客户端,告知匹配对象,并将匹配到的对手的信息分别返回两个客户端。

​ 并在此时,匹配成功之后,后端开始创建地图,并将地图信息发送给匹配好的两个客户端,以实现两名玩家对战的时候地图是一只的。之后,不断的在规定的时间内获取用户的下一步操作,每次获得下一步操作都需要判断操作的合法性。最后得出对战的结果。

匹配系统的逻辑: 接收到一个请求之后,会将当前匹配的用户都放到一个池子里面。开一个额外的新线程,每个一秒中扫描一边整个数组,将能够匹配的人匹配到一起。

有关于playerAplayerB的匹配相似度

当前系统,我们令factor = 10, 当Matching degree 小于1的时候,说明是可以进行匹配的,否则playerAplayerB不进行匹配。

环境搭建

  • JDK 1.8
  • SpringCloud
  • JDK 1.8
  • Maven latest
  • Spring Boot 2.0.4
  • Intellij IDEA
  • mysql 5.7

运行

后续计划

问题反馈

联系我

许可证

About

开源蛇蛇对战平台、人和算法薛定谔式对抗系统。现有功能对战,对局列表展示、排行榜、创建蛇算法、人工操作蛇对战功能。功能持续更新中......技术栈Spring Cloud、SpringBoot、MyBatis-plus、WebSocket、MySQL、Vue3.x、 BootStrap5.x。前后端分离,服务拆分的实践项目。

Topics

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages