这篇文章主要介绍“怎么用socket做游戏开发”,在日常操作中,相信很多人在怎么用socket做游戏开发问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”怎么用socket做游戏开发”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!
创新互联主要从事做网站、成都网站建设、网页设计、企业做网站、公司建网站等业务。立足成都服务洱源,十余年网站建设经验,价格优惠、服务专业,欢迎来电咨询建站服务:18982081108
三个软件分别是前台服务器(qt)、后台服务器(win32)和客服端(cocos2dx)。后台服务器的数据库采用sqlite3(方便将数据库集成后台服务器里面),阻塞式TCP协议(运用等待事件函数WSAWaitForMultipleEvents)。关于客服端外网连接,我使用的是花生壳内网穿透硬件来实现。
项目业绩:
服务器开发过程 ①客服端使用ODSocket跨平台套接字,考虑到服务器多并发问题,我使用了两天消息队列(发送消息队列和接收消息队列),每条消息包含客服端套接字和数据包。 ②考虑到数据包过大丢包问题,需要对发送的数据包拆包发送,设计数据包结构[包头,拆包码ID,拆包编号,包身,包尾],如果检测到拆包码ID说明分包了,如果检测到拆包编号为0,就放入合包容器中,从待处理容器检测是否可以合包,如果编号不连续或者合包容器中无该拆包码ID,放入待处理分包容器中。直到检测到尾部特殊字符,完成合包并放入接收消息队列中 ③数据库存档,每隔5分钟保存一次全部游戏数据 ④当游戏账号登录从数据库中读取该角色数据到内存 ⑤前台服务器只提供其他逻辑服务器相互通信,方便后面实现跨服比赛 客服端开发过程 ①完成了客服端聊天功能,主要是玩家的每一条聊天数据包括表情图片,物品信息等等,需要讲究美观 ②完成角色导航寻路,考虑到其他玩家的动作自己也能看到,需要通过服务器转发其他玩家的坐标 ③玩家组队之后需要显示队伍信息,以及组队状态显示 ④NPC对话 ⑤宠物数据存档,及客服端读取 ⑥坐骑显示 ⑦战斗逻辑 ⑧本地数据的固化
到此,关于“怎么用socket做游戏开发”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注创新互联网站,小编会继续努力为大家带来更多实用的文章!