Skip to content

这是一款五子棋对战平台,玩家们进入服务器之后,由服务器为玩家设置编号并匹配对手,这也意味着玩家没有固定的对手,而是随机的遇到对手。玩家们的每一盘对局结束后,胜者积分+1,输者-1;值得一提的 是玩家的“总时”机制:所有的玩家都拥有相同的总时时间,对每一个玩家来说,每当轮到他走棋的时候,他就会一秒一秒的被消耗掉他的剩余总时时间,这种比赛机制比拼的,就是每个玩家在自己总时时间内的积分数量,这就是该“总时”机制最大的特色:玩家们总是要尽可能快的走出每步棋,不管局势优劣如何,所以在这种机制之下,会非常容易出现逆风翻盘的情况!

Notifications You must be signed in to change notification settings

wenpinglaoyao/gobang_server

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

本游戏使用Qt5.8开发(服务器端); 开发工具:Qt5.8; 开发语言:C++; 开发系统:win7;

应用介绍: 这是一款五子棋对战平台,玩家们进入服务器之后,由服务器为玩家设置编号并匹配对手,这也意味着玩家没有固定的对手,而是随机的遇到对手。玩家们的每一盘对局结束后,胜者积分+1,输者-1;值得一提的 是玩家的“总时”机制:所有的玩家都拥有相同的总时时间,对每一个玩家来说,每当轮到他走棋的时候,他就会一秒一秒的被消耗掉他的剩余总时时间,这种比赛机制比拼的,就是每个玩家在自己总时时间内的积分数量,这就是该“总时”机制最大的特色:玩家们总是要尽可能快的走出每步棋,不管局势优劣如何,所以在这种机制之下,会非常容易出现逆风翻盘的情况!

应用框架: 在主函数main里,调用的是一个自定义的类【GobangServer】,它继承自QWidget,在它的头文件里,还有一个枚举类型【DataType】,这个类型主要用来解析传递给【GobangServer】服务器的数据报的头数据(一个int类型变量),并根据这个解析的枚举类型,来执行对应的动作;除了【DataType】之外,还有一个结构体【UserInfo】,这个用来存储链接到服务器的玩家们的信息,里面的name变量,对应的是玩家的编号,short类型的score变量,对应的是玩家的积分,QTcpSocket类型的指针变量,对应的是玩家的套接字,最后的bool型read变量,对应的是该玩家的状态;最后就是我们那个【GobangServer】服务器类的声明了,在这个类的声明里面,就会有一个UserInfo结构体数组,这个结构体储存着每个链接到服务器的玩家信息,并根据这个结构体数组,来更新排行榜。当打开应用并设置好IP等设置之后,然后启动服务器的监听,就可以等待客户端的玩家链接了

About

这是一款五子棋对战平台,玩家们进入服务器之后,由服务器为玩家设置编号并匹配对手,这也意味着玩家没有固定的对手,而是随机的遇到对手。玩家们的每一盘对局结束后,胜者积分+1,输者-1;值得一提的 是玩家的“总时”机制:所有的玩家都拥有相同的总时时间,对每一个玩家来说,每当轮到他走棋的时候,他就会一秒一秒的被消耗掉他的剩余总时时间,这种比赛机制比拼的,就是每个玩家在自己总时时间内的积分数量,这就是该“总时”机制最大的特色:玩家们总是要尽可能快的走出每步棋,不管局势优劣如何,所以在这种机制之下,会非常容易出现逆风翻盘的情况!

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published