Menu

Show posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Show posts Menu

Messages - guga2112

#41
Oh... the Data folder.

I kept deleting only the Windows one. Thanks!
#42
Hi all,
I created a new translation for my game (Italian.trs) and worked a bit on it, but then decided I didn't like the long name and created a new one as it.trs and while I was at it I also created es.trs. I deleted the old Italian file from the editor, but every time I compile or recompile everything, I get an Italian.tra file on my Compiled/Windows folder along with it.tra and es.tra.

A grep search of "Italian" in all the game's folders found that there is no trace whatsoever of this file in my game.

Where is it? Why am I still getting it?
#43
Hi all,
yesterday I stumbled against a small limitation of the current AGS translation system. Long story short, I had two strings which looked the same, but had different meanings. The word was "Music", but one was an options label - so it needed to be translated as "Musica" in Italian - while the other one was a speech string - which needed to be translated as "La musica".

I solved it by adding a whitespace in the GUI label, but that's a workaround. So, here's what I thought could be an easy modification to the current system, given that I assume everyone writes the whole game in a source language before thinking of translations.

NOTE: I never looked at the Engine source code, so what follows is a guess on what it currently does. If I'm wrong please correct me.

Before the first translation is created, the game is in its default language. When creating the first translation, the system scans all files looking for strings, but instead of adding them to the .trs files, it changes them to a placeholder, then compiles a .trs file with the placeholder AND the original as it were a translation.

So, suppose you have a game whose GlobalScript.asc looks like this:
Code: "Adventure game studio"

function game_start()
{
    cEgo.Say("Welcome to my game");
}
function invKey_OnLook()
{
    cEgo.Say("It's the key to my apartment");
}


Normally the editor creates an Italian.trs file that looks like this:
Code: ags

Welcome to the game

It's the key to my apartment



But what I envision is that the editor may change the whole game to this
Code: "Adventure game studio"

function game_start()
{
    cEgo.Say("globalscript.gamestart.1");
}
function invKey_OnLook()
{
    cEgo.Say("globalscript.invKey_OnLook.1");
}

and then automatically create an English.trs (or Default.trs) that looks like this:
Code: ags

globalscript.gamestart.1
Welcome to my game
globalscript.invKey_OnLook.1
It's the key to my apartment


Each new translation file would then get both placeholders (which sometimes help in understanding the context of each sentence) and the source language sentence. A translator would then overwrite the source sentence. Or, if you think having the source sentence visible at all times helps in having everything under control, it could look like this
Code: ags

globalscript.gamestart.1=Welcome to my game

globalscript.invKey_OnLook.1=It's the key to my aparment


so that if a translation is missing, it shows the default one.

In this case, equal strings would get different placeholders, which helps in solving ambiguities (does the "Ball" in your baseball-themed adventure game mean the object, or the pitch that's not a strike?).

I'd also add unprintable tags to specify which strings need not to be translated. Something like cEgo.Say("__NOTRANSL__AAAAAAAAAAAAAA"); would show only the "AAAAAAAAAAAAAA" avoiding the string to be changed at translation creation time (and leaving out of the .trs file).

What do you think?

It should't be that much of a modification, as the editor already scans looking for strings and writing them on a file. It's a matter of modifying those strings and putting the new and old value on the trs file.

"But what about the update function?". Well, placeholders may conform to a particular format - like being surrounded by double underscores - so newly added strings would stand out in the update.
Code: "Adventure game studio"

function game_start()
{
    cEgo.Say("__globalscript.gamestart.1__");
    cEgo.Say("It's not much but I hope you'll like it");
}

Updating the translation will create a new string in the .trs files with __globalscript.gamestart.2__=It's not much but I hope you'll like it.

What do you think?
#44
Thank you all.

In the end, it was only just that one, which I solved as Cassiebsg suggested: on the GUI I just put "Music ", my label looks exactly the same, but I get two different translation entries.

I like the AGS translation system - it's pretty fast and simple, but this is quite a limitation. I have an idea for an improvement, but I don't have the time now to look into it. I'll post it on the appropriate subforum :)

Thanks again!
#45
Hi guys,
I'm currently working on the translation of my game, and I ran into an issue.

I have the same string in two places, but the translation needs to be different. And the .trs file only lists one.

The string is "Music" - one is in the Options screen, so it will be translated to "Musica", but the other one is an in-game sentence, where it should be "La musica".

How can I solve this? Is there a way of putting non-printable characters into the code?

A workaround I thought of is changing one of the two sentences to something like "BLAHBLAHBLAH" and add an English translation to bring back the original value, but this is something I'd like to avoid. Any pointers?
#46
Hi everyone,
I managed to compile everything under linux.

I seem to have problems with the mouse cursor, it remains on the left screen edge no matter what I do with my fingers.

Another question is: is there a way to set how textures are scaled? My game is a low-res one and I'd like to have everything with nearest neighbor scaling to preserve the pixely aspect, but everything is blurred and anti-aliased.
#47
Hi there,
I beg your pardon in advance if my question is stupid, it probably is (I surely missed something that will make me die of shame when you tell me) but I'm trying since days to solve this and I thought you all might know better than me how to proceed.

I downloaded the sources (of both ags and lib-allegro) and followed literally the instructions in order to compile the engine with ndk. However, ndk-build tells me that allegro.h can't be found (included by wgt2allg.h in Common/util).

Should I need to set up some kind of include path? How should the whole setup look? Should I be working under Linux or is Windows also OK?

Thanks a lot in advance!
Cheers,
Guga
SMF spam blocked by CleanTalk