游戏截图

主界面

游戏中

游戏中

暂停界面

游戏介绍

帮助师哥师姐毕设制作的一款手机小游戏,应该算是我制作的第一款较为完整的游戏了。很大程度上加深了我对UE4和游戏制作流程的理解。

基本信息

平台:Android

类型:2D手机小游戏

玩法简介

  • 玩法

画面上有若干个目标点(不超过3个),屏幕四周会生成若干个点向目标点爬去。到达目标点后点将在减少玩家血量。单指去划点时,点会向另一侧爆开,爆开的黑点会变成一滩纯色块。色块位于所有点的上层,为半透明状。

图示

目标点的血量清零后,游戏结束。以划爆的点作为积分。

  • 特殊加成

    连划加成:一笔下去可以连续划破若干个点,每多划破一个,积分以1倍增加。每一笔上限5个点,到达上限后强制结算。当一笔划破的点都是同种类型的点时,得分加倍。

    距离加成:当黑点进入红叉周围很近的范围之内(半径约15mm),划破时获得的分数加倍。

    方向性加成:在某些点的身上会出现类似箭头的表识,遵循箭头的方向将其划破可获得额外分数(该点自身分数的1倍)。若不按照箭头方向划,则没有额外加成,也没有惩罚。箭头可以出现在除了红点之外的所有点身上。箭头占总体的30%。

  • 豆豆种类

    豆豆种类 是否可被划破 移速 说明 扣除的血量 分数 占比
    黑豆豆 1 无特殊效果 2 3 60%
    绿豆豆 1 连划中越靠后加分越多,每靠后一个位置,积分增加50% 1 6 10%
    紫豆豆 0.7 需要被划破3次才能完全消失。初始体型较大,每被划破一次其体型就会缩小一些 1 6 10%
    红豆豆 0 地雷,钻出后不移动,10s后自动消失。不可划破。若划破则扣血3点 / / 5%
    蓝豆豆 1.2 划破后3s内所有点的移速下降至30% 1 0 5%
    橙豆豆 1 划破后留下的色块区域会对之后经过的点加速60%。该点留下的色块大小是普通点的6倍。 2 6 5%
    黄豆豆 1 划破后该点会分裂成两个大小与原来一样的点继续向叉走去,需要分别把分裂出的点划破才可以。 2 6 5%
  • 难度曲线:

    升级:限定各种特殊点出现的时间段。除了第一次升级,之后每次升级所需分数为上一次升级奖励时段结束时分数的1.5倍。(如第一次升级奖励时段过后为100分,下一次升级所需分数为150分)新加入的点在奖励时段过后出现。

    1. 开局:黑点,绿点,地雷。有连划加成和距离加成;
    2. 第一次升级:达到80分,出现方向性加成;
    3. 第二次升级:加入紫点;
    4. 第三次升级:加入黄点;
    5. 第四次升级:加入蓝点;
    6. 第五次升级:加入橙点;

    升级奖励时段:玩家每升一级,5s内,所有点移速提升100%,到达目标点也不会消失而是直接穿过,目标点在该时间内完全无敌(包括对地雷)。该时间内连划的时间翻倍,获得的连击加成分数为平时的2倍(应有特效,数字变色,大一点)

分工

此游戏的美术、技术美术以及程序均为我一个人完成,策划以及测试由小武完成。

技术路线

  • 点出现方式。从屏幕边缘不固定的某一点“钻出”,从出现到完全钻出有一个过程(约1s),若在其完全钻出之前将其划破将不获得积分。豆豆蜿蜒前行,玩家较难预测。

    随机生成逻辑:用随机布尔值确定生成在上或右还是下或左,然后用随机浮点值确定位置

    随机生成蓝图

    钻出逻辑:使用timer控制钻出以及移动

    钻出以及移动控制蓝图

    蜿蜒前行逻辑:用时间以及sin值改变豆豆的Z轴旋转角度,注意调整防止豆豆碰不到目标点。

    目标点变换找目标逻辑:使用蓝图接口,在目标点改变时通知所有在场的豆豆。豆豆停止左右蠕动,慢慢转过去然后继续蜿蜒前行。

  • 箭头加成:

    在生成时,若有箭头则使用一个int类型的值储存箭头方向;

    划破时比对划动方向以及箭头方向即可判断是否顺着箭头划;

    箭头生成逻辑

  • 积分结算可视化。每结束划下去的一笔,获得的积分在破掉的点旁边显示0.5s

    创建Widget,用于显示分数,为其添加向上移动并且消失的动画,开放接口供外部修改分数数值以及颜色;

    创建WidgetComponent,将创建的Widget加入其中,处理接口,并在0.5s后销毁自己;

    在划破点时在其位置生成WidgetComponent即可;

  • 排行榜

    默认显示5个分数;

    开始游戏时先看看有没有存储的数据。如果没有就生成一个全是0的大小为5的int数组,如果有就加载数组;

    玩家游玩结束后,自动输入玩家新的分数进行计算。与数组中存的分数从大到小遍历,如果新分数大于当前分数,则根据当前数组索引将后面的数字往后平移,然后插入新分数,跳出;

    储存当前数组,然后显示排行榜;

    排行榜

  • 开发者选项

    由于是疫情期间,策划无法接触到编辑器,所以我在游戏中暴露了一些数值供策划调整。这些变量存储在游戏实例中,每个实例在构造的时候都会获取这个变量值。

    点击Option界面那个有眼睛的豆豆就可以打开开发者选项界面。

    给策划调数值的地方

其他

此游戏所有程序以及美术均为我自制。

下面要秀一下我五颜六色的蓝图#捂脸:

五颜六色

不足

  • 由于是制作的第一个较为完整的游戏,所以各种逻辑方面都比较绿皮,用了很复杂的逻辑,有很大优化空间;
  • 其实这些痘痘的移动逻辑很像,但我却由于知识水平问题,不会使用类继承;
  • 画线不太会制作,使用的是粒子制作;
  • 游戏不够完善,音效音乐等都没有添加;

游戏链接

链接:https://pan.baidu.com/s/1V6uZqAEyt68SiCh_Kl6x5A
提取码:uryr