前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >ADV 游戏引擎计划

ADV 游戏引擎计划

作者头像
云游君
发布于 2021-05-21 03:08:08
发布于 2021-05-21 03:08:08
4.3K0
举报
文章被收录于专栏:云游的小教程云游的小教程

ADV.JS 又一个遥遥无期的大坑。

GitHub: https://github.com/YunYouJun/advjs Demo: https://advjs.elpsy.cn

前言

按照惯例,开坑前先来三问。是什么?为什么?怎么做?

ADV 是个啥?

冒险游戏(Adventure Game,缩写为 AVG 或 ADV)是电子游戏中的最早的类型之一。此类型游戏采取玩家输入或选择指令以改变行动的形式。强调故事线索的发掘及故事剧情,主要考验玩家的观察力和分析能力。该类游戏有时候很像角色扮演游戏,但不同的是,冒险游戏中玩家操控的游戏主角本身的等级、属性能力一般是固定不变并且不会影响游戏的进程。 通常 galgame 类型为 ADV 形式的,不是纯剧情+CG+选项的,而带一些其他方式操作,比如游戏里有卡牌对战或者战斗场面(例:恋姬无双)。 —— 摘自「百度百科 - ADV」

简而言之,平时我们常见的 Galgame / 视觉小说便是 ADV/AVG 的一种。

Galgame(日文假名:ギャルゲーム,平文式罗马字:Gyaru Gēmu,又称美少女游戏)是一种玩家可以与动画美少女进行互动的电子游戏,其受众主体曾经是日本男性,但现在的全年龄 GalGame 剧情面向受众已经不分男女。Galgame 的游戏类型大多数是 VNG(视觉小说)但是也有交互式的 Galgame。 —— 摘自「百度百科 - Galgame」

一般情况下,Galgame ∈ ADV = AVG。

ADV、AVG 和 Galgame 有什么区别?

为啥要做 ADV 游戏引擎?

调研

ADV/AVG 的游戏引擎已经有很多,但都各有千秋。

视觉小说引擎列表 - 维基百科

以下是个人的调研(搜索)简要评估,仅为个人观点,欢迎指正。

以上便是我目前大致了解到的 ADV/AVG 相关的游戏引擎。

那么已经有这么多的引擎,为什么还要执意造轮子呢?

因为自己日常开发使用 Mac,所以必须得支持跨平台,基本可以排除掉大半,去掉过于古老的,去掉客户端开发的,再排除掉鸽子和变态(开玩笑,当然这个不是主要原因,难道是次要的???)。

我想要制作一个更偏向于前端、轻量可扩展的 AVG 游戏引擎(框架?),尽可能使用 HTML/CSS 本身属性效果替代 Canvas 绘制。(当然,后续 Canvas 可以用于一些复杂的 3D 场景、模型之类的展示。)

目前尚未发现同类型项目,其次,即便功能相似,对于不同语言的偏好者或不同的应用场景也有其存在的意义,就不算重复造轮子,有了 Spring Boot,同样也有 Express/Koa/Nest.js、Laravel、Django 的诞生。

至于跑在浏览器,又有什么比得过 JavaScript 的天然优势呢?

近年来,也有云游戏的概念诞生,但此多基于视频流。对于 AVG/ADV 类型游戏来说,显然是不划算的,我们完全可以将压力不大的运算放到用户浏览器,将需要额外加载的图片/音频等资源放至云端的 CDN,只预加载临近的资源。既降低了带宽压力也不用担心操作的延迟。

浏览器自带的控制台、可选中的元素、可扩展的前端 UI 与背靠 Node.js npm 庞大生态的程序也很适合做 Meta Game - 元游戏

metagame 是什么? - 知乎

技术之外的原因

高中时,朋友向我推荐了「Fate/stay night」,并借我 U 盘拷贝。但家里的古董电脑不知为何总是安装失败,好不容易解决了玩了没多久便报了各种兼容错误。所以至今我也未曾进一步了解 Fate 系列的作品。

第一次看完「CLANNAD」的时候,我在宿舍感动地泪流满面,以至于怅然若失。便想要找来游戏以备日后重温,游戏大小 2/3G,加之宿舍带宽才 2M(是的,你没看错,是个位数!很老的线路,后来才有新的线路铺来),再者电脑系统那时都已经 Win8 及以上了。

而 CLANNAD 的平台则分别是 Windows 98/Me/2000/XP(初回限定版/通常版),Windows 2000/XP/Vista/7(完全语音版/全年龄对象版)。期间自又有一番曲折。

过了感伤的时段,也很难再在宿舍中静下心来回顾,到了排队等各类需要消磨时间的情况时,又会想着要是能在手机上游玩就好了。(看官您可能要说了,装虚拟机啊等等的方式应有尽有。但因为贫穷,手机容量本就捉襟见肘,套壳的各类体验也未必佳。)所以除此之外,从根本上有一种更为便捷的方式该有多好。

我始终觉得 AVG/ADV 一类对性能不敏感(但占用空间较大、CG/语音动辄数 G)的文字冒险游戏,将其放在云端是最好的选择。用户随时随地可以跨平台游玩,而无需过高性能的机器、充足的本地空间。而已有的此类型游戏的大部分演出效果,在浏览器端也基本可以实现。(当然,这也可能与近年来前端技术大爆炸有关。)

但我一直很奇怪为何很少此类型游戏的诞生。即便有,也是少数兴趣之作的 Demo。

当然,我能想到的有旧时代浏览器性能特性不足、服务器成本高、网速慢、游戏资源无法加密等。不过放到现今,却可排除大半,Chrome 无须多言,游戏的静态资源无需频繁更改,商业级别的话 CDN 平均下来相对游戏售价来说成本并不高,5G 时代网速还行,游戏资源本就有各类技巧提取,此外对于正版验证,反而线上账户更有利。

我很早前便有此想法,几年前发现了 AVG.js ,认识了 Icemic,但没想他一鸽便鸽至如今。后来又发现了 Librian,认识了到了 RimoChan 的变态,但终究与我期望的想法与设计偏好有所冲突。

除此之外,我也未能在开源社区,找到类似定位与功能的 AVG/ADV 引擎。

回顾起来,自己写过不少玩具项目,也干过不少活,提过些无关紧要的 PR,混了些 Star。 但就像东一榔头,西一棒槌,没有一个持之以恒的施力点。

虽然此前还整过个机器人项目,但因为依附 QQ 与腾讯的垄断策略而行走在灰色边缘,也亲眼见证了晨风作者被抓、酷 Q 关闭等风声鹤唳。我仍旧会坚持维护(毕竟自己有在用),但也很难再投入过多精力于其上。

真让我拿出一个自鸣得意、有完善生态体系的大项目,我反倒无言以对。

社区中见到的大牛们也多是专注围绕一个点,展开自己的工作,并持之以恒。譬如 尤雨溪与 Vue.js、Mike Bostock 与 D3.js、mrdoob 与 Three.js……(你问我为啥提这三个?因为感觉好像刚好可以用到。)

而写 AVG/ADV 引擎的上限可以很高,可以研究的内容也很多。我也有将自己无人问津的小说游戏化的打算。

至此,我决定从零开始,遵循本心,面向未来,开始这一项目。

怎么做?

且慢,万事开头难,起名最优先。

为了凸显大气,并避免与 AVG.js 重名,我决定将其命名为 ADV.js。(不过似乎少了很多个性化的感觉,所以还不确定是否是最终的名字。有啥好的建议欢迎提出!)

其次是因为「命运石之门」等一系列 5pb 作品,官方将之称为科学 ADV 系列,索性便也取此 ADV 之名。

目前预定的技术栈是 TypeScript + Vue3。

规范开发,上 TypeScript 已经无须异议。(虽然还是会有很多 any 的样子。)

而 Vue3 正式版总算姗姗来迟,且本身便使用了 TypeScript 重写,对 TS 的支持也有了提升。(次要原因则是练习一下 Vue3 啦。? 学不动了

为什么不用 React?AVG.js 便是基于 React,翻新这件事应该原 ? 本人来做,而我用 React 重写类似功能一来未必胜过原作,二来也未必有必要,三则设计理念与最终目的也不尽相同。此外个人 Vue 相比 React 要熟悉一些。并打算更面向未来。

本身想要在浏览器端实现各种效果,必然要使用许多新特性。(Chrome 天下第一,兼容 IE 是不可能的,这辈子不可能的。)

为了面向未来,也顺带直接上 vite。踩了不少坑(等咱这基本完善了,它也差不多稳定了吧),但一个字,快!

游戏内容无需也不应该考虑 SEO,本身内容演出也全部通过直接请求文本并实时解析。(面向未来,axios 都没有安装,直接用了 fetch,_(:з」∠)_ 虽然可能后续还是会用到)

这样对于编剧来说,只要简单的更改文本,而无需重新构建。

词法解析

但是在此之前,我们应当有一个剧本文本解析器,用于解析按照一定格式编写的剧本。

目前打算兼容 Markdown 语法,并采用 TS 编写,ES6 打包成 Browser/Node.js 库,可在浏览器端调用并展示实时解析的效果。

至于剩下的……,等我先写完当前的再说吧!

人物立绘

后续可能有(?)的其他内容,自定义配置文件(支持 JSON/YML ?)、多设备适配、支线选项控制、音乐系统(BGM 与配音)、摄像机系统(镜头)、立绘与 Live2D、front-matter 与更多兼容 Markdown 的剧本语法及自定义脚本、进度存储读取槽(本地 localStorage/ 网络 MongoDB)、场景路由、背景管理(融合 3D)、人物小传/关系、UI 主题、资源一键 CDN/预加载……

其他 Todo


To Be Continued.

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2020-09-28,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
架构师能力模型
开发者应该根据自己的性格、爱好来选择自己的职业方向。对于性格外向、愿意多与人交流、沟通能力较好的同学,可以考虑向管理方向发展。对于热爱技术、喜欢钻研、性格偏内向的同学,则更适合往技术方向发展。
物流IT圈
2019/07/25
1.8K0
架构师能力模型
2022年Java秋招面试求职必看的微服务面试题
微服务架构是一种架构风格和架构思想,在传统软件应用架构的基础上,将系统业务按照功能拆分为更细的服务。拆分的每一个服务都是一个独立的应用,这些应用对外提供公共的API,可以独立承担对外服务的职责。通过此种思想方式所开发的软件服务实体就是“微服务”,而围绕着微服务思想构建的一系列结构,都可以称之为“微服务架构”。
Java程序猿
2022/07/10
9470
我要批判架构师!
👆点击“博文视点Broadview”,获取更多书讯 我在阿里巴巴工作期间是一个名副其实的“刺头”,批判中台、批判架构师、批判技术管理者,当然,也包括自我批判。 今天来聊聊批判架构师! Martin Fowler在他的一篇IEEE论文“Who Needs an Architect?”中提到, 能使团队更加敏捷的架构师比只做决定的架构师要更有价值,因为只做决定的架构师会成为团队的瓶颈(bottleneck)。显然,一个架构师的价值和他做的决定是成反比的。 实际上,在这篇文章中,Martin甚至不认为架构师(
博文视点Broadview
2022/04/06
3310
我要批判架构师!
从产品经理到产品架构师
👆点击“博文视点Broadview”,获取更多书讯 产品经理岗位是怎么来的?其和产品架构师的关系是什么?为什么现在会出现产品架构师这个岗位呢?本文带你来一一解锁! 内容节选自《B端的奇点:产品架构师进阶之路》一书! 产品经理岗位最早是在快消行业中产生的,最初的目的是聚焦力量实现销量突破。为什么要这样做呢? 因为,在早期的快消行业中,所有的品类都是整体进行宣传推广的,并没有针对每个单品的区别化宣传,更没有为某个群体实现单独定制宣传计划的情况。在这种情况下,传统产品还能够依靠口碑和影响力持续销售,但是新产
博文视点Broadview
2023/05/19
7740
从产品经理到产品架构师
Java架构师必备的十种能力模型
架构师在很多人眼中是一个非常高大上的职业, 就像武侠小说中的绝世高手一样, 关键时刻可以起到扭转乾坤的作用, 是团队中的灵魂人物. 回想我自己做一线架构师的过程中, 也没有经历过比较系统的培训, 都是
本人秃顶程序员
2019/05/07
1.5K0
Java架构师必备的十种能力模型
技术同盟专家谈2:架构师能力模型有哪些关键点?
在技术江湖中,架构师一直是个神秘又充满挑战的角色。他们不仅要精通技术,还要洞察业务,更要具备卓越的领导力和沟通能力。那么,架构师的成长之路究竟有哪些关键节点呢?在技术同盟名人堂社群中,架构专家们也展开了热烈的讨论。
腾讯云架构师技术同盟
2025/01/26
1490
AI 时代架构师的破局之道与进阶之路,腾讯云架构师技术沙龙圆满落幕
AI 技术发展日新月异,AI 在自动编程展现巨大的潜力,因此企业对开发者提出更高的要求,不仅会写代码,还需具备架构设计、产品思维等综合能力。在这样的背景下,AI 时代下架构师的价值定位是怎样?面对技术的更新迭代,架构师如何规划自身成长路径,更好地增强竞争力,以寻求破局之道?
TVP官方团队
2025/04/28
1700
AI 时代架构师的破局之道与进阶之路,腾讯云架构师技术沙龙圆满落幕
资深架构师十年总结:成为架构师,你必须具备这五点能力
作者 | Alan Tai 译者 | 冬雨 策划 | 闫园园 在过去的 20 年里,作为一名软件工程师和软件架构师,我与不同领域和不同学科的软件工程师聊过很多次。他们中有一些人是有着 8 到 10 年经验的高级工程师,有许多人还在职业生涯早期,有着 3 到 5 年的经验。其中一些人是我的同事。有些人是求职者。聊到最后,他们几乎都会问到同样一个问题: “我想成为一名解决方案架构师。了解更多架构相关内容的资源有哪些?“——很多软件工程师都会问的一个问题。 他们问错了问题。如果你读下去,就会知道为什么我
深度学习与Python
2023/03/29
5910
资深架构师十年总结:成为架构师,你必须具备这五点能力
技术创作特训营 | 33 天实现自己的 AI 进化论
2025 年初,AI 大模型的风潮仍在加速,DeepSeek、GPT-4.5、Grok-3 等前沿大模型正在重塑开发者生态。你是否也想从日常编码中跳出来,找到属于自己的进化路径?3 月 9 日至 4 月 10 日,腾讯云开发者社区推出“技术创作特训营”,33 天专注挑战,和社区伙伴一起,深入“论文共读”“项目实战”“创意玩法”“趋势洞察”四大模块。无论你是刚接触AI的技术新手,专注于其他方向的开发者,还是AI领域的探索专家,都欢迎加入我们!从技术学习到创作输出,系统升级你的 AI 能力,定义属于你的进化方向。
腾讯云开发者
2025/03/20
1860
技术创作特训营 | 33 天实现自己的 AI 进化论
其实我们并不是很了解“架构师”。
在今天的互联网圈,可能随便遇到一个人递给你一张名片,title就是某某架构师。架构师多如过江之鲫,也正是眼下业内一个有趣的现象。对于架构师,你有什么看法?
挨踢小子部落阁
2019/08/19
5770
⚙️技术创作特训营 | 33 天实现自己的 AI 进化论💻
恭喜各位作者,请以上获奖作者在截止兑换前填写收货问卷完成兑奖。届时我们会通过社区站内信息提醒或微信沟通的方式提醒您填写,请留意。如有任何问题联系腾讯云开发者社区助理(微信号:yun_assistant)咨询。
腾讯云开发者社区
2025/03/07
57.9K15
架构师之路一-架构师入门指引
导读:本系列文章教你怎么样成为一名架构师,而本篇文章则带你先认识一下什么是架构师,架构师的工作是什么?
JAVA日知录
2020/03/12
3.3K0
大咖们如何评判优秀架构师?
李力:我成为架构师从某种程度上是一件机缘巧合的事情,腾讯没有架构师这样一个实际存在只去做架构规划的岗位,我们技术人员都统称为工程师。腾讯云在2012-13年刚开始研究做云服务器产品的时候,我深入研究了OpenStack这个当时业界最知名的架构,思考我们的云服务器应该怎样去设计才能很好支撑起海量业务。最终在选用开源的OpenStack方案还是自研之间,我们选择了后者。于是我自己设计出了腾讯自研的大规模任务调度系统VStation,从这个项目后我开始觉得自己从工程师变成架构师了,因为我需要去规划一些技术方案和未来的产品走向。再后来,我成为了腾讯云服务器和区块链业务的负责人。
腾讯云开发者
2020/05/08
3.6K2
技术创作特训营|开发者知识共享季🌳
恭喜各位作者,请以上获奖作者在截止兑换前填写收货问卷完成兑奖。届时我们会通过社区站内信息提醒或微信沟通的方式提醒您填写,请留意。如有任何问题联系腾讯云开发者社区助理(微信号:yun_assistant)咨询。
腾讯云开发者社区
2025/04/18
1.2K2
《IT架构师成长和认证指南》简介及第2章 IT架构师角色和素养
作者写了一本关于IT架构师成长和认证的书,希望先通过连载的形式拿出来分享,结合读者的反馈来不断调整完善,也作为全文校对完善的一种方法。本书希望对于那些想成长为架构师,并在架构师职业发展道路上不断进阶的读者们有所借鉴和指导,也欢迎业内专家不吝赐教和斧正。
企业架构师思维
2025/05/30
740
《IT架构师成长和认证指南》简介及第2章 IT架构师角色和素养
《IT架构师成长和认证指南》简介及第3章 IT架构思维(五)
作者写了一本关于IT架构师成长和认证的书,希望先通过连载的形式拿出来分享,结合读者的反馈来不断调整完善。本书希望对于那些想成长为架构师,并在架构师职业发展道路上不断进阶的读者们有所借鉴和指导,也欢迎业内专家不吝赐教和斧正。
企业架构师思维
2025/05/30
430
《IT架构师成长和认证指南》简介及第3章 IT架构思维(五)
参会指南 | 腾讯云架构师峰会,我们不见不散!
现场问答活动获奖公示 奖项 获奖作者昵称 获奖作者UID 奖品 提问量最高 用户11427295 11427295 QQ联名筋膜枪 提问被关注最多 stark张
TVP官方团队
2024/12/25
2250
参会指南 | 腾讯云架构师峰会,我们不见不散!
《IT架构师成长和认证指南》简介及第3章 IT架构思维(二)
作者写了一本关于IT架构师成长和认证的书,希望先通过连载的形式拿出来分享,结合读者的反馈来不断调整完善。本书希望对于那些想成长为架构师,并在架构师职业发展道路上不断进阶的读者们有所借鉴和指导,也欢迎业内专家不吝赐教和斧正。
企业架构师思维
2025/05/30
510
《IT架构师成长和认证指南》简介及第3章 IT架构思维(二)
架构师,没有你想的那么光鲜!
最近跟一个老弟聊天,他表示很想走上架构师的的岗位,今天就来聊一聊我对架构师这个岗位的理解。
jinjunzhu
2022/09/23
6970
架构与架构师3
在《架构与架构师2》[1]中引用了1995年David Garlan和Dewayne Perry给出的定义:
码农戏码
2021/11/12
4270
架构与架构师3
推荐阅读
相关推荐
架构师能力模型
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档