Naev (/nɑ.ɛv/)是一款開源 2D 空間交易和戰鬥遊戲,其靈感來自 Escape Velocity 系列等。
你從自上而下的角度駕駛一艘太空船,並且或多或少可以自由地做你想做的事。顧名思義,你可以隨意交易和參與戰鬥。除此之外,故事情節任務、裝備和船隻的數量也在增加;甚至銀河系本身也會隨著每個版本的發布而變得更大。對於文學愛好者來說,從行星到設備,有大量的知識伴隨著一切。
請注意,Naev 仍在積極開發中,尚未完成。雖然遊戲中有很多事情要做,但隨著你的進展,你會發現不完整或正在進行中的內容。
Naev 在 steam、itch.io、flathub、許多 Linux 發行版等!如果您無法勝任自己編譯的任務,請造訪 Naev 網站,了解開始玩 Naev 的不同方法!
從 0.10.0 版本開始支援插件。雖然我們還沒有插件管理器(需要幫助!),但您可以查看在 naev 插件儲存庫上註冊的現有插件並手動安裝它們。如果您想開始自己製作,請查看 Naev 開發手冊 (WIP)。
Naev 的依賴項旨在廣泛可用。除了至少支援 OpenGL 3.2 的顯示卡和驅動程式之外,Naev 還需要:
*
*
*
*
*
*
*
*
*
如果在主機系統中找不到,則標有*
的依賴項將使用子項目。
Naev wiki 針對多種作業系統和 Linux 發行版提供了更詳細的編譯步驟以及要安裝的軟體包清單:
Naev 需要 Artwork 子模組從 git 運作。您可以使用以下命令從克隆儲存庫中查看子模組:
git submodule init
git submodule update
請注意,每次git pull
時都必須執行git submodule update
以保持最新狀態。這也可以透過設定以下配置自動完成(強烈建議):
git config submodule.recurse true
跑步:
meson setup builddir .
cd builddir
meson compile
./naev.py
如果您需要特殊設置,您可以在建置目錄中執行meson configure
以查看所有可用選項的清單。
對於安裝,請嘗試: meson configure --buildtype=release -Db_lto=true
對於建立 Windows 安裝程序,請嘗試新增: --prefix="$(pwd)"/build/windows --bindir=. -Dndata_path=. -Dinstaller=true
。檢查建置目錄中的dist
資料夾
對於建置 macOS DMG ,請嘗試新增: --prefix="$(pwd)"/build/dist/Naev.app --bindir=Contents/MacOS -Dndata_path=Contents/Resources -Dinstaller=true
。檢查建置目錄中的dist
資料夾
對於正常開發,請嘗試新增: --buildtype=debug -Db_sanitize=address
(如果使用 Clang 編譯,則新增-Db_lundef=false
如果無法使用 Clang,則在 Windows 上用-Ddebug_arrays=true
替換-Db_sanitize=...
)。 (如果您的系統支援 debuginfod,也可以將set debuginfod enabled on
加入到您的主目錄中名為.gdbinit
的檔案中!)
為了更快地調試建置(但更難使用 gdb/lldb 進行追蹤),請嘗試--buildtype=debugoptimized -Db_lto=true -Db_lto_mode=thin
來取代上面的對應值。
您可以使用將在建置目錄中產生的naev.py
腳本直接從 git 儲存庫執行 Naev。該腳本將自動設定運行 Naev 的所有資料路徑。確保藝術資產已簽出並保持最新,如下面更新藝術資產部分所述。
Naev 目前支援meson install
,它將安裝所需的所有內容。
如果您想要為桌面環境建立 .desktop,可以在extras/logos/
中找到從 16x16 到 256x256 的標誌。
藝術資產部分儲存在 naev-artwork-product 儲存庫中,有時會更新。因此,建議使用以下命令定期更新子模組。
git submodule update
您也可以使用以下命令將其設定為在 git pull 上自動完成:
git config submodule.recurse true
之後,每次執行git pull
時,它也會更新 Artwork 子模組。
要取得聯繫,您可以訪問 naev.org,其中連結到該專案的 Discord 聊天和 Wiki。那裡還有 Lua API 文件。
在提交之前,建議安裝預提交 2.17 或更高版本,並從 Naev git 目錄根執行pre-commit install
。 pre-commit 將在提交文件時自動執行,但也可以使用pre-commit run -a
手動執行。開發團隊正在教授pre-commit
來處理各種繁瑣和容易忘記的步驟。
納耶夫對遊戲中的所有文字都使用牛津拼字法。
Naev 合併到 Weblate 中。您可以輕鬆地透過網頁介面直接從 Naev 的專案頁面翻譯成您選擇的語言。必須手動新增語言,如果您想將 Naev 翻譯成新語言,請提出問題。
Naev 的翻譯是用 gettext 處理的。 (這是自訂的,但 C 和 Lua 程式碼可以使用傳統的_()
表示 gettext,使用N_()
表示 gettext-noop,以及使用n_()
表示 ngettext。)
當任務等內容更新時,必須向 Weblate 提供新的可翻譯文字。關鍵的手動步驟是重新產生po/naev.pot
檔案(在建置目錄中meson compile naev-pot
)並提交它。為了避免合併衝突,建議不要在不專門與翻譯相關的拉取請求中包含更新的po/naev.pot
。
在幕後: po/POTFILES.in
是可能具有可翻譯文字的檔案目錄。我們使用預提交掛鉤(或手動: meson compile potfiles
)保持同步。 naev-pot
Meson 目標是使用標準xgettext
以及附加規則建構的。 ( AUTHORS
和intro
的規則位於po/update-po.sh
中。XML 資料檔案的規則位於po/its/translation.its
中。)可以透過meson compile naev-update-po
更新單一翻譯,但不要這樣做這樣做沒有充分的理由,因為 Weblate 更仔細地完成同樣的工作。
請在提交新的錯誤報告之前查看常見問題解答,因為它涵蓋了許多常見的遊戲問題和常見問題。
如果 Naev 在遊戲過程中崩潰,請在閱讀 https://github.com/naev/naev/wiki/Bugs 後提交錯誤報告
Naev 是與根據 GNU 通用公共授權版本 3 或更高版本授權的 Debian 自由軟體指南相容的開源軟體,但有一些例外。請參閱許可證文件以獲取更深入的許可詳細資訊。