MOD/作成方法

指導者の各種画像表示(文明選択画面/ローディング画面/リザルト画面/外交交渉画面) Edit

長くなっちゃいますがある意味不可分なものなので、まとめて説明します。
SDKのサンプルを改変していく形で説明します。

用意するもの Edit

下処理 Edit

SDKのサンプルから立ち上げた状態だと、ゲーム内で自分の文明をクリックするとクレオパトラのアニメになっています。
まずはこれを消してしまいましょう。

クレオパトラのアニメを消すのは、既存記事(勝手に出てくるクレオパトラを消す方法)を参照してください。

texファイルの用意 Edit

PORTRAIT_hogehoge.dds、FALLBACK_NEUTRAL_hogehoge.dds、LEADER_hogehoge_NEUTRAL.ddsの三つはtexファイルというものが必要です。
自動生成できるっぽいんですけど(Photoshopなら可能?)わかりませんのでサンプルのを改変します。
コピーして中身を2か所ほど変更します。

FALLBACK_NEUTRAL_hogehoge.tex Edit

FALLBACK_NEUTRAL_JASPERKITTY.texをコピーして作ります。
コピーしたら開いて以下のように書き換えます。

    <m_ClassName text="Leader_Fallback"/>
    <m_DataFiles>
        <Element>
            <m_ID text="DDS"/>
            <m_RelativePath text="FALLBACK_NEUTRAL_hogehoge.dds"/> ★ここ
        </Element>
    </m_DataFiles>
    <m_Name text="FALLBACK_NEUTRAL_hogehoge"/> ★ここ
    <m_Description text=""/>
    <m_Tags>
        <Element text="Leader_Fallback"/>
        <Element text="Leader"/>
        <Element text="Fallback"/>
    </m_Tags>
    <m_Groups/>
</AssetObjects::TextureInstance>

PORTRAIT_hogehoge.tex Edit

LEADER_JASPER_KITTY_NEUTRAL.texをコピーして作ります。
コピーしたら開いて以下のように書き換えます。

<m_DataFiles>
    <Element>
        <m_ID text="DDS"/>
        <m_RelativePath text="PORTRAIT_hogehoge.dds"/> ★ここ
    </Element>
</m_DataFiles>
<m_Name text="PORTRAIT_hogehoge"/> ★ここ
<m_Description text=""/>
<m_Tags>
    <Element text="UserInterface"/>
    </m_Tags>
    <m_Groups/>
</AssetObjects::TextureInstance>

LEADER_hogehoge_NEUTRAL.tex Edit

こちらもLEADER_JASPER_KITTY_NEUTRAL.texをコピーして作ります。
コピーしたら開いて以下のように書き換えます。

<m_DataFiles>
    <Element>
        <m_ID text="DDS"/>
        <m_RelativePath text="LEADER_hogehoge_NEUTRAL.dds"/> ★ここ
    </Element>
</m_DataFiles>
<m_Name text="LEADER_hogehoge_NEUTRAL"/> ★ここ
<m_Description text=""/>
<m_Tags>
    <Element text="UserInterface"/>
    </m_Tags>
    <m_Groups/>
</AssetObjects::TextureInstance>

すべて作成し終えたら開発環境へ登録します。
元のJASPER_KITTYのは削除してしまいましょう。

XLPファイルの編集 Edit

XLPフォルダには2つファイルが登録されています。
それぞれ以下のように書き換えます。

LeaderFallbacks.xlp Edit

<?xml version="1.0" encoding="UTF-8" ?>
<AssetObjects::XLP>
    <m_Version>
        <major>4</major>
        <minor>0</minor>
        <build>253</build>
        <revision>293</revision>
    </m_Version>
    <m_ClassName text="LeaderFallback"/>
    <m_PackageName text="LeaderFallbacks"/>
    <m_Entries>
        <Element>
            <m_EntryID text="FALLBACK_NEUTRAL_hogehoge"/> ★ここ
            <m_ObjectName text="FALLBACK_NEUTRAL_hogehoge"/> ★ここ
        </Element>
    </m_Entries>
    <m_AllowedPlatforms>
        <Element>WINDOWS</Element>
        <Element>LINUX</Element>
        <Element>MACOS</Element>
        <Element>IOS</Element>
    </m_AllowedPlatforms>
</AssetObjects::XLP>

UILeaders.xlp Edit

<?xml version="1.0" encoding="UTF-8" ?>
<AssetObjects::XLP>
    <m_Version>
        <major>4</major>
        <minor>0</minor>
        <build>253</build>
        <revision>293</revision>
    </m_Version>
    <m_ClassName text="UITexture"/>
    <m_PackageName text="UILeaders"/>
    <m_Entries>
        <Element>
            <m_EntryID text="LEADER_hogehoge_NEUTRAL"/> ★変更
            <m_ObjectName text="LEADER_hogehoge_NEUTRAL"/> ★変更
        </Element>
        <Element> ★追加 
            <m_EntryID text="PORTRAIT_hogehoge"/> ★追加
            <m_ObjectName text="PORTRAIT_hogehoge"/> ★追加
        </Element> ★追加
    </m_Entries>
    <m_AllowedPlatforms>
        <Element>WINDOWS</Element>
        <Element>LINUX</Element>
        <Element>MACOS</Element>
        <Element>IOS</Element>
    </m_AllowedPlatforms>
</AssetObjects::XLP>

FallbackLeaders.artdefの編集 Edit

以下を書き換えるだけです。

                                    <Element class="AssetObjects::BLPEntryValue">
                                        <m_EntryName text="FALLBACK_NEUTRAL_hogehoge"/> ★ここ
                                        <m_XLPClass text="LeaderFallback"/>
                                        <m_XLPPath text="LeaderFallbacks.xlp"/>
                                        <m_BLPPackage text="LeaderFallbacks"/>
                                        <m_LibraryName text="LeaderFallback"/>
                                        <m_ParamName text="BLP Entry"/>
                                    </Element>

NewLeader_Config.xmlの編集 Edit

PORTRAIT画像を指定している以下の箇所を書き換えます。

PORTRAIT.png

ローディング画面、外交交渉画面の設定記述 Edit

用意しておいた残りの画像ファイル3つを登録します。

ImageAdded2.png

さらに、Property画面から画像のImportを指定します。

ImportImage.png

そしてここからxmlを書きます。
新規にファイルを追加してもいいですし、どこかに混ぜても構いません。
本例ではNewLeader_JasperKitty.xmlに混ぜ込むことにします。

(新規にファイルを追加した場合はPropertyへのファイル登録を忘れないように。In-Game Actions⇒UpdateDatabaseのところです。)

NewLeader_JasperKitty.xml

    <DiplomacyInfo>
        <Row Type="LEADER_JASPER_KITTY" BackgroundImage="hogehoge_DiplomacyInfo_Background.dds"/>
    </DiplomacyInfo>
    <LoadingInfo>
        <Row LeaderType="LEADER_JASPER_KITTY" ForegroundImage="hogehoge_LoadingInfo_Foreground.dds" BackgroundImage="hogehoge_LoadingInfo_Background.dds" LeaderText="LOC_LEADER_JASPER_KITTY_DOM_TEXT" PlayDawnOfManAudio="1"/>
    </LoadingInfo>

DiplomacyInfoが外交交渉画面です。
こちらはリーダーの指定と背景画像の指定のみ。
LoadingInfoがローディング画面です。前景、背景を登録します。
LeaderTextはローディング画面にでてくる指導者固有の説明書きの部分です。
必要なければ削除してOK。追加する場合はNewLeader_Text.xmlへ書いてください。

PlayDawnOfManAudioはゲーム開始(再開)時の時代に合わせた文章のナレーションボイス。0にするとボイスオフ。

成功例 Edit

文明選択画面

BeforeGameStart.jpg

Loading画面

Loading.jpg

外交交渉画面

Diplomacy.jpg

備考 Edit

文明選択画面の画像は用意しなくてもいい場合があります。
FALLBACK_LEADER_hogehogeを使っても違和感がない場合はつくらなくてOK。
(たとえばボイスロイドの立絵だときれいに調整されて枠に収まるケースが多いです)

また、本手順で実際に作ったものを以下に上げておきます。
https://www.axfc.net/u/3835265



このエントリーをはてなブックマークに追加