Tkh's Translation Helper program (downloadable)


flat = start

all line is seleted pushed flat = translated line will be replaced here is the loginfo


I don’t see anything wrong, that’s how the Rst (Reset) button is supposed to work. It will replace the translation field with the original (English) content. One of us is misunderstanding something :wink:


ok for me is flat and all - like in excel:

all = hello my name is Wiese and im writing lots of **** at all days because its funny etc. etc. etc.
flat = hello my name is …

^^ perhaps rename it to reset xD


It was already called Reset (Rst) :wink: But in that case there’s no bug, just unclear usage.

My bad! But how about this?


Now i can understand it too xDDDD


Except for the full-width symbols, it works like a charm.:joy:
Good job, @tkh.:slight_smile:

And btw, to make the “Reset” function more clear, I would suggest using a group box.
Like this:


Yeah, sorry, I don’t know how to handle that… :confused: But thanks!! :blush:

Absolutely, I’ve thought about that for some time, to group the search functions and next/prev/counts in separate boxes as well. I’ve postponed it while adding requested features (that will affect the layout). But it will soon be taken care of :smiley:


So here’s the new release 0.6.1

  • Added an option to show row numbers
  • Kept the option to export txt file with our without row numbers. Probably higher risk to remove it…
  • Change button name from “Rst” to “Reset”
  • Changed the log values of row/column to count from 1 (instead of 0)
  • Added a custom icon made by myself :wink: Since Json is a bracket ( { } ) “language”… and this is a tool for changing things (arrows), the icon looks thereafter! Will maybe be modified, but it looks better than the standard windows form icon.

Download link in top post!


NICE!!! :slight_smile: GOOD JOB


Oh my god finally he changed the icon… Lol :joy: You know, im a c# programmer too , and the standart icon looks weird to me.


You should direct that to someone else, because I’m not a (C#) programmer at all. But it’s so fun to make something that works and is useful even though I’m not a real programmer :slight_smile:



Great little piece of software you get there.

Anychances to change the output encoding formats? Use of UTF-16 / tis-620?

Would be really helpfull appreciated.



Right now you have a few options to set input/output encodings in the settings tab. UTF-16 is not one of them though. I tried to do this but it seems like UTF-16 is not an option in VS. I looked around and found that general Unicode can mean UTF-16… but I don’t know if it would be what you want.

Why or when would this be useful? The game uses UTF8… But perhaps you’ll use it for something else?


Is there a way to jump only to the next “orange” line?


In the way I designed the “next” (and “previous”) functions they only skip white lines. So it will by design jump to next yellow OR orange line.

Might be possible to add a selection but I haven’t touched this in a long time so I don’t know if it’s easy to add… :wink:


Oh, don’t worry. My intention was to find the missing lines. But I later noticed that I can click in one of the button to add everything missing from one file to the other. It is just that it is kinda hard to know what the buttons do. For example, the little radio buttons, I have no idea what they do, clicked them all and didn’t noticed anything different.


The radio buttons are used with the search function. If you select Tag and type something in the textbox to the right you can search downwards or upwards for a tag (a key) that contains that bit of text. By selecting Org or Trans the search will be performed in the Original or the Translation columns.

For example, let’s say you used to translate “Hearthling” to “xxx”, but now wants to translate it to “yyy” instead. Then you can type “xxx” in the textbox, select “Trans” and just klick “Find Next” to find every place where you had the old translation and just step through the file. Or you can type “Hearthling” in the textbox and select Org to find all places from the original file.

This was explained and demonstrated a few minutes into the video in the first post :wink:


Bug report:

That orange lines are supposed to be a single line.
If you go into the stonehearth en.json you will find this:

     "cultist": {
        "cultist_trait": {
           "display_name": "Cultist",
           "description": "This hearthling keeps mumbling about some sort of secret \"bunny god\" sleeping eternally. What's that about?"

There was multiple lines where this problem occurs


edit: solved with a kind of workaround, see further down.

Thanks for the report, I can verify the bug. This has not been a problem before as I know of.

Seems like the problem is that there are lots of texts now that use " within the string. To make that possible (to not end the string) they use the \ + " combination. Now, the problem is that this combination is not supported by my program (for the moment). It will see the " and interpret that as an end of string.

I’m not sure how to solve this… and it’s quite serious if Radiant wants to do this. It was @yshan who fixed the read-file part last time, and I wonder if I have to ask for help to solve this. @sdee : do you or anyone in your team have any suggestion or tips?


Is your software code somewhere where we can take a look? Maybe it is not something hard to fix. (Although I only have experience with delphi and java, which I guess none was used in this)