前言:
  俄罗斯方块和五子棋一样, 规则简单, 上手容易. 几乎每个开发者, 都会在其青春年华时, 签下"xx到此一游". 犹记得大一老师在布置大程作业的时候提过: "什么都可以写, 唯一不能写的是俄罗斯方块".
  这次想借学Html5的机会, 重温下俄罗斯方块. 当然不是单一的实现, 希望有所创新, 在可玩性/趣味性上有所突破.

调研:
  在4399这个游戏平台上, 选择了几款俄罗斯方块相关的游戏进行试玩. 大致总结了下各类俄罗斯方块的新意.
  • 引入场景
  
  码头俄罗斯方块: 借用大型运输船作为游戏主场景, 而傍边的卡车作为下个方块的提供者. 画风让人舒服, 游戏忠于原版算是中规中矩.
  • 方块组成和消除规则创新
  
  烟火俄罗斯方块: 方块由六边形组成, 消除不在拘泥于行, 而在同色的连接区域.
  彩泡俄罗斯方块: 由圆来代替方块, 消除不在拘泥于行, 而在同色的连接区域.
  • 结合物理引擎
  
  外星俄罗斯方块: 借助7种形状的方块, 来堆一个最高的塔(类似于搭积木).
  大部分游戏都在图形和消除效果上做足个功夫, 为了提高用户的粘度, 有的引入排行版等功能. 总之只有变化, 才能在同质化的产品中脱颖而出.

初步设想:
  上述的同类产品, 好归好. 但单机游戏缺少变化 容易让人觉得单调.
  由此想参考QQ游戏的火拼俄罗斯的实现.
  
  多人PK对战, 引入攻击/防守道具, 最终决出胜负. 游戏激烈, 且充满偶然性.
  俗话说: "他山之石, 即可攻玉". 取其精华, 多人PK和引入道具, 都是很好的点.
  1). 两人PK对战, 当然这边不联网, 采用机器人AI的方式实现.
  
  游戏AI分等级, 用户可从易到难依次挑战.
  2). 引入道具, 使得游戏更加刺激和紧凑.
  减行道具: 消去本方的行数.
  加行道具: 增加对方的行数.
  其余类型的道具, 后续再添加.
  3). 引入排名, 若获胜, 则把当前局的得分计入排行榜
  游戏规则可简单描述如下: 有限的时间内, 用户玩家得分超过游戏AI, 即表示玩家获胜.

总结:
  单机游戏没有网络, 也意味着社交元素的缺失. 如果能尝试去弥补下, 比如引入排行榜, 引入社会化分享组件, 都是提高游戏用户黏性的好办法.
  该文讲述了俄罗斯方块的初步目标, 后续文章将以此为依据, 进行扩充和实现. 敬请期待...

写在最后:
  
如果你觉得这篇文章对你有帮助, 请小小打赏下. 其实我想试试, 看看写博客能否给自己带来一点小小的收益. 无论多少, 都是对楼主一种由衷的肯定.

  

H5版俄罗斯方块(1)---需求分析和目标创新的更多相关文章

  1. H5版俄罗斯方块(2)---游戏的基本框架和实现

    前言: 上文中谈到了H5版俄罗斯方块的需求和目标, 这次要实现一个可玩的版本. 但饭要一口一口吃, 很多东西并非一蹴而就. 本文将简单实现一个可玩的俄罗斯方块版本. 下一步会引入AI, 最终采用coc ...

  2. H5版俄罗斯方块(3)---游戏的AI算法

    前言: 算是"long long ago"的事了, 某著名互联网公司在我校举行了一次"lengend code"的比赛, 其中有一题就是"智能俄罗斯方 ...

  3. H5版俄罗斯方块(4)---火拼对战的雏形

    前言: 勿忘初心, 本系列的目标是实现一款类似QQ"火拼系列"的人机对战版俄罗斯方块. 在完成了基本游戏框架和AI的算法探索后, 让我们来尝试一下人机大战雏形编写. 本系列的文章链 ...

  4. H5版俄罗斯方块(5)---需求演进和产品迭代

    前言: 产品的形态是不断迭代的, 从粗糙到精致, 从简易到立体. 有了最初的技术积累和时间思考后, 终于明确了该游戏的方向. 我想说的是: 技术不是重点, 产品/用户体验才是核心议题. 结合朋友的游戏 ...

  5. Android版俄罗斯方块的实现

    学习Android的基本开发也有一段时间了,可是由于没有常常使用Android渐渐的也就忘记了. Android编程学的不深,不过为了对付逆向,可是有时还是会感到力不从心的.毕竟不是一个计算机专业毕业 ...

  6. JS国际化网站中英文切换(理论支持所有语言)应用于h5版APP

    网页框架类APP实现国际化参考文案一 参考:https://blog.csdn.net/CSDN_LQR/article/details/78026254 另外付有自己实现的方法 本人用于H5版的AP ...

  7. Delphi版俄罗斯方块-前奏

    前言 基础知识讲了很多,但是并没有串联起来,所以我最近一直在准备个小项目,但是这个项目的要求不含有数据库部分,也就是数据持久存储的功能,此外不能含有网络功能,它只是对基础知识的一个总结,最后一点是这个 ...

  8. OpenPAL3:仙三开源版的第二个小目标 Accomplish!

    去年的时候,OpenPAL3 的第一个版本发布 之后,我给 0.2 版本设定了一个小目标:让景天能跑出永安当.当时的第一个版本还只能算是概念验证的版本,没有音乐支持.输入支持,不能直接读取仙剑三的打包 ...

  9. H5版定点投篮游戏(1)--物理模型抽象

    前言: 前几天目睹了大学同学开了个微店, 算是间接体验微信公众平台的使用. 觉得非常便捷和方便, 于是自己也想捣鼓一个. 公众号取名: "木目的H5游戏世界", 定位做成一个, 个 ...

随机推荐

  1. 编译安装php的配置参数详细解析

    ./configure --prefix=/usr/local/php --enable-opcache --enable-fpm --enable-sockets --enable-mysqlnd ...

  2. (二)Kafka动态增加Topic的副本(Replication)

    (二)Kafka动态增加Topic的副本(Replication) 1. 查看topic的原来的副本分布 [hadoop@sdf-nimbus-perf ~]$ le-kafka-topics.sh ...

  3. java高薪之路__002_异常处理

    自定义异常 package learn.JavaBasics.Class; import java.util.Date; /** * 如何自定义一个异常类 * 1. 继承一个现有的异常类 * 2. 提 ...

  4. SVM学习(续)

    SVM的文章可以看:http://www.cnblogs.com/charlesblc/p/6193867.html 有写的最好的文章来自:http://www.blogjava.net/zhenan ...

  5. .net添加下拉框

    aspx文件 <%@ Page Language="C#" AutoEventWireup="true" CodeFile="DropDownL ...

  6. 新建web工程Jdk怎么不是自己安装的, 是自带的

    需要在eclipse中配置默认的jdk环境的,不要用它默认的那个,这个不能用的http://blog.csdn.net/clj198606061111/article/details/11881575 ...

  7. 0020 Linux 文件操作命令

    1. 创建文件 touch 文件名 2. 删除文件 rm 文件名 3. 复制文件 cp 源文件 目录 4.剪切文件 mv 源文件 目标文件 5.重命名文件 mv 源文件名 新文件名 6.改变文件权限 ...

  8. Implement strStr() [LeetCode]

    Implement strStr(). Returns a pointer to the first occurrence of needle in haystack, or null if need ...

  9. MVC——入门+简单的小实例

    MVC全名是Model View Controller,是模型(model)-视图(view)-控制器(controler)的缩写,一种软件设计典范,用于组织代码用一种业务逻辑和数据显示分离的方法. ...

  10. iOS开发UI篇—Quartz2D简单使用(一)

    iOS开发UI篇—Quartz2D简单使用(一) 一.画直线 代码: // // YYlineview.m // 03-画直线 // // Created by apple on 14-6-9. // ...