又到了全球游戏玩家一年一度的时刻。
明天是免费 RPG 日,在这一天,桌面角色扮演游戏行业的发行商将为新老玩家发布游戏,而且所有游戏都是完全免费的。虽然免费 RPG 日在 2020 年被取消,但今年它又以现场活动的形式回归,并通过 地牢爬行经典 和 Paizo 提供的免费 RPG 样品下载提供一些虚拟支持。如果该活动的虚拟产品还不够,您可以查看我的 开源桌面 RPG 列表。
在过去的两年里,和大多数人一样,我一直在网上玩我的桌面游戏。我使用开源视频会议和一些共享地图软件。别误会我的意思:我喜欢用笔和纸进行模拟游戏。直到今天,我出门时仍然很少不带 2E5 方格本,这样我就可以随时随地绘制地牢地图。但我发现我的电脑桌面上堆满了 RPG 资料书、扩展书、随机表格、骰子塔、骰子和角色卡,显得非常杂乱。为了清理一些空间,我最近为我的角色卡采用了数字系统,包括我的玩家角色和我在担任地下城城主 (DM) 时的非玩家角色。
数字角色卡
通常,角色卡是用铅笔在老式纸上填写的。这是一种历史悠久的传统,我从 80 年代后期就开始这样做,甚至更有经验的玩家从 70 年代后期就开始这样做了。转向数字化可能是远离某些感觉像是游戏固有组成部分的一大步。我理解这种情感,我不会轻视我的数字角色卡。
当我决定借助计算机来维护角色时,我坚持认为我的转变必须带来实质性的好处。我尝试了两种不同的数字角色卡选项,我的一位玩家发明了第三种。它们都是开源的,我相信它们各自都有独特的优势,值得尝试。
pc
pc
命令将角色数据读取为 INI 文件,然后允许您按类别或属性查询它。该格式相对灵活,使其适用于大多数 RPG 系统,无论您玩的是龙与地下城 (D&D)、剑与巫术 (Swords & Wizardry)、开拓者 (Pathfinder)、星际探索者 (Starfinder)、星际漂流者 (Stardrifter) 还是其他游戏。
INI 文件的语法非常简单,几乎是直观的。每个标题都用方括号括起来,每个属性都是键值对。
这是一个小样本
[Character]
Name=Skullerix
Level=5
Class=Fighter
Ancestry=Human
[Health]
AC=14
HP=43
Max=66
此格式的限制是您不能拥有单值属性。这意味着,如果您想列出在龙与地下城 5 版中获得熟练加值的属性,您不能只列出这些属性
[Save]
DEX
INT
相反,您必须强制它们成为一对。
在龙与地下城 5 版中,很容易想出一个值。这些豁免检定被突出显示仅仅是因为您的熟练加值适用于它们,所以我只是记下角色当前的加值
[Save]
DEX=3
INT=3
在其他系统中,可能存在一些属性根本没有值,实际上只是为了列出而存在的。在这种情况下,您可以将值设置为自身或 True
[Save]
DEX=DEX
INT=True
一旦您将角色数据输入到 INI 格式中,您就可以使用 pc
命令查询它。该命令需要 --character
或 -c
选项以及您要查询的角色卡文件。如果没有其他参数,您将获得整个角色卡的列表。
添加标题名称以查看一个类别中的所有属性
$ pc -c skullerix.ini Character
Character:
Name: Skullerix
Level: 5
Class: Fighter
Ancestry: Human
提供标题名称和键名称以查看特定属性的值
$ pc -c skullerix.ini Character Level
Level: 5
如果您像我一样玩很多游戏,您可以将所有角色保存在默认位置 ~/.local/share/pc,
,然后无需路径或文件扩展名即可查询它们。
例如,假设您在 ~/.local/share/pc
中有 froese.ini、kitaro.ini
和 wendy.ini<
$ pc -c kitaro Character Class
Class: Wizard
$ pc -c wendy Health AC
23
$ pc -c froese Save INT
3
要查看默认文件夹中的角色,请使用 --list
或 -l
选项
$ pc --list
froese.ini
kitaro.ini
wendy.ini
pc 项目是用 Lua 编写的,可以从其 Gitlab 仓库 获取。
PCGen
PCGen 是一款旨在帮助您构建和维护角色的应用程序。它甚至了解它正在协助您使用的系统规则。PCGen 远非仅仅是一个配置文件生成器,它还是一个开源规则数据库,以及这些规则在一个角色生命周期内如何相互关联。
PCGen 可以为龙与地下城 5 版、开拓者 1 版、星际探索者和奇幻工艺 (Fantasy Craft) 构建角色。当您首次启动 PCGen 时,您可以下载每个游戏的规则定义。这些文件很小,但根据您要安装的内容,可能有很多文件需要下载。
不过,您只需要做一次,PCGen 会处理除单击按钮开始下载每个系统之外的所有其他事情。
下载完所有内容后,您可以从文件菜单中选择新建来开始创建角色。
PCGen 会在标记为待办事项的面板中跟踪未完成的任务,并帮助您完成满足每个要求的流程,直到您获得完整的角色。

(Seth Kenlon, CC BY-SA 4.0)
PCGen 会为您完成所有计算,因此您不必计算您的技能等级、熟练加值如何影响您的投掷以及其他计算。更好的是,您不必计算您的分数如何随着等级的提升而变化,甚至不必计算您在每个新等级中获得的收益。您将在每个等级进行选择,但您不必翻阅规则书,希望您不会遗漏任何重要的内容。
我最喜欢 PCGen 的功能之一是它能够在完成后渲染您的角色卡。
在纸上,您的眼睛可能确切地知道在哪里查找您的熟练加值、技能等级或其他角色属性。在某些格式中,当您数字化时,您会丢失这些信息。PCGen 具有内置的渲染器,可以以标准的角色卡布局向您显示您的角色,经验丰富的玩家可能会觉得这些布局很熟悉。

(Seth Kenlon, CC BY-SA 4.0)
PCGen 是 ENnie 奖的获得者,这是当之无愧的。使用 PCGen 维护角色非常容易,我发现自己经常在慵懒的午后打开这个应用程序,只是为了享受构建新事物的乐趣。
- 在 Linux 上,从 pcgen.org 下载 PCGen 的通用安装程序。您必须安装 Java。)运行
pcgen.sh
以启动应用程序。 - 在 macOS 上,从 pcgen.org 下载 PCGen 的通用安装程序。您必须安装 Java。)运行
pcgen.sh
以启动应用程序。 - 在 Windows 上,从 pcgen.org 下载 PCGen 的 Windows 安装程序。您还必须安装 Java。
玩家角色 XML
使用终端命令查询角色卡的优势之一是您可以摆脱布局的束缚。
玩几个游戏系统可能很费力,因为几乎每个系统都有自己的布局。但是,使用终端命令,您可以让计算机进行扫描,而不是在纸张上查找数据,从而快速查找相同的信息。
我最近一直在享受的一个角色跟踪项目是 d 项目,它使用 XML 来表达角色属性,并使用 xmllint
命令来查询它。d 项目具有一些实用程序
d
命令掷骰子(包括 FUDGE 骰子)。v
命令查询角色卡。e
命令通过将文件放置在可预测的位置来初始化您的主目录。
由于 XML 非常灵活,因此这种格式允许您根据最适合您的系统的方式设计自己的架构。
例如,像龙与地下城或开拓者这样的基于职业的系统可能会受益于特殊职业功能的部分,而基于技能的系统可能具有没有类别的简单架构。
这是一个简单的例子
<char>
<name>Robin Hood</name>
<health>20</health>
<acrobat>5</acrobat>
<archery>8</archery>
<disguise>3</disguise>
</char>
首先,导出角色卡的位置
$ export CHAR_SHEET=~/.config/char/robin.xml
或者,您可以使用 e
命令初始化您的主目录,该命令会创建 ~/.config/char
目录,并在您的 .bashrc
文件中定义 CHAR_SHEET
变量
$ e init
配置好环境后,您可以查询您的角色卡
$ ./v char.name
<name>Robin Hood</name>
$ ./v char.archery
<archery>7</archery>
从功能上讲,v
类似于 pc
脚本,但由于它使用 XML,因此查看方式有很多可能性。借助 XSL,您可以为基于 XML 的角色卡设置样式,并为不熟悉终端的用户提供布局,但仍为熟悉终端的用户保留 XML 源代码。
开放餐桌上的开源
无论您是在寻找像 PCGen 这样复杂的应用程序来指导您完成角色创建,还是像 pc 或 d 这样简单的实用程序来快速查询角色属性,开源都有很多选项供您选择。
工具的选择正是使您在数字远程环境中进行模拟游戏如此愉快的原因。
评论已关闭。