2023-05-09 14:28:41更新でのソースとプレビューを表示しています。
<p>このページではルールセットコレクションの内容について説明します。これは開発者向けのリファレンスとして、またFreecivの代替ルールセットを作成/コンパイルしたい人を対象としています。ルールセットについては<a href='/freeciv/name/%E3%83%AB%E3%83%BC%E3%83%AB%E3%82%BB%E3%83%83%E3%83%88'>ルールセット</a>のページも参照してください。</p><div><div><h2 id='mw-toc-heading'>目次</h2></div><ul><li><a href='#ルールセットの編集の概要'>1 ルールセットの編集の概要</a><ul><li><a href='#ルールセットコレクションファイル'>1.1 ルールセットコレクションファイル</a></li></ul></li><li><a href='#新しいルールセットを作成する方法'>2 新しいルールセットを作成する方法</a><ul><li><a href='#ルールセットのエラーをテストする方法'>2.1 ルールセットのエラーをテストする方法</a></li></ul></li></ul></div><h2>ルールセットの編集の概要[]</h2><p>ルールセットは、サーバーコマンドrulesetdirを使用して指定されます。コマンド ./freeciv-server -r data/civ1.servは、このコマンド(およびいくつかの標準サーバーオプション)を使用するファイルを読み取るだけです。 serverコマンドは、ルールセットファイルが検索されるディレクトリを指定します。データディレクトリ内のルールセットファイルはユーザーが編集できるため、Freecivを再コンパイルしなくても、それらを変更してカスタムのルールセットを作成できます。 default、civ1、およびciv2ディレクトリにある既存のファイルを編集してはいけません。代わりに、それらを別のディレクトリにコピーして、コピーを編集する必要があります。変更されたルールを使用していることを明確にするためです。</p><p>フォーマットに関する注意</p><ul><li>一部のルールファイルは、他のファイルに依存しています。例:ユニットは、techsファイルで指定された研究に依存します。</li><li>ユニットには「フラグ」のようなフィールド「ロール」がありますが、ゲームのさまざまな状況で使用されるユニットを決定します(ユニットの固有のプロパティではありません)。 common /unit.hのコメントを参照してください</li><li>ユニットと研究のプロパティは、かなり一般化されています。建物のプロパティはまだあまり柔軟性がありません。</li></ul><p>質問があればまずルールセットフォーラムを確認してください。</p><h3>ルールセットコレクションファイル[]</h3><p>ルールセットは次に挙げる構成ファイルで構成されています。</p><ul><li>buildings</li><li>cities</li><li>effects</li><li>game</li><li>governments</li><li>nations</li><li>styles</li><li>techs</li><li>terrain</li><li>units</li><li>script</li><li>serv</li></ul><h2>新しいルールセットを作成する方法[]</h2><p>これらの手順は、UnixまたはLinuxのインストール用です。これらは迅速ですが荒い方法です。ルールセットの次のバージョンを適切な開発エリアに保存し、準備ができたらFreecivデータディレクトリにインストールすることをお勧めしますが、そのような複雑な方法はこのページの範囲外です。</p><ul><li>新しいルールセットの名前を決定します。たとえば、seawolf。</li><li>Freecivデータディレクトリを見つけます。たとえば、私のDebianGNU/Linuxコンピュータでは、これは/usr/share/games/freecivです。そのディレクトリには、defaultという名前のサブディレクトリとdefault.servという名前のファイルがあります。</li><li>そのデフォルトのサブディレクトリの内容を、あなたのルールセットと同じ名前でFreecivデータディレクトリにある新しいディレクトリにコピーします。たとえば、DebianGNU/Linuxコンピューターでseawolfルールセットを作成すると、/usr/share/games/freeciv/seawolf/buildings.rulesetや/usr/share/games/freeciv/seawolf/cities.rilesetなどのファイルが作成されます。</li><li>default.servスクリプトをコピーして、Freecivデータディレクトリに新しいファイルを作成しますが、defaultの代わりにあなたのルールセットの名前を付けます。たとえば、/usr/share/games/freeciv/seawolf.servです。</li><li>そのスクリプトの最後にrulesetdirコマンドを追加して、ルールセットを選択します。たとえば、rulesetdir seawolf</li></ul><p>これで、デフォルトのルールセットと同じルールを持つ、選択した名前の新しいルールセットが作成されました。クライアントを使用してローカルサーバーを起動している場合は、ルールセットが使用可能なルールセットのメニューに表示されます。ただし、おそらく最初にクライアントを再起動する必要があります。新しいルールセットディレクトリ内のファイルと、必要に応じて.servスクリプトを調べて変更し、ルールへの変更を実装します。</p><p>または、/usr/share/games/freeciv/の代わりに~/.freeciv/2.5というファイルにコピーする(2.5の代わりに使用しているfreecivのバージョン番号)こともできます。ルールセットを作成するためにrootユーザーとしてログインする必要がないという利点がありますが、コンピューターの他のユーザーは新しいルールセットを使用できません。</p><h3>ルールセットのエラーをテストする方法[]</h3><p>コマンドプロンプトを使用して、freecivサーバーに移動します。</p>cd /opt/bin/freeciv-2.5.9<p>freecivサーバーを実行します。</p>FREECIV-SERVER<p>ルールセットファイルを定義します。</p>rules alien<p>するとサーバーはエラーまたは警告を表示します。</p> <br> この記事は、CC BY-SAのもとで公表された<a href="https://freeciv.fandom.com/ja/wiki/%E3%83%AB%E3%83%BC%E3%83%AB%E3%82%BB%E3%83%83%E3%83%88%E3%81%AE%E7%B7%A8%E9%9B%86">「ルールセットの編集」</a>を改変し作成しました。特に記載されていない限り、CC BY-SAのもとで利用可能です。}
このページではルールセットコレクションの内容について説明します。これは開発者向けのリファレンスとして、またFreecivの代替ルールセットを作成/コンパイルしたい人を対象としています。ルールセットについてはルールセットのページも参照してください。
ルールセットは、サーバーコマンドrulesetdirを使用して指定されます。コマンド ./freeciv-server -r data/civ1.servは、このコマンド(およびいくつかの標準サーバーオプション)を使用するファイルを読み取るだけです。 serverコマンドは、ルールセットファイルが検索されるディレクトリを指定します。データディレクトリ内のルールセットファイルはユーザーが編集できるため、Freecivを再コンパイルしなくても、それらを変更してカスタムのルールセットを作成できます。 default、civ1、およびciv2ディレクトリにある既存のファイルを編集してはいけません。代わりに、それらを別のディレクトリにコピーして、コピーを編集する必要があります。変更されたルールを使用していることを明確にするためです。
フォーマットに関する注意
質問があればまずルールセットフォーラムを確認してください。
ルールセットは次に挙げる構成ファイルで構成されています。
これらの手順は、UnixまたはLinuxのインストール用です。これらは迅速ですが荒い方法です。ルールセットの次のバージョンを適切な開発エリアに保存し、準備ができたらFreecivデータディレクトリにインストールすることをお勧めしますが、そのような複雑な方法はこのページの範囲外です。
これで、デフォルトのルールセットと同じルールを持つ、選択した名前の新しいルールセットが作成されました。クライアントを使用してローカルサーバーを起動している場合は、ルールセットが使用可能なルールセットのメニューに表示されます。ただし、おそらく最初にクライアントを再起動する必要があります。新しいルールセットディレクトリ内のファイルと、必要に応じて.servスクリプトを調べて変更し、ルールへの変更を実装します。
または、/usr/share/games/freeciv/の代わりに~/.freeciv/2.5というファイルにコピーする(2.5の代わりに使用しているfreecivのバージョン番号)こともできます。ルールセットを作成するためにrootユーザーとしてログインする必要がないという利点がありますが、コンピューターの他のユーザーは新しいルールセットを使用できません。
コマンドプロンプトを使用して、freecivサーバーに移動します。
cd /opt/bin/freeciv-2.5.9freecivサーバーを実行します。
FREECIV-SERVERルールセットファイルを定義します。
rules alienするとサーバーはエラーまたは警告を表示します。