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