Jump to content


Photo

Suggestion to localization thing


  • Please log in to reply
23 replies to this topic

#1 evilpuncker

evilpuncker

    The Suggester

  • Community Contributors
  • 2118 posts
  • Locationbr br hue hue

Posted 02 May 2015 - 09:47 PM

Translating 147k+ entries is not funny! the current design is like this:

 

this script:

		mes "[Airship Staff]";		mes "When you see a broadcast";		mes "announcing that we have";		mes "arrived at your destination,";		mes "please use one of the exits";		mes "located at the north and";		mes "south ends of the Airship.";		next;		mes "[Airship Staff]";		mes "If you happen to miss";		mes "your stop, don't worry.";		mes "The Airship is constantly";		mes "en route and you'll get";		mes "another chance to arrive";		mes "to your intended destination.";		close;

will generate something like 13 separated strings to translate, my proposal is to make every "npc window" (the text between the start and the close/next) just a single entry, something like this:

   

"[Airship Staff]"; <-- 1 entry only because it repeats
 
"When you see a broadcast
announcing that we have
arrived at your destination,
please use one of the exits
located at the north and
south ends of the Airship."; <-- 2 entry
 
"If you happen to miss
your stop, don't worry.
The Airship is constantly
en route and you'll get
another chance to arrive
to your intended destination."; <-- 3 entry
 
 
 
 

Edited by evilpuncker, 07 May 2015 - 09:43 PM.

before asking for help, click here

some people that I admire:

Ai4rei (tools and client stuff) • Aeomin (the awesome thor patcher) • AnnieRuru (very helpful with script and source stuff)

Neo (N.E.M.O... do I need to say more?) • KeyWord (roBrowser <3) • k3dt (clients and clients) • Tokeiburu (awesome tools)

Dastgir (lua stuff) • Yommy • Ind • Haru • malufett

 

:ok:    and everyone that contributed in any way to the *Athena community in general (emulator, releases, support etc)  :no1: 


#2 Haru

Haru

    Development Administrator

  • Administrators
  • 360 posts
  • Emulator:Hercules
  • Github:MishimaHaruna

Posted 07 May 2015 - 10:06 PM

I personally love this idea (and I did this in the past, in custom scripts I wrote).

The only argument that there might be against this is that, by changing the scripts to that format, they might word-wrap differently than official servers. I don't think it's a real issue, but I'd like to hear the others about this.

As of commit 09dd209, we actually have source support for a nice syntax such as:
    mes "When you see a broadcast"       // Yep, no semicolon, and no plus sign between this and the next line.        " announcing that we have"       // Just close the quotes and reopen them on the next line.        " arrived at your destination,"        " please use one of the exits"   // Ah, and yes, there can be comments between the lines.        " located at the north and"        " south ends of the Airship.";      // ^ Well, this space is because otherwise there would be no space between "and<>south".
And after the script engine parses it, it's as if there was just one long string in one line (except, it looks prettier in editors, being split in multiple lines.) This also means that the translation engine sees just one string.

#3 evilpuncker

evilpuncker

    The Suggester

  • Community Contributors
  • 2118 posts
  • Locationbr br hue hue

Posted 07 May 2015 - 10:07 PM

@Haru

make this optional with a setting then :P but lets do it!  :lol:


before asking for help, click here

some people that I admire:

Ai4rei (tools and client stuff) • Aeomin (the awesome thor patcher) • AnnieRuru (very helpful with script and source stuff)

Neo (N.E.M.O... do I need to say more?) • KeyWord (roBrowser <3) • k3dt (clients and clients) • Tokeiburu (awesome tools)

Dastgir (lua stuff) • Yommy • Ind • Haru • malufett

 

:ok:    and everyone that contributed in any way to the *Athena community in general (emulator, releases, support etc)  :no1: 


#4 Nebraskka

Nebraskka

    Advanced Member

  • Members
  • PipPipPip
  • 43 posts

Posted 07 May 2015 - 10:14 PM

Translating stuff without a whole context, having only some randomized strings, is not quite intuitive for sure and making translation process harder.
 
But using whole string for all dialogs is not always possible.
I'm not trying to be feature blocker, my point is: there is stylistic text design purpose of leaving message broken on several pieces.
 


Kind of example:

 

mes "Oh...";mes "...Well.";mes "I guess you are right. It is hard.";

↓↓↓

Oh...
...Well.
I guess you are right. It
is hard.

 

 

And

 

mes "Oh... ...Well. I guess you are right. It is hard.";

↓↓↓

Oh... ...Well. I guess
you are right. It is
hard.

 

 

Boths looks worse in-game than a classic way:

 

mes "Oh...";mes "...Well.";mes "I guess you are right.";mes "It is hard.";

↓↓↓

Oh...
...Well.
I guess you are right.
It is hard.

 

 

 

As you can remember, there was some style in official NPC texts.
Making every dialog appear just in single string could break this experience.


Edited by Nebraskka, 07 May 2015 - 10:19 PM.


#5 Haru

Haru

    Development Administrator

  • Administrators
  • 360 posts
  • Emulator:Hercules
  • Github:MishimaHaruna

Posted 07 May 2015 - 10:40 PM

Ah, wonderful point. Yes, I'm aware of those, and I agree. Those /shouldn't/ be merged into one line. A separate 'mes' call would still be kept where necessary -- mostly with line breaks required by the dialogue's punctuation. Translation-wise, those are separate sentences anyways, so it makes less sense for them to be in the same string.

#6 Jman

Jman

    Advanced Member

  • Former Administrator
  • 271 posts
  • IRC Nickname:Jguy
  • Emulator:Hercules
  • Github:jguy1987

Posted 08 May 2015 - 12:35 AM

T'would be nice if the Script engine would support an automatic line wrap based on x lines. Could even make it a per script config by setting an optional setting in the script start with the tabs?



#7 Ai4rei

Ai4rei

    Advanced Member

  • Members
  • PipPipPip
  • 176 posts
  • LocationCzech Republic
  • Github:ai4rei

Posted 08 May 2015 - 04:54 AM

What about:
mes "Oh...";mes "...Well.";mes "I guess you are right. It is hard.";
↓↓↓
"Oh...n...Well.nI guess you are right. It is hard."


#8 Dastgir

Dastgir

    Advanced Member

  • Script Developers
  • 3338 posts
  • IRC Nickname:Dastgir
  • LocationIndia
  • Emulator:Hercules
  • Github:dastgir

Posted 08 May 2015 - 04:58 AM

What about:

mes "Oh...";mes "...Well.";mes "I guess you are right. It is hard.";
↓↓↓
"Oh...n...Well.nI guess you are right. It is hard."
Great, that way we can remove/add lines according to the language(considering some language needs extra words to be put)
@Haru

My Services: Click Here
Clientside Translation: Click HERE
If you like my work Please Click rep_up.png
btn_donateCC_LG.gif

Quick Donate Link: http://paypal.me/dherc


#9 evilpuncker

evilpuncker

    The Suggester

  • Community Contributors
  • 2118 posts
  • Locationbr br hue hue

Posted 08 May 2015 - 05:29 AM

What about:

mes "Oh...";mes "...Well.";mes "I guess you are right. It is hard.";
↓↓↓
"Oh...n...Well.nI guess you are right. It is hard."

 

that is awesome =0 but I suggest that the n to be omitted in pot file so we can translate the full string without the need of editing

(and by the way, since you are a programmer yourself, mind creating a simple tool to convert all npc files to this format you posted? :P)


Edited by evilpuncker, 08 May 2015 - 05:30 AM.

before asking for help, click here

some people that I admire:

Ai4rei (tools and client stuff) • Aeomin (the awesome thor patcher) • AnnieRuru (very helpful with script and source stuff)

Neo (N.E.M.O... do I need to say more?) • KeyWord (roBrowser <3) • k3dt (clients and clients) • Tokeiburu (awesome tools)

Dastgir (lua stuff) • Yommy • Ind • Haru • malufett

 

:ok:    and everyone that contributed in any way to the *Athena community in general (emulator, releases, support etc)  :no1: 


#10 Ai4rei

Ai4rei

    Advanced Member

  • Members
  • PipPipPip
  • 176 posts
  • LocationCzech Republic
  • Github:ai4rei

Posted 08 May 2015 - 05:49 AM

(and by the way, since you are a programmer yourself, mind creating a simple tool to convert all npc files to this format you posted? :P)

I guess I could.

Edit:
Looking at the current trunk, I do not see support for n in *mes.

Edited by Ai4rei, 08 May 2015 - 07:04 AM.


#11 Dastgir

Dastgir

    Advanced Member

  • Script Developers
  • 3338 posts
  • IRC Nickname:Dastgir
  • LocationIndia
  • Emulator:Hercules
  • Github:dastgir

Posted 08 May 2015 - 07:03 AM

What about:

mes "Oh...";mes "...Well.";mes "I guess you are right. It is hard.";
↓↓↓
"Oh...n...Well.nI guess you are right. It is hard."
 
that is awesome =0 but I suggest that the n to be omitted in pot file so we can translate the full string without the need of editing
(and by the way, since you are a programmer yourself, mind creating a simple tool to convert all npc files to this format you posted? :P)
Bypassing n in pot :o
How it will detect the newline then....

My Services: Click Here
Clientside Translation: Click HERE
If you like my work Please Click rep_up.png
btn_donateCC_LG.gif

Quick Donate Link: http://paypal.me/dherc


#12 evilpuncker

evilpuncker

    The Suggester

  • Community Contributors
  • 2118 posts
  • Locationbr br hue hue

Posted 08 May 2015 - 07:31 AM

@Dastgir

now you got me lol :P

 

 

@Ai4rei

indeed but I may start translating already and testing the outcome (a pot file that doesn't have 150k+ strings lol) :P


before asking for help, click here

some people that I admire:

Ai4rei (tools and client stuff) • Aeomin (the awesome thor patcher) • AnnieRuru (very helpful with script and source stuff)

Neo (N.E.M.O... do I need to say more?) • KeyWord (roBrowser <3) • k3dt (clients and clients) • Tokeiburu (awesome tools)

Dastgir (lua stuff) • Yommy • Ind • Haru • malufett

 

:ok:    and everyone that contributed in any way to the *Athena community in general (emulator, releases, support etc)  :no1: 


#13 Ai4rei

Ai4rei

    Advanced Member

  • Members
  • PipPipPip
  • 176 posts
  • LocationCzech Republic
  • Github:ai4rei

Posted 08 May 2015 - 08:35 AM

Here you go, see if it works alright (did only basic testing). Requires PHP-CLI:
php collapsemes.php /path/to/npc/folder
Old files are backed up as *.bak, files that need no change are not touched. You might want to use this in a separate working copy in case it screws up.

Spoiler


Edit:

v1.0.1: Removed a flag, added regexp overview.

Edited by Ai4rei, 08 May 2015 - 09:50 AM.


#14 evilpuncker

evilpuncker

    The Suggester

  • Community Contributors
  • 2118 posts
  • Locationbr br hue hue

Posted 08 May 2015 - 07:11 PM

@Ai4rei

I'm using uniformserver as webserver, wasn't able to run it properly, created a bat file to execute "php index.php C:UniServerZwwwnpc" (or even changed path to 'npc'), well, tried many things but no success at all lol, I'm too noob for this :P

 

edit: nvm it worked after dropping all files into php folder lol, great work :D

 

now I guess we need to update generator because it is cutting at n (http://i.imgur.com/E5mdDYI.png) but at least now I got only 69k strings to translate


Edited by evilpuncker, 08 May 2015 - 07:19 PM.

before asking for help, click here

some people that I admire:

Ai4rei (tools and client stuff) • Aeomin (the awesome thor patcher) • AnnieRuru (very helpful with script and source stuff)

Neo (N.E.M.O... do I need to say more?) • KeyWord (roBrowser <3) • k3dt (clients and clients) • Tokeiburu (awesome tools)

Dastgir (lua stuff) • Yommy • Ind • Haru • malufett

 

:ok:    and everyone that contributed in any way to the *Athena community in general (emulator, releases, support etc)  :no1: 


#15 Kpy!

Kpy!

    Newbie

  • Members
  • Pip
  • 1 posts

Posted 13 May 2015 - 06:31 PM

What about this...

 

1. Convert official scripts to the following format:

mes "[Airship Staff]";mes "When you see a broadcast",    "announcing that we have",    "arrived at your destination,",    "please use one of the exits",    "located at the north and",    "south ends of the Airship.";

 

2. Save multi-line mes commands into the pot file as a single message separated by newlines.

msgid "When you see a broadcastnannouncing that we havenarrived at your destination,nplease use one of the exitsnlocated at the north andnsouth ends of the Airship."

This preserves the official line-breaks while also giving full control to the translator about how to format the message. Importantly, it also keeps the script syntax clean and easy to read (without newline characters all over the place).


Edited by Kpy!, 13 May 2015 - 06:42 PM.


#16 milk

milk

    Advanced Member

  • Members
  • PipPipPip
  • 91 posts
  • Location/dev/urandom
  • Emulator:Hercules

Posted 14 May 2015 - 08:09 AM

2. Save multi-line mes commands into the pot file as a single message separated by newlines.

msgid "When you see a broadcastnannouncing that we havenarrived at your destination,nplease use one of the exitsnlocated at the north andnsouth ends of the Airship."
This preserves the official line-breaks while also giving full control to the translator about how to format the message. Importantly, it also keeps the script syntax clean and easy to read (without newline characters all over the place).


I like this idea.

Spoiler


#17 evilpuncker

evilpuncker

    The Suggester

  • Community Contributors
  • 2118 posts
  • Locationbr br hue hue

Posted 11 September 2015 - 04:40 AM

@Haru

any news on this? :P I'm currently waiting for any change to be implemented in order to start translating anything, since it is still a pain the current way xD


before asking for help, click here

some people that I admire:

Ai4rei (tools and client stuff) • Aeomin (the awesome thor patcher) • AnnieRuru (very helpful with script and source stuff)

Neo (N.E.M.O... do I need to say more?) • KeyWord (roBrowser <3) • k3dt (clients and clients) • Tokeiburu (awesome tools)

Dastgir (lua stuff) • Yommy • Ind • Haru • malufett

 

:ok:    and everyone that contributed in any way to the *Athena community in general (emulator, releases, support etc)  :no1: 


#18 Vlync

Vlync

    Advanced Member

  • Members
  • PipPipPip
  • 372 posts
  • Emulator:Other

Posted 29 December 2015 - 05:02 PM

Any news regarding this?



#19 Dastgir

Dastgir

    Advanced Member

  • Script Developers
  • 3338 posts
  • IRC Nickname:Dastgir
  • LocationIndia
  • Emulator:Hercules
  • Github:dastgir

Posted 29 December 2015 - 05:18 PM

Isn't this complete?

My Services: Click Here
Clientside Translation: Click HERE
If you like my work Please Click rep_up.png
btn_donateCC_LG.gif

Quick Donate Link: http://paypal.me/dherc


#20 evilpuncker

evilpuncker

    The Suggester

  • Community Contributors
  • 2118 posts
  • Locationbr br hue hue

Posted 30 December 2015 - 05:40 PM

Isn't this complete?

 

no, there were no change regarding this or this or this


before asking for help, click here

some people that I admire:

Ai4rei (tools and client stuff) • Aeomin (the awesome thor patcher) • AnnieRuru (very helpful with script and source stuff)

Neo (N.E.M.O... do I need to say more?) • KeyWord (roBrowser <3) • k3dt (clients and clients) • Tokeiburu (awesome tools)

Dastgir (lua stuff) • Yommy • Ind • Haru • malufett

 

:ok:    and everyone that contributed in any way to the *Athena community in general (emulator, releases, support etc)  :no1: 





0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users


This topic has been visited by 143 user(s)