bournes / Nova

Programmer-friendly framework for visual novels (VN) / text-based adventure games (AVG) on Unity

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Nova(能叶)

Nova banner

基于Unity,对程序员友好的视觉小说(VN)/文字冒险游戏(AVG)框架

使用说明

  1. git clone,为了节约时间可以加上--depth 1
  2. 准备打开我们的示例工程
    • ProjectSettings/ProjectVersion.txt中的Unity版本号改为你的版本号
    • Assets/Examples/Colorless/文件夹下的Scenes/, StandingsUncropped/和对应的.meta文件移动到Assets/文件夹下
    • Assets/Examples/Colorless/Resources/文件夹下的Colorless/, Locales/和对应的.meta文件移动到Assets/Resources/文件夹下
    • (如果操作正确,移动的过程中不会覆盖任何文件,Assets/Examples/文件夹下也不会剩下任何文件,除了空文件夹和对应的.meta文件)
    • (如果你知道自己在做什么,也可以不移动示例工程,而是在Assets/Assets/Resources/文件夹下新建自己的工程)
  3. 在Unity Editor中打开Assets/Scenes/Main.unity,运行游戏,把示例作品《Colorless》看一遍
  4. 把游戏中的教程看一遍,同时可以试着改一改脚本,脚本是Assets/Resources/Colorless/Scenarios/文件夹下的tut01.txt等文件
  5. 如果你想修改Colorless的脚本,需要先删除英文版的脚本,否则中文与英文的脚本会对不上
    • Assets/Resources/Locales/English/Colorless/Scenarios/文件夹下是英文版的脚本,可以全部删除
    • Assets/Resources/LocalizedResourcePaths.txt用来记录英文版用到的文件,可以删除
  6. 其他资料可以参考GitHub Wiki

常见问题

  • 网上已经有很多视觉小说引擎/框架了,Nova与它们的差异在哪里?

    这篇文章介绍了设计思路:https://zhuanlan.zhihu.com/p/272466277

  • 支持什么版本的Unity、什么操作系统/平台?

    支持Unity 2019及更高版本,Windows/Linux/macOS/Android/iOS平台。WebGL目前不支持,不过似乎已经有人成功让我们的依赖(tolua#和Json.NET)支持WebGL了,我们真要做的话应该也可以。

  • 我可以把解谜/战棋等游戏加到Nova里吗?我可以把Nova作为对话系统加到解谜/战棋等游戏里吗?

    绝大多数Unity能做的gameplay都可以加到Nova里,但是把Nova加到其他游戏里会比较困难。目前Nova的定位是“框架/模板”,而不是“插件/扩展包”。

  • Unity已死,Godot**!

    等Godot 4出来了再说。。

版本说明

  • v0.1:与《青箱》完全兼容的版本
  • v0.2:master branch上滚动更新的版本,重要的新功能包括新的脚本parser,预计还会加入新的基于JSON的存档系统,这些新功能不会影响游戏制作者的工作流程
  • v0.3:正在与我们的新作同步开发的版本(等我们把代码整理好了会放出来一个branch),预计的新功能包括URP和Addressables,这些新功能对游戏制作者的工作流程有一定影响

友情链接

  • 我们的第一部视觉小说作品《青箱》:Steam 知乎 Bangumi VNDB
  • 我们的微博:@LunaticWorks
  • 我们的QQ群:876212259,如果以后讨论程序的人多了可能会再开一个程序群

也可以看一看其他的视觉小说引擎:

  • Ren'Py:如果你没有编程基础但是想学,或者有Python基础,推荐用这个引擎
  • AVG.js:如果你信仰web前端,推荐用这个引擎
  • Librian:Python后端和web前端混合的引擎,作者是个萝莉控
  • AVGPlus:另一个使用web前端的引擎,似乎得到了Xihe Animation的支持
  • Snowing:用C++写的硬核引擎

以及通用游戏引擎:

  • PainterEngine:由C语言编写的跨平台图形应用框架
  • EtherEngine:基于Lua的跨平台游戏接口
  • Luna Engine:这个引擎不是我们做的,不过看起来很有意思

以及

  • UniGal:为了解决各家视觉小说引擎的碎片化问题,而定义的通用脚本格式

本框架的依赖:

国内镜像(随缘更新):

About

Programmer-friendly framework for visual novels (VN) / text-based adventure games (AVG) on Unity

License:MIT License


Languages

Language:C# 59.9%Language:ShaderLab 27.4%Language:Lua 5.5%Language:Python 4.9%Language:HLSL 2.0%Language:GLSL 0.3%