Android小游戏:功夫蛇 团队开发经验总结
前言
曾经没有代码管理的习惯,不用回版本控制工具。这种陋习虽然让原来千穿百孔的代码远离了实现,但这种逃避未必就是一件好事吧;)。
于是从博客中挖出了原来的文章,并千辛万苦找到了最早的代码贴出来。
这篇文章是参加 Google 的 Android 应用开发大赛时,写的总结帖。主要从团队和设计两个方面进行了分析总结。虽然如今看来一些内容显得稚嫩和粗糙,
但没有功劳还是有苦劳的!还是那句话,我们要不断收集生活中的珠子,等到最后,才能串成一条链。
我同步的将代码贴到了自己的 github 里。对于这份代码,或许以后有时间,可以重构下代码?又或者没有时间?
这都无所谓。能够让原来的脚印在路途中获得一席之地,也才有之后更好的旅程。
内容不做修改,这就是 12 年 1 月时,我的思维层次总结啦。
原文
此文从团队和设计两方面,进行了一些经验总结。没有涉及技术实现的讨论。
KongfuSnake,这是一款取材自贪吃蛇的 android 游戏。(弱弱的说,这个取材其实这是我最不敢说出口的,被大多数人评价为老套、
过时的创意><…但需要解释的是,我们确实做了很多“微创新”~)。
下载链接:KongfuSnake
1.背景
参加的 google 的 android 应用大学生挑战赛上个月已经画上了句号。
结果是幸运的,最终我们跟另外的 4 只队伍一起,获得了全国总决赛二等奖。当然,名次并不是最重要,重要的是经历了什么,学到了什么。于是,用心的敲下这些文字,给自己的旅途留下脚印,期望对以后的学习、生活有所助益。也算是认知盈余吧。
11 年 6 月份吧,大三下学期萌发参加比赛的念头。
当时的考虑是,自己由于时间安排的关系,无法参加暑期实习,而本科前三年重心一直不在编程上,想借暑假的空闲机会,体验一下比赛的乐趣,
也算见识下 android 的开发体系。而作为团队参加也可以积累些许技术沟通的经验,于是找到了同专业的一个同学,一起组队参赛。
后期,又邀请了工业设计专业的一位同学加入,为作品的 UI 润色,用足了比赛规定的最多三个名额的限定。
回过头来,那些小九九也算达到了一些~甚至还有当时没有考虑到的收获,比如对小游戏设计方面的浅显理解。
2.团队
这是一个三人的小规模学生团队,说我们小打小闹也罢,团队里的沟通交流总归是存在的。麻雀虽小,五脏俱全~
2.1.团队的组成
经历过以前一些团队作业,我觉得大学生团队最重要的问题就是是否每个人都有足够的时间。基于这个原则,我找到了 yzq 童鞋。
后期,我们发现必须找人润色 UI,又通过学校论坛征到了比我们低一级的 mqx 童鞋,这一步走的略显仓促,与项目早期自己的侥幸心理有关><….
准备不周全。幸运的是,最终效果还不错。
值得反思的是,最初我在征 UI 设计时,没有与候选人沟通好具体的职责:
团队需要的是能尽可能的提供 UI 的整套解决方案,而不仅仅是按照程序开发者的意愿 P 几张图而已。
由于这一失误,mqx 童鞋后来的大多数时间里只是照着后半句在做,让我们编程人员力不从心><….。
当然,另一个侧面,也算是培养了自己产品设计的一些理念吧。。
2.2.团队沟通
开发期间,由于暑假回家、之后我出国交流等原因,大家很多时间都不在一起。只是通过 QQ 进行交流的。交流的方式也比较随意。
由于项目小,我们没有使用到 svn、git 等版本控制工具。这些原始的沟通方式,虽然在小项目中负面影响不大,但相信随着项目规模的增大,
它们对效率的影响会显现出来,特别是版本控制方面。这里以后需要注意。
另外,在沟通技巧上,自己比较欠缺。由于专业不同的关系,我与负责 UI 的童鞋对某些设计的理解不尽相同,
而自己起初没有注意到这一点,让大家无谓的耗费了精力;每个人都会有不同的想法,在处理矛盾想法的解决时,作为项目发起人,
我的方式不够委婉。
2.3.团队建设
我有意识的提及一旦获奖,我们可以获得的收益,想借此激励大家的积极性。不过技巧性还需要提炼。
3.设计
评价一款手机游戏的优缺点,相对来说比较容易。但真的要做出决策如何设计一款游戏,则难了很多。
看过网上很多移动应用开发的设计指南,一条一条的罗列挺纷繁的,总结自己粗劣的设计经验,是如下两条:创新的想法和合理的取舍(trade-off)。
创新能挖掘出用户的需求,合理的取舍,能让众多创新的想法融合出一个完整的产品构图。
3.1 关于创新
不要被原来的设计需求禁锢。创新可以挖掘出新的需求。
刚开始的时候无法囊括所有的创新点,新的点子可能在之后的经历中又突然冒出,毫不犹豫的去尝试,不断迭代改进。
当然很多创新点可能在游戏的整体中不和谐,但这些层出不穷的创新只要有千分之一是可行的,就可能让产品脱颖而出,不再陈旧。
3.2 关于取舍(trade-off)
突出主题。
手机界面相对较小,视觉上容量本就不多。细小的图形元素容易造成蔓延昏花的效果。突出能抓住用户眼球的主题很重要
,必要的时候,需要适当舍弃可能造成混淆的元素。
增强元素的表现力和区分度。视觉、听觉、触觉(震动)等各个方面增强各个元素之间的区分度和表现力。
统一风格。每一个按键,每一个游戏元素,包括背景、布局、音效,都需要统一风格。
另
由于时间拖得比较久,没有及时的总结经验教训,感觉很多细节都已经离我远去了><…下次得注意了。
另另
由于代码写的比较搓,也就不公开放出了强奸大家的眼球了><…,要学的还有很多。
原文地址:http://biaobiaoqi.github.com/blog/2013/09/06/kongfu-snake-project-summary/
版权声明:自由转载-非商用-非衍生-保持署名| Creative Commons BY-NC-ND 3.0
Android小游戏:功夫蛇 团队开发经验总结的更多相关文章
- android小游戏模版—重力感应
好久没更新博客了,今天来谈谈android小游戏---重力感应,一般在游戏里运用的比較多,比方这类游戏有:神庙逃亡.极品飞车,平衡球.三围重力迷宫,重力赛车等. 首先什么是重力感 ...
- 软件工程 Android小游戏 猜拳大战
一.前言 最近学校举办的大学生程序设计竞赛,自己利用课余时间写了一个小游戏,最近一直在忙这个写这个小游戏,参加比赛,最终是老师说自己写的简单,可以做的更复杂的点的.加油 二.内容简介 自己玩过Andr ...
- 介绍一款Android小游戏--交互式人机对战五子棋
文章转载至CSDN社区罗升阳的安卓之旅,原文地址:http://blog.csdn.net/luoshengyang/article/details/6589025 学习Android系统开发之余,编 ...
- 第一个windows 小游戏 贪吃蛇
最近用dx尝试做了一个小的贪吃蛇游戏,代码放到github上面:https://github.com/nightwolf-chen/MyFreakout 说一下自己实现的过程: 首先,我把蛇这个抽象成 ...
- 使用JavaScript实现简单的小游戏-贪吃蛇
最近初学JavaScript,在这里分享贪吃蛇小游戏的实现过程, 希望能看到的前辈们能指出这个程序的不足之处. 大致思路 首先要解决的问题 随着蛇头的前进,尾巴也要前进. 用键盘控制蛇的运动方向. 初 ...
- JavaScript面向对象编程小游戏---贪吃蛇
1 面向对象编程思想在程序项目中有着非常明显的优势: 1- 1 代码可读性高.由于继承的存在,即使改变需求,那么维护也只是在局部模块 1- 2 维护非常方便并且成本较低. 2 这个demo是采用了 ...
- Android开发系列(十六):【Android小游戏成语连连看】第二篇
写的晚了,在分工个Z市高中的一个成绩查询的系统,原系统居然是用VB写的,我不得不佩服原本写系统的那位哥们真能耐得住. 明天搭建下SVN就等着先发project款然后開始项目了.想想有工资进账,心里也为 ...
- python【控制台】小游戏--贪吃蛇
传统贪吃蛇相信大家都玩过,也是一款很老很经典的游戏,今天我们用python控制台实现 项目有很多bug没有解决,因为本人一时兴起写的一个小游戏,所以只是实现可玩部分功能,并没有花较多的时间和精力去维护 ...
- 手把手教学h5小游戏 - 贪吃蛇
简单的小游戏制作,代码量只有两三百行.游戏可自行扩展延申. 源码已发布至github,喜欢的点个小星星,源码入口:game-snake 游戏已发布,游戏入口:http://snake.game.yan ...
随机推荐
- windows 控制台下 无法获取完整的回车键值
问题描述: 收集的网友分析: http://bbs.csdn.net/topics/370084904 因为C语言和UNIX的开发者是同事…… C语言里统一用的\n表示另起一行.微软的DOS受到了当时 ...
- 每日技术总结:Toast组件,eslint,white-space,animate,$emit
1.一个优雅的提示是网站必不可少的. 请参考:vue2.0 自定义 提示框(Toast)组件 2.ESLint使用总结 (1)在.eslintrc.js里关闭某条规则, '规则名': 'off'或0 ...
- OC学习篇之---Foundation框架中的NSArray类和NSMutableArray类
我们继续来看一下Foundation框架中的NSArray类和NSMutableArray类,其实NSArray类和Java中的List差不多,算是一种数据结构,当然我们从这两个类可以看到,NSArr ...
- google校招在线測试题---2048
先附代码:(简单地说就是给出一个矩阵代表2048游戏的一个状态以及一个方向,输出往这个方向移动之后的矩阵) #include<iostream> #include<fstream&g ...
- 爬虫抓取页面数据原理(php爬虫框架有很多 )
爬虫抓取页面数据原理(php爬虫框架有很多 ) 一.总结 1.php爬虫框架有很多,包括很多傻瓜式的软件 2.照以前写过java爬虫的例子来看,真的非常简单,就是一个获取网页数据的类或者方法(这里的话 ...
- windows 空闲超时 非管理员如何破解
windows 空闲超时 非管理员如何破解
- AE指定字段转成注记
转自原文 ae指定字段转成注记 ArcMap中有一个功能是Label Features,就是可以将图层内指定字段值显示以Label形式显示在主窗口上,在Label Features后,用右键点击图层, ...
- Android百日程序:GridView实现相冊效果
本章使用GridView控件来做一个相冊效果. 图片效果例如以下: 响应点击事件,点击的时候提示是当前第几章图片.从左到右,从上到下. 点击了第一张图片,显示了1. 步骤: 一 新建项目,然后把图片资 ...
- <Linux> Linux下一些常用命令(个人记录)
mount -o loop XXXX XXX ./XXX & 后台运行 rm -rf XXX 删除文件夹 rm -rf * 删除当前目录下的所有文件 包括文件夹 ps -ef | g ...
- p2p网贷系统的架构设计
p2p网贷系统,标准版已经初步完成了. 最近写点总结,也算是分享吧. 简介:p2p网贷系统,是理财类的互联网金融系统.核心功能,就是理财人用户注册,冲钱,然后投标,标到期之后,收到回款.如果不想 ...