• Editor
  • Re: Query about language settings using the command line.

We are currently using both the Spine program versions 2.1.27 and 3.8.99 simultaneously. The reason behind this is that our game has been in service for over 5 years. In the past, we used version 2.1.27 to create our assets, but recently, we have been using version 3.8.99 for newer assets. Due to this, we frequently switch between the versions of the Spine program.

We are using shortcut icons for launching the program as follows:
Spine.exe -u 2.1.27
Spine.exe -u 3.8.99

The issue arises when running version 3.8.99 as it defaults to the Korean language. Even after saving the settings in English, whenever the 3.8.99 program is executed, it reverts back to Korean. This becomes inconvenient as bone and slot names appear in Korean, requiring manual switching to English each time (as the game data needs to be in English).

I'm curious if there's a way to specify the language when running the program from the command line. If not, I'd like to know if such a feature could be supported in the future.

Related Discussions
...

I understand using 2.1.27 for a game that is 5+ years old. But you lost me here:

recently, we have been using version 3.8.99 for newer assets

4.x is sooo much better than 3.8. You should use 4.1 (or 4.2, which has physics!) if possible.

There isn't a CLI parameter to control the language, sorry! It should be saved in your editor settings, but it seems for some reason the setting isn't kept. This might be due to a bug in the older 2.1 or 3.8 versions.

Back in the 2.1 and 3.8 days, the Spine launcher didn't have a language setting -- it was chosen only in the editor. Settings for those older versions are stored separately from 4.0+ settings. With our modern launcher, it modifies the old settings to set the language when you launch an old version. The idea for that is that you don't have to change language settings for the old versions, it should be the language you use in the launcher and 4.0+ versions.

Are you using the latest launcher (4.2.05)? What language do you have set in the launcher? You should get that same language when you launch 2.1.27 or 3.8.99.

I've noticed there have been some slight mistranslations while using the translator.

recently, we have been using version 3.8.99 for newer assets

We are using versions 2.1.27 and 3.8.99 concurrently, with a shift towards primarily working on version 3.8.99. For the launcher, we are using version 4.1.24 ENT. As you suggested, I launched the editor in version 4.1.24 and set the language to English there, and for versions 2.1 and 3.8, I set them to English as well. I confirmed that the language settings are not changing and are being saved. Thank you for your assistance.

Oh no..when transitioning from version 4.x to 3.x, the language setting in the editor (English) remains unchanged, but when transitioning from version 2.x to 3.x, the language in version 3.x reverts back to Korean. Just for your information, all versions 2.x, 3.x, and 4.x are set to English in the editor.

We are using versions 2.1.27 and 3.8.99 concurrently, with a shift towards primarily working on version 3.8.99.

Understood. I still highly suggest targeting 4.1 or 4.2, if at all possible.

It seems setting the language in 4.x almost worked. Digging a bit deeper, the problem is that 2.1.27 saves its preferences in prefs.json, which is the same file 3.8.99 uses. When 3.8.99 is started, the launcher is smart enough to set the correct language in the prefs.json file. However, when 3.8.99 reads that file, it sees the 2.1.27 data in the file is so old that it is incompatible, so it recreates it with the default settings, losing the language.

In 4.x+ we fix this problem by versioning the settings file. That is why you will find files like settings/editor-1.json and settings/editor-2.json. When the file is incompatible with older versions, we increase the number.

We can improve this behavior by having the launcher check the prefs.json version number. If you are launching 3.8.99 and the prefs.json is so old that 3.8.99 will overwrite it, the launcher will overwrite it instead. That way the language from the launcher is used. We have done this in launcher version 4.2.06, available now (you'll need to download and reinstall Spine from your license page).

Another workaround would be to juggle the prefs.json file yourself. You could write a shell script that copies a prefs.json for 2.1.27, then launches Spine. You'd have another script that copies a prefs.json for 3.8.99, then launches Spine. This way you are sure to get all the right settings for the respective version. Your prefs.json file can be found here:

Windows: <user home folder>\Spine\prefs.json
Mac: <user home folder>/Library/Application Support/Spine/prefs.json
Linux: <user home folder>/.spine/prefs.json
  • hp8840 がこの投稿に返信しました。

    Nate

    Thank you. Since many employees are using the Spine, it's not easy to change the launcher all at once. Instead, I plan to copy the prefs.json file to make it executable. Thank you for your help.

    • Nate が「いいね」しました。