Skip to content

瀏覽數:0

官方更新頁面模塊說明

官方更新頁

更新說明

目前的官方更新頁面在 github 並沒有直接對應於一個.md 檔案,
目前的機制採用 build wiki 時,
利用 vitepressinclude 功能,
將一個個的.md 檔案引入到該頁面中,
以下為自動產生的 news.md 範本示例。

---
title: 官方更新
tags:
  - news
  - 新聞
  - 遊戲更新
  - 更新
---

# {{ $frontmatter.title }}
<!--@include: @/other/news/{日期}-{次序}-{md摘要}.md-->
<!--@include: @/other/news/20240628-03-demoUpdate.md-->
<!--@include: @/other/news/20240628-02-release.md-->
<!--@include: @/other/news/20240628-01-release.md-->
<!--@include: @/other/news/20240627-01-release.md-->

如何命名

命名規則如下, 日期為8碼數字, 如20240708
次序為2碼數字, 如01, 02, 03... 用來表示當天的第幾則資訊
(不管是哪一種分類都視為同樣, 有幾個檔案就直接加數字就可以了。)
md 摘要為一個分類 key, 共四種:

key中文標籤用於對應 Steam 標籤
release遊戲更新正式版例行版本/修正更新patchnotes
demoUpdate試玩版更新DEMO/試玩版更新(試玩版時期, 現已結束)
majorUpdate重大更新具名大型更新正式上線時 (如《崆峒神威》)無專屬標籤, 手動指定
announce公告/新聞非版本更新的一切: PV、預告、活動、聲明無標籤

自動抓取時 (node tools/fetchNews.js) 只能靠 Steam 標籤分類, 而 Steam 只有 patchnotes 與「無標籤」兩種, 所以自動化只會產出 releaseannounce
majorUpdate / demoUpdate 沒有對應標籤, 需在 merge 前手動把檔名 suffix 改掉。

然後將這三個資訊以-連接起來,
最終以.md 結尾。

像是這樣: 20240628-02-release.md20240628-01-demoUpdate.md 都是可以的。

@/other/news/{日期}-{次序}-{md摘要}.md

如何使用

接著以 @/other/news/20240705-02-demoUpdate.md為例,
本次更新以後, 會將此模塊直接引入到 news.md 中,
因此不需要在每一次更新的時候,
都要新增標題與文章 tag, title 等,
那些都可以直接重複使用,
上述紅色部分不需要再次寫入.md 中。

具體而言,
若您需要新增官方更新,
請先建立一個.md 檔, 依照命名格式,放在 docs/other/news/ 底下
寫完更新內容後執行 npm run build 就可以了。

## [試玩版更新 v2.1.4](https://store.steampowered.com/news/app/1859910/view/4267805297667980568?l=tchinese)

發表時間
2024 年 7 月 5 日 週五

功能調整

遊戲存檔路徑調整為
`%userprofile%\AppData\LocalLow\Obb Studio\Mortal\Save`


已有正式版的玩家,若要啟動硬碟中的DEMO版本,請先進行存檔備份

正式版本的存檔路徑,它是Steam雲端存檔同步的資料夾
`%userprofile%\AppData\LocalLow\Obb Studio\Mortal\{SteamId}`

如何查找你的SteamId:
個人檔案->帳戶詳細資料->帳戶名稱的下方

半自動抓取(尚未排程時的補償辦法)

目前沒有任何排程或 GitHub Action 會自動抓 Steam 新聞,
所以在「自動化上線」之前,請用 tools/fetchNews.js 手動抓取當作補償辦法。

它會抓活俠傳 Steam 新聞,依分類產出符合上述格式的草稿檔到 docs/other/news/

用法

bash
node tools/fetchNews.js --selftest   # 純函式回歸測試, 印 "selftest OK" 即正常
node tools/fetchNews.js --dry-run    # 只列出會產生哪些檔, 不寫入
node tools/fetchNews.js              # 實際產出草稿檔

產完草稿後 → 人工檢查/微調內容 → 需要時把檔名 suffix 改成 demoUpdate / majorUpdatenpm run build

運作方式

  • 來源:Steam RSS(?l=tchinese)提供正確的 view 連結、繁中標題、發表日期; Steam JSON API 提供 tags 與內文。兩者以同一個 unix date 對接 (RSS 的 gid 才是正確連結,JSON API 的 gid 不同,不能用來組連結)。
  • 分類:只看 Steam 標籤 —— patchnotesrelease,其餘 → announcedemoUpdate / majorUpdate 沒有對應標籤,需依上表判斷後手動改檔名 suffix。
  • 去重:掃現有檔案的 /view/{gid},已存在就跳過(重複執行安全)。
  • 排版:自動套用本頁的舊風格(每行結尾兩個空格硬換行); release 另外把 Steam 的 調整/修正 標題改成 功能調整/功能修正
  • 防呆:RSS 解析到 0 則會直接報錯(避免 feed 格式改變時靜默當成「沒有新聞」); 某則對不到 API 內文時會 warn 提醒該篇 body 需手補。

注意

產出為草稿,BBCode→markdown 為近似轉換,發表日期取 Steam 發布時間(未必等於內文標註的更新日),請 merge 前人工確認。

貢獻者

The avatar of contributor named as Claude Opus 4.8 Claude Opus 4.8
The avatar of contributor named as Smilin Smilin
The avatar of contributor named as Roy Peng Roy Peng
The avatar of contributor named as roypeng roypeng

歷史貢獻