Jリーグフェイスパックがズレたので修正するコードを書きました[FM20]

はじめに

http://estouiro.wp.xdomain.jp/2019/12/25/j-league-facepack-footballmanager-2020/estouiro.wp.xdomain.jp これを使おうと思ったんだけどゲーム内のUIDがどうやらずれてたらしくうまく使えない。
そこでこの記事があったんだけどなんか大変そうだった。 http://estouiro.wp.xdomain.jp/2020/03/09/facepack-id-fix/estouiro.wp.xdomain.jp

ということでPythonで書きました。(自分のコーディング能力下手すぎて意外と時間かかった😅)
プログラミングやったことないひともできるようやり方を書いてます。簡単です。ぜひ。

やり方

Google Colaboratoryを使います。Pythonの実行環境がある人はColabのファイル入出力の部分を消して使ってね。

  1. Google Colaboratoryの始める。1分で終わります。下の記事のGoogle Colaboratoryの始め方まで読めたら戻ってきて。

gammasoft.jp

  1. コードセルに下のコードをコピペ。自分のゲーム内のUIDとの差分をdiff=の後に記述。(上のコードでは364)

  2. 実行。config_out.xmlというファイルがダウンロードされるのでそれをconfig.xmlに名前を直して上書き。

少しでもわからないところがあったらコメントください。

*追記:Macの場合,Safariを使うとGoogle Colaboratoryがうまく動作しないようです。Google Chromeを使用することをお勧めします。

from google.colab import files
import re

files.upload()

with open("config.xml", mode="r") as f:
    data = f.readlines()

#自分のゲーム内のUIDとの差分
diff=364

outdata=[]
for s in data:
    if "/portrait" in s:
        uid=int(re.search(r'[0-9]+', s).group())
        outdata.append(s.replace("/"+str(uid),"/"+str(uid+diff)))
    else:
        outdata.append(s)

with open("config_out.xml", mode="w") as f:
    f.writelines(outdata)
  
files.download("config_out.xml")