
五子棋项目
文章平均质量分 88
tao滔不绝
22级大学生,用写博客的方式记录学习,欢迎大家阅读
展开
-
五子棋项目自动化测试
五子棋项目是基于 WebSocket 实现的多人在线对战系统,该项目也是基于 五子棋游戏规则实现的对战游戏。其中项目主要分为三个模块:登录模块、匹配模块、对战模块。这里就针对登录模块、注册模块 和 匹配模块进行自动化测试。对战模块需要模拟真人对弈,落子下标不好定位,自动化测试比较困难,也不建议做这模块的自动化测试。原创 2024-10-12 12:59:26 · 694 阅读 · 2 评论 -
五子棋双人对战项目(6)——对战模块(解读代码)
一、约定前后端交互接口的参数二、UserMapper三、GameAPI四、Room五、前端代码的逻辑处理六、梳理前后端交互流程。原创 2024-10-04 09:35:07 · 1145 阅读 · 18 评论 -
五子棋双人对战项目(5)——对战模块
每时每刻都有不同玩家进行游戏,那么也就说明房间是多个的,这些房间每个都是相互独立、互不干扰的。因为它在网页上可以实现一个 “画画” 的效果,我们需要的棋盘,就可以使用这个标签,给它画上去。针对 落子请求和响应:(我落子后,对方也要知道实时棋局情况,需要把请求发给服务器,服务器在返回响应给对方;,这样我在进游戏时,拿到锁,执行完一段逻辑后,再释放掉,给对手进行分配,这样也不会影响到别的房间上的玩家。,只要有玩家一落子,把落子情况发送给服务器,服务器收到后马上发送给对手,让对手玩家立马能知道我的落子位置。原创 2024-10-03 14:47:21 · 1014 阅读 · 9 评论 -
五子棋双人对战项目(4)——匹配模块(解读代码)
既然连接出现错误了,那么也肯定要把玩家的游戏大厅在线状态给删除掉,如果在匹配,匹配队列也应该删掉该玩家,代码逻辑和关闭连接一样。既然这里要实现匹配功能,就是要给玩家分配对手,约定了上面这三种匹配队列,我们就可以把水平相当的玩家匹配到同一个房间中了。websocket连接 是正常的,如果是异常状态,说明玩家掉线了,那就给个弹窗,然后返回到登录页面,进行重新登录。如今很多的竞技类游戏,都有段位,用来证明玩家的实力 的象征之一,也有其他的参数可以证明,例如战绩、KPI等等。,方便处理 不同状态下的操作。原创 2024-10-03 10:43:32 · 1247 阅读 · 8 评论 -
五子棋双人对战项目(3)——匹配模块
一、分析需求二、约定前后端接口三、实现游戏大厅页面(前端代码)四、实现后端代码五、线程安全问题六、忙等问题。原创 2024-10-01 12:09:50 · 1204 阅读 · 11 评论 -
五子棋双人对战项目(2)——登录模块
数据库中存放的是用户信息,其中用户信息包含用户ID、用户名、用户密码、用户天梯分数、用户对战场数,用户胜场数。(程序运行过程中,用户登录了之后,让客户端随时通过这个接口,来访问服务器,获取到自身的信息)登录接口:根据用户名,查询数据库中的用户信息,校验密码是否正确。注册模块:根据用户名 和 密码,往数据库中插入新的用户信息。运行这些代码,查询是否创建成功。原创 2024-09-27 22:38:58 · 729 阅读 · 2 评论 -
五子棋双人对战项目(1)——WebSocket介绍
1、用户模块用户的注册和登录。管理用户的天梯分数、比赛场数、获胜场数。2、匹配模块依据用户的天梯积分,实现匹配机制。3、对战模块把两个匹配到的玩家放到一个游戏房间中。双方通过网页的形式进行对战。1、WebSocket 是HTML5下一种新的协议(WebSocket协议本质上是一个基于TCP的协议)2、它实现了浏览器与服务器全双工通信,能更好的节省服务器资源和带宽,同时可以达到实时通讯的目的。3、WebSocket是一个持久化的协议。原创 2024-09-27 16:27:22 · 2125 阅读 · 17 评论