小的时候非常喜欢玩这个游戏,这就是我为什么开发这么一款游戏的原因。目前在Windows Phone平台下似乎还没有看见这款游戏,或许有,但是我没见过。

这是这款游戏在Windows Phone应用商店的链接:http://www.windowsphone.com/s?appid=7304fb26-f64a-4c63-8a29-191fd5eab5e1,2013年6月14日通过商店认证。

游戏的规则是这样的:

棋盘是8X8的,游戏分为黑白两方,黑子先下。下棋的位置必须在横向、纵向或者斜线上可以两端包围对方的棋子,才可以下棋,然后把被包围的对方的棋子反转变成自己的棋子。直到双方都不能再下子为止,哪一方的棋子多哪一方就胜利(表达水平有限,实在看不懂请绕道百度百科)。

这款游戏是基于cocos2d-x游戏引擎开发的,xna版本。我的第一款cocos2d-x的游戏由于拿不出手,所以就不拿出来说了,算是一个学习过程。这款黑白棋本应该有人人对战和人机对战两种模式,但是因为大三就要毕业了,忙着找工作,所以只开发了人人对战模式,等以后有时间了再更新人机对战,而且也正是因为时间的原因,游戏里没有用上粒子系统来渲染,所以界面有些简陋。唯一拿得上台面的就是算法了。

先上图:

1.菜单页面

  有“单人模式”(尚未开发)、“双人模式”、选项、帮助四个按钮。

2.设置页面

  这里可以设置游戏过程中是否提示你下一步可以下到哪些格子里面。

3.游戏页面

  游戏页面有统计黑白两种棋子在棋盘上当前的个数,以及有当前到哪一方下棋的提示,还有你当前可以下在哪个格子里的提示(如果你在设置页打开了提示功能,关闭则没有)。

开发心得:

开发这款游戏其实不难,其实最重要的还是怎样整体设计这款游戏,以及算法的实现。当然,美工也是很重要的,鄙人PS技术不好,只能弄成这样子了。主要的算法是判断该格子能不能下棋,以及判断下一步能下到哪些格子上。说一下我的思路,其实我是把棋盘按照像素点分成了(1,1)、(1,2)、(1,3)……(8,8)这样的64个方格,如果要获取左边的格子坐标就把横坐标-1,纵坐标不变,其他类似。判断能不能在该格子下棋就是判断在左、左上、上、右上、右、右下、下、左下8个方向上是否有对对方形成“夹击”的攻势,如果有就可以在该格子下棋。这里我采用了深度优先搜索算法。其实可以对算法进行优化,只是,说白了还是因为时间问题,或许是为自己懒找的借口吧。不过以后等我闲下来的时候我肯定会继续完善它的。毕竟算是我拿得出手的第一个像样一点的游戏(之前写过一个24点的游戏,也上了线,可是效率太低,甚至有点卡,所以摆不上台面。不知道为什么,我做过的游戏都是需要对算法进行深度优化的游戏)。

还有一个深刻的体会是,好的游戏,真的不是一个人能开发出来的。其实在游戏设计、游戏美工、游戏编码等等各方面都需要相应特长的人才行,一个人做了所有工作,肯定在时间和精力上分不过来。

再说一些抽风的话。我现在大三即将毕业,.nei方向,对面向对象有比较深刻的理解。熟悉三层框架,熟悉js、jquery、html、css,能解决基本的浏览器兼容性问题,注重网页与用户的交互性和美观性。有一年半的Windows phone/windows8开发经验,Windows Phone上有几个上线的应用与游戏。熟悉cocos2d-x游戏引擎。希望在广州工作。希望今年暑假找到实习。有岗位推荐的好心人请留下网址,如若有幸被HR看上,请留言或者联系rainlam163@hotmail.com。感谢各位!

转载于:https://www.cnblogs.com/rainlam163/archive/2013/06/14/reversi.html

Windows Phone 游戏——黑白棋 开发总结相关推荐

  1. android 双人黑白棋开发博客,黑白棋 - 软件资讯 - 课堂党年级博客

    黑白棋叫反棋(Reversi).奥赛罗棋(Othello)苹棋翻转棋黑白棋西本流行游戏通相互翻转棋棋盘谁棋判断胜负 黑白棋棋盘8*8格棋盘棋棋空格间像围棋交叉点始棋盘两白两黑四棋交叉放置黑棋总先 自颜 ...

  2. c语言翻转棋ai算法,黑白棋游戏(也叫翻转棋)(AI 版)

    黑白棋(也叫翻转棋)的棋盘是一个有8*8方格的棋盘.下棋时将棋下在空格中间,而不是像围棋一样下在交叉点上.开始时在棋盘正中有两白两黑四个棋子交叉放置,黑棋总是先下子. 下子的方法:把自己颜色的棋子放在 ...

  3. 基于DevCloud进行黑白棋实时对战游戏开发实践【华为云至简致远】

    [摘要] 本次实践让我体验到了全程在云上创建弹性云服务器ECS,配置云服务器环境,在DevCloud平台上一站式进行项目管理.代码托管.代码检查.流水线.编译.构建.部署.测试.发布的流程.基本做到了 ...

  4. 基于Python的Reversi黑白棋游戏设计与开发

    摘 要 黑白棋是一个相当易学,而且很受欢迎的游戏.近年来,随着机器性能的提高和相关理论的完善,人工智能这一领域变得越来越重要,在实际生活中的运用也越来越广泛.为了学习简单的人工智能,我决定用Pytho ...

  5. Windows游戏设计(三)- 黑白棋游戏 - 使用Win32 SDK

    注:以下程序为本人原创,写的不好,若有好的建议,望留言告知.而若能帮助一二访客,幸甚! 上回用Python 写黑白棋,后来想添加个最小最大规则搜索博弈树的算法,没能实现,于是想先用Win32 写一个, ...

  6. HTML5 游戏开发实战 | 黑白棋

    黑白棋,又叫反棋(Reversi).奥赛罗棋(Othello).苹果棋.翻转棋.黑白棋在西方和日本很流行.游戏通过相互翻转对方的棋子,最后以棋盘上谁的棋子多来判断胜负.黑白棋的棋盘是一个有8×8方格的 ...

  7. c语言课程设计之黑白棋游戏,c语言课程设计黑白棋游戏.doc

    您所在位置:网站首页 > 海量文档 &nbsp>&nbsp学术论文&nbsp>&nbsp大学论文 c语言课程设计黑白棋游戏.doc26页 本文档一共被 ...

  8. 写了两个月的黑白棋对战程序,发现早就有了GGS,互联网上的游戏。

    1.什么是ODK?     ODK的全称是Othello Development Kit,这是一套用来开发能够连接至GGS(the Generic Game Server )的黑白棋的开发包.GGS是 ...

  9. 吴昊品游戏核心算法 Round 9 —— 正统黑白棋AI(博弈树)

    黑白棋程式简史 在1980年代,电脑并不普及,在黑白棋界里,最强的仍然是棋手(人类). 到了1990年代初,电脑的速度以几何级数增长,写出来的黑白棋程式虽然仍然有点笨拙,但由于计算深度(电脑的速度快) ...

最新文章

  1. 极速发展的饿了么订单系统架构演进
  2. 第十三篇:上下文无关语法 Context-Free Grammar
  3. Tomcat设置虚拟目录的方法, 不修改server.xm
  4. MySQL5与Tomcat-5.5的常用配置文件
  5. 《OOD启思录》—第2章2.6节角色与类
  6. 终止线程的三种方法(转)
  7. MQTT 连接 阿里云物联网十六进制数据分析笔记
  8. Java 图片处理解决方案:ImageMagick 快速入门教程
  9. STM32串口编程易错点
  10. xmind怎么在左边创建_威纶通 触摸屏自动化应用篇 创建程序界面及画面应用
  11. 一、虚拟机,CentOS安装教程,Linux文件系统结构,Linux文件命名规则
  12. 二分查找算法-java
  13. python实验报告六_Python 基础语法
  14. 第四届2021美团网络安全 MT-CTF writeup
  15. 旧手机改造成Linux服务器
  16. 解决微信屏蔽淘宝链接的方法
  17. jQuery插件之jqzoom放大镜插件
  18. Windows下用MySQL8+压缩包解压安装与配置
  19. 60个Vue常见问题汇总及解决方案
  20. 数据中心中交换机的转发原理 ---尚文网络奎哥

热门文章

  1. 计算机软件水平考试题,计算机程序员软件水平考试试题
  2. Gopro写入文件失败SD卡要求格式化数据恢复建议
  3. 使用Numpy快速分析股票数据——计算移动平均线及日周均线之间的转换
  4. 证明:gcd(m,n)=gcd(n mod m,m)成立,m,n为正整数,m>0. 【Euclid算法证明】
  5. 计算机网络管理员述职报告,网络管理员述职报告
  6. Linux 高速下载器XDM
  7. C#使用Access2003
  8. 清除系统垃圾文件bat
  9. 利用 Sony Vegas 制作消音伴奏教程
  10. 社群运营5招激活杀手锏、5个沟通技巧、5大目的