跳到主要内容
LokeeLokee

为不断变化的世界绘制地图:边界、统治者与战争

只用一张边界会变化的奇幻地图:从某个时刻起重塑边界、把行省交给新的统治者,并在 Lokee 中一条战线一条战线地回放一场战争。

作者:Paweł Arent,Lokee 开发者阅读约 13 分钟

边界会变化的奇幻地图在小说里很少见,原因很无趣:太费工夫。书前那张地图只画一次,然后就被悄悄地推翻。第 3 章里,河流是边界;到了第 20 章,边界已经移动,一个公国已经易主,首都已经焚毁,可那张地图展示的仍是第一页时的世界。在意这件事的作者,最后往往要为同一张地图保留好几个副本,一个时代一份,每次都得把共有的海岸线重新画一遍。

Lokee 只保留一张地图,并记录它如何变化。你先画出世界在开端时的样子,然后来到一个较晚的时刻,从那里开始修改:一条边界移动了,一座城镇消失了,一片领地落入新的主人手中。更早的时刻会保留地图原来的样子。角色和军队则站在他们的卡片所写的位置,以你正在查看的时刻为准。

本指南会带你走一遍一场小型的虚构战争:Varre 王国与 Ostmark 同盟为争夺边境行省 Sallow March(萨洛边区)而开战。先介绍其中涉及的每一个控件,再把整场战争从头到尾跑一遍。本文假设你已经有一张可以编辑的地图;如何绘制或导入地图,请参见从草图到可编辑的地图集。

示意图:同一边界在三个时刻的样子,以及一块易主的领土战前边境地归属于Vael 王国围城边境地从此处更改归属于Vael 王国和约之后边境地归属于自由城邦Vael 王国自由城邦
“从此处更改”从某一时刻起改变边界,“归属于”记录领土归谁所有。更早的时刻保留原来的地图。

时刻就是世界时间点

地图上一切随时间变化的东西,都锚定在 世界时间点 上,也就是时间线上你世界年表中的各个时刻。一条边界 在 某个时间点移动;一片领地 在 某个时间点易手。如果你以前没用过世界时间点,三种“何时”会解释它们,为虚构世界构建历法与时间线则介绍如何为它们标注日期。

不离开地图也能创建时刻。地图工具栏里的时间控件有 ‹ 和 ›(上一个时间点、下一个时间点)、▶(依次播放各个时刻)以及 +(在此之后新建时刻)。+ 弹出框需要输入名称(占位文字是“名称,例如“第2天,黄昏””)以及一个可选的日期;“它会紧接在当前查看的时刻之后,地图随即切换到它。”如果是从“当前”新建,新时刻会排到最后。如果世界库里还没有任何时刻,你只会看到 +,而第一个时刻也会同时创建时间线。同一个弹出框中的 全部时刻 会打开时间线,在那里可以重命名时刻、为它们标注日期,并用 ↑ 和 ↓ 调整顺序。

对于我们的战争:Teme 条约、Ostmark 渡河、Harlow 围城、Harlow 陷落、冬季停战。

“当前”还是某个时刻:你在编辑哪一个世界?

由地图顶部的 查看 控件决定。

在 当前 下,你编辑的是地图在所有时刻中的样子。在“当前”下修正的海岸线,在每个时刻都会被修正。故事中不会变化的那部分世界,以及纠正错误,都请在“当前”下进行。

在某个 世界时间点 下,提示会说明会发生什么变化:“新图形和“从此处更改”会从此刻起改变地图;更早的时刻保持不变。”在这个时刻之前就已存在的图形都是 已锁定 的。选中其中一个,检查器会解释:“这个图形在 Harlow 陷落之前就已存在。要从 Harlow 陷落起重塑它,请使用“从此处更改”——更早的时刻会保留原样。”

在某个 章节 下,也就是稿件中的位置而不是你世界中的时刻,地图完全不会随时间变化:“要随时间改变地图,请查看世界中的某个时间点,而不是某一章。”在对比两个时刻时,地图同样是只读的。

锁定是有意设计的。变化中的地图最常见的出错方式,就是在第 20 章随手一拖,悄无声息地挪动了第 3 章的边界。有了锁定,只有当你回到“当前”并且确实有意这么做时,过去才会改变。

怎样让边界从某个时刻起移动?

在某个时刻选中一个已锁定的图形,检查器会提供两个时间操作。

从此处更改 会让这个图形在此刻结束,并创建一份从这里开始的副本,而且已经替你选中,方便你直接重塑。拖动它的顶点,让它变得平滑或粗糙,给它重新命名。更早的时刻仍然显示原来的图形。在我们的战争里:在 Harlow 陷落,选中 Sallow March 的边界,选择 从此处更改,再把副本的东侧边缘拉回到丘陵一线。

在此结束 会从此刻起移除一个图形:Harlow 城被焚毁、一座要塞被夷平、一座桥被切断。在查看某个时刻时删除图形,会换一种说法问你同样的问题,“移除这个图形?”,并提供 在此结束——在更早的时刻保留它 或 在所有时刻删除。

你在这个时刻已经创建的图形不会被锁定,检查器会为它们提供 复制(按 Ctrl+D 也能在原图形旁复制一份)。

在“当前”下,检查器有一个相关的控件 更改起点,附带一个时间点列表:无需先查看某个时刻,就能让图形从那个时刻起产生新版本。如果你已经知道某条边界会在 Ostmark 渡河 时移动,同时又在“当前”下绘制地图的其余部分,这个控件就很方便。

新图形:始终存在,或从此刻起

在查看某个时刻时绘制新图形,工具栏上的 新图形: 开关决定它存在了多久。始终存在 是默认选项,会让它成为每个时刻地图的一部分,就像你是在“当前”下画的一样。从此刻起 则只让它从你正在查看的时刻开始出现:Harlow 城外的围城营地、一条新路、一道战后修起的城墙。

每个图形在检查器中还有一个 存在时间 区域,带有 从 和 至 两个世界时间点列表,默认值都是 始终。“‘至’是它不再存在的第一个时间点。”用它可以直接设定一段跨度,例如一座从 Teme 条约 存在到 Harlow 围城 的桥,或者检查“从此处更改”和“在此结束”都做了什么。

分割、地形橡皮擦与随时间“粘合边界”

分割领土是战争与条约的常态。分割 工具会沿着你画的一条线把区域切开:“在区域上画一条贯穿的线即可将其一分为二。较大的部分保留名称和关联。”在某个世界时间点下,分割会尊重时间:此刻之前就存在的图形会在这里结束,被分割的是它从此刻起的副本,所以更早的时刻会保留完整的行省。Sallow March 就是这样在 冬季停战 时一分为二,成为 Upper March 和 Lower March,而在此之前仍是一个行省。

地形橡皮擦 和 粘合边界 则不同。它们作用于每个时刻的几何形状,所以在你查看某个时间点时,Lokee 会拦住你:“橡皮擦和“粘合边界”会在所有时刻改变图形。请先使用“从此处更改”,或回到“当前”。”先用“从此处更改”创建一份从此刻开始的副本,再在副本上擦除或闭合缝隙。

吸附到边界(“你绘制的区域和城墙会精确沿着附近的边界”)在重塑边界时值得一直开着,这样相邻行省的边缘仍然能与它严丝合缝。

谁拥有一片领地:归属于

边界告诉你一条线在哪里;归属则告诉你这条线属于哪一方。Lokee 会按你正在查看的时刻、根据谁拥有区域来为它们着色,而这来自关系,不是颜料。

只需设置一次。在 设置 → 结构 → 关系类型 中,选择一个类型,例如 held_by 或 rules,把 在地图上 设为 表示归属于谁(归属):“第二个实体拥有第一个实体(“统治者为”)——其区域以拥有者的颜色绘制”。在 绘制为 下选择显示方式(填充、斜线、交叉线、圆点 或 仅边框),还可以选择 虚线边框。

用两种归属类型,可以把主权和占领区分开:rules 绘制为 填充,occupied_by 绘制为带 虚线边框 的 斜线。这样,一个被同盟占领却没有被宣称主权的行省,看起来就和被它吞并的行省不一样。

然后在检查器中用 关联到实体… 把区域关联到一个条目,把 Sallow March 作为世界库中的一个地点。关联后的区域会在检查器中出现 归属于,列出它此刻的拥有者,或显示“此刻不归属任何人”。如果有不止一种归属类型,归属方式 用来选择是哪一种。更改归属… 用来选择新的拥有者;在查看某个时刻时,Lokee 会问“这个变化从何时开始?”,并提供 从此刻起 或 始终。

在 Harlow 陷落,把边区的拥有者改为 Ostmark 同盟,选择 从此刻起。更早的时刻仍然显示 Varre 王国的颜色。领地 图例会列出视野中谁拥有什么。

因为拥有者是一段关系,同样的变化也会显示在图谱上和双方条目的页面上,并附带其历史。你也可以从条目页面记录它:查看那个时刻,在这段关系上使用 从这里开始… 和 在这里结束…。

前线与军队:是一套方法,而不是一个工具

Lokee 没有专门的军队或前线工具。战争地图是用上面这些部件搭起来的,而这恰恰是它的长处:其中的每一部分都是普通的世界库数据,应用的其他部分都能理解它们。

前线是带有时间跨度的线。 把它们放在单独的图层上,命名为 前线,这样你就能隐藏或锁定它们。把每条前线画成 城墙 或 道路,标注为“前线”,标签位置选 沿线,并给每个版本设定一段跨度:河流一线持续到 Ostmark 渡河,弯折的那条线则从那时起开始。当你在新的时刻重塑一条已有的前线时,“从此处更改”会替你做好这一切。

军队是条目。 创建一个类型,例如 军队,并添加一个 地点 类型的字段,然后创建第三军团、同盟先锋等等。画出并关联它们驻扎的地点:渡口、丘陵、城镇。在每个时刻,把军队从侧边面板或地图上拖到新的地点,并在“记录这次移动”对话框中选择 在此刻移动到这里。这次移动会成为军队历史中的一条已记录变化;之前的地点则保留在历史中。有一个小小的别扭之处:侧边面板的拖动提示读起来像是你在“现在”移动这个棋子,即使你正在查看某个世界时间点也是如此。别理会那句措辞;真正把这次移动记录在你所查看时刻的,是对话框里的 在此刻移动到这里。指挥官、斥候和信使也同样适用。逐章追踪角色在地图上的行踪详细介绍了地图上的人物,包括行踪轨迹。

领地随拥有者而变。 在土地易手的时刻更改 归属于。

然后播放它。▶ 会逐个时刻向前推进,每次都等当前视图加载完成,❚❚ 则用于暂停。要查看两个时刻之间有什么变化,请使用“查看”控件中的 对比…:地图会用箭头标出在这两个时刻之间移动过的每一个人。

实例演练:Sallow March 之战,逐个时刻

这里是整场战争,按你实际搭建时的顺序排列。

在“当前”下。 画出稳定的世界:海岸、Teme 河、丘陵,以及 Harlow 和 Teme 两座城镇。把 Sallow March 画成一个区域,并把它关联到一个同名的地点条目。创建两个阵营条目,Varre 王国和 Ostmark 同盟,给 rules 设置地图角色 表示归属于谁(归属),绘制为 填充。在边区的检查器中,更改归属… → Varre 王国,始终。边区在每个时刻都填上了 Varre 的颜色。添加一个 前线 图层,沿 Teme 河把河流前线画成一道城墙,标注为“前线”,位置 沿线。

时刻 1,Teme 条约。 按 + 并命名。地图上还什么都没变;这是“战前”的画面,有一个带名字的时刻来代表它会很有用。

时刻 2,Ostmark 渡河。 再按一次 +。选中河流前线,从此处更改,把副本的中段拖到河西。创建军队条目,把同盟先锋放到渡口:把它拖到渡口上,在此刻移动到这里。用 新图形:从此刻起 在 Harlow 城外画一个围城营地。

时刻 3,Harlow 围城。 用 在此刻移动到这里 把第三军团移到 Harlow。前线 图层锁定后,其他东西不会被误碰。

时刻 4,Harlow 陷落。 选中边区的边界,从此处更改,把东侧边缘拉回丘陵。在边区上 更改归属… → Ostmark 同盟,从此刻起。选中 Harlow,在此结束:从此刻起这座城镇不复存在。把第三军团移回 Teme。

时刻 5,冬季停战。 沿新的分界线对边区使用 分割。更早的时刻保留完整的行省;从这里起就有了 Upper March 和 Lower March。把 Lower March 的拥有者设为 Varre,从此刻起,停战线就以两种颜色显示出来。

播放。 回到 Teme 条约,按 ▶,看前线弯折、颜色翻转、城镇消失、行省一分为二。然后用 对比… 比较 Teme 条约 和 冬季停战,查看每支移动过的军队的箭头。

五个时刻,没有重画任何东西。海岸、河流和丘陵只画了一次。

边界会变化的奇幻地图:常见错误

在“当前”下修边界。 你在查看 Harlow 陷落 时发现边区的边缘不对,于是回到“当前”去拖它。现在战前的边界也错了。如果边界战前是对的、战后才不对,正确的做法是在它变化的那个时刻使用 从此处更改。

涂色代替归属。 你在 Harlow 陷落 时手动把边区涂成同盟的颜色。这层颜色会出现在每个时刻,而图谱对此一无所知。请使用 归属于。

开着“始终存在”画新图形。 围城营地在条约签订时就出现了,那时战争还没开始。在某个时刻绘图之前先检查 新图形:,画错的那些用图形的 存在时间 → 从 来修正。

在某个时刻用橡皮擦。 查看某个时间点时,橡皮擦和“粘合边界”会拒绝工作。那是应用在保护你更早的时刻;先创建副本。

一场持久战,每天一个时刻。 六十个时刻,其中大多数什么都没记录,▶ 看起来会很慢,时间线也难以阅读。先从转折点开始,只在确实有东西移动的地方才加“第 12 天,黄昏”。

把前线画在地形图层上。 无法锁定或隐藏的前线,会在你重塑行省时被一起拖动。给前线一个单独的图层。

Lokee 在这里不会做的事

这里没有军队单位,没有补给线,没有战斗结算,也没有会在时刻之间自己移动的前线。每一个版本的前线都是你亲手画的一条线。地图也不会测量:没有距离,没有行省面积,没有“行军几天”。如果你的战争取决于行军速度,就把这些写在军队卡片的备注里,并据此安排时刻的日期。比较两个时刻只能通过全局的 查看 控件;除此之外没有并排的地图视图,而重命名、标注日期和调整时刻顺序都在时间线上进行,不在地图上。

五分钟上手

  1. 在“当前”下把一个行省画成区域,并关联到一个地点条目。
  2. 在 设置 → 结构 → 关系类型 中,给一个类型设置地图角色 表示归属于谁(归属)。
  3. 在这个行省上 更改归属… → 某个阵营,始终。
  4. 在地图上按 + 创建一个时刻,然后 更改归属… → 另一个阵营,从此刻起。
  5. 按 ‹ 和 ›,看颜色在两个时刻之间变化。

导出与分享

导出 提供 PNG 图片、SVG 图片 和 地图文件(JSON)。在免费的云端方案中,PNG 导出会带有一个小小的 Lokee 标识,SVG 则属于付费方案;桌面应用中的本地世界库导出时不带标识。详情请见价格。

地图随世界库一起流转。导出、导入、还原点和同步都会带上地图及其图片,所以一张变化中的地图,会和它所依赖的历史一起得到备份。

绘制变化中的地图的好习惯

  1. 先在“当前”下画好稳定的世界。 永远不会移动的海岸线、山脉和河流属于“当前”,这样每个时刻都能共享它们。
  2. 时刻先粗后细。 先从战争的转折点开始。之后再用 + 在两个时刻之间加入“第 2 天,正午”,并且只记录那时发生了变化的内容。
  3. 把前线放在单独的图层上。 编辑领地时锁定它,绘制政区图时隐藏它。
  4. 改拥有者,而不是改颜色。 给区域涂上新颜色,会在每个时刻都改变它;更改 归属于,则只从某个时刻起改变它,并保留历史。
  5. 为“如果”创建分支。 如果你想看看 Harlow 守住了的那场战争,就在 Harlow 围城 创建一条时间线分支;地图的 ‹ › 会沿着你正在查看的那条时间线步进。参见架空历史与分支时间线。

公开的战争地图时间线页面运行着一场正是这样搭建的四天围城战:一条画成城墙、有两个版本的前线,一处易手的渡口,在黎明和黄昏移动的指挥官与斥候,无需账户就能逐步查看。各个控件的参考说明,请参阅帮助中的随时间改变地图、地图上的人物和按天追踪一场战争。如果地图是你为新世界搭建的第一样东西,小说世界观设定怎么开始会告诉你:先定下故事的问题,再画海岸线。

常见问题

怎样在奇幻地图上表现边界随时间的变化?

先画出开端时的地图,然后查看一个较晚的时刻,在要移动的边界上使用“从此处更改”。旧图形在这个时刻结束,一份副本从这里开始供你重塑,所以更早的时刻保留原样。一张地图,一段历史,不必每个时代各存一份。

在较晚的时刻编辑地图,会改变它在更早时刻的样子吗?

不会。查看某个世界时间点时,此前已经存在的图形都会被锁定。“从此处更改”会让旧图形在这个时刻结束,并给你一份副本去重塑,所以更早的时刻会保留原样。

有没有专门画军队和前线的工具?

没有专门的工具。前线是一条带有时间跨度、标注为前线的城墙或道路;军队是带地点字段的条目,你在每个时刻移动它们;领地则通过“归属于”易手。战争地图页面上的战争演示正是这样搭建的。

怎样比较地图在两个时刻的样子?

使用地图顶部“查看”控件中的“对比”。对比时地图为只读,并会用箭头标出在这两个时刻之间移动过的每一个人。

在你自己的故事里试一试

演示版在浏览器中运行,带有一个示例故事,无需注册账号。桌面应用把本地保管库保存在你的电脑上,免费使用。