我是如何用4个月从0到1独自开发一款游戏? 您所在的位置:网站首页 ruby开发游戏 我是如何用4个月从0到1独自开发一款游戏?

我是如何用4个月从0到1独自开发一款游戏?

2023-03-24 03:06| 来源: 网络整理| 查看: 265

【本文参与GWB更文挑战活动-首发原创】

 

【1】背景这是我的第一款作品,有meta元素的模拟类游戏。开发时间4个月,目前完成度50%,有Demo版本体验,目前已经上架Steam|TapTap|好游快爆:Steam:https://store.steampowered.com/app/2353320/N1/TapTap:https://www.taptap.cn/app/284240好游快爆:https://www.3839.com/a/150933.htm

 

游戏行业从业5年,岗位有做过策划/运营/PM/产品引入。尽管我的大学专业是数学与计算机方向,但我并没有实际的游戏开发经验。独自开发游戏的契机是2022年11月,被公司“炒鱿鱼”获赔N+1。和平分手,从公司立场来看,我也十分理解,甚至我现在都很愿意为前公司内推朋友入职,因为福利实在太好了。这就是我的背景,游戏行业的老油条,有那么点技术能力,就1个人独自开发游戏了。

 

【2】想:核心玩法、系统循环、数值设计

dRJsFfm67BZ9YxnAL2gx.pngykgUut1UKY5VhL0zxRvf.png

这是一份旧版的系统循环和部分玩法功能设定,跟当前版本出入很大。尽管如此,我认为真正开始做游戏前,甚至在制作游戏的不同阶段,根据实际开发进度和自身能力,想清楚再去做,会更关键。逐步验证:到底自己的能力是否能做,做出来是否好玩?

 

【3】工欲善其事必先利其器 GameFramework开发工具使用的是Unity,以及基于 Unity 引擎的游戏框架GameFramework。以下是Unity 和 GameFramework 的关系图:

【第一章】开启 Game Framework 之旅 - 第1张 | Game Framework

概括来说,GameFramework 为Unity游戏开发梳理了大多数常用的模块,比如:数据表、实体、UI界面、本地化、流程、场景、声音等等,基本满足大多数类型的游戏开发。

【第一章】开启 Game Framework 之旅 - 第5张 | Game Framework

但是,关于GameFramework教程极其少见,尽管有前辈铺路,但最终应用下来,还得靠自己一点一滴啃源码,在开发过程中理解和消化。在这里,我也简单总结一些心得,希望对大家有所帮助。

 

·流程 Proceduce在GameFramework框架下,游戏是由流程(Proceduce)控制的,基本可以分为:启动-初始化(闪屏)-预加载(读数据表、基础配置)-核心玩法流程,底层原理是FSM(状态机),它帮你封装了几个常用的功能:初次进入流程 Init|进入流程时Enter|每帧更新Update|退出流程 Exit 时可执行的代码。在这种结构下,你可以根据这些模块,清晰理顺整体的游戏框架结构,以及当Bug出现时,有效检查是哪个流程的哪个模块出现问题。

 

·实体 Entity在GameFramework框架下,实体是直接克隆已生成的预制体,它分为Logic(逻辑)和Data(数据),实体的生成还会关联到对象池(简单来说,每个实体的生成和销毁都是唯一的编号),尽管代码写起来很复杂,也关联到很多文档,但对游戏整体的监控都是有效和便捷的。

 

·界面 UI Form在GameFramework框架下,UI 界面存在唯一的编号 UIFromId,它存在3个地方相互验证,数据表|GameFramework预制体|UIFromId。也就是说,你每新建1个UI界面,必须更新这三个地方,然后把以UI界面命名C#文档,挂载到对应的预制体上。这样做的好处是,你可以在任何流程里,直接打开/关闭任何一个UI界面,你还可以设置UI界面的层级,多个UI界面是否并存等设定。

 

·配置 Setting在GameFramework框架下,你可以在本地设定数据类型(int,float,string,bool),有效提高数据结构的便利性。

 

·静态 Static(这是非GameFramework 框架下的经验)目前阶段我的不成熟理解,我几乎在每个玩法功能配置一个专属的Static文档,用来控制数据存储、以及跨流程玩法之间的交互。甚至后续我还有想法用来存储本地化,这对于Steam做多语言配置也很便捷(GameFramework也有专门做本地化的功能,但目前我只发现它只适配固定的UI文字)

 

……

 

在GameFramework框架的支持下,结合Unity 和 C# 的理解,我就这样一步步去啃源码,做游戏。过程是很煎熬的,我甚至重构过一遍代码,越写越简洁,拓展性越高。

 

目前对我最大的感悟就是,不要等所有事情都准备好,才开始去做。以代码举例,不要完全学透了Unity、C#,甚至刚提到的GameFramework。一旦你理解了基础,你就可以根据初衷和想法,开始行动!在制作的过程中,遇到问题再解决,这样的效率才是最高的,当然也是最煎熬的。

 

【4】心态“过刚者易折,善柔者不败。”这是出自老子的《上善弱水》。

 

做一款独立游戏,做重要的是做完,这是第一步。

接下来,就是在有限的时间内,用尽自己最大的能力,去表达和呈现,这是第二步。

第三步,也是最后一步,持之以恒。

 

至今我都认为,做独立游戏是一件“吃力不讨好”的事情。不稳定,赚不了什么钱,还累,各种压力……

 

但为什么还要去做呢?我相信,每个独立游戏制作人,心中都有坚定的答案。

如果还不够坚定,建议是多想想,再出发。

 

追梦,永远都不会晚。不要急,慢慢想。



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有