Open4WD 企劃總覽¶
本檔角色:spec source of truth 入口;後續所有設計討論以本 repo(
open-4wd-specs)內容為準。
Open4WD 仍在開發中,主遊戲尚未正式公開;首次 live 前仍可能進行不相容重構,詳見
專案生命週期。
專案定位¶
Open4WD 是開源四驅車(mini 4WD 風格)競速遊戲,核心特色:
- UGC:玩家可自製零件 / 場景 / 晶片技能,透過 IPFS + 鏈式 ledger 上鏈
- P2P:libp2p + WebRTC,無必要中心;signaling / pinning / TURN 皆可自架
- 物理確定性:rollback netcode + 跨平台一致物理(Rapier)
- 可拆解破壞:per-part 溫度 / 疲勞 / 結構模型
- 8 人 FFA:TrueSkill 配對 + 多回合積分賽(1–5 回合) + 觀戰
- 營運模式:MIT 開源 + 捐助制(現行唯一管道為 Ko-fi;規劃中的
FUNDING.yml只設ko_fi: xjustloveux;GitHub Sponsors 待台灣開放收款,或確認 fiscal host 合作可行後再評估);不掛第三方廣告——資安 / 隱私鐵則(CSP'self'、無第三方 script、不蒐集 telemetry,資安規範.md/ 部署資訊.md §12)已排除聯播網;贊助不影響 roadmap 與治理
⚠️ 開源專案,不分 MVP / v1.x 階段,文件中不用「先做 MVP、之後再…」這類措辭。
專案沿革¶
從目前最早可稽核的企劃基線一路走到現在;完整流水帳與所有技術細節見 歷史記錄。
- 2026
-
本筆依留存資料回溯補記。舊 project-resources/README.md 記錄核心 15 個子資源與補完 10 個 子資源均建立於 2026-04-28;現存歷史資料夾另有 36 份規格檔的建立時間落在同日,與文字記錄 交叉吻合。檔案時間戳只作輔助證據,權威敘述仍以留存文件為準。
-
查看完整歷史與相關決策。
-
Critical 10 項回填(共識安全 + 多訊息協議 + signer 治理 + 物理介面)
動機:上一輪場地大改後,平行掃描 project-resources/ 全部 36 個 spec 找出新企劃資料夾遺失決策,整理 50+ 項缺漏(Critical / Important / Detail 分級)。Critical 10 項對齊回填,Important / Detail 暫掛 backlog 後續分批。
-
企劃/ 全 37 檔跨檔一致性審查(D1–D5 裁決 + 大規模對齊)
動機:對 企劃/ 全部 37 份規格做多 agent + 主 agent 親驗的跨檔一致性審查(47 條確認問題 + 5 項決策)。使用者逐條裁決後一次性執行。審查清單為當時工作區暫存檔、未入 repo;裁決結果全數落於本條目與各權威檔。
-
project-resources → 企劃 新舊脫鉤大重構(29 模組 + 3 資料夾慣例 + 去重 audit)
動機:[D5(2026-05-31)] 定 企劃/ = canon、project-resources/ = 純歷史,但 canon 內散落 ~120+ 裸指標(詳見 xxx/spec.md)指向已過時的 project-resources 模組 spec(如 protocol_version: number 對 c…
-
多回合比賽模型 實作 + Match / Round / Race 三層正名(跨 ~25 檔)
承 2026-06-29 揭露的多回合跨檔大洞 + brainstorm 全數定案,本日實作進 企劃。使用者授權「依照你的建議 + 你再完整 review 確認、沒問題就開始」。實作前完整複審(讀 ledger / economy / matchmaking / 賽內 / 算式 / 程式參數 / 資料系統 / 比賽結…
-
12a 治理 reducer+config epoch 化:DerivedState 補 economyConfig(ConfigUpdateEvent 沿 log 序推進=任一 fold 位置讀該位有效值)+lastEventAt;economy/governance.ts(verifyConfigUpdateSi…
-
真實 local-ready runtime 與離線能力模型
解鎖成功但 libp2p/OrbitDB/ledger/signaling 無法啟動時,不再顯示假線上資料,而由 App Shell 發布唯一 locked | local-ready | launching | online-ready | reconnecting 狀態與逐能力 flags;頁面不得自行猜測 on…
-
Ledger Admission v1:所有永久 entry 的固定、去中心化抗垃圾寫入門檻
7/18 核准、7/19 落地的 Admission v1 對封閉目錄內 18 種永久 ledger event 全面生效, 不豁免 checkpoint、治理、比賽、仲裁或 economy;本機編輯、匯出、離線測試、聊天與 即時 P2P 不使用 PoW。proof 位於 Orbit entry 頂層,先完成事件簽章…
-
文檔工程:decisions/ ADR 106 檔+conformance 首波 5 家族(specs 檢查鏈五件套、主 repo 回放接線)
查看完整歷史與相關決策。
-
Runtime provider 全面社群化與專案權威分界(issue 000169)
Open4WD 只維持單一、公開且由專案規格管理的 Ledger genesis/治理 signer set 信任根; runtime 服務不因主專案維護、網域、registry 列名或 release check 而取得官方地位。Pinning、 signaling、bootstrap、relay、ICE/TURN…
-
將 repo visibility、candidate maturity、runtime phase 與 live operating mode 拆成四條獨立軸; 正式相容義務由 runtime_phase=live 決定,不再以任一周邊 repo 是否公開推測。美術、正式 GLB、 驗證與 playtest 改為可…
三階段創作流程¶
上傳 (Stage 1) → 編輯 (Stage 2) → 送出 (Stage 3:本機測試 / 上鏈)
UGC 資產(零件 + 場地共用同一流程)從 GLB 到送出的三階段:
| 階段 | 動作 | 細節入口 |
|---|---|---|
| 上傳 | UI 先選 type → 上傳 GLB → 寬鬆檢核 | UGC機制.md |
| 編輯 | 自動算第一波 + 玩家設 GLB extras + Mount 拖放 + 預設填補(零件與場地共用) | UGC機制.md + 建模參數.md |
| 送出 | 自動算第二波 + 嚴格 schema 檢核(三出口共用)→ 出口 A 本機測試(免燒幣、local:<uuid>)/出口 B 上鏈(IPFS + ledger + 燒幣)/出口 C 可編輯 GLB(無 CID) |
UGC機制.md §6 + 流程/UGC上傳.md §2 |
組裝(Loadout)是另一個介面操作,不屬創作流程:正式 / 本機測試零件如何依車位用途組裝成車,見 車輛組裝.md。(「組裝」≠「賽前」;賽前是從正式車位選已組好的車、無編輯。)
主題分類入口¶
規格與規則 authority¶
| 檔案 | 說明 |
|---|---|
| UGC機制.md | 上傳/編輯/送出(本機測試/上鏈/可編輯 GLB)/Fork |
| 主題系統.md | 視覺/音訊主題:token+manifest 資源包、分類註冊表、fallback |
| 信譽系統.md | 玩家/零件/場景信譽 |
| 公告系統.md | repo-owned 四語靜態公告、結構化內容、撤回/取代 |
| 專案生命週期.md | 專案階段、首次公開候選門檻、跨 repo 發布順序與上線後變更規則 |
| 材質表.md | 全 31 種統一材質的物理欄位與禁限規則 |
| 版本規範.md | A 軸 client 版本+升版策略;B 軸 UGC 資產 schema 版本 |
| 版權.md | DMCA/反複製/五層防護 |
| 算式表.md | 物理/武器/經濟/信譽各核心算式 |
| 經濟系統.md | 三層分潤、虛擬貨幣、通膨控制 |
| 編輯器操作.md | Stage 2 編輯器互動與 UI 操作(零件+場地共用、PC/Mobile 雙端) |
| 資料系統.md | ledger/IPFS/canonical 序列化/治理事件 |
| 資產政策.md | 資產生命週期玩家面說明+廢止材質登記(絕版品模型) |
| 賽內機制.md | 房間配對/比賽中/結算(含 HUD、聊天、觀戰) |
| 車輛組裝.md | 玩家依正式/本機測試車位用途組車(本機 loadout) |
| 遊戲機制.md | 機制庫、晶片技能、其他遊玩細節 |
| 零件與場景.md | 8 類零件+3 類場景 entity 詳述 |
實作、部署與呈現¶
| 檔案 | 說明 |
|---|---|
| 程式架構.md | 抽象介面/模組依賴/頁面路由/測試(實作細化檔索引) |
| 美術資源.md | 出貨資產/參考與原始工程/技術與設計契約的分類索引 |
| 部署資訊.md | pinning/signaling/turn 自架、PWA、域名、SEO |
方法、索引與歷史¶
| 檔案 | 說明 |
|---|---|
| ABOUT.en.md | 英文版 about——專案定位、corpus 組織與文檔工程方法論摘要,對外讀者入口(非權威、摘要自 文檔工程.md) |
| conformance/README.md | 跨域 conformance 測試向量權威聲明+家族索引 |
| 使用技術.md | 技術棧(前端/物理/P2P/鏈/IPFS) |
| 其他.md | 待辦/待討論/待校準集中索引 |
| 建模參數.md | 建模參數權威分冊導覽 |
| 文檔工程.md | 文檔工程方法論——單一權威、現況-歷史分離、機器執法;本 repo 作開源範例 |
| 歷史記錄.md | 重大重構里程碑流水帳+早期歷史附錄 |
| 流程.md | 跨模組流程索引+圖表風格規範 |
| 程式參數.md | 程式參數權威分冊導覽 |
| 語系清單.md | i18n 四語系+社群 PR 流程 |
| 資安規範.md | UGC sanitize/簽署/CSP/漏洞流程 |
延伸索引¶
| 檔案 | 內容 |
|---|---|
| decisions/INDEX.md | 架構決策記錄(ADR)索引——canon 寫「現況」、決策檔寫「為什麼」(制度見 decisions/README.md) |
| docs-map.md | 文檔域導覽面板(生成物;依 frontmatter domain 分組+依賴圖) |
命名約定¶
- 顯示文字一律使用「晶片」;技術識別符用
chip/Chip(Mount_Chip、PartType'chip'、模組chip-functions)