Thank you!! A lot of this is incredibly helpful.
I'll try my best to respond!
There are many things that can be at fault when it comes to translation issues, which can make them very tricky things to do bug reports on.
Here are a few of the things that could go wrong;
GameTranslate takes screenshots to be able to later find text and translate it. Some games may operate very differently, thus creating issues with cursor alignment. You may visually be taking a snippet in one corner of the game, but in practice, the coordinates that are read and used for the screenshots are.. somewhere else.
After screenshots are taken, they are preprocessed, to make it easier to find text. There are edge cases where the preprocessing of the image makes it harder to find text. It can also be the case that the preprocessing simply isn't good enough.
Now we're at Optical Character Recognition (OCR). This is where the magic of finding and extracting text happens (or doesn't happen..). Sometimes, no text at all is found, other times some is missing and finally, if lucky, all of the text is extracted. Yet, even if all the text is extracted, it doesn't necessarily mean it is perfect for translation. More on that further below.
Currently, GameTranslate uses Tesseract OCR. It works very well with cleaner data (think documents), and not so great with images. There is still a lot of improvement to be made here, which hopefully results in a good enough engine to use for games. However, I am looking at and will eventually try other OCR engines that likely fit better for what GameTranslate wants to be able to do.
So, finally, we're at the translation stage. But first, back to the extracted OCR text.. It can very well be so that the OCR engine picks up symbols that are not actually present in the text, which makes the translator confused, resulting in badly translated text. Or, it could be perfect, and yet.. not perfect! Ahh! Why can't it just be easy?
Well. All the translations are made by machine-learned language models. There is A LOT of data that they get trained on. Unfortunately, bad data slips in, and out comes a shitty translation. As mentioned here, I am completely relying on Open Source Models because I simply do not have the money nor the expertise (right now) to create these on my own. Therefore, most unfortunately, when it comes to translations specifically, I have little to no impact.
Fortunately, fixing the previous steps, such as cursor alignments, preprocessing and OCR quality, is very much in my hands, and they make the biggest impact.
------------------------------------------
Thank you for the BitDefender example! I will make sure to use it.
------------------------------------------
Game launching is indeed a known problem, more often than not caused by external game launchers, such as Steam, Epic Games, or internal game launchers etc. This is not a massive priority, but be assured that it will improve in the future :)
The crashes that happen while quitting, I assume you mean the GameTranslate app itself? I have not experienced that myself, but it is worth looking into.
------------------------------------------
An online notification popup is a good idea, thank you for that and the bug report. I will look into it.
------------------------------------------
I have noticed that the refresh button gets stuck, I'm not sure if this is a regression that happened in newer versions, but I will look into it this coming week and fix it :)
------------------------------------------
The software is indeed very unintuitive at the moment, I apologize for that. A tutorial is very high on my priority list. I've been putting it off because it will take quite some effort to pull it off well (It is not as easy as it sounds to do this in-game..).
As a band-aid, I am considering adding something simple, but more intuitive, until I can create a solution that involves showing how to use the app without actually having to launch a game.
------------------------------------------
Again, thank you! These are the kind of acts that make development go faster and in the correct direction.