Files
mod_town_pack/docs/zh.md
T

4.5 KiB
Raw Blame History

Town Pack — 城镇、住宅与酒吧背景及酒吧环境音

Town Pack 是为小镇故事准备的现成布景:三张绘制好的背景图——城镇入口的街角、住宅门厅和夜晚的酒吧——外加酒吧的环境音循环。它不含剧情、场景或角色:图在哪里出现,由游戏自己决定。

两个内置游戏已经在共用它。Cthangover 使用城镇入口和门厅;My Novel 模板则把三张背景和酒吧环境音全用上了。由于两个游戏取用的是这个模组里的同一批文件,Town Pack 里的一处修正或一张更好的图,两边都能受益。

里面有什么

城镇入口 town/town_entry:铺着石板的街角,商店遮阳篷条纹相间。

城镇入口背景:石板路街角的一栋转角建筑,带着绿色和白色的遮阳篷。

住宅门厅 home/vestibule:带楼梯、扶手椅和挂画的门厅。

门厅背景:暖光笼罩的门厅里有木质楼梯、扶手椅、长凳和一幅装框的画。

酒吧 bar/bar:挂着灯笼的桌台、吧台和一排排酒瓶。

酒吧背景:灯笼照亮的桌台、吧台,以及横梁天花板下的酒架。

酒吧环境音 bar/bar_ambient:供 Ambience 声音通道使用的酒吧氛围 Ogg Vorbis 循环。

三张图都是 1920 × 1024。每张图都有一个同名、带 _depth 后缀的灰色伴生文件:

城镇入口的深度图:同一构图的灰度版本。

深度图不会直接展示给你看。显示背景时,游戏会同时加载 <name>_depth 并交给光照系统,供放置在场景上的光源使用。没有深度图的背景也能正常显示。

在哪里能看到它

  • Cthangover: town_entry 场景(城镇入口)和 home_vestibule 场景。
  • My Novel 模板: my_novel_town、my_novel_home 和 my_novel_bar。酒吧场景还会播放 bar/bar_ambient。

同一段城镇入口,在 My Novel 模板里伴着一段叙述为游戏开场:

My Novel 的第一个场景:城镇入口背景上显示一行「傍晚的小镇。路灯已经亮起,一阵凉风沿着石板路吹过」。

而在 Cthangover 里,同一个画面上,另一个故事给出了自己的选项:

Cthangover 的城镇入口:同一背景,选项为「回家」和「查看小巷」。

Town Pack 属于两个游戏的合集,会随它们一起加载。仅安装它并不会把这些地点加进别的游戏:游戏必须在自己的场景里使用这些背景。

在你的游戏中使用这些背景

  1. 把 town_pack>=1 加入内容模组的 depends 列表。
  2. 把 town_pack>=1 加入游戏的合集,就像 My Novel 模板在 Assets 块中做的那样。
  3. 按下文的名称引用资源。名称相对于 backgrounds/ 和 sounds/,不带扩展名。
// mods/my_game/manifest.json — 添加到已有列表
"depends": ["town_pack>=1"]

下面这段取自模板的 my_novel_bar 场景,展示酒吧并播放环境音:

{
  "name": "my_bar",
  "defaultBackground": "bar/bar",
  "defaultAmbient": "bar/bar_ambient"
}

剧本也可以在对话中途切换画面:

background town/town_entry
text "这个点,街上一个人影也没有。"

可用的名称如下:

town/town_entry     backgrounds/town/town_entry.png
home/vestibule      backgrounds/home/vestibule.png
bar/bar             backgrounds/bar/bar.png
bar/bar_ambient     sounds/bar/bar_ambient.ogg

为你的游戏替换图片

想替换图片又不想改动 Town Pack,可以在自己的模组里放一个相对名称相同的文件(例如 backgrounds/bar/bar.png),并在 depends 里声明 town_pack>=1。依赖所有者的模组后加载、优先生效。替换背景时,还要附带一个同名的 _depth 文件:否则游戏仍会找到 Town Pack 原来的深度图,光照就会按旧图的构图分布。

没有依赖声明时,两个提供同名资源的模组加载顺序不确定;资源图谱工具会把这种情况报为错误。

如果有东西没显示

  1. 背景变黑或缺失,多半是名称写错了。名称区分大小写,使用 /。
  2. 确认 Town Pack 被包含在所启动的游戏里,而不只是安装了。
  3. 酒吧没有声音:检查场景的 defaultAmbient 是否为 bar/bar_ambient,并确认 Settings → Sound(设置 → 声音)里 Ambience 已开启。声音播放由 Audio Engine 模组提供。