本文为“优梦创客”原创文章,您可以自由转载,但必须加入完整的版权声明
文章内容不得删减、修改、演绎
相关学习资源见文末
今天我要给大家分享的是最近在网络上面大火的一款小成本制作的游戏,这款游戏现在爆火。所以作为游戏开发者,我也对这款游戏做了拆解,分享给大家。
为了表述简洁,以下将《完蛋!我被美女包围了》简称《完蛋!》。
作为这个游戏的拆解,我们先来了解一下完蛋这个游戏背后的游戏公司。
完蛋了这个游戏的开发团队叫做intiny
通过使用企查查查询,可以看到,这个游戏团队属于广州小有内容互动娱乐有限公司
这家公司成立于2022年,它的大股东,是广州有枝创新投资合伙企业
这个大股东的背后,是尤达科技
尤达科技是绝地游戏广州分公司,所以这个游戏最终控股的股东是绝地游戏
我不知道大家是否了解绝地游戏这个游戏公司。当然如果你不了解这家公司,也属正常,为什么呢?因为大家知道游戏行业如果你没有一款爆款游戏,那么可能游戏公司的生存会存在一些问题的,而绝地游戏控股的广州小有互娱正是这样一家游戏小厂。
像《完蛋!我被美女包围了》这款游戏诞生之前,其实这个公司的运营状况就一直不是很好,《完蛋!》,可以说是这个公司的最后一种尝试
这个公司成立于2013年
2016年它连续发布了3款SLG游戏,一个正统三国,一个朕的江山,一个银河战舰。
2021年的时候,这公司发布了拔剑称王这个游戏,仅存活半年。
另外一款他们去年上线的一个游戏叫做星空要塞,也是在上线半年以后,今年停运了
这个公司还有一些官司在身。有一个代理的产品正在打官司,据说跟未成年人充值退款有关系
当然绝地游戏这个公司也在努力的自救。就比如说有换赛道,做这个修仙放置类的游戏,叫我的仙门,目前是处在预约期。也有做SLG,就是策略类游戏。
但是投资都不是很成功,直到《完蛋,我被美女包围了》这样一款游戏出现以后。
另外游戏的制作成本没有公布,但游戏的成本能够测算出来
有的人说它是一款剧情推动的一款游戏,一款剧情向的游戏。但是有些人对这个游戏是嗤之以鼻的。可能会觉得ta仅仅只能算一个互动视频,连一个游戏都算不上上利。成本60万,然后利润是1500万
好的,我们来看一下,完蛋,我被美女包围了。究竟这是一款什么类型游戏
有的人说它是一款剧情推动的一款游戏,一款剧情向的游戏。但是有些人对这个游戏是嗤之以鼻的。可能会觉得它仅仅只能算一个互动视频,连一个游戏都算不上
那么我们接着往下看。
《完蛋,我被美女包围了》并不是第一款剧情向的游戏,只不过这款游戏是国内第一款爆火的剧情向的游戏
在这款游戏出现之前,还有一款同类型的游戏叫做《隐形守护者》
在网上去看所有跟完蛋这款游戏相关的一些评论,基本上都会提到这样一款游戏叫《隐形守护者》。大家有兴趣的话也可以去玩一下
前面这些像《隐形守护者》还有《完蛋!》这样的游戏,因为他们的游戏内容是以视频形式展开,所以可能很多人会认为它根本就不能算是一款游戏。
它是一款完完全全的游戏,在主机端非常受欢迎
它的特点也跟《完蛋!我被美女包围了》一样,是通过剧情分支选择来推动游戏的发展的
而且两款游戏有一个非常本质的区别:
底特律变人是真正的3D游戏
在3D建模的场景里面,通过扮演一个虚拟角色来进行游戏
并且准确来说这款游戏并不是扮演一个虚拟角色,而是可以扮演多个虚拟角色来进行游戏
好,那么下面就进入到《完蛋!我被美女包围了》这样一款游戏的这个技术拆解的环节。首先大家看我这个截图,你能看出来《完蛋!我被美女包围了》这款游戏是用什么引擎开发的吗?
现在市面上的游戏引擎有UE虚幻引擎,unity然后还有其他的像什么cocos、laya、godot这样的游戏引擎。
那么完蛋是用什么引擎开发的呢?
所以如果要想开发完蛋这样一款游戏,那么首选肯定是使用unity来进行开发
当然游戏引擎的选择很多,另外最近unity也有关于游戏引擎收费的一些新闻
但是我认为在这个游戏引擎市场里面,特别是在这种跨平台的游戏开发,如果想开发一款游戏,既能在PC上面跑,又能在移动端跑;或者希望上手难度比较低,坑比较少的话,那么unity引擎可能还是首选的游戏引擎
而且我们知道游戏引擎的开发者里面,unity占比在整个国内的开发者里面都是比较多的,所以如果技术积累、人员积累都是unity方向的,那么用unity来开发是最佳的一个选择
我们再往下,可以看到它的引擎是用unity。如果你要去开发《完蛋!我被美女包围了》。那这样一款游戏,你至少需要掌握或者说需要精通一些功能模块的使用
第一,掌握UI界面开发。因为不管你是开发2D游戏还是3D游戏,任何的游戏都是有UI界面的。所以UI界面对于任何游戏开发都是必须要掌握的技能。
而且,像《完蛋!我被美女包围了》虽然它没有3D部分的内容,但是UI页面的切换还是需要进行处理的,虽然它没有像MOBA、MMO游戏那么多UI界面要去处理。
你需要能够去管理好你的UI,在左边这个画面里面是完蛋这款游戏的一个主UI界面,里面一共五个菜单项:
故事线
资料馆
排行榜
影集
设置
在这里你要掌握unity的UGUI。UGUI是用来是用unity用来开发UI系统的一套组件。那么你需要掌握:
UGUI的基本使用
UI界面的滚动
UI滚动的性能问题:
正常的话在滚动一个列表的时候是不能滚动,就是不能出现明显的卡顿
那么用unity原生的这个垂直布局,它是无法做到这种平滑的滚动
你需要去专门开发一个滚动组件,这个也是我们在技术上需要掌握的一个知识点
故事线
故事线可以选择按钮。
这些按钮带有一些动效,也就是一些动画效果。
这个地方能够响应这个按钮的点击,能正确的处理好这个动效。
资料馆
UI界面里面包括了资料馆,资料馆点进去以后你会看到成就页面
如果我们要开发这样一款游戏,具体来说你需要开发哪些东西?
首先,你要开发滚动列表,这些按钮要排布整齐,并且这些按钮是有动效的,如果没有动效,这个游戏会很平淡
然后,在这里我们还要注意一点,就是你这边点击上去以后,它会出现一些剧情内容
在这里我们除了我们看到的UI界面以外,我们还需要去开发这个UI界面对应的数据层,以及它的一些如何解锁成就的逻辑控制,这就是我们平时所说的MVC。
大家可以用MVC的架构来去管理和解耦你的游戏系统
这个是每个人的档案,你也可以点击进去,这里涉及到界面的切换。
UI界面的切换
如何保证点击返回按钮,它就切换到进入这个页面之前的那个页面?这个地方就牵涉到UI管理器,也就是UI框架的内容
这个游戏的网络数据同步
这里需要从服务器去读取每一个角色的排行榜数据。不过这个游戏是一款弱联网的游戏。难度比像实时竞技的皇室战争、王者荣耀、原神这样的游戏要简单的多
弹出式的UI
读取排行榜的时候,从服务器下载数据,下载完以后就断开了。出现一个弹出式的窗口,所以这个地方又牵涉到UI框架里面需要开发一个弹出式的UI功能
影集在点击上去时会有放大,滑动的动作
滚动框会自动选中这个影子的照片,捕获到整个屏幕的中间位置
这种自动选中是UI当中的snap操作
游戏设置
游戏的设置比较简单,基本就是下面这些。
下面是关于完蛋这款游戏它的核心玩法。
这款游戏也不是第一款通过剧情分支来推动游戏发展的这个游戏。但是他很好的利用了短视频,包括拿捏了人性,把这种类型的游戏在国内市场带火了
整个游戏剧情的线性部分
不同的分支剧情选择会带来不同的结果,不同的游戏走向
分支剧情的UI界面不是定死的,而是根据游戏的数据动态展开
你可以点中某一个剧情分支,重玩其中的这个剧情
如果这个剧情没有走这个分支,可以快进,直接进入到问答环节
而问答环节需要开发关于问答的选项
选项也不是固定死的,而是需要从游戏的配置数据里面读取
这些东西就是商业剧情游戏开发的最基本的东西,会推动剧情发展,从而进行游戏的游玩
重玩游戏的时候,还可以再选其他的分支去游玩这个游戏
游戏的耐玩性体现在这儿
分支剧情的重点是在游戏的数据结构里面配置数据
如果你能把这个游戏的数据配置好,并且能够通过你的算法驱动这样的一个分支剧情选择,那么就能够把这个剧情系统给它开发好
通过Excel表格进行配置
游戏的数据配置通常是策划通过Excel表格配置的
设计这个游戏的剧情并写入一个Excel表格,我们的程序去读取这个Excel表格
Excel表格的数据转化成程序能够读取的数据
程序启动的时候,加载这个数据
那么这个地方的难点在哪里呢?就是策划把数据转成Excel表格之后怎么去读取,并且还有一个核心的步骤就是能够驱动剧情
Excel表格每一行通常代表一条数据记录,每一列代表了要存储的跟剧情相关的数据
比如这个剧情的编号是001号剧情,剧情叫什么名称?这个剧情关联的子剧情是什么?
然后在数据配置好以后,程序把配置表配置的数据转化成对应的程序的算法,读取这些数据,驱动这个剧情,这是它的核心难点。
不是说会写一个把Excel数据转化成程序能够读取的数据的这个工具,那么就叫做会配置数据表了。
工具层面
思想层面
大家可以看,我们复刻原神游戏开发这样的项目当中,已经完美实现和复刻了一个多分支的剧情选择系统,大家可以参考一下。
也许你曾经在网上看到过一些教你实现游戏对话系统的教程。但是我们今天要分享的是一个更复杂的,甚至说跟原神达到了90%还原度的一个对话系统
首先对话系统的数据通过配置表来进行配置
然后原神对话系统的对话分成两种类型:
第一种:无分支的纯信息类的对话
第二种:需要进行分支选择并驱动剧情发展的对话
这种数据配置就对开发者的要求高了一个层次:
比如这里可以选择刚才那个对话项,进入到一个子菜单项,进一步的进行分支选择
甚至在系统里面,无限制的去拓展剧情对话分支
而且如果无限制的拓展剧情对话分支,然后让这些剧情对话去推动游戏的发展,不是就跟刚才大家看到的完蛋,我被美女包围了这种游戏的系统实现是一样的?
所以这种业务逻辑对配置表和算法的要求就比之前要高。配置表要比较灵活,并且算法能够支持的情况下,才能够实现无限的分支选择。
在逻辑层点击某一个按钮,然后驱动引发一个事件
这个事件引发这个剧情往下一步发展,这就是事件中心
但出现选项不需要事件中心参与,只要在配置表里面配好
从而分支项就会带动游戏的发展,另外思路上扩展一下
像底特律变人这样的纯靠剧情分支来带动剧情发展的游戏可以基于配置表去实现灵活的配置
最后可以点击再见
另外再见功能虽然简单,但要注意的是出现多个剧情对话分支选择的时候,简单的再见,可能产生很多的坑点,比如:
无法正确的关闭对话菜单
选项跑到剧情对话子菜单的第一项上面
最后来做一个小结,通过本次分享我们了解到要复刻原神这样一款游戏,你需要掌握:
如何配置基本的无分支游戏对话数据
如何实现有分支的剧情对话
如何实现多级分支剧情对话
如何实现通过分支剧情带动游戏发展
如何正确的跟NPC说再见
本次分享就到这里,要系统学习复刻像原神一样的联网二次元RPG游戏,请参考我们的原神游戏开发
进一步学习交流,请关注我
完整视频请点击本链接观看:【游戏开发指南】完蛋!我被美女包围了!