diff --git a/docs/reference/Action.md b/docs/reference/Action.md
index 76c3ac8..cdd90ee 100644
--- a/docs/reference/Action.md
+++ b/docs/reference/Action.md
@@ -81,10 +81,10 @@ Action `AddIRCMessage` 的 Delay 不需要 DelayHost,而是借助它的目标
### `AddMissionToHubServer`
```xml
-
+
```
将一个 Mission 添加到 MissionHub/DHS 的任务列表中。
-- `MissionName`:`string`,Mission 的文件路径。
+- `MissionFilepath`:`string`,Mission 的文件路径。
- `TargetComp`:`string`,HubServer 的 Computer ID。
- *`AssignmentTag`*?:`string`,分配Tag。如果是给 MissionHub 添加任务,用 `"top"` 就会使任务置顶。给 DHS 添加,就会提示分配给了谁。
- *`StartsComplete`*?:`bool`,是否开始完成。默认值为 `false`。
@@ -92,6 +92,9 @@ Action `AddIRCMessage` 的 Delay 不需要 DelayHost,而是借助它的目标
> [!NOTE]
> MissionHub 是拥有 `missionListingServer` 或 `missionHubServer` Daemon 的 Node,在游戏中作为“任务中心”。DHS 此处代指有 `DHSDaemon` Daemon 的 Node。
+> [!NOTE]
+> 通过此 Action 加入的任务,其 `missionStart` 在**加载时不会执行**(扩展模式下未显式设置 `suppress="false"` 时,该属性默认为 `true`),而是在玩家**接取**该任务时执行。详见 [Mission](Mission.md) 的 `missionStart` 一节。
+
参考:[SAAddMissionToHubServer.cs](https://github.com/UnHacknet/OpenHacknet/blob/main/SAAddMissionToHubServer.cs)
### `RemoveMissionFromHubServer`
diff --git a/docs/reference/Mission.md b/docs/reference/Mission.md
index d66a87f..c8e3407 100644
--- a/docs/reference/Mission.md
+++ b/docs/reference/Mission.md
@@ -49,7 +49,19 @@ Mission 的根元素。
```
任务被加载后执行的 Function。不使用可以把 `` 元素删除。
- *`val`*?:`int`,Function 的参数。默认值为 `0`。
-- *`suppress`*?:`bool`,默认值为 `false`。`suppress` 为 `true` 时通过 `LoadMission` Action 加载的 Mission 的 `missionStart` 不会被执行,只有通过 Mission 的 `nextMission` 加载的任务的 missionStart 才会执行。`false` 时可能会多次执行(存读档)
+- *`suppress`*?:`bool`,默认值取决于运行模式:**扩展模式下为 `true`,主游戏模式下为 `false`**。
+ - ⚠️ 因此在扩展中**不写该属性等同于 `suppress="true"`**。
+ - `true`:加载时仅记录、不执行,等到「激活时机」才执行,包括:
+ - 通过 `nextMission` 进入的任务
+ - 扩展启动时的起始任务
+ - 在 MissionHubServer / MissionListingServer / DLCHubServer 等节点**接取**任务时 —— 激活由接取动作直接触发,**不以发送任务邮件为条件**(DHS 的接取不调用 `sendEmail`;另两者会调用,但是否真正发出取决于本任务的 `IsSilent`,见下文 `nextMission` 一节)
+ - ⚠️ 通过 [`LoadMission`](Action.md) Action 加载的任务不在上述路径中,其 `missionStart` **不会执行**;有需要时应显式写 `suppress="false"`
+ - `false`:任务文件**每次被解析时都会执行**。解析发生在任务的各种加载路径上,例如:
+ - 存读档 / 新游戏时的任务加载
+ - **DHS(`DLCHubServer`)每次连接**:`navigatedTo` → `ReadActiveMissions` → `MissionSerializer.restoreMissionFromFile` → 重新解析任务 XML
+ - 玩家接取 DHS 任务时(`PlayerAcceptMission` 中会再次解析任务文件)
+ - 注意 `MissionHubServer` / `MissionListingServer` 的任务恢复发生在 `loadInit`(随存档加载),**不随每次连接重载**
+ - 因此 hub / DHS 中的任务应使用 `suppress="true"`(**扩展模式下**可省略该属性;主游戏模式下省略等同于 `false`)
::: details (官方介绍)
官方是这么介绍的:
@@ -59,7 +71,9 @@ otherwise it will activate when it is loaded. This is very important to remember
writing missions designed for use in a hub server - those missions are loaded when the save game is loaded
or a new game is started.
```
-但是实践证明,添加到 MissionHub 的 Mission 的 `missionStart` 在 `suppress` 为 `false` 时也没有被执行。
+实测补充:向 MissionHub 添加的 Mission 若**省略 `suppress` 属性**,其 `missionStart` 不会在加载时执行 —— 因为扩展模式下该属性默认为 `true`(任务被抑制,需等玩家接取时才激活)。显式写 `suppress="false"` 时,如上文所述,任务文件每次被解析都会执行。
+
+参考:[ComputerLoader.cs](https://github.com/UnHacknet/OpenHacknet/blob/main/ComputerLoader.cs)、[MissionSerializer.cs](https://github.com/UnHacknet/OpenHacknet/blob/main/MissionSerializer.cs)、[ActiveMission.cs](https://github.com/UnHacknet/OpenHacknet/blob/main/ActiveMission.cs)、[MissionHubServer.cs](https://github.com/UnHacknet/OpenHacknet/blob/main/MissionHubServer.cs)
:::