Naev (/nɑ.ɛv/) は、Escape Velocity シリーズなどからインスピレーションを得た、オープンソースの 2D 空間取引および戦闘ゲームです。
あなたはトップダウンの視点で宇宙船を操縦し、多かれ少なかれやりたいことを自由に行うことができます。ジャンル名が示すように、自由に取引したり戦闘に参加したりできます。さらに、ストーリーラインのミッション、装備、船の数は増え続けています。銀河自体もリリースのたびに大きくなります。文学に興味のある人にとっては、惑星から装備品に至るまで、あらゆるものに付随する膨大な伝承が存在します。
Naev は現在も開発中であり、まだ完成していないことに注意してください。ゲームにはやるべきことがたくさんありますが、ゲームが進むにつれて未完成または進行中のコンテンツが見つかります。
Naev は、steam、itch.io、フラットハブ、多くの Linux ディストリビューションなどにあります。自分でコンパイルする気がない場合は、Naev Web サイトを参照して、Naev のプレイを開始するためのさまざまな方法を確認してください。
プラグインはバージョン 0.10.0 以降でサポートされています。プラグイン マネージャーはまだありませんが (助けを求めています!)、naev プラグイン リポジトリに登録されている既存のプラグインを確認して、手動でインストールすることができます。独自の作成を開始したい場合は、Naev 開発マニュアル (WIP) を参照してください。
Naev の依存関係は、広く利用できるようにすることを目的としています。 Naev には、少なくとも OpenGL 3.2 をサポートするグラフィックス カードとドライバーに加えて、以下が必要です。
*
*
*
*
*
*
*
*
*
*
のマークが付いている依存関係は、ホスト システムで見つからない場合はサブプロジェクトを使用します。
Naev wiki には、いくつかのオペレーティング システムおよび Linux ディストリビューション向けに、より詳細なコンパイル手順と、インストールするパッケージのリストが記載されています。
Naev では、アートワーク サブモジュールを 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 で-Db_sanitize=...
を -Ddebug_arrays -Ddebug_arrays=true
に置き換えます)。 (システムが debuginfod をサポートしている場合は、ホーム ディレクトリの.gdbinit
という名前のファイルにset debuginfod enabled on
も追加してください。)
デバッグ ビルドを高速化するには(ただし、gdb/lldb でトレースするのは困難です)、上記の対応する値の代わりに--buildtype=debugoptimized -Db_lto=true -Db_lto_mode=thin
試してください。
ビルド ディレクトリに生成されるnaev.py
スクリプトを使用して、git リポジトリから直接 Naev を実行できます。このスクリプトは、Naev を実行するためのすべてのデータ パスを自動的にセットアップします。以下の「アート アセットの更新」セクションで説明されているように、アート アセットがチェックアウトされ、最新であることを確認してください。
Naev は現在、必要なものすべてをインストールするmeson install
をサポートしています。
デスクトップ環境用に .desktop を作成したい場合は、16x16 から 256x256 までのロゴがextras/logos/
にあります。
アート アセットは部分的に naev-artwork-production リポジトリに保存され、更新される場合もあります。このため、次のコマンドを使用してサブモジュールを定期的に更新することをお勧めします。
git submodule update
次のコマンドを使用して、これを git pull で自動的に実行するように設定することもできます。
git config submodule.recurse true
その後、 git pull
実行するたびに、アートワーク サブモジュールも更新されます。
連絡するには、プロジェクトの Discord チャットと Wiki にリンクしている naev.org にアクセスしてください。 Lua API ドキュメントもあります。
コミットする前に、pre-commit 2.17 以降をインストールし、Naev git ディレクトリのルートからpre-commit install
を実行することをお勧めします。 pre-commit はファイルをコミットするときに自動的に実行されますが、 pre-commit run -a
を使用して手動で実行することもできます。開発チームは、面倒で忘れがちなさまざまな手順を処理するためにpre-commit
教えています。
Naev は、ゲーム内のすべてのテキストにオックスフォード スペルを使用します。
Naev は Weblate に組み込まれています。 Naev のプロジェクト ページから、Web インターフェイスを使用して選択した言語に簡単に直接翻訳できます。新しい言語は手動で追加する必要があります。Naev を新しい言語に翻訳したい場合は、問題を開いてください。
Naev の翻訳は gettext で処理されます。 (これはカスタムですが、C および Lua コードでは、gettext に従来の_()
、gettext-noop にN_()
、さらに ngettext にn_()
を使用できます。)
ミッションなどのコンテンツが更新されると、新しい翻訳可能なテキストを Weblate で利用できるようにする必要があります。重要な手動手順は、 po/naev.pot
ファイルを再生成し ( meson compile naev-pot
)、それをコミットすることです。マージ競合を避けるために、翻訳のみを目的としないプル リクエストには、更新されたpo/naev.pot
を含めないことをお勧めします。
内部: po/POTFILES.in
は、翻訳可能なテキストを含む可能性のあるファイルのカタログです。 pre-commit フック (または手動: meson compile potfiles
) を使用して同期を維持します。 naev-pot
Meson ターゲットは、標準のxgettext
に加えて追加のルールを使用して構築されます。 ( AUTHORS
とintro
のルールはpo/update-po.sh
にあります。XML データ ファイルのルールはpo/its/translation.its
にあります。) 個々の翻訳はmeson compile naev-update-po
を介して更新できますが、更新はできません。 Weblate は同じ作業をより慎重に実行するため、正当な理由なしにこれを行うことはできません。
ゲームプレイに関する一般的な質問や一般的な問題が数多く取り上げられているため、新しいバグ レポートを送信する前に FAQ をご覧ください。
ゲームプレイ中に Naev がクラッシュする場合は、https://github.com/naev/naev/wiki/Bugs を読んだ後、バグレポートを提出してください。
Naev は、一部の例外を除き、GNU 一般公衆利用許諾書バージョン 3 以降に基づいてライセンス供与された Debian フリー ソフトウェア ガイドラインと互換性のあるオープン ソース ソフトウェアです。ライセンスの詳細については、LICENSE ファイルを参照してください。