谁说 LaTeX 只能写论文?这个开源模板连 D&D 游戏规则书和魔法卡牌都能排!

发布于 2026-10-24 19:01:52

提起 LaTeX,很多人的第一印象可能是数学公式、学术论文、毕业论文和科研排版。

但 LaTeX 的能力远不止于此。

如果你喜欢桌面角色扮演游戏(RPG)、奇幻冒险、魔法卡牌,或者科幻世界观设定,那么今天介绍的这个开源项目,可能会让你重新认识 LaTeX 的排版能力。

它就是 RPG LaTeX Template(rpgtex):一个专门用于制作角色扮演游戏相关文档的 LaTeX 模板项目。

GitHub 项目地址:

https://github.com/DrFraserGovil/rpgtex

网盘链接:https://pan.quark.cn/s/719f85ad0838

一、让 LaTeX 排版走进游戏世界

rpgtex 的定位非常明确:利用 LaTeX 制作角色扮演游戏中的各种出版物,包括冒险故事、游戏规则书、玩家手册、道具卡牌、法术卡牌等。

它采用了模块化设计,将底层排版功能与视觉主题分离。简单来说,你可以使用同一套核心功能,切换不同的视觉风格,而不必从头设计整份文档。

项目目前提供了三种主题:

  • default:简约风格。 接近传统 LaTeX 文档的视觉效果,适合追求简洁、清晰的排版。
  • dnd:奇幻冒险风格。 采用羊皮纸质感、章节配色和装饰性页面设计,适合制作类似《龙与地下城》(Dungeons & Dragons,简称 D&D)风格的规则书。
  • scifi:科幻风格。 使用具有未来感的字体、冷灰色页面,以及类似星舰界面的页脚和边框,适合制作科幻任务简报。

更有意思的是,这些主题不仅可以用于整份文档,还可以在同一份文档中途切换。项目也支持用户自行创建主题,定制字体、颜色、页面设计和信息框等元素。

二、不只是书籍,连游戏卡牌也能制作

rpgtex 并非只是一个美化页面的模板,它还提供了多种文档类型。

1. 游戏规则书与冒险手册

通过 rpgbook 文档类,可以制作完整的游戏规则书或冒险手册,支持封面、章节分隔页、双栏排版和装饰性页脚。

2. 玩家手册与任务说明

rpghandout 适合制作篇幅较短的文档,例如玩家需要阅读的背景资料、任务说明和游戏提示。

3. 道具卡、法术卡与能力卡

使用 rpgcard,可以将物品、法术和角色能力排版成独立卡片,方便屏幕展示或打印使用。

如果需要把多张卡片组合起来进行排版,还可以使用 rpgdeck,将卡牌集中编排成一套适合打印的卡组。

此外,如果你已经有自己的 LaTeX 文档,也可以直接加载 rpgtex 宏包,而不必完全更换原有文档类。

三、真正有意思的是:它把游戏规则也做成了可编程内容

对于熟悉 LaTeX 的读者来说,rpgtex 更值得关注的地方,是它不仅能控制外观,还能对游戏内容进行结构化排版。

1. 自动排版怪物与角色数据

项目提供了 RpgStat 等环境,用于排版角色、怪物等数据。

在 D&D 主题中,部分属性还可以自动计算。例如,输入生物的能力值和挑战等级后,模板能够计算属性调整值、豁免、技能加值、熟练加值、经验值、攻击加值以及法术豁免 DC 等内容。

这意味着,你不必每次修改角色属性后,都手动检查和更新所有相关数值。

2. 骰子表达式也能统一处理

例如:

\RpgDice{2d6+3}

可以用于排版骰子表达式。不同主题可以采用不同的显示样式,而 D&D 主题还可以显示平均伤害值。

3. 地图区域可以自动编号

对于包含多个地点的冒险地图,rpgtex 支持对地点进行自动编号,并允许使用名称引用对应区域。

它还支持嵌套编号,例如 1B-iii,对于结构复杂的地下城、迷宫和冒险场景尤其有用。

4. 同一份文档可以生成不同版本

游戏主持人通常需要掌握完整信息,而玩家只能看到公开内容。

rpgtex 提供了秘密内容的处理机制,可以在同一份源文件中编写主持人版本和玩家版本,并选择最终打印哪一类内容。

对于需要同时维护多个版本的规则文档,这种设计很实用。

四、信息框、表格和页面装饰,一个也不少

除了游戏专用功能,rpgtex 还提供了一系列常见的排版组件:

  • 提示框、侧边栏和朗读文本框;
  • 支持交替行配色、标题和跨页排版的表格;
  • 首字下沉、描边文字和整页图片;
  • 可应用于信息框的装饰性边框;
  • 支持文字模式和卡牌模式的物品、专长、法术及角色数据。

因此,它既能处理规则书中的大段说明文字,也能处理结构化的数据内容,适合制作内容丰富、版式多样的游戏出版物。

五、如何开始使用?

如果你已经安装了 LaTeX,并且具备基本使用经验,可以按照项目文档安装。

第一步:下载项目

在终端中执行:

mkdir -p "$(kpsewhich -var-value TEXMFHOME)/tex/latex"

git clone https://github.com/DrFraserGovil/rpgtex.git \
"$(kpsewhich -var-value TEXMFHOME)/tex/latex/rpgtex"

这会将项目克隆到个人 TeX 树中,使 LaTeX 能够查找相应文件。

第二步:编写一个简单的游戏规则书

例如,下面是一份使用 D&D 主题的最小示例:

\documentclass[theme=dnd]{rpgbook}

\title{The Sunken Temple}
\author{A. Writer}

\begin{document}

\maketitle

\chapter{Into the Depths}

\begin{RpgNarration}
The air grows cold as you descend the steps.
\end{RpgNarration}

\begin{RpgStat}{Temple Guardian}
  [str=18, dex=12, con=16, cr=5]
  \section{Actions}
  \melee{Slam}
    [dmg=2d8+\RpgStatMod{str},
     dmg-type=bludgeoning]
\end{RpgStat}

\end{document}

这个示例创建了一份名为 The Sunken Temple 的冒险规则书,包含章节标题、叙事文本框,以及一个具有属性和攻击动作的神殿守卫。

第三步:编译文档

rpgtex 使用 fontspec 加载字体,因此需要使用 XeLaTeX 或 LuaLaTeX 编译,例如:

xelatex main.tex

项目还提供了一个名为 rpglatex 的 Python 3 编译脚本,可以帮助运行所需的编译轮次、整理辅助文件,并从命令行切换打印模式。

需要注意的是,项目假设使用者已经具备基本的 LaTeX 环境。官方文档提供了更完整的安装说明、配置方法和示例文件。

rpgtex 提醒我们:LaTeX 并不局限于论文、公式和学术出版。

从奇幻冒险规则书,到可打印的游戏卡牌,再到具有未来科技感的任务简报,这个开源项目展示了 LaTeX 在创意出版领域的另一种可能。

如果你正在寻找一个有趣的 LaTeX 项目,不妨去 GitHub 看看它的示例和官方文档。

项目地址: https://github.com/DrFraserGovil/rpgtex

7_2_quill_1.png
8_3_spell_1.png
9_4_dnd-book_2.png
9_4_dnd-book_3.png
11_scifi_1.png

也许,下一本属于你的奇幻冒险手册,就可以从一份 .tex 文件开始。

0 条评论

发布
问题