局域网游戏相关
简述:
使用数据库存储玩家的状态,服务端更新数据库及控制客户端刷新。
1 区分 自己与其他玩家; 即接收到信息时,只接收其他客户端发送的游戏命令,不接收与执行自己发送的命令。创建角色时,使用角色名作为客户端标志。接收数据时进行判断。
2 将游戏命令与协议收发分离,两者不应绑定。执行命令时判断是否需要发送至服务端(接收协议时 不应重复发送 否则进入死循环)。
笔记:
*字符串作比较时,当含有不同的转义字符时,即便打印一致(此时可能有 “\0”-字符串结束转义字符),比较也会返回false;
小结
将播放系统 与 协议收发 分离,两者均依赖于命令系统
c++服务端搭建
1 mySQL搭建
2 c++服务器
使用udp,无需保持链接,客户端发送数据给服务端后,服务端保存每个发送过数据的客户端的地址并在接收数据后,发送数据给需要的客户端。
服务端代码:
目前功能: 接收两个客户端的连接 收到消息后发送到所有连接客户端
#include <Winsock2.h>
#include <cstdio>
#include <string.h>
#include <stdio.h>