キャラクター

キャラクター

  • 0

Windows版メインキャラの各種設定をサブキャラに一括コピーするスクリプト

公開
サブキャラにHUD等の設定ファイルをコピーしたことある方はたくさんいらっしゃると思います。
私もこちらのロードストーン記事を参考にちょくちょく実施しています。

Windows:FFXIVメインキャラ設定をサブキャラにコピーする!
https://jp.finalfantasyxiv.com/lodestone/character/19733751/blog/3976174/

ところで、たびたびコピーするの、めんどくさくないですか?
私はサブキャラが1人なのでまだマシですが、特に複数のサブキャラを運用している方だとさらに面倒なのでは?と思います。

そこで必要な処理を一発で実行してくれるスクリプトを書きました。
メインキャラのフォルダ内にある8つのファイルを、メインキャラ以外のフォルダ配下にコピーしてくれます。

以下、手順とスクリプトを紹介します。

※メインキャラのフォルダ指定を間違えると、サブキャラの設定ファイルでメインを上書きしてしまうこともありえます。まずは対象のファイルをバックアップしていただいた上、自己責任でのご利用をお願いします。

1.「My Games」フォルダの中にある「FINAL FANTASY XIV - A Realm Reborn」というフォルダを開く

My Gamesを開くにはキーボードのWindowsキーを押して、「my games」と入力して開くのが一番楽かと思います。

2.メインキャラのフォルダを特定する

「FFXIV_CHR00xxxxxxxxxxxxxxxxxx」みたいなフォルダがキャラクターの数だけ並んでいます。
冒頭にも書いた参考記事:「Windows:FFXIVメインキャラ設定をサブキャラにコピーする!」を参考にメインキャラクターのフォルダを特定してください。
スクリプトにこのフォルダ名を記載していただく場所があります。

3.スクリプトファイルを自作する

エクスプローラで「FINAL FANTASY XIV - A Realm Reborn」フォルダの中にいる状態で、空欄で右クリックしてメニューを開き、「新規作成」→「テキスト ドキュメント」を選び、ファイル名を「コピー.ps1」などとして配置します。
拡張子が「ps1」であれば、ファイル名は何でもよいです。

そしてファイルをダブルクリックして開きます。通常はメモ帳が開くはずです。
そうしたら以下のテキストをコピーして貼り付けてください。
また、一行目の「FFXIV_CHRXXXXXXX」のようなところには、手順2で特定したメインキャラクターのフォルダ名に書き換えてください。

ペーストして書き換えが終わったら保存してメモ帳を閉じます。

---- ここから ----
$main = "FFXIV_CHRXXXXXXXXXXXXXXX" # ←ここを書き換える!!
$items = Get-ChildItem -Directory | Where-Object {$_.Name -notmatch $main} | Where-Object {$_.Name -match "FFXIV_CHR"}

$targetFiles = @(
"ADDON.DAT",
"COMMON.DAT",
"CONTROL0.DAT",
"CONTROL1.DAT",
"HOTBAR.DAT",
"KEYBIND.DAT",
"LOGFLTR.DAT",
"MACRO.DAT"
)

Set-Location $main

foreach($dir in $items) {
foreach($file in $targetFiles) {
$fromPath = Join-Path $main $file
$destinationPath = Join-Path ".." $dir | Join-Path -ChildPath $file
"Copy-Item $fromPath to $destinationPath"
Copy-Item $file $destinationPath
}
""
}

"終了するには何かキーを入力してください..."
[Console]::ReadKey($true) | Out-Null

---- ここまで ----

4.実行前の確認

実行前に「FFXIV_CHRxxxxx」みたいなフォルダをどこかに一時的にまるごとコピーしてバックアップしておきましょう。自己責任なので!

さて、先程作った「copy.ps1」ファイルの置き場所を確認します。

基本的には FFXIV_CHRxxxxxxx と同じ階層にあればいいので、例えば以下のような並びになっているはずです。

・backup
・downloads
・FFXIV_CHR00xxxxxxxx01
・FFXIV_CHR00xxxxxxxx02
・FFXIV_CHR00xxxxxxxx03
・copy.ps1 ←これ
・FFXIV.cfg
・...


このように配置できていれば準備完了です。

5.実行する

先ほど配置した「copy.ps1」ファイルを実行します。実行するには、「copy.ps1」を右クリックしてメニューを開き「PowerShellで実行」をクリックします。

そうするとなにやら黒い画面がでてきて、最終的には「何かキーを入力してください」といったメッセージが出るはずです。
サブキャラのフォルダを開くと、いくつかのファイルの更新日時が新しくなっていることがわかります。
これで実行完了です。お疲れさまでした。

おわりに

何度もしつこいようですが、自己責任でご利用ください。
バックアップを取りさらにそこから復旧できる方におすすめです。

プログラムが誤っている等あればコメントしていただけると助かりますが、使い方のサポートなどは対応しきれないことをご了承ください。

最後に、元記事の筆者さまに感謝します。
コメント(0)
コメント投稿

コミュニティウォール

最新アクティビティ

表示する内容を絞り込むことができます。
※ランキング更新通知は全ワールド共通です。
※PvPチーム結成通知は全言語共通です。
※フリーカンパニー結成通知は全言語共通です。

表示種別
データセンター / ホームワールド
使用言語
表示件数