Got something on your mind about the project? This is the correct place for that.
Forum rules: This forum is for feature requests, content changes additions, anything not a Bug in the software.
Please report all bugs on the Support Forums
#156523 by gumi
Mon Nov 27, 2017 4:40 pm
Topic split from: viewtopic.php?p=156522#p156522

honestly that whole gender thing got too messy; I believe we should always address the player in a gender-neutral manner, no matter their actual gender
Last edited by WildX on Wed Nov 29, 2017 10:56 am, edited 1 time in total.
#156532 by WildX
Wed Nov 29, 2017 10:53 am
gumi wrote:honestly that whole gender thing got too messy; I believe we should always address the player in a gender-neutral manner, no matter their actual gender

I would agree that it's much simpler that way, but could it not also cause problems when the text is translated in other languages? Not all languages allow gender neutrality.
#156536 by glag
Wed Nov 29, 2017 6:21 pm
According to this Wikipedia page, French is supposed to be a language raising problems when you try to speak in a gender-neutral way. However, I am confident that I can always find a way to translate a text into French in a gender-neutral fashion (I can completely transform the text while maintaining the same meaning). I don't know if it is the same with the other languages.

I don't know if gender should be removed from the dialog system. Removing it has the advantage of simplification. But keeping it improves the expression power. For instance, without it, an NPC can not display a sexist behavior toward the player.

In my opinion, the right thing to do (keeping or removing gender specific speech) depends on the amount of workforce we have :
- if there is not enough people working on tmw, go for simplicity and remove gender speech
- if there is enough people working on tmw, go for features and create three types of dialogs (gender-neutral for non-binary players, female, and male)

We could also go for flexibility, by allowing the "lg" function to take either one or three arguments. If only one argument is given, it's a gender-neutral dialog. If three arguments are given, the first is the gender-neutral dialog, the second is the female dialog, the third is the male dialog. With this system, the first step of development is to write a working code with only one version of dialog. Then, when it works, if someone wants to improve the dialogs, they can do it by adding female and male specific dialogs.

Another thing I would like to point out : in the translation system (Transifex), the identifier of a sentence is the English sentence itself. This means that if the same sentence appears two times in NPC dialogs, it has to be translated the same way in both cases. This is not good, because the same sentence can have several meanings, depending on context. So we should be able to translate every sentence as we wish, even if that exact English sentence is already used in another dialog. This is not entirely off-topic, because translation "freedom" makes it more easy to rephrase sentences in a gender-neutral manner while keeping the same meaning.
#156537 by gumi
Wed Nov 29, 2017 6:46 pm
Something else I'd wanna do is wrap l() in a sprintf() so that we can use standard printf syntax, which, among other things, allows to reorder arguments. This would be very useful in romance languages, ie:

with the old system:
bring me a @@ @@ => bring me a blue chair
apportez-moi une @@ de couleur @@ => apportez-moi une bleue de couleur chaise

with printf:
bring me a %s %s => bring me a blue chair
apportez-moi une %2$s de couleur %1$s => apportez-moi une chaise de couleur bleue


%2$s is much uglier than @@, but it's much more flexible
#156542 by WildX
Fri Dec 01, 2017 9:44 am
glag wrote: - if there is not enough people working on tmw, go for simplicity and remove gender speech

The thing is that we have to think of the future as well. Right now there is definitely not enough people, at some point there might be enough, but that time won't last forever either. Simplicity is always a safe bet at least.

gumi wrote:apportez-moi une bleue de couleur chaise

tbh chair has always been my favourite colour
#156547 by Reid
Sat Dec 02, 2017 11:50 pm
Correct gender-specific dialog is indeed quite time consuming, although, it is not something we much care of when we write a script. We usually do something that is OK-ish, and then on the translation process or through player comments we fix lines that are messy.
gumi wrote:Something else I'd wanna do is wrap l() in a sprintf() so that we can use standard printf syntax, which, among other things, allows to reorder arguments. This would be very useful in romance languages, ie:

with the old system:
bring me a @@ @@ => bring me a blue chair
apportez-moi une @@ de couleur @@ => apportez-moi une bleue de couleur chaise

with printf:
bring me a %s %s => bring me a blue chair
apportez-moi une %2$s de couleur %1$s => apportez-moi une chaise de couleur bleue


%2$s is much uglier than @@, but it's much more flexible

Indeed it would be cleaner, although I would prefer to keep a one letter function name instead of something long like sprintf. Remember that the most a variable is used, the least its length should be.
#156548 by Amarynthus
Sun Dec 03, 2017 12:50 am
Isn't the logic a bit backwards there. The more you use a variable or function, the better of you would be to give it a short name. That is not the same as saying you would be better off using a function more often because it's name is shorter.

In any case, just wrap sprintf or use a function pointer to sprintf with a one-letter name if you really want to.
#156553 by Reid
Mon Dec 04, 2017 1:39 am
Amarynthus wrote:Isn't the logic a bit backwards there. The more you use a variable or function, the better of you would be to give it a short name. That is not the same as saying you would be better off using a function more often because it's name is shorter.

In any case, just wrap sprintf or use a function pointer to sprintf with a one-letter name if you really want to.

Isn't it what I said? :)

Who is online

Users browsing this forum: No registered users and 3 guests