起點
為創作者劃出界線
確立「不解壓至暫存檔」的方向:
資產在執行時留在記憶體,並以封裝提高隨意翻閱的成本。
PROJECT CHRONICLE · 2026
以 Sigil 封裝 RPG Maker 遊戲資產,讓創作者能以技術手段清楚表達: 這些內容,不希望被隨意翻閱。
不是宣稱無法破解,而是提高取得成本。
封裝本身,就是一道清楚的界線。
WHY SIGIL
它也可以是一枚印記 - 讓看見的人理解創作者的意願,並在跨越之前,多一次停下來思考的機會。
THE JOURNEY
版本節點與開發細項沿中央軸線向下展開
實心節點代表完成,空心節點代表仍在路上
起點
確立「不解壓至暫存檔」的方向:
資產在執行時留在記憶體,並以封裝提高隨意翻閱的成本。
開發基線
核心套件、CLI 與鎖定依賴建立完成;
格式、靜態檢查、測試流程成為後續開發的共同底線。
Archive format v1
完成唯讀封包核心。
以 XChaCha20-Poly1305 驗證索引與檔案,BLAKE3 建立內容識別,並保證相同輸入可重現。
Bundle
正式 bundle 流程已能安全複製 NW.js runtime、將唯讀資產封裝爲
assets.sigil,並把存檔留在外部可寫目錄。
所有內容先在 staging 完成,再以 no-clobber 操作原子發布;來源遊戲、既有輸出與開發者金鑰都不會被帶入或覆寫。
Launcher
每份遊戲都有自己的 Sigil launcher:它從自身位置找到 runtime 與封包,先完成驗證,再讓金鑰只在記憶體中交接至 NW.js。
不要求玩家輸入參數,也不把金鑰檔放進遊戲目錄。
Native interception
第一條原生讀取路徑已經接通:NW.js 照常開啓檔案,Sigil 在背後驗證並解密資產,再交回只存在於記憶體的匿名檔案。
open、read、seek 與 mmap 已經打通;stat、access 及虛擬目錄資訊也能正確回答 NW.js 的預先檢查。真實遊戲以新版攔截層再次進入持續運行。
下一個切片
將遊戲對 www/save/ 的操作導向外部可寫目錄;
保留設定、備份與存檔流程,同時不讓任何寫入碰觸唯讀封包。
End-to-end
從全新輸出目錄啟動真實遊戲,逐一驗證標題、地圖、對話、圖片、字型、音樂、音效與存檔流程。
同時確認資產不落地、損壞資料會被拒絕,並記錄效能基線與已知限制。
v0.1 delivery
完成建置與使用文件、高階技術流程圖、Linux runtime 假設及第三方授權檢查。
最後在乾淨環境重建、封裝與執行,產生 release artifact 及 checksum。
正式發佈
當封裝、執行、相容性與交付都足以承受「穩定」兩個字... 才會抵達這裡。
THE MARK REMAINS
真正重要的不是無法打開
而是打開之前,你知道那是一道界線
Sigil · Built deliberately in Rust