Area VNUM Policy

這份文件整理新 AREA 的 room VNUM 保留規則,目標是降低房號衝突、避免跨區混用號段,並讓 spec-first area 在第一版落地後仍保有擴充空間。

總覽仍以 AREA 開發手冊plans/0001-world-map-area-rebuild.md 為準;這份文件專注在 reserved_room_blockplanned_vnum_range 與 extension block。

Core Policy

新 AREA 的第一段 room 保留區,預設採「某個新百位段的 xx01 起跳」策略。

設計目的:

Reservation Rules

建立新 area 時,至少要先固定:

規則如下:

Extension Blocks

extension block 不是禁止,但應視為例外而非常態。

只在下列情況下使用:

extension block 規則:

Existing Exceptions

repo 內已有一些歷史遺留切段,例如 9451/9461/9481/9491 這類地下鏈分段。

對這些既有區域的處理原則:

Allocation Workflow

在真正選定新 block 前,至少檢查下列範圍:

最低流程:

  1. 估算首版房數
  2. 加上至少 8 格 headroom
  3. 向上取到最近的 10
  4. 從新百位段的 xx01 選 block
  5. 搜尋 repo 內是否有衝突
  6. 把結果寫入單區 plan 與 tracker

Directory Comment Rule

若新 area 已進入 loadable runtime 狀態,area/directory.lst 的房號註解應反映首段保留區,而不是只反映目前實作到的最後一號。

這是為了讓後續維護者能直接看出:

Relationship To Capital

room VNUM 保留規則與 Capital 是不同議題,但新 area 常一起被誤判。

補充共識:

Required Writeback

只要本輪有新 area 或 block 變更,至少回寫:

Relationship To Other Docs