项目开始之前
作为一个unity初学者,我也跟着做了几个实例,自己也做了两个小游戏,但是,这些游戏说实话连demo都算不上,并不是一个完整的游戏。这个项目是为了熟悉一个完整的游戏开发流程而做的,所以这个项目诞生的意义就是被完成,所以,如果在细节上会影响项目的完成度,我会选择忽视。当然,我会尽可能做的完美。
在学习unity的过程中,我也诞生了许多关于游戏的想法,其中能够放在一起的想法都放在同一个文件夹中,我现在有五个游戏文件夹,每个游戏的核心玩法都有很大区别,我选择了其中的一个看起来比较简单的作为开始,也就是《王国魔法军》。
我也是第一次写开发日志,但是,两次小游戏给我带来的经验是记下我所经历的,不管有没有成功。因为人并不会吃一堑长一智,但会知道自己有没有犯相同的错误,在知道自己犯下相同的错误时,笔纸(或许是比特)所能提供的信息要比记忆完善得多。
我会在这个系列日志中写出我开发的心路历程和经验,从细节到整体都会有所涉猎。
核心玩法
一句话来描述我所构想的游戏,那么就是玩家操纵自己的士兵行动,和敌人的军团斗争,最终摧毁所有敌人基地的回合制肉鸽战棋游戏。
在我开发两个游戏后,我能清楚的知道的一个教训是,无论是做什么游戏,用什么引擎,一定要在开始动手之前动脑。避免模糊,越大的层次就越要清楚,细节的地方在一开始反而并不重要。
所以,我在unity项目建立之前就写好了一份文档来表述我的游戏玩法。这个文档我认为要到达这样的程度——写下来,然后你可以放心大胆地交给没玩过游戏的人去看,让别人开发,能保证最终出来的游戏和你所构想的游戏玩法是一致的。也就是说,玩法,或者说玩法,在你的脑子中其实并没有看起来那么靠谱,除非你真的能把握游戏的每一个细节。前期一份完善的文档能省下后面的许多麻烦,有些麻烦对游戏来说甚至是致命的。
游戏流程
灵感来自https://generals.io/这款游戏。这个游戏承包了我高二的娱乐时光。不过现在来看,其实游戏并没有那么有趣。不过,这款游戏还是启发了我。
《王国魔法军》的目的就是摧毁地方的基地,类似于generals中的王冠。不过,在我的设计中,士兵并不是数字,而是具有特性的独立单位。
以一玩家一电脑为例,游戏流程大致如下:
- 随机生成地形,并向玩家展示地图。地形系统在后文介绍。
- 随机生成兵力,并向玩家展示玩家当前可支配的兵力。士兵系统在后文介绍。
- 确认基地位置:玩家将在一块有限的区域内放置自己的基地。基地在后文介绍。
- 生成迷雾,限制玩家可观察到的视野。迷雾我打算是用一层较暗的阴影实现。视野在后文士兵系统中介绍。
- 当所有人都完成步骤3、4时,游戏正式开始。每个人都可以在自己的回合行动若干步(总数有限),无法行动时切换到下一个人行动,重复步骤5。关于行动的部分将在士兵系统内讲解。
- 当一方摧毁敌方的基地时,将获得敌方的全部兵力和额外的行动步数。最终胜利条件为摧毁全部敌人的基地。
可以看到,我的游戏里有generals的影子的。但是,与generals本质的不同是在于兵力不会自然增加,而且士兵具备不同的特性。
从流程上看,我说《王国魔法军》是回合制肉鸽战棋应该是比较贴切的。
士兵系统
士兵按空间属性分为:陆军、海军、空军三种;
按照攻击方式分为:远程、近战、特殊三种;
按照战斗力分为:1级、2级、3级四种;
并且,不同的士兵拥有不同的特殊能力。
关于行动
无特殊情况,一个士兵需要被放置在棋盘上,占据一个格子空间后,进行移动、攻击、使用特殊能力等行动。放置、移动、攻击、使用能力都是一次行动。一般来说,一个士兵在一回合中只能行动一次。
空间属性
与后文的地形系统有关。 除此之外,空军只能被空军和特殊的陆军、海军攻击到。
攻击方式
- 远程:攻击和移动是分离的。也就是不能在同一次行动中移动和攻击。并且由于远程的特性,攻击范围一般比移动范围要大一些。
- 近战:攻击和移动是一体的,除非受到阻挡。在同一次行动中,移动是附加攻击属性的,并且攻击是默认了移动的。近战只能攻击到自己能移动的范围内的单位。
- 特殊:一般不能攻击,只能移动。作为补偿,这类兵种都有特殊能力。
战斗力
战斗力体现在两个方面,一个是血量,一个是攻击伤害。一个士兵将死亡,只要他在一个回合(我们把从这个玩家行动到重新轮到这个玩家行动视为这个玩家的一个回合)内承受了超过了自身血量的累计伤害。这个血量就是战斗力,反映到对外攻击上就是攻击伤害。一个3级兵种要在一个回合内受到大于等于3点伤害(比如,来自三个1级兵种的攻击)才会死亡,否则将重新刷新血量恢复至最大值。1级兵种是最脆弱的兵种,任何伤害都足以要了他们的命。
移动速度
不同的士兵,移动速度不一样。移动速度用来表示一个士兵在一次行动中可以移动的最远步数。这个步数可以理解为在象棋,国际象棋等棋类中一个棋子的一次移动。移动速度为三说明可以依次移动三步。因为是依次移动的,所以移动需要指定路径。
视野
任何士兵都有视野。玩家的视野是士兵视野的总和。在视野范围内,玩家才能看见敌人的士兵。视野是动态视野,每次行动都会刷新,类似moba中的迷雾。一般来说,士兵的视野要比自己的攻击范围大一格。
基地
基地可视为一种特殊的兵种。基地不能行动,但是视为3级陆地士兵。在基地的一圈(以基地为中心的3x3范围内)可以放置兵种(对,士兵的放置是受限的)。基地始终提供不受地形阻挡的5x5视野。
地形系统
地形分为四种类型:
- 平原:没有任何限制的一块格子。
- 水域:陆军无法在上面移动。
- 山脉:将会阻挡陆军和海军的移动和视野。不会阻挡空军的视野和空军的移动。
- 禁区:阻挡任何兵种的视野和移动。
到此,核心玩法已经大致确立,关于士兵的具体种类我也已经确立了。素材方面,由于是练手项目,在itch上找到了比较令我满意的美术素材,但只是静态图片。这个项目不会在动画和音效上花费太多功夫。
暂无关于此日志的评论。