commit
6bac5532fd
@ -0,0 +1,2 @@
|
||||
*.DS_Store
|
||||
*._
|
@ -0,0 +1,19 @@
|
||||
# 初音ミク -Project DIVA- MEGA39's f Edition 日本語訳
|
||||
これは[Hatsune Miku: Project DIVA Mega Mix -f Edition-](https://youtu.be/m-UXOHaYEIw)を日本語に戻る。
|
||||
|
||||
## インストール
|
||||
1. [英語版](https://youtu.be/m-UXOHaYEIw)をダウンロードしてインストール
|
||||
- 翻訳がインストールまで、LiveArea™をリフレッシュしない
|
||||
2. [このリポジトリ](https://git.ピケ.コム/pk11/mmfe-ja/archive/main.zip)をダウンロード
|
||||
3. リポジトリのZIPを解凍して`dist`フォルダのコンテンツを`ux0:app/MMFE21622`にコピー
|
||||
4. VitaShellにLiveArea™をリフレッシュ
|
||||
|
||||
## 状態
|
||||
- [x] LiveArea™の名前
|
||||
- [x] リズムゲームの楽曲の名前
|
||||
- [ ] 楽曲の歌詞
|
||||
- [ ] ○は決定、×はキャンセル
|
||||
- [ ] UIテキスト
|
||||
- [x] 公式テキスト
|
||||
- [ ] 英語版の新テキスト
|
||||
- [ ] UIイメージのテキスト
|
Binary file not shown.
File diff suppressed because it is too large
Load Diff
Binary file not shown.
@ -0,0 +1,49 @@
|
||||
#!/usr/bin/env python3
|
||||
|
||||
from argparse import ArgumentParser, FileType
|
||||
from struct import pack, unpack
|
||||
|
||||
import json
|
||||
import re
|
||||
|
||||
def str_array2json(input, output):
|
||||
if input.endswith(".bin"):
|
||||
# str_array.binからJSONへ
|
||||
with open(input, "rb") as f:
|
||||
offsets = []
|
||||
while True:
|
||||
offset, = unpack("<I", f.read(4))
|
||||
if offset == 0:
|
||||
break
|
||||
offsets.append(offset)
|
||||
|
||||
strings = []
|
||||
for offset in offsets:
|
||||
f.seek(offset)
|
||||
bstr = f.read(256)
|
||||
strings.append(bstr[:bstr.find(b"\0")].decode("utf8"))
|
||||
|
||||
with open(output, "w") as out:
|
||||
json.dump(strings, out, indent="\t", ensure_ascii=False)
|
||||
else:
|
||||
# JSONからstr_array.binへ
|
||||
with open(input, "r") as f, open(output, "wb") as out:
|
||||
strings = json.loads(re.sub("//.*", "", f.read(), flags=re.MULTILINE))
|
||||
|
||||
cur_ofs = (len(strings) + 1) * 4
|
||||
for string in strings:
|
||||
out.write(pack("<I", cur_ofs))
|
||||
cur_ofs += len(string.encode("utf8")) + 1
|
||||
out.write(pack("<I", 0))
|
||||
|
||||
for string in strings:
|
||||
out.write(string.encode("utf8") + b"\0")
|
||||
|
||||
if __name__ == "__main__":
|
||||
parser = ArgumentParser(description="Project DIVA fのstr_array.binをJSONに変換")
|
||||
parser.add_argument("input", type=str)
|
||||
parser.add_argument("output", type=str)
|
||||
|
||||
args = parser.parse_args()
|
||||
|
||||
str_array2json(args.input, args.output)
|
Loading…
Reference in new issue