Killing Floor 2

Killing Floor 2

Not enough ratings
SDKの基本
By あさぴっぴ [asapi]
ここではSDKの基本を日本語で解説します。僕も詳しくはないので、あくまで言語的ハードルを取り払うことで、SDKを使い始める手助けとなったらいいなと思っての執筆となります。
随時更新できればする予定です。
   
Award
Favorite
Favorited
Unfavorite
はじめに
SDKでは、カスタムマップの作成のほか、ゲーム内で使われているほとんどのファイルをいじることができます。カスタム武器スキンも、カスタム服飾も、カスタムPerkアイコンも、このSDKを用いて作られます。
SDKのインストールから操作方法
Steam版KF2を所有していれば、SDKはツールカテゴリとしてライブラリにすでに存在しているはずです。ライブラリを検索し、SDKを見つけたら通常のゲームと同様にインストールしてください。


起動をクリックすると次のポップアップが表示されると思います。


ひとつめの「Editorを起動」を選択してOKを押してください。「Workshop Upload Tool」はその名の通りアイテムを投稿する際に使います。
起動準備が進むと、今度は次の表示があると思いますが、どれを選んでも問題ないので好きなものを押してください。警告がでてもOKを押してそのまま起動させましょう。




起動できたら、StartUpTipsと、Content Browser、Unreal Editorのメインウィンドウの3つのウィンドウが表示されると思います。
StartUpTipsはメインウィンドウ、ツールバーのHelpから、Content BrowserはView > Browser Windowからいつでも再表示できるので閉じても大丈夫です。
ただしContent Browserは非常に多用するので最小化して左下に表示させておくことを勧めます。

ひとまず既存のマップを開いてみよう。
FileタブでOpenをクリックし、次のディレクトリにあるKF-BioticsLab.kfmを開きます。
C:ProgramFiles(x86)\steam\steamapps\common\KillingFloor2\KFGame\BrewedPC\Maps\BioticsLab
表示される警告はマップの出来に対する警告なので無視しましょう。
それではまずマップ内を動いてみましょう。
移動はWASDと、加えて昇降にQEを使います。右クリックや左クリックをしながらマウスを動かせば、それぞれ違った視点操作ができるので色々試して慣れましょう。


次に画像の記した基本的な要素について解説します。
  1. クリックで選択したマップ内のものを、平行移動させるか、回転させるか、拡大縮小させるか、ある方向にだけ拡大縮小するのかを選択できます。選択状態でスペースバーを押すことでも、平行移動と回転、拡大縮小は切り替えられます。
  2. マップの見方を変えます。光の設定無視(Unlit)や、スプラッター設定ビューなど色々あるのでいじって確認してみましょう。
  3. モード切替。基本のうちはカメラモードと、必要に応じてジオメトリモードを使う。後者はもっぱらVolumeをいじる際などに使う。
  4. 移動速度の変更。クリックすれば移動速度が段階的に変わります。
  5. ビルド。マップを作ったらビルドをしなければゲームで使えません。光だけビルドしたり、全部ビルドしたりなどの選択の幅はあります。
  6. Volumeの追加です。BrushでVolumeを追加できます。
  7. 左で選択したActorの場所まで移動します。右ではBrushの場所まで移動します。
Brush、Volume、Actorなどがなんなのか最初はわからないと思いますが、利用のタイミングで随時説明します。
カスタムマップの基本
SDKの基本操作がわかったら、マップを作ってみよう。
ここではゲームを遊ぶのに必要最低限の要素だけをまず紹介する。
まずFileからNew Levelをクリック、Blank Mapを選択してください。真っ暗な空間になったら、Fileから早速Save Asで保存します。

命名のルール:かならず KF-xxxx という形式にすること。

保存場所は確か勝手に矯正されたと思いますが、次のディレクトリにしてください。
ドキュメント\\My Games\KillingFloor2\KFGame\Unpublished\\BrewedPC\Maps

さてマップ製作で必要最低限、あるいはあるべき要素は次の通りです
  • StaticMesh(地面とか壁とか)
  • KFPlayerStart(プレイヤースポーン地点)
  • KFTraderTrigger と TraderPod_Rig_Master(トレーダー)
  • KFPathNode(Zedが経路を認識するためのもの)
  • KFSpawnVolume(Zedスポーン地点)
  • LightingVolume と Skylight(マップ全体の照明)

Modular_StaticSetとPathNodeのチュートリアル
まず、StaticMeshを配置してマップを形作っていきましょう。
Content Browser で、
KFGame\BrewedPC\Packages\Environment\Env_Modular_StaticSet
を右クリックし、Fully Loadを選択してパッケージを読み込んでください。


そしたらさらに、
Modular_StaticSet\Modular_StaticSet_MESH\single_mesh
を開いてください。そこにあるFloor、Wall、Ceilingがそれぞれ床、壁、天井の基本形です。
まずはこのModular_StaticSetを使ってマップを作りましょう。
Floor\Base\Single_Floor
を選んで、マップ上にドラッグ&ドロップで配置します。


Meshの移動では、右下のDrag Grid SnapとRotation Grid Snapをうまく使うのが重要です。


左側のDrag Grid Snapにチェックを付けると、選ばれている数の分ずつしか動きません。つまりカクカク動かせるということです。床などをキレイに並べたいときはカクカク動かし、オブジェなどを細かく位置指定したときはヌルヌル動かすなどと使い分けるといいです。プルダウンから数字を変更すればカクカク具合の変更も可能です。
右側のRotation Grid Snapはその回転版です。数値は度数法で表記されています。

床が動かせたらPathNodeを置きましょう。これがないとZedたちは迷子になってしまいます。
床のMeshを右クリックし、画像の通りにしてPathNodeActorを追加してください。


リンゴマークみたいなものが追加されたら、これをダブルクリックしてプロパティを開きましょう。


ここでは床とPathNodeを紐づける作業をします。
プロパティでAttachment の Baseを見つけてください。ここに今ある床を加えたいのですが、プロパティを閉じないために、右上のロックボタンを押してください。
そのうえで床を選択し、Attachment Base の緑の矢印をクリックして紐づけます。
PathNodeは基本、この小さい床1枚の面積あたりに一つあれば十分です。多すぎる時はソフトウェアがビルド時に教えてくれますので、少なくなり過ぎないようにだけ気を付けてPathNodeを加えましょう。
ちなみにNodeはNキーで表示非表示を切り替えられます。

次にCtrl+LMBで、PathNodeとMeshの両方を選択しましょう。
選択したらAltを押しながらドラッグしてMeshをコピーします。この時、キレイに並べられるようにDrag Grid Snapは有効化しておきましょう。




編集中!
upkファイルの作成(Texture2Dの例)
ここでは新しいパッケージを保存してupkファイルを作成する手順について解説します。
例として、カスタムマッププレビューのための追加TEXをupkファイルとして作成する手順で説明しましょう。


まずContent Browser を開いて左下のNEWをクリックします。表示されたウィンドウでPackage名とファイル名、Factoryの選択を設定します。
Package名は保存時upkファイルの名前になります。ファイル名は適当につけてください。今回はQurantineBreachなるマップのプレビューを作りたいので画像の通りに命名しています。
FactoryはTEXならTexture2Dを選択してください。画像サイズは設定しなくても大丈夫です。
設定できたらOKを押すと、PackageとTexture2Dが作成されます。
あるいはContent Browserで右クリックすればNew Texture2Dから作成することもできます。


次に画像ファイルを用意します。ファイル形式はtgaが推奨されていますが、pngでも機能します。不具合がでるのかは知りません。(現状未確認)なお、pngからtgaへの変換はこのサイト[anyconv.com]が有用です。
ファイルのサイズは1:1か2:1にしておくことを勧めます。他のサイズだと読み込めません。(たぶん。読み込めたことない)また、最大で512×512にしておきましょう。大きすぎてもだめだと思います。
なお、今回のようなマッププレビューでは512×256にします。

画像ファイルが用意出来たら、Texture2Dの設定ウィンドウでImportします。


Source File Path の欄でパッケージからの相対パスか、あるいは絶対パスを入力してReImportを押せば画像が読み込まれます。もしくは無意味な文字を入力してReImportを押せば、エクスプローラー内をブラウジングすることもできます。
この状態でメインウィンドウのFileからSave Allをクリックすればパッケージが保存され、
ドキュメント\My Games\Killing Floor 2\KFGame\Unpublished
の中のどこかにupkファイルが保存されます。