H5版俄罗斯方块(1)---需求分析和目标创新
前言:
俄罗斯方块和五子棋一样, 规则简单, 上手容易. 几乎每个开发者, 都会在其青春年华时, 签下"xx到此一游". 犹记得大一老师在布置大程作业的时候提过: "什么都可以写, 唯一不能写的是俄罗斯方块".
这次想借学Html5的机会, 重温下俄罗斯方块. 当然不是单一的实现, 希望有所创新, 在可玩性/趣味性上有所突破.
调研:
在4399这个游戏平台上, 选择了几款俄罗斯方块相关的游戏进行试玩. 大致总结了下各类俄罗斯方块的新意.
• 引入场景

码头俄罗斯方块: 借用大型运输船作为游戏主场景, 而傍边的卡车作为下个方块的提供者. 画风让人舒服, 游戏忠于原版算是中规中矩.
• 方块组成和消除规则创新

烟火俄罗斯方块: 方块由六边形组成, 消除不在拘泥于行, 而在同色的连接区域.
彩泡俄罗斯方块: 由圆来代替方块, 消除不在拘泥于行, 而在同色的连接区域.
• 结合物理引擎

外星俄罗斯方块: 借助7种形状的方块, 来堆一个最高的塔(类似于搭积木).
大部分游戏都在图形和消除效果上做足个功夫, 为了提高用户的粘度, 有的引入排行版等功能. 总之只有变化, 才能在同质化的产品中脱颖而出.
初步设想:
上述的同类产品, 好归好. 但单机游戏缺少变化 容易让人觉得单调.
由此想参考QQ游戏的火拼俄罗斯的实现.

多人PK对战, 引入攻击/防守道具, 最终决出胜负. 游戏激烈, 且充满偶然性.
俗话说: "他山之石, 即可攻玉". 取其精华, 多人PK和引入道具, 都是很好的点.
1). 两人PK对战, 当然这边不联网, 采用机器人AI的方式实现.

游戏AI分等级, 用户可从易到难依次挑战.
2). 引入道具, 使得游戏更加刺激和紧凑.
减行道具: 消去本方的行数.
加行道具: 增加对方的行数.
其余类型的道具, 后续再添加.
3). 引入排名, 若获胜, 则把当前局的得分计入排行榜
游戏规则可简单描述如下: 有限的时间内, 用户玩家得分超过游戏AI, 即表示玩家获胜.
总结:
单机游戏没有网络, 也意味着社交元素的缺失. 如果能尝试去弥补下, 比如引入排行榜, 引入社会化分享组件, 都是提高游戏用户黏性的好办法.
该文讲述了俄罗斯方块的初步目标, 后续文章将以此为依据, 进行扩充和实现. 敬请期待...
写在最后:
如果你觉得这篇文章对你有帮助, 请小小打赏下. 其实我想试试, 看看写博客能否给自己带来一点小小的收益. 无论多少, 都是对楼主一种由衷的肯定.

H5版俄罗斯方块(1)---需求分析和目标创新的更多相关文章
- H5版俄罗斯方块(2)---游戏的基本框架和实现
前言: 上文中谈到了H5版俄罗斯方块的需求和目标, 这次要实现一个可玩的版本. 但饭要一口一口吃, 很多东西并非一蹴而就. 本文将简单实现一个可玩的俄罗斯方块版本. 下一步会引入AI, 最终采用coc ...
- H5版俄罗斯方块(3)---游戏的AI算法
前言: 算是"long long ago"的事了, 某著名互联网公司在我校举行了一次"lengend code"的比赛, 其中有一题就是"智能俄罗斯方 ...
- H5版俄罗斯方块(4)---火拼对战的雏形
前言: 勿忘初心, 本系列的目标是实现一款类似QQ"火拼系列"的人机对战版俄罗斯方块. 在完成了基本游戏框架和AI的算法探索后, 让我们来尝试一下人机大战雏形编写. 本系列的文章链 ...
- H5版俄罗斯方块(5)---需求演进和产品迭代
前言: 产品的形态是不断迭代的, 从粗糙到精致, 从简易到立体. 有了最初的技术积累和时间思考后, 终于明确了该游戏的方向. 我想说的是: 技术不是重点, 产品/用户体验才是核心议题. 结合朋友的游戏 ...
- Android版俄罗斯方块的实现
学习Android的基本开发也有一段时间了,可是由于没有常常使用Android渐渐的也就忘记了. Android编程学的不深,不过为了对付逆向,可是有时还是会感到力不从心的.毕竟不是一个计算机专业毕业 ...
- JS国际化网站中英文切换(理论支持所有语言)应用于h5版APP
网页框架类APP实现国际化参考文案一 参考:https://blog.csdn.net/CSDN_LQR/article/details/78026254 另外付有自己实现的方法 本人用于H5版的AP ...
- Delphi版俄罗斯方块-前奏
前言 基础知识讲了很多,但是并没有串联起来,所以我最近一直在准备个小项目,但是这个项目的要求不含有数据库部分,也就是数据持久存储的功能,此外不能含有网络功能,它只是对基础知识的一个总结,最后一点是这个 ...
- OpenPAL3:仙三开源版的第二个小目标 Accomplish!
去年的时候,OpenPAL3 的第一个版本发布 之后,我给 0.2 版本设定了一个小目标:让景天能跑出永安当.当时的第一个版本还只能算是概念验证的版本,没有音乐支持.输入支持,不能直接读取仙剑三的打包 ...
- H5版定点投篮游戏(1)--物理模型抽象
前言: 前几天目睹了大学同学开了个微店, 算是间接体验微信公众平台的使用. 觉得非常便捷和方便, 于是自己也想捣鼓一个. 公众号取名: "木目的H5游戏世界", 定位做成一个, 个 ...
随机推荐
- 【OOAD】OOP的主要特征
聚合 “虚包含” 不明确组合 “实包含” 明确 抽象(abstract)抽象:抽象是通过特定的实例抽取共同特征以后形成概念的过程.它强调主要特征,忽略次要特征.一个对象是现实世界中一个实体的抽象,一个 ...
- 1074, "Column length too big for column 'err_solution' (max = 21845); use BLOB or TEXT instead"
一个注意点,就是sqlalchemy 使用create_all()建表的时候,要在 create_all()所在页面import那些表的model sqlalchemy.exc.Operational ...
- 学习mongo系列(一) win/mac安装 解析 连接
一.安装mongo数据库 下载链接https://www.mongodb.org/downloads, 在执行如下命令的时候事先按照目录新建如下的目录:(如果数据库安装在D盘就在D盘的根目录下建)&q ...
- redis 安装及相关问题解决
安装redis 下载,或者用scp命令从其他服务器拷贝 一.安装 解压:tar -zxvf redis-3.0.1.tar.gz 进入:cd redis-3.0.1 编译: make 二.解决问题 1 ...
- springMVC的两种下载方式
1:通过httpServletResponse对象实现下载,觉得LOW的自行跳过 2:有人觉得既然使用的是MVC就要使用spring的方式
- Python_Day2_基础2
python基础之数据类型与变量 一.变量 变量作用:保存状态(程序的运行本质是一系列状态的变化,变量的目的就是用来保存状态,变量值的变化就构成了程序运行的不同结果.) Age=10 ----> ...
- 利用SVN进行任意文件对比
都知道SVN可以比较已经上传的文件的内容,看到两个文件有什么不同的地方. 但是有时候并不想上传想要比较的文件,能不能利用SVN这样一个功能去比较别的两个文件呢? 琢磨来琢磨去, 发现只要在资源管理器里 ...
- 读javascript高级程序设计05-面向对象之创建对象
1.工厂模式 工厂模式是一种常用的创建对象的模式,可以使用以下函数封装创建对象的细节: function CreatePerson(name,age){ var p=new Object(); p.n ...
- Android学习(未完)
Android四大组件1.Activity活动活动Activity是一种可以包含用户界面的组件,主要用于和用户进行交互活动之间使用intent进行通信,激活组件,分为1.显式intent2.隐式int ...
- iOS开发Swift篇—(七)函数(1)
iOS开发Swift篇—(七)函数 一.函数的定义 (1)函数的定义格式 func 函数名(形参列表) -> 返回值类型 { // 函数体... } (2)形参列表的格式 形参名1: 形参类型1 ...