Widelandsは、シングルプレイヤーキャンペーンとマルチプレイヤーモードを備えた無料のオープンソースリアルタイム戦略ゲームです。このゲームは、Settlers II™(©Bluebyte)に触発されましたが、それには非常に多様性と深みがあります。
GPL V2+。一部の資産は、さまざまなクリエイティブコモンズライセンスの下でリリースされます。それぞれのフォルダーを参照してください。
Widelandsのダウンロード方法については、https://www.widelands.org/wiki/download/を参照してください。
Linux、MSYS2およびMSVCの下のWindows、およびGCC> = 8またはClang/LLVM> = 7のMacOSのWidelandsのコンパイルをサポートしていますが、他のコンパイラでも動作する可能性があります。より詳細なドキュメントは、https://www.widelands.org/wiki/buildingwidelands/で入手できます。
次の依存関係をインストールする必要があります。
その後、コンビニエンススクリプトを実行してコンパイルできます。
| 指示 | 目的 |
|---|---|
./compile.sh | フルデバッグビルド |
./compile.sh -r -w | ビルドをリリースします |
./compile.sh -e -w | デバッグシンボルを使用してビルドをリリースします |
./compile.sh -h | 利用可能なオプションをリストします |
コンパイルが終了したら、Widelandsを呼び出すことができます
./widelands
Cmakeを手動で呼び出すこともできます。
mkdir build
cd build
cmake ..
make
コンパイルが終了したら、Widelandsを呼び出すことができます
cd ..
mv build/src/widelands .
./widelands
さまざまなcmakeオプションがあります。たとえば、リリースビルドを作成するには、呼び出します
cmake -DCMAKE_BUILD_TYPE=Release ..
忍者ビルドシステムを使用するには、電話してください
mkdir build
cd build
cmake -G Ninja ..
ninja
忍者のインストールに応じて、最後の行はninja-buildでもあります。
cmakeオプションには-Dが付いていることに注意してください。これらは利用可能なオプションです。
| 名前 | 値 | デフォルト | 関数 |
|---|---|---|---|
CMAKE_BUILD_TYPE | Debug / Release / RelWithDebInfo | Debug | リリースまたはデバッグビルドを作成します |
OPTION_ASAN | ON / OFF | デバッグON / OFFのリリースビルド | adstressSanitizerを使用します。これをオフにすることは一度だけ機能します。後のビルドでこれを再度オフにしたい場合は、 buildディレクトリをクリアする必要があります。 |
OPTION_BUILD_CODECHECK | ON / OFF | ON | CodeCheckを作成します。デバッグビルドでのみ利用できます。 |
OPTION_BUILD_WEBSITE_TOOLS | ON / OFF | ON | ウェブサイト関連ツールを構築します |
OPTION_BUILD_TESTS | ON / OFF | ON | ユニットテストを構築します |
CMAKE_INSTALL_PREFIX | ディレクトリ | cmakeドキュメントを参照してください | 「インストール」ターゲットのターゲットディレクトリ-DCMAKE_INSTALL_PREFIX=~/widelands-install定義します。 |
WL_INSTALL_BINDIR | ディレクトリ | ${CMAKE_INSTALL_PREFIX}/games | 実行可能ファイルの宛先を定義します(インストールする場合) |
WL_VERSION | バージョン文字列 | git/bzrからオートデリックされるか、 VERSIONファイルを追加して設定します | Widelandsバージョンを定義します |
USE_XDG | ON / OFF | ON | XDG Beasingir仕様をフォローしてください。 Linuxでのみ利用できます。 |
OPTION_USE_GLBINDING | ON / OFF | OFF | Glewの代わりにGlbindingを使用します |
OPTION_GLEW_STATIC | ON / OFF | OFF | 静的なGlewライブラリを使用します |
OPTION_FORCE_EMBEDDED_MINIZIP | ON / OFF | OFF | 使用されている埋め込まれたMinizipソース(インストールされたMinizipライブラリのスキップチェック) |
NEEDS_EXTERNAL_FILESYSTEM | ON / OFF | コンパイラバージョンからオート視点 | std::filesystem追加のライブラリに対してリンクする必要があるかどうか |
makeまたはninjaコマンドにターゲットを追加できます。たとえば、 make codecheck 、コードチェックスイートのみを実行します。これらは利用可能なターゲットです。
| 名前 | 関数 |
|---|---|
ターゲットはALLまたはまったくありません | cmakeコールの設定で実行可能になるまで、すべてをコンパイルします |
codecheck | CodeChecksを実行します |
doc | ドキシゲンドキュメントを生成します。現在、ビルドタイプのデバッグでのみですが、これは必要に応じて簡単に変更されます。 |
install | ターゲット監督にインストールします。これは、デフォルトごとに/usr/local (ルート特権が必要です!)変更しない限り(上記のcmakeオプションを参照) |
GITを初めて使用する場合は、Gitを使用して役立つ方法についていくつかの指示があります:https://www.widelands.org/wiki/gitprimer/
マスターブランチとすべての問題とプルリクエストは、BunnybotのCodebergとGithubの開発者環境間で双方向に反映されています。 Bunnybotは、すべてのミラー化されたブランチでコード(C ++、Lua、およびPython)をフォーマットします。
Google StyleGuideに従います。
スクリプトシナリオについては、https://www.widelands.org/documentation/lua_index/を参照してください。
貢献アートについては、https://www.widelands.org/wiki/graphicsdevelopment/を参照してください。
翻訳の貢献については、https://www.widelands.org/wiki/translatingwidelands/を参照してください。
テストを支援するには、https://www.widelands.org/wiki/testingbranches/を参照してください。
問題管理の支援については、https://www.widelands.org/wiki/triagingbugs/を参照してください。
| ディレクトリ | コンテンツ |
|---|---|
| cmake | システムとCodeCheckルールを構築します |
| データ | ゲームのデータファイル。画像、サウンド、音楽、スクリプト、地図、キャンペーン、部族、... |
| デビアン | DebianベースのLinux分布のパッケージ |
| doc | Sphinxドキュメント |
| po | 翻訳ファイル |
| SRC | C ++ソースコード |
| テスト | 回帰テストスイート用のスクリプトマップ |
| utils | 多様なユーティリティ:翻訳の構築、コードフォーマット、マックとウィンドウのパッケージング、... |
マスターへのすべてのプッシュは、Appveerに基づいて構築されます。 GitHubアクションを使用して、Pull RequestブランチはMS-Windows用に展開されます。 MS-Windowsのビルドを取得するには、プルリクエストを開きたくない場合は、 appveyor.ymlのbranchesセクションにブランチの名前を一時的に追加します。ただし、ブランチがフォークにある場合、これは機能しません。
すべてのプル要求ブランチとマスターは、MacOSのためにさらに展開され、テストスイートはさまざまなコンパイラの下でそれらをチェックします。 MacOSのビルドまたはテストスイート結果を取得するには、 .github/workflows/build.yamlのbranchesセクションにブランチの名前を一時的に追加します。これは、フォークのブランチでも機能します。