TJ's Custom Player MOD


This MOD supports custom appearance of your player.

Tweaks
9 days ago
0.16 - 2.0
2.03K

i MODDED アーマーへの対応

4 years ago

現在の仕様では、Level1~3のアーマーに対する画像セットの指定を設定することができますが、
MODで追加されたアーマーに対しても汎用・網羅的及び、
名指しでの画像セット指定の設定ができるとより利便性が高くなると思います。

4 years ago
  • 以下チラ裏 *
    前の書き込みの後、
    自家改造を行い現行の方法とほぼ同じ方法で高解像度画像を表示するものを作たのですが、

当時は、説明にあるように高解像度モードでない場合に、
高解像度モードで用いるような解像度の画像(つまり通常の縦横2倍)を用いると、
画像のサイズ制限に引っかかってしまうため、分割などの処理が必要となりました。
現在のバージョンでも設定によっては同じ問題が発生するかもしれません。

また、参考までにYuoki_0.8.91のアーマーに対応する差し替え記述として、
現在使っているものを貼ります(これは静的指定)。

local path
local patf
local list
local dat
local base
local name
local count

list = {}
list["levelAaddon"] = 1
list["levelBaddon"] = 1
list["levelCaddon"] = 1
list["levelDaddon"] = 2
list["levelEaddon"] = 2

if true then
path = data.raw.character.character.animations
patf = data.raw["character-corpse"]["character-corpse"].pictures

for name, count in pairs(list) do
    dat = path[name]
    if dat then
        base = path[count]
        dat.idle = base.idle
        dat.idle_with_gun = base.idle_with_gun
        dat.mining_with_hands = base.mining_with_hands
        dat.mining_with_tool = base.mining_with_tool
        dat.running_with_gun = base.running_with_gun
        dat.running = base.running
    end
    dat = patf[name]
    if dat then
        patf[name] = patf[count]
    end
end

end

4 years ago
(updated 4 years ago)

>tanuki_sanさま
ありがとうございます。最近はFactorioもご無沙汰で、ここもチェックできていませんでした。
返信が遅れてしまってすみません。

① 高解像度について
仰る通り、128ピクセルで出力すると画像ファイルのサイズが推奨とされる2048を超えます。
このことは実は知っていたんですが、それで動かした所、そのまま動きましたので良しという事にしました。(当時)
画面上に工場長は多くても2~3人しかいないので処理速度的にも問題ないだろうという判断です。
これ、最新のバージョンとか、グラフィックボード固有の問題で動かないのでしたら
これは問題ですので詳しく教えてもらえますか?

ただ、コンバート元(RPGツクール等)が4コマの歩行グラフィックしかなく、
そこから生成している以上、そもそも厳密に採掘アニメを26コマで表現する必要もないんですよね。
8コマに減らした方が楽かもしれないと思っています。(過去のデータ使えなくなりますけど)

② 装備MOD対応について
Bob's Modsとか含めて強化モジュールアーマーを追加するのは結構あるのですが、
そのあたりは、何れも、デフォルト装備の画像を使うものが多いみたいで、
新規の画像を用意しているものは初耳でした(仰るYuoki MODが唯一?)。
(そもそも個人的に遊んでいる環境が大型MODを使っておらずバニラ主体;)

で、対応ですが、ご表記頂いたように
data.raw.character.character.animations["levelAaddon"](MOD装備)の各項目を
data.raw.character.character.animations[1](デフォルト装備)で差し替えれば
いけるのだと思いますが、
前提として「levelAaddonが先にゲーム登録されている=先にYoukiが読み込まれている」必要があって
先に本MODが読み込まれると動かなくなってしまうと思います。
その辺を厳密にするには、info.jsonのdependenciesを登録し、Youkiに依存するように書き換える必要があり、
やはり個別に対応する必要があるのではないかと。

少し考えたのですが、汎用的な制御をキャラクタ―設定(custom.lua)側で何とかする方法は思いつきませんでした。

4 years ago

あ。ソース読んでいて気づきました。

私のMOD上でarmors = {"light-armor", "heavy-armor"} みたいな上書きをやってしまっているので、
BOB'sがやっているようなarmorsに"heavy-armor-2"みたいな追記が
事前に行われていたとしてもふっ飛ばしてしまいますね。
これはまずいし直せそうなので直しておきます。

New response