It still means that, besides Unity, then AGS is the only one which was used by more than 2 games. Not trying to trumpet AGS here, just trying to get a picture of the situation. In short, AGS is dwarfed by Unity, but it's the only one else that gathered more than a couple users.
Crimson Wizard is implementing Object turning functionality, which would let AGS do roughly the same animations easily that you could do with PowerPoint (in combination with Object resizing and the tweening module). That's great to have. I suspect that other adventure building systems have already been able to do this and we are only catching up in this respect. This might also be a reason that coders prefer Unity over AGS.
I think I heard the sentiment that AGS was “good enough” for hobbyist projects but if you want to go professional you need to switch sooner or later (I think from the developers of “Kathy Rain”). That would put AGS into a bad position because then many coders would think it wise to bypass AGS and start with an “adult” system right from the get-go.
AGS doesn't need to lose this particular competition, however: Almost everything within the AGS universe has always been free for professional use ever since Chris Jones' time. You do not automatically lock yourself into remaining a hobbyist if you start with AGS as a hobbyist. But I suspect that over the decades, some very specific issues might have come up that professionals can't do without and if AGS doesn't provide those specific things, then coders will shun all of AGS even if they only tentatively think of turning professional one day.
I would say the main things that need to be resolved to qualify as a "serious" engine are:
-Better platform support (particularly on mobile, including things like touch gestures)
-Increased compatibility with professional dev processes (source control, automated builds, division of responsibilities, tests, etc.)
-Better performance for certain graphical operations (and any support for others)
-Better support for saves that don't break when a game is updated
-Unicode support
-Better performance for certain graphical operations (and any support for others)
Not sure what do you mean by "completely separate set of transforms". They are one set of transforms, it's just that script API does not have a base class to allow sharing them between all objects. And internal implementation is similarly disjointed. But principally this is all same thing.
What other graphical operations, or sprite manipulation API are you refering to?
The support for non-breaking saves is only possible if we remove reliance on global object arrays and enforce a globally unique name for each object. Then it will be possible to sync the loaded data with objects correctly.
But in a longer run better support would require to make game objects dynamically created rather than rely on static data read from the game file.
I mean that I think we're heading towards a situation where some visual effects can only be done via DrawingSurface/DynamicSprite, while others can only be done via settings on game objects. It makes things a lot more complicated if you want to combine different operations, and probably means that some things that should be possible aren't (take, for example, the case of rotating something and then cropping it to a certain bounding box; I don't see how you would do that via the Object rotation properties). Would it not have been possible to instead get improved, hardware accelerated versions of the DS/DS API?
I thought this (https://www.adventuregamestudio.co.uk/forums/index.php?topic=53753.0) was a really promising approach, and even if it still had limitations it would be an improvement. The goal shouldn't be to handle absolutely every case (that's obviously impossible in principle), but to provide some support for typical, simple changes. (And Dave Gilbert's idea of a way to prevent or at least flag changes that will break saves would also be helpful.)
Accelerated GUIs would still draw sprites of buttons and other elements and then manipulate them in an accelerated HW accelerated I think, at least to work with what's available.
When no sprite is assigned to a button, AGS draws a gray button Instead. Same for slider. If you resize those in script, they get adjusted too. I imagine if the hardware accelerated part needs to work with the sprites when they are assigned, to make things easier, when there's no sprite assigned the gray version of these GUI Controls would be generated as bitmaps still.
Wait, do I understand correctly I'll be able to use traditional Chinese characters?
Thanks a lot, CW for the fast feature.
Is it only works on the translation option?
Thanks a lot for try Persian font. It seems couldn't stick letters together. I typed improve your text in this picture
In theory you can already do that, except you have to do everything by hand and there will be "default language" selection in the engine and setup which should not be chosen by player.
Or script translation system that works similar to described alternative (I think some people already did this in their AGS games)
@emabolo, Have you ever used Speech Center plugin?
I think switching to a token based dialog in the current editor will be confusing, in IDEs that have support for this you usually can edit the text of the token directly where it's used
I can think of another advantage: imagine your game doesn't have translations, it's in English only, but you want to send all the text to a professional proofreader. In "hardcoded mode", when you receive the corrections, you will have to copy and paste everything, line by line, into the code. Argh. While if you activate the "tokens mode", it's just a matter of copying the file to the game folder. Much easier.
The "proper", or at least most convenient, way to go about this would be in fact to generate a .trs file, call it something like "EN_corrected", send it to the proofreader and tell them to add their corrections below each original line, as if they were translating the file. Then you just use that file as the game's default "translation": https://www.adventuregamestudio.co.uk/forums/index.php?topic=58812
@Crimson Wizard
Can you send me your Persian font ? I tested many fonts and AGS doesn't show all symbols on the Font page
I use UTF-8 without BOM too. Is it related to "Windows System Locale"? It adjusted on Persian for me
It's the same as your project and I just added Persian.trs
Here you are
https://www.dropbox.com/s/9bvt8e9fibgf1wg/test--unicode_Persian.rar?dl=0
CW, for the Persian language I need to turn on Right to Left in General Settings, and all of my words change like save and load the menu and so on. Is any way to change it only for talks?
I know that you can turn it on for particular translation in TRS (find line //#TextDirection= ).
Here's where the Continuous Integration builds this PR if someone wants to pick up this for tests
https://cirrus-ci.com/github/adventuregamestudio/ags/pull/1321