先日、 Linux版のSteamでCiv5を日本語環境で動かした暫定メモ で書いた通り Civ5 を Linux でも日本語でプレイできるようにしたが、 DLC はやってなかったのでやった
まず DLC を持ってくる
civ5
ディレクトリを適当に作って、その中で
1
| mkdir dlc_01 dlc_02 dlc_03 dlc_04 dlc_05 dlc_06 dlc_07 dlc_deluxe expansion expansion2 shared
|
とかをする。
次に Windows の Steam ディレクトリから DLC の言語ファイル各種を持ってくる。
大体 DLC/DLC_*/Gameplay/XML/Text/
みたいな感じなところにある JA_JP
ディレクトリをなんかこういい感じに持ってくる。
各々の DLC ディレクトリにいい感じに置いておく。
下記みたいな感じにする。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33
| ➜ civ5 tree -d . ├── dlc_01 │ └── JA_JP │ └── LeaderDialog ├── dlc_02 │ └── JA_JP │ └── LeaderDialog ├── dlc_03 │ └── JA_JP │ └── LeaderDialog ├── dlc_04 │ └── JA_JP │ └── LeaderDialog ├── dlc_05 │ └── JA_JP │ └── LeaderDialog ├── dlc_06 │ └── JA_JP ├── dlc_07 │ └── JA_JP ├── dlc_deluxe │ └── JA_JP │ └── LeaderDialog ├── expansion │ └── JA_JP │ └── LeaderDialog ├── expansion2 │ └── JA_JP │ └── LeaderDialog └── shared └── JA_JP
|
そうしたら下記みたいなシェルスクリプトかなんかを書いて en_us
のほげほげをつくる。
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| #!/bin/sh
find . -maxdepth 2 -type d | while read DIR do WORKDIR=`dirname ${DIR}` JP=`basename ${DIR}` if [ ${JP} = "JA_JP" ] ; then cp -r ${WORKDIR}/${JP} ${WORKDIR}/en_us #rename 'y/A-Z/a-z/' ${WORKDIR}/en_us/ find ${WORKDIR}/en_us -type d | xargs rename 'y/A-Z/a-z/' find ${WORKDIR}/en_us -type f | xargs rename 'y/A-Z/a-z/' find ${WORKDIR}/en_us/ -type f | xargs sed -i "s/Language_JA_JP/Language_en_US/g" fi done
|
とりあえずこれであとは適当にコピーするだけでいい(コピーもスクリプトでやりたかったけど Permission Denied で怒られまくったので断念)
コピー先のディレクトリは Steam/steamapps/common/Sid Meier's Civilization V/steamassets/assets/dlc
とかの各々の DLC のディレクトリにぽいっと。
そして起動
やったぜ。
反省点
- まぁなんかこうスマートに行きたいよね
- 気力があったらがんばる