Freeciv.org ジャパン

このページではルールセットコレクションの内容について説明します。これは開発者向けのリファレンスとして、またFreecivの代替ルールセットを作成/コンパイルしたい人を対象としています。 ルールセットについてはルールセットのページも参照してください。

ルールセットの編集の概要[]

ルールセットは、サーバーコマンドrulesetdirを使用して指定されます。コマンド ./freeciv-server -r data/civ1.servは、このコマンド(およびいくつかの標準サーバーオプション)を使用するファイルを読み取るだけです。 serverコマンドは、ルールセットファイルが検索されるディレクトリを指定します。 データディレクトリ内のルールセットファイルはユーザーが編集できるため、Freecivを再コンパイルしなくても、それらを変更してカスタムのルールセットを作成できます。 default、civ1、およびciv2ディレクトリにある既存のファイルを編集してはいけません。代わりに、それらを別のディレクトリにコピーして、コピーを編集する必要があります。変更されたルールを使用していることを明確にするためです。

フォーマットに関する注意

  • 一部のルールファイルは、他のファイルに依存しています。例:ユニットは、techsファイルで指定された研究に依存します。
  • ユニットには「フラグ」のようなフィールド「ロール」がありますが、ゲームのさまざまな状況で使用されるユニットを決定します(ユニットの固有のプロパティではありません)。 common /unit.hのコメントを参照してください
  • ユニットと研究のプロパティは、かなり一般化されています。建物のプロパティはまだあまり柔軟性がありません。

質問があればまずルールセットフォーラムを確認してください。

ルールセットコレクションファイル[]

ルールセットは次に挙げる構成ファイルで構成されています。

  • buildings
  • cities
  • effects
  • game
  • governments
  • nations
  • styles
  • techs
  • terrain
  • units
  • script
  • serv

新しいルールセットを作成する方法[]

これらの手順は、UnixまたはLinuxのインストール用です。これらは迅速ですが荒い方法です。ルールセットの次のバージョンを適切な開発エリアに保存し、準備ができたらFreecivデータディレクトリにインストールすることをお勧めしますが、そのような複雑な方法はこのページの範囲外です。

  • 新しいルールセットの名前を決定します。たとえば、seawolf。
  • Freecivデータディレクトリを見つけます。たとえば、私のDebianGNU/Linuxコンピュータでは、これは/usr/share/games/freecivです。そのディレクトリには、defaultという名前のサブディレクトリとdefault.servという名前のファイルがあります。
  • そのデフォルトのサブディレクトリの内容を、あなたのルールセットと同じ名前でFreecivデータディレクトリにある新しいディレクトリにコピーします。たとえば、DebianGNU/Linuxコンピューターでseawolfルールセットを作成すると、/usr/share/games/freeciv/seawolf/buildings.ruleset/usr/share/games/freeciv/seawolf/cities.rilesetなどのファイルが作成されます。
  • default.servスクリプトをコピーして、Freecivデータディレクトリに新しいファイルを作成しますが、defaultの代わりにあなたのルールセットの名前を付けます。たとえば、/usr/share/games/freeciv/seawolf.servです。
  • そのスクリプトの最後にrulesetdirコマンドを追加して、ルールセットを選択します。たとえば、rulesetdir seawolf

これで、デフォルトのルールセットと同じルールを持つ、選択した名前の新しいルールセットが作成されました。 クライアントを使用してローカルサーバーを起動している場合は、ルールセットが使用可能なルールセットのメニューに表示されます。ただし、おそらく最初にクライアントを再起動する必要があります。 新しいルールセットディレクトリ内のファイルと、必要に応じて.servスクリプトを調べて変更し、ルールへの変更を実装します。

または、/usr/share/games/freeciv/の代わりに~/.freeciv/2.5というファイルにコピーする(2.5の代わりに使用しているfreecivのバージョン番号)こともできます。ルールセットを作成するためにrootユーザーとしてログインする必要がないという利点がありますが、コンピューターの他のユーザーは新しいルールセットを使用できません。

ルールセットのエラーをテストする方法[]

コマンドプロンプトを使用して、freecivサーバーに移動します。

cd /opt/bin/freeciv-2.5.9

freecivサーバーを実行します。

FREECIV-SERVER

ルールセットファイルを定義します。

rules alien

するとサーバーはエラーまたは警告を表示します。