Wildermyth:侵入防御マップを作成する方法

Wildermythでカスタム侵入防御マップを作成するためのガイド、およびサイトエディターを使用するための一般的なガイド。

 

概要

私に取り組んでいる間 侵入防御パック modWildermythのマップエディタがどのように機能するかについてのリソースがたくさん見つかりませんでした。 公式Youtubeチャンネルにはビデオがあります (私は見ることをお勧めします)が、エディターには、新しいユーザーにはすぐにはわからない多くの癖があります。 私は特に侵入防御マップも作成していたので、通常のマップと比較してそれらがどのように機能するかを知る必要がありました。 このチュートリアルは特に侵入防御マップに関するものですが、サイトエディタを理解したい人には役立つはずの十分な一般知識が含まれています。

サイトラボ

まず、メインメニューの[ツール]> [エディターを開く]に移動し、エディターメニューから[サイトラボ]を選択して、エディターを開きます。 サイトエディタに進む前に、右上隅から[Mods]を選択し、[CreateNewMod]をクリックして新しいModを作成しましょう。


modを作成すると、modリストで自動的に選択されます。 [確認]をクリックして終了します。

サイトエディタの基本的なレイアウトには、マップ自体を表示するメインウィンドウと、マップのコンポーネントを操作できる左側のパネルがあります。 このパネルの上部にはさまざまなエディターオプションがありますが、関係するのは「計画」だけです。 計画は、マップのレイアウトとオブジェクトの配置に関する特定のデータです。 新しいものを作成するので、[新しい戦い](CTRL + N)をクリックします。


さあ、あなたの戦いのために思い出に残るIDを入力してください。 この画面の他のすべては、安全に無効にするか無視することができます。 後でわかるように、侵入防御マップのすべてのロジックはすでに処理されています。

ファイトを作成したら、[プラン]ドロップダウンで検索して選択します。

最後に、「SetPieces」というラベルの付いたチェックボックスをオフにします。 これにより、背景オブジェクトが環境から削除されるため、マップのビジョンが不明瞭になることはありません。

注:[形式]ドロップダウンから[incursionDefense]を選択したくなる場合があります。 フォーマットを変更すると、エディターのマップの背後にあるゲームロジックが変更されます。 incursionDefenseの場合、ゲームロジック 無視する 現在選択されているプラ​​ンではなく、incursionDefenseプールからランダムなプランを選択します。つまり、エディターをリロールするたびに、異なるマップが読み込まれます。 編集中は、ゲームロジックが編集に干渉しないように、フォーマットを「アサルト」のままにしておく必要があります。

ミッションプラン

ミッションプランは、マップデータを表したものです(技術的に傾いている場合、これは単なるJSONファイルです)。 マップの作成に取り掛かる前に、いくつかの初期設定を行う必要があります。 今のところ、詳細セクションの横にあるマイナスアイコンをクリックして折りたたんでください。 「declaredRoles」と「extraInfo」の間のすべてに焦点を当てます。


これらの設定がわからなくても大丈夫です。 これは、ゲームがマップを適切に設定するために必要な情報です。

まず、declaredRolesの横にある[NewEntry]ボタンをクリックします。 ここで設定する必要があるオプションは、「自己」のXNUMXつだけです。

次に、declaredEncounterResultsの下にある[NewEntry]ボタンをクリックします 三回。 オプションを次のように設定します。

0:敗北
1:勝利
2:脱出

侵入防御ミッションが終了するXNUMXつの方法は次のとおりです。ヒーローがすべての敵を倒すか、敵がすべてのヒーローを倒すか、ヒーローがすべての敵を殺さずにマップから脱出するかのいずれかです。

skipDefaultPlotsをクリックし、チェックボックスをTrueに設定します。 侵入防御マップのロジックはすでに存在するため、他のロジックが干渉することは望ましくありません。

extraInfoの横にある[新規]ボタンをクリックします。 これにより、「incursionDefense」という名前のオプションが追加されます。 これをtrueに設定します。 このオプションは非常に重要です。 プレイヤーが侵入から町を守るときにゲームが選択する侵入防御マップのプールにマップを追加します。

詳細リストの下に、マップを構成するさまざまな機能を追加できます。 次のセクションでは、それぞれについて詳しく説明しますが、最初に追加する必要のある詳細がXNUMXつあります。 詳細の上にマウスを移動し、[新しい詳細...]をクリックして、MapDetail_Plotを追加します。 詳細リストの下部に、Plot{}というラベルの付いたオプションが表示されます。 このオプションを展開し、plotIdフィールドをクリックします。 表示されるリストで、プロットとしてM_incursionDefenseを選択します。 これには、侵入防御マップに必要なすべてのロジックが含まれています。

注:キャンペーンのプレイ中にmodが読み込まれ、侵入防御マップの作成が完了していない場合、防御時にこのマップを読み込もうとすると、ゲームはエラーをスローしてメインメニューに戻ります。街。 キャンペーンが終了して使用できるようになるまで、キャンペーンでmodを無効にしてください。

床、壁、ドア

準備がすべて整ったので、良いものを用意しましょう。 今のところ、エディタウィンドウはおそらく次のようになります。


新しいマップには、床、ランダムな風景、スポーン領域など、一般的に使用される詳細がいくつか含まれています。 とりあえず、追加した床、壁、プロットを除くすべてを削除しましょう。 エントリを削除するには、マウスをそのエントリの上に移動してXボタンをクリックするだけです。 これらは後で追加し直します。

これらのエントリを削除しても、マップから消えることはありません。 これは、ロード時にマップがXNUMX回だけ生成されるためです。 最新の変更を生成するには、次のことを行う必要があります。 リロール、エディタの左上隅にある[リロール]ボタンをクリックするか、Ctrl+Rを押します。


ずっといい!

DrawFloorの詳細を展開し、floorTilesをクリックします。 エディターに表示されるグリッドには、マップ内の各フロアタイルが表示されます。 さらに追加するには、空のタイルをクリックするか、右クリックして既存のタイルを削除します。 Shiftキーを押したままにすると、クリックしてドラッグして複数のタイルを描画でき、エディターの左上にあるドロップダウンでブラシのサイズを設定できます。 以前と同様に、行った変更は、マップをリロールするまで表示されません。

フロアプランを好きなように作成します。 個人的には、私のものは次のようになります。


エスケープを押すか、floorTilesオプションをもう一度クリックして描画を無効にします。

DrawFloorの詳細にいくつかの追加オプションがあることに気付くかもしれません。 ほとんどの場合、床をバイオームに一致させたいので、これらを変更したくないでしょうが、場合によっては、床のテクスチャを変更したい場合があります(つまり、建物内に別の床を追加したい場合)。 これを行うには、空のfloorLayersのXNUMXつを選択し、必要なテクスチャを選択します。 次に、floorLayerの上にマウスカーソルを置いて、描画ボタンをクリックします。 Wildermyth \ mods \にJPGを含めることで、そのfloorLayerのテクスチャをカスタムテクスチャに交換することもできます。 \ Assets \ sites\images。

城壁

壁は床と同じように描かれます。 DrawWallsの詳細を展開し、タイルをクリックして、壁を配置する場所に描画します。 床と同じように、shortBiome、midBiome、tallBiomeのプリセットは、マップが生成されたバイオームを使用しますが、目的の効果に応じて特定の壁を選択することもできます。 ほとんどの壁の設定は変更しないでください。ただし、hasWallsCapsやisBoundaryなどのオプションが役立つ場合があります。 各オプションにマウスを合わせると、その説明が表示されます。

複数のタイプの壁が必要な場合は、壁のタイプごとに追加のDrawWallsの詳細を作成できます。 これを行うには、詳細カテゴリにマウスを合わせ、MapDetail_DrawWallsを選択します。

ドア

壁は、人(またはモンスター)がエリアを通過するのを防ぐのに最適ですが、とにかくそれらを通過させたい場合はどうなりますか? これは、「ドア」と呼ばれる信じられないほどの新しいテクノロジーで実現できます。 詳細リストにMapDetail_Doorを追加し、ドアエントリの下の場所をクリックしてドアを配置します。 既存の壁にドアを配置すると、ドアが通過できるように壁が自動的に削除されます。 ドアはXNUMXつのタイルを使用することも、複数のタイルに合わせて拡大縮小することもできます(ただし、一部のドアスタイルには最小サイズがあります)。 スタイルオプションはドアの外観を決定します。壁のように、異なるスタイルのドアが必要な場合は、複数のMapDetail_Doorの詳細を作成できます。


ドアにはいくつかの便利なオプションがあります。isOpenを使用すると、ミッションの開始時にドアがすでに開いているように設定できます。 Lockedは、プレイヤーまたはモンスターがドアと対話できないようにします(これは、isOpenと組み合わせて、永続的に開いているドアを作成できます)。

稲妻、風景、ランプ、破片

マップの基本的な部分が整ったら、スペースをより面白くするために詳細を追加してみましょう。

手っ取り早い方法

前のセクションでは、囲まれた建物を作るためにいくつかの壁を配置した可能性があります。 MapDetail_InteriorRegionを使用すると、建物に照明と風景をすばやく配置できます。 MapDetail_InteriorRegionを追加し、タイルを選択して、建物内の領域をペイントするだけです。


マップをリロール…


そして、そのように、あなたの建物には室内照明があり、ランダムに配置された風景があります! しかし、まだ終わっていません。 一つには、意図した構造と一致しないオブジェクトがあることに気付いたかもしれません。 これらは、いくつかのInteriorRegion設定で制御できます。

InteriorRegionのオプションの多くでは、0.0〜1.0の数値を使用して、スポーンできるシーナリーのタイプと頻度を制御できます。 たとえば、useMonsterSceneryを0.0に設定すると、このリージョンは、モンスター(青いゴルゴンの触手など)によって作成されたシーナリーオブジェクトを生成しません。 これらの設定を好みに合わせて変更し、リロールして変更を確認します。 forbidLampsAndSceneryを使用して、内部照明効果を維持しながら、特定のタイルにオブジェクトがスポーンするのを防ぐこともできます。 最後に、forbidThisSceneryAndLampsを使用して、ランダムに選択したくない風景の正確な部分を指定できます。

内部空間をさらに高速に作成する方法として、MapDetail_Houseを使用できます。 マップに詳細を追加し、幅XNUMXタイルの長方形を描くと、エディターがすぐに居心地の良いコテージを作成します。 このツールは他の方法よりもはるかに少ない制御を提供しますが、結果は非常に迅速です。

注:家の側壁は、詳細リストの最初に表示されるDrawWallsの詳細によって定義されます。 壁のスタイルを変更するには、MapDetail_DrawWallsを作成し、必要な壁のスタイルを設定してから、マップ内の他のすべてのDrawWallsの詳細の上に移動するまで、その詳細の上矢印をクリックします。

高度な方法

上記のオプションを使用すると、マップに詳細をすばやく追加できますが、より具体的な制御が必要な場合は、追加のオプションがあります。 照明には、MapDetail_DrawIndoorLightingを使用できます。 これはInteriorRegionと非常によく似た方法で機能しますが、タイルごとに特定の量の光を設定できます。


DrawIndoorLightingを使用してタイルを描画すると、画面の上部に不透明度スライダーが表示されます。 これにより、特定のタイルに適用する光の量を設定できます。 タイルを描画して、そのタイルに不透明度を追加することもできます(つまり、不透明度を0.1に設定し、タイルを0.2回クリックすると、不透明度がXNUMXに設定されます)。

風景やランプを作成するためのツールも多数あり、前の手順よりも詳細に制御できます。 これらの中で最も詳細なのはMapDetail_RandomSceneryです。 これを今すぐマップに追加してください。

注:「非推奨」という単語が横に付いたマップ詳細を使用しないように注意してください。 ゲーム開発用語では、「非推奨」とは、このオプションがサポートされなくなり、別のものに置き換えられたことを意味します。 廃止されたマップエディタ機能の一部は引き続き存在しますが、このチュートリアルでは、引き続き使用することを目的とした機能にのみ焦点を当てます。

RandomSceneryの最初の設定はwhereToSpawnであり、次のXNUMXつのオプションがあります。

  •  マップ全体に風景をスポーンします。
  • 特定の地域 ランダムなシーナリーがスポーンできるエリアを定義できます(InteriorRegionのように)
  • 正確な場所 風景が常に出現する特定のタイルを選択できます。

このツールは、上で説明したInteriorRegionと非常に似ていますが、いくつかの追加オプションが含まれています。 特に、sceneryDensityでは、0.0〜1.0の数値を設定して、スポーンエリアに配置されるランダムなシーナリーの量を制御できます。 drawForbidScenery設定もあります。これにより、風景がスポーンしてはならないタイルを定義できます。 このオプションの使用には注意してください。現在のMapDetailだけでなく、詳細リストの現在のMapDetailの下にあるすべてのMapDetailによって生成されたシーナリーもブロックされます。

シーナリーをどのように設定するかはあなた次第です。 デモンストレーションのために、構造内の内部の風景を生成するためのRandomSceneryの詳細と、すべての屋外タイルの外部の風景を生成するためのXNUMX番目のRandomSceneryの詳細を追加しました。 また、マップレイアウトの主要なレーンを通る禁止されたタイルのパスを描画して、それらが乱雑になりすぎないようにしました。

さらに、RandomLampsの詳細を構造内のランプをスポーンするために追加し、XNUMX番目のRandomLampsの詳細をドアの外側にスポーンするために追加します。 これはRandomSceneryと同じように機能します。


私たちの地図は今かなり良く見えています! しかし、スポーン領域に移る前に、デブリを簡単に見てみましょう。

デブリとは何ですか? まあ、それはこのようなものです:


それは重要ではないように思われるかもしれませんが、いくつかの能力はそれを燃やすことができ、火は破片タイルの間に広がるので、それはゲームプレイに影響を及ぼします。 MapDetail_Debrisを使用すると、それをある程度制御できます。 MapDetail_Debrisには、globalDebrisChanceとdrawDebrisChanceの0.1つのオプションがあります。 前者のデフォルトはXNUMXで、通常はそのままにしておくことができます。 drawDebrisChanceを使用すると、タイルに破片をペイントできます。 照明を描画する場合と同様に、不透明度を設定して、そのタイルに破片が発生する可能性を定義できます。 これは、破壊されたもの(つまり、壁の折りたたまれた部分)の外観を作成するときに最も役立ちます。

スポーンリージョンのすべて

SpawnRegionsは、プレイヤーと敵がスポーンする場所を制御します。 また、補強タイルやエスケープタイルなども処理します。

プレイヤースポーン

SpawnRegionを作成し、タイルをexactTilesに設定してから、ヒーローキャラクターをスポーンさせたい場所に描画します。 ここでヒーローをスポーンさせるには、役割を「攻撃者」に設定します(これは防御ミッションでは間違っているように見えるかもしれませんが、すべてのミッションタイプで、プレーヤーは常に攻撃者と見なされます)。

XNUMXつの大きな接続されたスポーン領域、または複数の切断された領域を描画することを選択できます。 後者を行うと、すべてのヒーローがすべてのタイルに広がるのではなく、同じグループのタイルの周りにスポーンすることに気付くでしょう。 このsplitGroupsIntoSeparateRegionsを修正するには、falseに設定する必要があります。 これも直感に反しているように見えますが、splitGroupsIntoSeparateRegionsが言うこととは逆の動作をするプレーヤーのスポーンにバグがあるようです。

敵のスポーン

次に、別のSpawnRegionを作成し、タイルをexactTilesに設定し、役割を防御側に設定します。 これが敵のスポーンエリアになります。 次に、このspawnRegionの[複製]ボタンをクリックして複製します。 新しいspawnRegionのusePriorityを1に設定します。これにより、スポーンエリアよりも多くの敵がいる場合にのみ、使用頻度の低いスポーンエリアを定義できます。

注:usePriorityのツールチップには、次のように記載されています。 より高い 優先度が最初に使用されます。 これはほとんどのミッションタイプに当てはまりますが、侵入防御ミッションのバグにより、逆の順序が使用されます。 ゼロが最高の優先度であり、後続の各番号の優先度は低くなります。

援軍と脱出

ミッションに戦うのに公平な数よりも多くの敵がいる場合、それらの敵は、既存の敵の一部が殺されるまで予備として保持されます。 これらの敵は、delayedSpawnを使用してSpawnRegionからスポーンします。 先に進み、別のSpawnRegionを作成し、その役割を防御側に設定し、使用法をdelayedSpawnに設定します。 これらのエリアは通常、マップの端の周りにあり、プレイヤーのスポーンからかなり離れている必要があります。

ヒーローが戦いに負けている場合、彼らは脱出タイルに到達することによって後退するオプションがあります。 ロールを攻撃者に設定し、使用法をエスケープに設定して、SpawnRegionを作成します。 これらのタイルは通常、マップの端にあり、プレイヤーのスポーンからの距離によって、ヒーローがそれらに到達するのがどれほど難しいかが決まります。

注:RandomScenery詳細でdrawForbidSceneryオプションを使用して、これらのタイルの上にシーナリーが配置されないようにすることができます。

まとめ

おめでとう! マップをプレイする準備ができました! そのmodを公開して世界にリリースする前に、いくつかの最終的な考えを示します。

  • マップをテストします。 マップがどのようにプレイされているかを理解することが重要です。 エディターからは見栄えが良くても、再生時に問題が発生する場合があります。 マップがキャンペーンに表示されることを確認する方法については、テストに関するWildermythWikiガイドを使用してください。 https://wildermyth.com/wiki/Testing
  • 最高のものから学ぶ: ゲームでプレイするすべてのマップは、エディターで利用できます。 自分で使用したいマップに特定の効果や状況が見られた場合は、エディターで既存のマップをロードして、自分の目で確かめてください。 また、マップがどのように作成されるかを学ぶための優れた方法でもあります。 このチュートリアルで書いたすべてのことは、既存のマップを見て、それを自分で作成するためのリファレンスとして使用することで学びました。
  • フィードバックを残す: 私が何かを逃したり、間違えたりした場合、またはさらに質問がある場合は、以下に質問してください! このガイドをもっと便利にするために何かできることがあれば、このガイドを更新できてうれしいです。

幸せな建物!

コメント

ArabicEnglishFrenchGermanItalianJapaneseKoreanPortugueseSpanish