C语言游戏开发_2048_设计说明书
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
2048游戏项目需求分析
一、项目概述------------------------------------------------------------------------------------------------ 2
二、需求分析------------------------------------------------------------------------------------------------ 2
1.游戏开发的趋势和特色--------------------------------------------------------------------------- 2
2.游戏操作需求 --------------------------------------------------------------------------------------- 2
3.开发环境 --------------------------------------------------------------------------------------------- 3
三、概要设计------------------------------------------------------------------------------------------------ 3
四、程序流程图--------------------------------------------------------------------------------------------- 4
五、详细设计------------------------------------------------------------------------------------------------ 5
3.颜色如下:--------------------------------------------------------------------------------------------- 6
4.光标位置等的格式控制--------------------------------------------------------------------------- 7
5.终端控制 --------------------------------------------------------------------------------------------- 7
六、游戏运行说明 ---------------------------------------------------------------------------------------- 10
1.游戏运行流程图 ----------------------------------------------------------------------------------- 10
七、扩展说明----------------------------------------------------------------------------------------------- 10
1.扩展功能框图 -------------------------------------------------------------------------------------- 10
一、项目概述
2048是一款简单小巧的益智类游戏,挑战您的智力极限,借鉴1024和小3传奇游戏开发而成,难度相对有所下降,是一款让您根本停不下来的游戏。
游戏规则:滑动屏幕或者方向键来移动小方块,两个数字一样的小方块相撞时就会相加合成一个方块,每次操作之后会在空白的方格处随机生成一个2或4的方
块,最终得到一个2048的方块就算胜利了,
如果16个格子全部填满且无法移动的话GAMEOVER。
二、需求分析
1.游戏开发的趋势和特色
Linux特点就是代码开源。开放的平台使更多的开发者参与到游戏代码的优化和完善当中,一个崭新的游戏也很快走向成熟。
随着计算机技术的不断发展,硬件已经不在是游戏发展的瓶颈。游戏的规划更加向专业化方向发展。
1. 将向网络化方向发展,随着各平台对无线通信网络、WIFI网络、蓝牙网络
的良好支持,游戏将创新出更好的游戏性和用户本验。网络游戏,多人游戏,联机
对战等将进一步强化玩家对游戏的粘着度,并且容易通过对道具等的控制产生营利
模式。玩家之间对交互能力的需求也会促成未来的游戏向网络化发展进程的加快。
2.将向休闲化、时间片化方向发展,移动设备的随身性使是休闲小游戏将得到
快速的发展。移动设备对分散时间的利用促进了游戏向时间片化发展,即一个游戏
可以随时开始,随时结束,充分利用用户分散的时间片来运行。
所以2048这个休闲益智的手机游戏就应运而生,一经发布就占据各大手机游戏下载的排行榜的前列,这是一款老少皆宜的手机游戏,在空闲时间你可以拿出
手机来玩,上班、下班、坐公交、等地铁,你随心随意的快乐玩耍。它简单易上手,只需滑动手指就可以操作,但却有难精通,要打通关卡却不是一件容易的事情通过C语言控制台仿写这个游戏,可以锻炼编程框架思想以及技巧,同时将所学到的数据结构等知识灵活的运用。
2.游戏操作需求
1、可使用鼠标或↑、↓、→、←或W、X、A、D键进行操作;
2、ESC 退出游戏
3.开发环境
运行环境:centos6.2
开发环境:vim编辑器
编写语言:c语言
三、概要设计
1、游戏开始时随机的产生2个数值为2/4的方格,其中1个方格置于4
个角中的一个位置,
另一个方格随机的置于其它位置,其余方格值为0。
2、每次移动鼠标或按方向键后,逐行计算移动后的方格值。每行移动的
算法是:先将所有值为0的数移至行首。能后从行尾开始逐一和前一个数比较,
如果相等则合并这2个格子。
3、每合并一次格子,将其值累计到游戏总分中。
4、一次移动结束后,在所有值为0的方格中随机的分配一个2/4的值。
5、所有方格值不为0且上下、左右相邻的方格都不相等,则游戏结束。
6、2出现的概率为90%,4出现的概率为为10%。