Skip to main content

Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics
SalesBundles
Jobs
TagsGame Engines

Godnoken

362
Posts
17
Topics
89
Followers
A member registered Mar 21, 2016 · View creator page →

Creator of

Recent community posts

(1 edit)

Ah okay, got it!

I went ahead and implemented a way to add custom placeholders in your presets, which will mostly solve the differentiating model issue, as well as regions etcetera.

I'm refraining from adding a new section for api key/models/limits etcetera at the moment. I feel like it should be possible to get most of that information nicely input into the description now that users can click on links & select text from it, and directly paste that into the placeholder input.

I did just get an idea though - it would be cool for the user who creates the preset to be able to 'tag' the model name in the description, which then could be clicked on to automatically be added to a custom %model% placeholder that the user created. Or maybe even making it so that if you tag a line of text in the description, it will show up as a selectable dropdown option connected to the placeholder input.. Not sure if I'm making myself understandable here lol, I'm sleep deprived.

Cheers for the feedback, I'll take a look at making that text more legible. (I really need to get a higher resolution screen..)

Thank you very much for adding these. Please let me know if you find any bugs with the placeholders, but it should work fine afaik.

(1 edit)

Ah! I'll make sure to increase the character limit. Might increase the upload limit too, it's just there to avoid abuse and ensure users' safety as much as possible.

Hmm. I do agree that each section ought to have its own description and URLs.. Just trying to think of a good way to implement this so it doesn't look more overwhelming than actually just having one single description and allowing the preset creator to just create links directly in that one description. Otherwise we'll end up with a lot of input boxes on the same page.
Could you elaborate on the models? Not sure I fully understood what you meant. :-(

No worries about the %% placeholders, I noticed, I just forgot to let you know haha. Thanks!

Ahh, yes! Have you found any other edge cases of placeholders being needed? I'm thinking that there may be many, in which case I believe I should add optional generic placeholders like %placeholder_1%, %placeholder_2% or similar to alleviate the issue instead of adding edge case upon edge case.

Thank you for the suggestions, very helpful! :)

Ahh, it was likely because I forgot to confirm the production deployment to the backend yesterday after I released the new update. Only did it a good 4-5 hours after. Or were you still on alpha.7 when you couldn't edit them?

Hey bud, I'll respond to this as soon as I wake up in the morning :)

Just one question - did you personally delete all the presets you uploaded?

Saw that you added loads, nice!! :)

I'm fixing a bug with the text output path at the moment, as well as adding an input for API registration URL + making it easier for users to select languages and api key etc when clicking apply. Please let me know if there is anything in the process you'd like to change!

Thank you very much,

Hey norby,

the 0.6.0-alpha.7 version has a community repository for Custom APIs. If you'd like to upload any of these presets onto it, that'd be cool! If you don't have the time or will, I'll get around to doing it very soon.
Thank you once again for making this gigantic thread, it's been most helpful to a lot of users.

Hi mate,

The latest 0.6.0-alpha.7 version might work for the NonConvert key. You should be able to at least set it, I am not able to test it since I don't have that key. Please let me know if it works! :)

Thank you.

Hi bud and thank you! :)

I recently had to switch to using physical keys instead of virtual keys due to updating to a newer version of IMGUI, which is what caused this key to be unsupported. I will look into the possibility of adding it for 0.6.0. I'll keep you updated. Thank you for filing the bug report!

Hi bud,

I do not have a specific ETA at the moment. I'm working on a pretty large update to streamline the ease-of-use of the app and really want to get it done and tested before it moves to Steam.

Do you have trouble buying it on Itch.io, or do you just want to buy it on Steam? :)

I'm sorry about the slow answer.

No worries pal!

Yeah, this sounds like a very peculiar issue. There must be something that some Unreal games have in common that is interfering. To further troubleshoot, I do need to know the names of the affected titles. Any Unreal game I have tried works fine on my device. Feel free to put them here or join the GameTranslate Discord and write to me there! :)

Hi pal,

This is planned. No ETA on when it would be added though. Haven't done enough research to know how much work it involves to implement it.

Niceee! ╰(*°▽°*)╯

I believe the issue with setting the correct keybinding should be fixed in 0.5.9. It isn't mentioned in the changelogs because it is a bug that came with the changes made in the alpha versions. :)

Thank you for providing context about the Pause/One Shot. Most helpful as always. Appreciate ya! ( ( •_•)>⌐■-■

I can confirm that I can reproduce the keybinding issue. Thank you very much for that, I'll have to wire it differently from the frontend.

The second issue could very well have something to do with the modifications I made to run Stream Friendly completely async (It was done to ensure minimum 60fps rendering at all times). I'll have a look at it eventually. Is there any particular reason you pause/unpause instead of using the 'One shot' key?
Thank you! :)

The tutorial only works with Spanish because I haven't had any time to localize the tutorial content. You cannot download the model because it is already included with the installation, and I do not provide a delete button because that would break the tutorial. :)

The default keybinding for closing windows is 'Escape'. If you hover a specific window, it will close that individual window, otherwise it will close all windows.

Let me know if you have any other questions/feedback, thank you!

Yep, the image recognition part is definitely the trickiest to perfect. I'm actually working on a complete test-bed behind the scenes, which should over time improve the OCR across the board, and potentially push forward a fullscreen solution! :)

Yep, that's on me, haha. I had an unintuitive and bad setup. I hope the recent update made it easier for you to test things out. The next update will make it possible to change these values from the dashboard in the tool too, and more improvements like that are on its way.

Great, thank you very much! I will add this to the FAQ.

Glad you got it working! Excellent :)

Just to clarify for context for other users (and myself)

By compiler you mean GameTranslate?

And you are saying that Genshin needs to be launched as Admin separately and then start the GameTranslate tool afterwards?

Thank you for troubleshooting this!

Are there any other games that the app does not work with?

Hi bud! :)

Genshin Impact uses a kernel-level anti-cheat. It is likely blocking GameTranslate from accessing its Window. Another user had a similar problem with 'Wuthering Waves'. Try to launch both GameTranslate & Genshin Impact in administrator mode.

In case this isn't the problem - Which mode are you trying to use with Genshin Impact? Desktop, Attached or Internal?

Thank you!

Ahh! I would love to make the switch over to Linux too.

GameTranslate is currently heavily integrated to Windows and it would likely take quite a lot of effort to convert much of the code to Linux or MacOS. I'd very much like GameTranslate to stabilize somewhat in features & style & structure before starting a conversion type of effort.

It's coming one day though, that's a certainty! :)

Understood. Okay, good to know, I'll have to look deeper into that for sure, cheers! :)

Glad to hear it! :)

Glad it is appreciated! Hopefully will be able to make it a bit easier to control each window for the next version. :)

Sweet! Let me know if issue 2. pops up again! :)

Haha, no worries, I'm very glad you provide very clear pictures for me for reference & testing.

As far as I have tested, if you now enable "Centre text" in General config, it should now centre properly every time. Make sure you keep Comic mode disabled for this as it takes precedence over Centre text.

Thanks, will do!

Thank you, I really do appreciate that very much! :)

I'm glad to hear that it has been very useful for you; that's what keeps the light on for me to keep working.

That would for sure be a cool thing to implement for more advanced uses like yours - So what you're suggesting is to provide each window's ID and/or message ID as a custom entry in the JSON body, or just in the prompt message itself?

Like:

{

    "prompt": "<|begin_of_text|><|start_header_id|>system<|end_header_id|>\nYou are a highly skilled professional translator.<|eot_id|><|start_header_id|>user<|end_header_id|>\n\n### Instruction:\nTranslate %source% to %target%.\n\n### Input:\\n%text%。\n\n### Response\n<|eot_id|><|start_header_id|>assistant<|end_header_id|>\n",

    "max_new_tokens": 256,

    "temperature": 0,

    "top_p": 1,

     "do_sample": false,

     "window_id": "%window_id%"

}

or

{

    "prompt": "<|begin_of_text|><|start_header_id|>system<|end_header_id|>\nYou are a highly skilled professional translator.<|eot_id|><|start_header_id|>user<|end_header_id|>\n\nWindow: %window_id% ### Instruction:\nTranslate %source% to %target%.\n\n### Input:\\n%text%。\n\n### Response\n<|eot_id|><|start_header_id|>assistant<|end_header_id|>\n",

    "max_new_tokens": 256,

    "temperature": 0,

    "top_p": 1,

     "do_sample": false

}

Not sure if the first option is even possible, but it'd be a bit cleaner maybe.

I do agree with the whole idea of a separate panel though, I think it is something that should exist in the app, especially since the text removal algorithm isn't always reliable (and uses extra processing power..!).

Sorry for the very slow reply, I've been extremely busy. Thank you for your valuable feedback! :)

Nice! That's great :)

Hey bud! :)

The first issue is not related to the newer versions; it's just the text removal algos not being able to handle that case. I think is being filtered out early on in the process and is discarded. Thank you for reporting it eitherway, it's good to have something to works towards, either by creating a different algorithm or by improving the existing ones to handle it.

The second & third are most likely related. I made an effort to normalize line height/vertical spacing between text, for all fonts, which was to be expected to bring out some bugs.  'Attempt text centering' was never actually meant as a real feature toggleable feature, it is a remnant of an algorithm that I figured didn't really work properly, so I made it optional for edge cases when people absolutely want to try to centre text. I'll definitely have a look at it though, I think I know of a way to make it centre properly, without having to guess if it should or not, which is the current implementation.

Thank you very much as always! :)

Thank you for your patience! :)

Good to hear, I really hope to be able to make everything work as you wish to use the app soon enough!

Aha! No worries, I fully understand and sympathize with that. It's definitely not a great tutorial anyways, so I'm not surprised it can be confusing 😅

Yep! I really would love to add a proper fullscreen mode, it is just that it adds yet another mode to maintain when I release new features. And the biggest two problems are performance and actually making the OCR good enough so that it isn't constantly finding text that doesn't exist and thus ruins the experience.

Oh don't worry, the Manual mode is going nowhere. It is here to stay! :)

To make Automatic mode less destructive, go to the General tab and lower the "Text Removal Expansion" to the lowest possible value. Also, keep in mind that when you change settings, you need to restart the tool (not the main app) to put these changes into effect :)

Didn't actually expect a reply! Glad you're still around :)

I just reread the entire thread and now remember what you sought exactly. What I've added (in v0.5.8-alpha.1) is the possibility to use either/both the Manual and Automatic mode to have several windows (max 3 for performance reasons) running at the same time. The Automatic mode works just like before, so it will stay in place, remove the text and then display the text in-place.

I do understand, from reading this thread completely, that what you ideally would want is a completely separate panel where the translations show up automatically after selecting an area to translate. This does unfortunately still not exist. However, despite my negative outlook on this type of feature several months prior, I'd say I'm convinced and have changed my mind about it. There are indeed use cases for this, and I would like to add this type of translation window as well. I promise I will have a look at it, but I'm in the middle of prepping for a Steam release so it may not come within the next few weeks. We'll see.

Until then - I recommend you to go to the 'General' tab;

1. Disable "Show automatic border"

2. Enable "Locked window"

3. Enable "Click through"

These settings should help make the "Automatic" mode less disturbing to the gameplay experience.

Do have a look in the Keybindings section a well, as there are several keys there to make things more modular when in-game.

Hi fl0rm, it's long overdue, but I decided to rewrite the entire window system and the app now supports multiple windows (bullet point 3.) and automatic polling based on background (bullet point 2.) are both now implemented.

Hey bud,

I'm glad it's still helpful for your use case, hopefully I can bring out this feature soon. Thank you very much! :)

Hi Korvlar,

This feature is currently not available, but something I want to add within the next few weeks. Feel free to wait until its added, I can notify you in this thread :)

We're a tiny country, but we get around!

Yep, indeed it does! Exactly yeah, that was one of two main reasons I changed it, the other being that the 'Automatic' mode didn't work in Desktop/Attached mode without making these changes.

I see. Well, there could potentially be a solution for this, but it sounds like a very niched issue and not something I have time to spend on right now. The idea anyways is to make the Desktop/Attached window not allowed to take any mouse input whatsoever (potentially controlled by a hotkey), as that may solve your problem.

That's pretty cool, with the chroma stuff, never realised streaming applications had that feature (quite obvious now that I think about it..). Thank you for the example!

I can tell someone skipped the capture tutorial..! 😉
I understand that the naming can be confusing. I haven't really spent any time trying to come up with a less confusing way to name the two modes.
Eitherway, the 'Automatic' mode is as you found out executed the same way, just constantly capturing and immersively rendered into the background. It is not a 'Fullscreen' capture mode, this option is planned but not added yet. Thus, what you should use it for is just to capture specific areas that only render text, to avoid it from interfering with the background and gameplay intensive areas.
Manual mode is meant more as a 'translate-on-the-go' alternative.

There has been a previous request to basically mix the two, to be able to select an area to continuously capture & translate, but then render the translated text in a 'Manual' style window. The more examples I see of how people want to use the app, the more I understand the request. I think it is something I will implement soon enough.

Btw, there's some configs to modify to make the 'Automatic' mode less destructive that may work in your favour!

Thank you for your examples and input. Sorry about the late reply! :)

I tried another model, the 'llama-translate" found here; https://huggingface.co/dahara1/llama-translate-gguf

It actually seems to handle singular words and paragraphs just fine. However, it is pretty excruciatingly slow on my PC, but then again I only have a 980 ti. Give it a try with this JSON body:

{

    "prompt": "<|begin_of_text|><|start_header_id|>system<|end_header_id|>\nYou are a highly skilled professional translator.<|eot_id|><|start_header_id|>user<|end_header_id|>\n\n### Instruction:\nTranslate %source% to %target%.\n\n### Input:\\n%text%。\n\n### Response\n<|eot_id|><|start_header_id|>assistant<|end_header_id|>\n",

    "max_new_tokens": 256,

    "temperature": 0,

    "top_p": 1,

    "do_sample": false

}

Hey pal,

Sorry, I forgot about this. I tried the Croissant model as well as Tower Instruct Mistral, and after some tinkering.. I believe that there isn't any EN-FR LLM out there today that realistically can work in a game format. They'll hallucinate and break often when translating singular words or questions. They seem to work fine for any paragraph type of translations, which is great, but it falls completely flat if you want to use it for anything more than that.

If your main use case is to translate longer sentences or paragraphs and can't get it to work, let me know.

As for the one-shot-fits-all solution, it is a work in progress.. haha. I find it hard to know exactly what to put there and what not to.

The Q4_K_M model should be faster and lower quality, so these results are very surprising! Must be something wrong with it.
I'm glad the model is proving good enough for your use case, that's excellent news. Quality offline translation for the privacy-concerned is great :)

For this specific model, you could try the F32 (1.42GB) and F16 (711MB). I think both likely will be too slow for you, but seeing as the Q8_M model seems broken, I'd try F16 first. Maybe even try the Q6_K.

There are other models out there, but I haven't had time to try any other EN-JP models. Not sure if there are any better ones.

Thank you for testing it out, much appreciated feedback!

Awesome. Cheers pal! :)

Aha! Xsplit must be breaking how the Desktop/Attached mode works. How I achieve transparency is basically through 'Chroma keying'.
I used to have a different implementation entirely, but it used quite a bit more power to run. I wonder if that solution would work differently in this case.

1. If you mean the background colour of the translation window, this is planned! :)

2. Also planned.

3. Definitely something I'd like to have.

4. Ditto!

Yeah, your example clearly demonstrates how important customization is. Cheers for that!

Thank you for all that testing, this is very interesting. I'm not sure how the chroma-key is set in Xsplit, but the 'transparent' parts are all set to exactly pitch black 0.0, 0.0, 0.0.

By the way - is there a reason you are using the 'Manual' translation window instead of the 'Automatic' one? If so, for your use case, why? It's good for me to understand how users want to use the application and the 'Manual' translation mode has been quite neglected to favour the development of more immersive translations.