#player #visual #engine #color #net #font #novels

app vngine

视觉小说的播放器和引擎

1 个不稳定版本

0.1.0 2021年9月30日

#36#visual

MIT/Apache

2MB
1K SLoC

格式

需要多个文件

  • 项目文件 (.vng)
  • 皮特里网和映射的名称 (.pns, .pnk)
  • 故事 (.story)

您还可以查看 简单示例项目

项目文件

此文件具有基于行的格式,表示键值列表。列表由空格分隔。它具有多个类似这样的行

key1 value1
key2 value2
key3 value3

目前支持以下功能的键

  • 文件路径
  • 颜色
  • 字体
  • 计时

文件路径

这些键指定文件路径。它们后面跟着一个文件路径。

支持这三个文件

  • net
  • names
  • story

它们默认为项目文件名 (project.vng),但具有适当的扩展名 (project.pnsproject.pnkproject.story)。

颜色

颜色键用于指定特定UI元素的颜色。

目前支持以下颜色键

  • background
  • dialog-fill
  • dialog-line
  • choice-default-fill
  • choice-default-line
  • choice-select-fill
  • choice-select-line
  • revert-default-fill
  • revert-default-line
  • revert-select-fill
  • revert-select-line

默认情况下,所有轮廓 (line) 都是白色,所有填充 (fill) 和背景 (background) 都是黑色。

颜色可以是颜色名称或十六进制表示。

以下颜色名称可用

  • black
  • white
  • red
  • green
  • blue
  • yellow
  • cyan
  • magenta

十六进制表示可以有不同数量的数字

  • 1 或 2 位数字 => 灰度值
  • 3 或 6 位数字 => RGB值
  • 4 或 8 位数字 => RGBA值

字体

也有键可以指定备用字体。

您可以指定最多八个不同的字体,它们可能具有以下三个功能之一

  • bold
  • italic
  • monospace

特定的键是这些

  • default-font
  • default-font-bold
  • default-font-italic
  • default-font-bold-italic
  • mono-font
  • mono-font-bold
  • mono-font-italic
  • mono-font-bold-italic

计时

这些指定不同的计时(以秒为单位)

  • letter-time:下一个字母出现前的时间(默认:0.05秒)
  • line-time:下一行出现前的时间(默认:0.5秒)
  • select-time 选择选项时的动画持续时间(默认:0.5秒)

皮特里网和映射的名称

皮特里网文件指定了故事逻辑。特别是哪些事件需要完成才能启用新的事件。

了解名称映射很重要,皮特里网的哪个索引映射到哪个名称。

这样,您可以根据自己的喜好更改故事段网顺序。

故事

故事文件是一种基于行的文件格式,灵感来自Markdown。

标题以#开头。

每一行将代表文本框中的一行。每个文本框由一个文本块表示(多行文本,没有换行符)。

您可以在文本块之前添加一个名称后跟冒号(Name:)来指示某人正在说这些文字。该名称可能位于同一行或单独一行。

您可以通过写入特殊符号来添加格式。此符号之后的所有内容将以这种方式格式化。相同特殊符号的第二个实例将取消格式化。行末,所有格式都恢复到正常。

这些格式受支持

  • * 粗体
  • / 斜体
  • ' 等宽
  • ^ 上标
  • | 下标
  • _ 下划线
  • ~ 删除线

所有格式都可以组合。上标和下标的组合(^|)将产生小文本。

您可以通过在它们之前添加一个\来忽略格式并显示字符。

段的第一个文本块的第一行将是选择名称。

用法

打开项目

只需打开项目文件。

在命令行上,这样操作

vngine [project.vng]

控件

您可以使用鼠标或箭头键进行控制。

有三个动作

  • 确认
  • 撤销
  • 选择

您按左鼠标按钮或右箭头键确认并推进故事。

您按右鼠标按钮或左箭头键撤销到上一个状态。

当有多个选择时,您可以通过移动光标或使用上下箭头键来选择选择。

如果选择是正常选择,您使用确认操作来确认您的选择。撤销操作将恢复到上一个状态。

但是,由于选择可以以不同的顺序撤销,因此也存在撤销选择。在这种情况下,您使用撤销操作来确认您的选择,因为它撤销了故事。确认操作仍然推进故事。

依赖关系

~8-12MB
~235K SLoC