Iseeeva JSON format change
A quick note on RADIO-Iseeeva.json — there’s a new format
Short post this time, but a heads-up worth getting in front of: if you’ve been using RADIO-Iseeeva.json for translation work, the format has changed and your existing files won’t load cleanly under the new pipeline. This landed in the merge today.
The short version: subtitles are now grouped under their parent VOX cue, instead of sitting flat under each call. So where you used to have:
{
"<call_offset>": {
"<sub_offset>": "text",
...
}
}
You now have:
{
"<call_offset>": {
"<vox_offset>": {
"<sub_offset>": "text",
...
}
}
}
Why? It mirrors what’s actually happening in the game — codec dialogue is keyed off VOX cues, and grouping the subs the same way makes the downstream tooling (and the GUI editor) a lot cleaner. It also unblocks a couple of upcoming features that need to know which audio cue a given subtitle line belongs to.
Converting your existing JSONs
There’s a small upgrade script in myScripts/radioTools/iseeva-v1-to-v2.py. Point it at your old flat JSON and a fresh new-format Iseeeva export from the current pipeline, and it’ll redistribute your subtitles into the right VOX buckets:
source .venv/bin/activate
python myScripts/radioTools/iseeva-v1-to-v2.py \
path/to/your-old-RADIO-Iseeeva.json \
workingFiles/jpn-d1/radio/RADIO-Iseeva.json \
path/to/your-RADIO-Iseeeva-upgraded.json
The third argument is optional — leave it off and it writes <input>-upgraded.json next to your file.
A couple things to watch for in the script’s output:
- Anything that doesn’t match a VOX offset gets bucketed under
"none", and the script warns you when it happens. Usually that just means the call has subtitles that don’t tie to a specific audio cue, which is fine — but if you see a high count, it’s worth eyeballing. - If a call doesn’t exist in the reference at all, all of its subs land under
"none"for that call. Same deal — worth a look but generally not a problem.
That’s it. If you’ve got Iseeeva files lying around, run them through the converter and you should be good to go.
-J-Rush