Skip to content

カスタム変換を作成する

ゲームにはいくつかのコンテナタイプがあり、それらはコンバーター(変換器)です。例えば、醸造樽日干しラック、および 熟成棚 です。これらは腐敗することはなく、その内容物を製品に変換します。

しかし、これらの製品はすべてハードコーディングされています。CWL Trait CustomConverter と変換ルールファイルを使用することで、コンテナをカスタムコンバーターに変えることができます。

例えば、この行は brewery(醸造樽)からコピーされたものです:

trait セルには5つのパラメーターがあり、それぞれ CustomConverterwidth(幅)、height(高さ)、inventory style(在庫スタイル)、inventory ID(在庫ID)、conversion rule ID(変換ルールID)です。第5のパラメーターである conversion rule ID を空白にすると、アイテムIDが使用されます。

変換ルールを定義する

変換ルールはシンプルなJSONファイルで、LangMod/**/Data/ フォルダーにあり、ファイル名は converter_ID.json です。このIDは変換ルールのユニークなIDであり、例えば converter_fruit_barrel.json のようなものです。

json
{
    "DecaySpeed": 500,
    "IdMsg": "driedFood",
    "Conversions": {
        "origin:fruit": [
            {
                "Id": "dried_fruit",
                "Num": 1,
                "PriceAdd": "base * 0.25"
            }
        ],
        "grape": [
            {
                "Id": "raisin",
                "Num": 5,
                "PriceAdd": "base * 0.06 + 5"
            }
        ],
        "tomato": [
            {
                "Id": "dried_fruit",
                "Num": 1,
                "PriceAdd": "0"
            }
        ]
    }
}

DecaySpeed(腐敗速度)は変換速度で、500 はゲーム内の 醸造樽日干しラック、および 熟成棚 のデフォルト値です。

IdMsg は変換が完了した際に表示される LangGame テキストIDで、関連するエントリーは LangGame テーブルで見つけることができます。または、Game テーブルで独自のフレーズを定義することも可能です。

Conversions は一連の変換ルールであり、各エントリーは初期アイテムのIDと一致する必要があります。または、origin:originID を使用して、同じ _origin を持つすべてのバリアントを含めることができます。特定のアイテムを上書きすることも可能で、例えば origin:fruit の中で grape エントリーを上書きできます。

各変換エントリーには製品の配列があり、各製品は StockItem からの同じフィールドを含んでいます。デフォルトのフィールドは省略可能です。PriceAdd フィールドは、製品に追加される追加価格を計算するための式であり、base は初期アイテムの価格です。

テスト変換ルール

ゲームが実行中に変換ルールを編集することができます。変更を保存した後、コンソールコマンド cwl.converter.reload を使用してすべての変換ルールを再読み込みし、テストを行ってください。

API

CustomConverter

This project is an unofficial documentation site and is not affiliated with, endorsed by, or associated with Elin or Lafrontier / Noa. All trademarks are the property of their respective owners.