纯文字游戏编辑器_重新认识CocosCreator系列之三:立Flag啦,文字游戏编辑器!...

从本篇开始,我们就来一步一步从零开始编写一个自己的游戏编辑器。

7d7f8ca8b1cd818b10807d0d548b1202.png

在编写之前,我也做了许多准备工作,其中Construct3我仔细了解了一番,刚刚发现最近增加了简体中文版本,看来还是很照顾中国市场的,有兴趣可以体验一番。

虽然感觉可以挑战下,但是体量还是稍微有点大,不太适合立flag,万一打脸了呢?以后,有机会一定挑战下。

9625690e9448afcf982cacceca390d76.png

我们不需要写的像creator那么高度可复用,我们只针对特定游戏类型进行定制,有点类似《魔兽争霸》编辑器,是为特定游戏类型服务的,别激动,我们也不搞这么高大上的编辑器,我们就只针对文字游戏进行定制编辑器。

顺带扩展下思路,任何游戏类型的游戏(2D,3D)都可以制作配套的编辑器,如果Creator是偏底层的话,那么我们的编辑器就是偏应用层的,是完全不同的编辑器思路。

为了保证后续教程的可持续性,我们先设定一个小目标,教程结束后,我们将完成一个最简单的纯文字游戏编辑器,如果大家有玩过生命线的话,最终生成的游戏就是和这款游戏类似。

34ccc3d79841a6c6413720af5222e4ae.png

游戏玩法大致如下图所示:

72cc39f3f7a5c83d04e74a4c44966c04.png

游戏中全靠文字对话撑起整个游戏剧情,不同的选择会导致不同的游戏剧情走向。

在调研这款游戏的时候,偶然也发现了『蝶梦文字游戏编辑器』(此处绝无广告的嫌疑,我也没收钱),并且还在运营,在体验了之后,我的内心一直回荡这一个字:抄。

c94970251400a231a5a52d8c6518497b.png

OK,那么我们正式进入正题。

我们先进行一些准备工作,那么都需要哪些内容才能完整的实现出来一个编辑器呢?听说给你分(chui)析(niu)一番:

  1. 首先我们需要编写游戏的基本逻辑,这是游戏的灵魂,也是编辑器的基础,相信creator老司机们,编写这样一个简单的文字游戏逻辑,应该问题不大吧,这都不会,出门左拐,不送。

  2. 我们其实很容易观察到,这种文字游戏,其实是依靠数据驱动,逻辑并不复杂,而我们要编写配套的游戏编辑器,核心其实就是生产数据,在这里我们使用的是Electron,将游戏逻辑嵌入到编辑器中,并编写配套的编辑器逻辑,并且可以视需求,定制一些实用的功能,比如实时展示运行游戏,展示剧情走向逻辑关系等等。

  3. 游戏最终是要发布出去的,发布流程其实就是将游戏逻辑游戏数据打包的过程。

经过以上分析,个人认为整个一个编辑器想要顺利开发完成,需要具备以下能力:

  1. 对编辑器整体的设计架构能力,如何把一个需求功能,正确的拆分为游戏逻辑、编辑器逻辑等。

  2. 对知识的广度也有一定要求,只有见得多,才能形成自己的认知理解,至于深度嘛,熟练掌握即可。

    游戏逻辑部分:不需要你达到图形学大佬的水平,能写个斗地主,打飞机小游戏就可以。

    编辑器部分:因为Electron使用的web开发技术栈,所以不是web前端老司机也不要紧,web小菜鸡会使用vue,能写个hello world就可以。

  3. 最重要的能力,将1和2,结合起来。

一通分析猛如虎,战力只有0.5,让你失望了,到现在为止,都是在介绍思路,毕竟三思而后行,写代码亦是如此。

在下一篇教程中,就开始真正的代码实战了。

537c1867525051bef6870dbd531638e4.png

在此时间,你可以抽空了解以下内容,因为紧接着会涉及大量这方面的知识:

  1. Cocos Creator

  2. Electron

  3. Web三件套(JS,HTML,CSS)

  4. Vue:注意,为了降低开发难度,我不会采用vue-cli。

  5. Vuex:视情况啦,但我还是建议你学习下。

  6. Element-ui:ui框架采用了比较流行的框架之一,如果你对其他ui框架比较熟悉,可忽略这部分知识。

  7. 项目开发语言采用js,不采用ts的原因是,配置越简单越好。

好啦,本篇文章到此结束,虽然没有实战,但是知识点还真的满满一堆,相信完成这个编辑器,绝对能让你从新的角度重新认识creator。

如果这篇文章对你有帮助,请自觉赞赏,谢谢!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值