标签: android服务器 2013-10-09 17:28 3618人阅读 评论(0) 收藏 举报 分类: android(11) 转自:http://blog.csdn.net/bromon/article/details/253330 Bromon原创 请尊重版权 一个多人在线的棋牌类网络游戏的项目临近尾声,我参与了该项目的整个设计流程,并且完成了90%的核心代码.关于这个项目,有很多地方值得聊一聊.本系列不打算把这个项目将得多么详细规范,那是设计文档应该描述的,我打算只说说一些值得注意…
GOWOG: 原项目:https://github.com/giongto35/gowog 我调整过的:https://github.com/Kirk-Wang/gowog GOWOG 是一款迷你的,使用 Golang 编写的多人 Web 游戏. 试玩游戏 Demo:http://game.giongto35.com 在 Agent 上的 AI 实验 由于服务器,客户端和消息是分离的,因此很容易与后端进行通信. 此项目是用 Python 编写的 AI agent,可以学习与环境的交互. 这个实验…
上一篇这里描写叙述了一个关于差异数据在开发过程中的一个长处,这里来演示另外一个特点:单机开发之无缝切换到C/S模式 一般C/S模式都面临一个问题: 就是开发过程中的调试难题,由于涉及到client和服务端相关方法,假设由某个人来编写那么也是一个简单的事情. 假设由2个人编写,会带来一些平台上的差别以及编码的差别. 简单的说,假设我们在开发时全然的避开C/S,然后经由某个机制,能够直接让模块跑到server上,那么这将让你的开发速度上升好几个倍率. 没有协议,没有交互,没有网络,那么从头写到尾,也…
好用没用过C++做一个完整一点的东西了,今天开始希望靠我这点微薄的技术来完成这个小游戏. 我现在的水平应该算是菜鸟中的战斗鸡了,所以又很多东西在设计和技术方面肯定会有很大的缺陷,我做这个小游戏的目的单纯为了证明一下我到底还是不是个程序员... 这个小游戏是我小时候玩过的一种棋盘类游戏,可能只在我们那边才会知道,不过现在小孩估计已经很少玩了,搞不好要失传了...这个游戏名叫马虎吃小人. 大概介绍一下游戏,下面是游戏布局 方框代表老虎,三角形代表小人,每次只能向前后左右一个方向移动一个格,不能斜着走…
本文和大家 和大家说说 Photon 解压后的目录结构 这里面最基本的我们 以后开发要用到的目录 就是  deploy目录,这个目录里 放的是要挂载的 server 当然我们的 server端也要放在里面,它里面有自带的一些server端应用 doc  顾名思义  帮助不大 lib 我们开发server 时候在 Visual Studio 要引用的库文件 src-server 我们可以顾名思义哈萨克斯坦 这里这个权利哈 版权声明:本文博客原创文章,博客,未经同意,不得转载.…
双人单机小游戏做完了,规则那部分还没介绍,暂时不打算介绍了,因为写的这个bug太多,我打算重新修改. 链接:https://pan.baidu.com/s/1XQKPSv0Tw36Qi2TeaRJiMQ 提取码:et4m 这是有bug的小游戏,大家可以一起找bug 更新的游戏以提交  https://pan.baidu.com/s/1z0JCTyLE8qurToyxZJn7yg 如果需要源码可以私聊我  …
先整理一下之前的内容: 1.画了棋盘,把棋盘的每个点的状态都保存起来. 2.画棋子,分别用tiger类和people类画了棋子,并且保存了棋子的初始状态. 下面开始设计棋子的移动: 1.单机棋子,选中要移动的棋子 触发鼠标单机事件,传递窗口坐标. 把窗口坐标转换成棋盘坐标. 判断棋盘坐标是否有棋子,没有棋子直接返回. 更改棋子的状态,isChose 更改棋盘坐标的状态.num   isHavePiece根据num判断 2.单机棋盘坐标,选中要移动的位置 触发鼠标单机事件,传递窗口坐标. 把窗口坐…
根据昨天的计划,今天开始做下面的内容. 1.鼠标点击事件 2.点击坐标进行处理.(坐标转换) 3.判断选中的位置是否有效. 4.确定选中的棋子,设置棋子的状态和棋子所在坐标的状态. 5.判断移动是否有效 6.设置移动后棋子的状态和坐标的状态. 鼠标点击事件在View中进行.如何把棋子移动和坐标转换进行有效的解耦合是当前的问题. 我开始的想法是Move单独写成一个类,坐标转换单独写一个Common,当触发鼠标左键点击时间时候,调用Move类,Move类中通过坐标转换算法,计算出坐标,暂时先不考虑规…
今天开始设计小人棋子. 画法跟画虎一样,唯一不一样的是小人在刚开始会有重叠的情况,所以画起来可能比虎的棋子能够难一点. 我打算用Location结构体中的num来标记每个棋盘坐标存在棋子的个数,isHavePiece来标记坐标是否存在棋子. 这样的话,需要在虎棋子那边把这两个变量插入数据,而且需要把棋盘坐标vector容器内数据进行修改. 暂时先把初始化的棋盘放在PaintPiece方法中,等后面设计移动棋子的时候会把这部分移出去. 这样,一个很low的棋盘就做出来了 先凑合看着吧,在Piece…
反思了一下昨天的设计,觉得略有不足,我决定把棋盘做成单例模式.这样的话需要重新设计棋盘类,emmm,是新建棋盘类. Baord类 成员变量: Location  coordinate;//棋子坐标 bool isHavePiece;//记录是否有棋子 CRect rect;//备用 vector<Loaction> all_Board;//整个棋盘 方法: int  Coordinate_Px(Location  loc,CRect &rect); int  Px_Coordinate…