简介
什么是Vyno
Visual Novel(视觉小说,以下简称VN)发音类似vino,故取名Vyno。
vino (/vɪˈnɔʊ/),意大利语单词,意为“葡萄酒”
特点
开源社区中已经有很多优秀的visual novel框架,它们提供了简易的脚本语法,能够让我们快速地编写一个视觉小说游戏。 例如:
笔者曾经也试用过这些框架,不过从笔者作为一个JavaScripter的角度来看,我更希望有一个更加灵活的JS框架,能够让我更加自由地编写我的视觉小说游戏。
比如:
- 更符合过程式习惯的语法:要执行流程控制,需要使用
if,else,for,while等编程语言常用的控制流语句,如果有可复用或者可简化的地方,则封装一个函数再来调用。 - 更灵活的效果控制:在需要的时候,无需改动源核心代码,直接使用动态的
jsx组件,能够让我更加自由地为游戏添加额外的组件效果,并且日后可以通过这些组件,作为插件系统,实现更多的额外特性。 - 常见的游戏数据格式:要支持数字,字符串,以及数组,对象等高级数据状态,需要更简单直观的定义和调用方式,并且拥有较好的
类型支持,并且提供响应式能力以嵌入到jsx组件中。 - 动态外部输入的响应:在需要的时候,能够从网络请求、aigc、外部代码、随机数、时间、输入组件中获取
非系统内部数据 - 开发体验:编排动画效果时,直接拖拽画布上的物体,就得到生成该效果所需要的代码数据。
- 契合常见的开发工具,例如vscode、cursor:提供较好的
代码补全、类型提示、错误提示、代码格式化、代码lint等功能。由于是typescript,llm阅读api后再来vibe coding也能提供较好的支持。 - 轻量级实现,且易于扩展调试:在发现问题时,不用重新打包核心代码,随时进行调试和修复。
- … …
总之,笔者想要的Vyno就是一个语法灵活、核心轻量、借助typescript、react、web生态的视觉小说框架。
快速上手
Last updated on