Author Topic: Etemenanki - A translation tool for FreespaceOpen!  (Read 1739 times)

0 Members and 1 Guest are viewing this topic.

Offline mjn.mixael

  • Cutscene Master
  • 212
  • Chopped liver
    • Steam
    • Twitter
Etemenanki - A translation tool for FreespaceOpen!
I already shared this on the Discord but I thought it'd be prudent to put here as well. I've created a tool to help with creation and maintaining of XSTR IDs for mods called Etemenanki.



The application scans an entire directory recursively using provided Regular Expressions to find translatable strings and will verify the string ID is valid and doesn't conflict with another ID. It will provide new IDs if necessary and it will make sure all matching strings use the same ID.

It will then modify the IDs in the mod files and print out a valid tstrings.tbl for you.

--Version 1.1--
*Bugfixes
*Regex checkboxes for easy toggling

--Version 1.2--
*Adds output file sorting options
*Comprehensive scanning (scan first, then edit files making sure to not cause ID conflicts when generating new IDs)
*Ability to fill in numerical ID gaps
*Read only mode that prints the output file with all IDs exactly as they are
*Ability to ignore files and directories

--Version 1.3--
*Adds ability to handle new lines in regex searches
*Adds ability to specify ID numbers to skip during ID generation

You can read more about it on the Github Repo.

Download
« Last Edit: February 13, 2024, 09:46:03 am by mjn.mixael »
Cutscene Upgrade Project - Mainhall Remakes - Between the Ashes
Youtube Channel - P3D Model Box
Between the Ashes is looking for committed testers, PM me for details.
Freespace Upgrade Project See what's happening.

 

Offline 0rph3u5

  • 211
  • Oceans rise. Empires fall.
Re: Etemenanki - A translation tool for FreespaceOpen!
Oh, nice!

Just haivng an automated check that all SIDs are unique is big for getting rid of some headaches. And could be very useful, even beyond localisation.

Looking forward to inclusing of output sorting options; it is the closest thing we are probably will be getting to categorisation in SIDs as, to my knowledge, these are stictly numerical in FSO.
« Last Edit: January 20, 2024, 06:03:55 pm by 0rph3u5 »
"As you sought to steal a kingdom for yourself, so must you do again, a thousand times over. For a theft, a true theft, must be practiced to be earned." - The terms of Nyrissa's curse, Pathfinder: Kingmaker

==================

"I am Curiosity, and I've always wondered what would become of you, here at the end of the world." - The Guide/The Curious Other, Othercide

"When you work with water, you have to know and respect it. When you labour to subdue it, you have to understand that one day it may rise up and turn all your labours into nothing. For what is water, which seeks to make all things level, which has no taste or colour of its own, but a liquid form of Nothing?" - Graham Swift, Waterland

"...because they are not Dragons."

 

Offline mjn.mixael

  • Cutscene Master
  • 212
  • Chopped liver
    • Steam
    • Twitter
Re: Etemenanki - A translation tool for FreespaceOpen!
Published 1.2 which covers all the remaining ideas I had for this app. Let me know if you find bugs or want some other feature.
Cutscene Upgrade Project - Mainhall Remakes - Between the Ashes
Youtube Channel - P3D Model Box
Between the Ashes is looking for committed testers, PM me for details.
Freespace Upgrade Project See what's happening.

 

Offline mjn.mixael

  • Cutscene Master
  • 212
  • Chopped liver
    • Steam
    • Twitter
Re: Etemenanki - A translation tool for FreespaceOpen!
Published 1.3 which resolves that last remaining issue that prevented it from handling Regexs that accounted for new lines.
Cutscene Upgrade Project - Mainhall Remakes - Between the Ashes
Youtube Channel - P3D Model Box
Between the Ashes is looking for committed testers, PM me for details.
Freespace Upgrade Project See what's happening.