# 介绍
星夜(StarNight Engine)是一款基于 Web 技术的视觉小说引擎。
# 优势特点
# 功能强大
真正还原了现有的 Gal 作品,一切功能完全对标,并将随着移植项目继续持续更新。
# 先进稳定
星夜自 2021 年建立项目,最初目的是移植和重制当前的 Gal 作品,并尽可能百分百的还原原作品的演出效果。
为了达成这个目的,开发速度快、扩展性好、表现稳定自然成为了星夜的开发目标,而到了现在,这些目标已经基本实现。
内核方面,星夜使用由 await 和 yield 实现的新一代状态机,遵循证明大于测试的原则,所有行为完全可预测。
界面方面,星夜使用由真实 dom 驱动的 solidjs,并使用专门简化的状态管理和组件结构,没有复杂的特殊概念,可以轻松上手。
# 易于扩展
经过长期实践,星夜针对视觉小说创作构建了优秀的解决方案。
程序简单直接,得益于响应式信号
基础设施和状态演算
内核,扩展新功能,如"动态改变文本颜色",最少只需两行代码。
命令可组合,每个命令都从最小的可组合单元构建出来,你可以根据自己的需求组合命令,如"不同角色发言文本颜色不同",就可以组合“对话”命令与“文本颜色”命令。
命令可插拔,每个命令都只实现自己的功能,所有代码集中在一个文件中,你可以轻松的添加或者移除一个命令,如果你想,也可以编写自己的命令预设集。
内核与界面完全解耦,内核通过事件驱动的方式工作,你只需要调用XxxEvent.publish()
,其余都由你自己掌握。如果你需要完全定制,星夜可以应用于任何一个基于信号的 UI 框架,比如Vue
。
# 生态良好
星夜通过融入现有工业生态,降低创作者的学习成本并获得生产级别的良好支持。
星夜的剧本使用 JavaScript/TypeScript
编写,通过一些编译器技巧获得简洁语法与强大功能之间的平衡,你不需要学习某种专用的语法,而是直接使用一款主流编程语言,享受包括智能提示,自动补全等所有语言生态。
星夜的跨平台能力使用capacitor
和tauri
实现,一些通用配置已经预设好,你可以使用它们提供的插件便捷的自定义设置。
# 使用条款
# 交流与反馈
基础入门 →