maxim-zhao/psrp

pt-BR translation

Closed this issue · 22 comments

Let's use GitHub issues to track some work! This one can track the things that need doing and we can raise more issues for anything that's worth it.

  • Script for pt-BR, from script by @ajkmetiuk
    • Script changes based on the 2.0 English text changes
  • Items, menus
    • Menu resizing (as needed)
    • Window cache rearrangement
  • Font mapping based on what's used in the script
    • Font reworking for both fonts based on this
    • Relocating scripting codes to make room for a longer alphabet
    • Bug introduced by the above causes a glitch tile after every article...
  • Article handlers
    • Some "named" enemies like LaShiec need to have possessive (do) but no article when they are named, this is an extra variant to add (similar to French)
  • Optimisation of dictionary size (as needed)
    • Should re-do it after script updates
  • Name entry screen
  • Credits
    • complete translation
  • Title screen
    • Extra info if there is space
  • SHOP and EXIT signs

This font is designed to support additional accented characters by increasing the amount of tile-flipping that can be done, sometimes at the cost of uglier letters.
image
Credit to Master Emerald in the SMS Power! Discord channel. However this may need some work based on the characters we need, and it's also a loss of both the fonts in 2.0 English. Hopefully we can adapt them to this model.

font1 br
font1a br

hmm, sounds cool, taking base in french accented font (by 2.02)... It's possible to add in this flip font too!

K=ã
W=í
X=ó
Y=â
à
é
ê
è=á
g=ú
’=ç
u=õ
w=ô

W=(M vflip)
q=(p hflip)
w=(m vflip)
u=(n vflip)
d=(b hflip)
g=(6 vflip)
0=O
l=1
'="

The English font uses 5px for the lowercase parts ("x-height"), with 2px above and 1px below. This means that v-flips don't align properly: here's a quick demo:

image

This is the "AW2284" font which is based on Phantasy Star IV. The "Polaris" font is more tricky to edit - it was made by a talented pixel font guy. Editing either of them to 4px x-height will be tricky.

Anyway, I've inserted the script and menus. There's some work needed to accommodate the wider menus in some places, so they will draw corrupted for now. I added TODO-pt-br to a couple of places in the asm where some translation is needed.

In the items list, I need to understand the articles needed. For French, we had to cover a matrix of:

Vowel Masculine Feminine Plural Name with vowel Name with consonant
Lower <article> l' le la les
Upper <Article> L' Le La Les
Possessive <de> de l' du de la des d' de
Directive <à> à au à la aux à à

The pt-br script currently has no cases for articles. <use article 02> seems to be directive, and there's no possessive equivalent - is that right? The names table has <um>, <uma>, <o>, <a> - how do these map?

The script could use a proof-read. There's missing capitalisation on names, and I'm not sure what the pt-br convention is on capitalising item names in text - for example, the English text would say "Do you have a Roadpass?", should pt-br be "Você tem um passe?" or "Você tem um Passe?"? Elsewhere it will use the capitalised name when inserting in place of an <item> code, so maybe better to be capitalised?

I may also have missed some hyphens in the conversion - they will come out as "u". Please fix them!

The accented character list (from the script, I didn't count the menus or names) is:

ã x 243
á x 236
à x 11
â x 5
Á x 1
ç x 90
ê x 344
é x 544
É x 16
í x 34
ó x 53
õ x 8
ô x 12
Ó x 1
ú x 19

That's 15, which is possible with the "???" font above but that has some ugly tile hacks, and requires the font editing I mentioned above. Obviously with uppercase-only, there's plenty of tile space. If you can avoid the uppercase Á and Ó then it makes it a bit easier - they are used for "Árvores Laerma possuem frutas estranhas" and "Ótimo".

W, X and Y uppercase are not used by the script, but it seems odd to not have them in the name entry screen..

how do these map?

actually there are 6, o, a, do, da, um, uma, I set up a table to explain it better, um/uma is used in items. Example: "usou uma PelorieMate", "Equipou um Escudo de Couro". do/da is used in battle. Example: "desviou do ataque da Medusa", "desviou do ataque do Escorpião". The Upper in the script will only use "O" and "A", Example: "O Escorpião desviou do ataque" "A Lente Dourada desviou do ataque" The plurals only the "as" will be used in "as Frutas de Laerma". the rest it seems that there will be no need...
13

so maybe better to be capitalised?

It's same as English. This is correct, "Você tem um Passe?". Is capitalised because of item reference.

I may also have missed some hyphens in the conversion - they will come out as "u". Please fix them!

ok, I'll take a look later and fix

If you can avoid the uppercase Á and Ó then it makes it a bit easier.

there is a way to replace, I will check this too and try to remove all É if possible I can put something else at the beginning of the sentence to remove this capitalized É.

how do these map?

actually there are 6, o, a, do, da, um, uma, I set up a table to explain it better, um/uma is used in items. Example: "usou uma PelorieMate", "Equipou um Escudo de Couro". do/da is used in battle. Example: "desviou do ataque da Medusa", "desviou do ataque do Escorpião". The Upper in the script will only use "O" and "A", Example: "O Escorpião desviou do ataque" "A Lente Dourada desviou do ataque" The plurals only the "as" will be used in "as Frutas de Laerma". the rest it seems that there will be no need...

So I guess um, uma, uns, umas is like "a" in English (indefinite article); o, a, os, as is like "the" (definite article); and do, da, dos, das is like "of" (possessive). Articles can be at the start of a sentence so the they may need capital letters. So I think we have this table:

Code Masculine single indefinite Masculine plural indefinite Feminine single indefinite Feminine plural indefinite Masculine single definite Masculine plural definite Feminine single definite Feminine plural definite
Lower indefinite <um> um uns uma umas o a os as
Upper indefinite <Um> Um Uns Uma Umas O A Os As
Possessive <do> do da dos das do da dos das

The "code" column is what you would use in the script, and the second row of the table is what you'd use in the item lists to select the column (with [um], [uns] etc).

I've also done some work on the Polaris font:

image

This is using 69/70 available tiles. I think accented capitals will just look bad, though, so it'd be nice to drop them and some of the ugliness here can be reduced.

I've inserted this font; for some reason I thought I had one spare character but I seem to be wrong, this is maxed out. Example:
image
The article handlers are not done yet and I suspect there will be some bad glitches with accented characters because it is overlapping with the scripting codes area now. This might be tricky to solve...

So I think we have this table:

Yes, that's right, I just didn't know how to explain it to you, but that's correct.

I've also done some work on the Polaris font:

Wow, it was very nice, maybe we can edit the 5 a little bit to be halfway between 5 / S, but the other characters are good...

I've inserted this font; for some reason I thought I had one spare character but I seem to be wrong, this is maxed out. Example:
image
The article handlers are not done yet and I suspect there will be some bad glitches with accented characters because it is overlapping with the scripting codes area now. This might be tricky to solve...

for me it was good, I will try to remove Á, É, Ó and à from the script, so it is only 11 characters, maybe "help" a little.

6g-and-lj

Here's a tweak that lets you use L and J as horizontal flips that gains you another character space.

Also here is a 6 that can be used as either a 6 or a G.

When merging a number and a letter go with the letter style over the number. It's used more often and will look less jarring (in fact some early typewriters did this too like I for 1)

6 is already doubly flipped to make g, which I guess will look a bit odd with the loop open. As the majority of text is lowercase, I think it's good to optimise for that.

We may be able to pull back an extra character by removing á...

We may be able to pull back an extra character by removing á...

is the "à". I think 5 / S could be the replacement, it was the only one that was a little weird.

I see a little bug in this window, has the tag so it's hard to see.
Capturar

This is a funny one, the wrapping logic is confused by the number so I worked around it with a manual line break.

  • Bug with "Carta[ do Governador-Geral]" - [] skipping code does not work at the end of an item.
  • Bug with "Carta[ do Governador-Geral]" - [] skipping code does not work at the end of an item.

as there is only one letter in the game, I think can easily leave only "Carta" and fix this bug.

I think I fixed it in 21976f8. Testing is welcome...

I think I fixed it in 21976f8. Testing is welcome...

tested here, all right now!
1
2