[iPad] Bug / Typo

Trouble with Synthesia, your keyboard, or adapter? Think you found a bug?
When describing problems, always mention your OS and game version (shown at the bottom of the title screen).

If your keyboard has USB or MIDI ports, there is a tremendously high chance (>99%) it will work with Synthesia. See what you'll need on the keyboards page.
Post Reply
monkel
Posts: 199

Post by monkel »

iOS 10.5.3.4922

A little bug and a typo I stumbled upon:

1) When I jump to the beginning of a song during melody practice mode (using the "<" button), the error counter is reset. When I then play a wrong note the counter goes up, but this then can't be reset by pressing back (I assume because I'm already there, still the counter should be reset).

2) When no device is connected, the German translation for

Code: Select all

<text id="noInput" v="Turn on an input device to play the song yourself."/>
is "TSchalten Sie ein Eingabegerät an, um den Song selbst zu spielen.".
This should be "Schalten Sie ein Eingabegerät an, um den Song selbst zu spielen.".

Actually - I think a better instruction would be "Verbinden Sie ein Eingabegerät, um den Song selbst zu spielen." (Connect an input device to play the song yourself.)
Nicholas
Posts: 13135

Post by Nicholas »

1. Hmm, I'm having a little trouble reproducing this. Did you mean the left arrow key on your typing keyboard? Or the |< previous bookmark button at the top of the screen? I suppose either way, I can't get errors to count up until after the first note is reached. (At which point, going back again will reset them to zero.)

2. Thanks for the fix! Your suggested text will be in the next update. (I'd actually seen that "TSchalten" before in passing, but thought the double capitals were just a German idiosyncrasy I didn't know about.) Now that I'm looking at it, do you know if there is a good reason the translator might have capitalized "Song"? It looks like you carried that through in your revision, too.
monkel
Posts: 199

Post by monkel »

1) Just start the melody practice. Pressing any key on the piano keyboard other then the right one won't start the count. Start the practice (possibly with some errors) and at some point press the "previous bookmark" and the error button will reset (if it takes you back to the beginning, otherwise repeat pressing). Pressing wrong piano keys will now increase the error count, but further presses of "previous bookmark" won't reset the count which I'd consider logical... :)

2) In German all nouns are capitalized, not only names (input device > Eingabegerät, house > Haus, piano > Piano).
monkel
Posts: 199

Post by monkel »

3) Something got mixed up in the language_de.xml for

Code: Select all

<text id="keyRange" v="%1% Beleuchtung" /> <!-- 1: the number of keys this keyboard has, usually something like 49, 61, 76, or 88 -->
and

Code: Select all

<!-- Refers to the LED lights under the keys of more recent "Lighted Keyboard" digital piano models -->
<text id="keyLights" v="K.%1% Beleuchtung" /> 
"Beleuchtung" translates as "being lit, lighting". The keys are "Tasten", so keyRange should be:

Code: Select all

<text id="keyRange" v="%1% Tasten" /> <!-- 1: the number of keys this keyboard has, usually something like 49, 61, 76, or 88 -->
I'm not really sure what keyLights should be, "K.88 Beleuchtung" doesn't make sense to me. If you want to refer to a keyboard with %1% number of lit keys it would be:

Code: Select all

<!-- Refers to the LED lights under the keys of more recent "Lighted Keyboard" digital piano models -->
<text id="keyLights" v="%1% Leuchttasten" /> 
Leuchttasten translates as "lit keys"
Nicholas
Posts: 13135

Post by Nicholas »

1. Hmm, is this happening in a particular song? (I'm starting to wonder if the presence of notes in another part, or maybe leading silence is having some impact.) I just tried your procedure in Songs --> Easiest --> "A Tisket, A Tasket" and still had the error count roll back down to zero no matter when I pressed the back button. And I wasn't able to get the error count to increase until after the first song note had been passed.

2. Neat! I like learning those sorts of small details.

3. This is the trouble with not having in-house (or even community) translators. While the translation service we use promises native speakers, they don't have the context of being familiar with the app, so that sort of stuff makes it through sometimes. Sorry! I remember a major problem happened with "Free Play" in about half of the languages. In English, free can mean both "able" (libre) but also "zero cost" (gratis). (The open source community usually distinguishes between the two by saying "free as in freedom" or "free as in beer".) In any event, "Free Play" was translated into the "zero-cost" version of the word in a bunch of languages, which caused lots of confusion.

Regarding the translations you mentioned, which version of language_de.xml are you using? In the latest language file, "keyLights" is accompanied by the following comment:
language.xml wrote:1: the MIDI channel number that this keyboard uses for light signals, between 1 and 16. The "Ch." is an abbreviation for "Channel", like a television or radio "channel". This is used in a very small location in the application, so it has to be short.
So, I'm guessing the leading "K." in the translation was an abbreviation for channel (or "Kanal"). In English, that line becomes something like "Ch.2 Lights" to mean that Synthesia will use MIDI channel 2 to send out key light messages. Does that clear any of the meaning up?
monkel
Posts: 199

Post by monkel »

1. "A Tisket, A Tasket" didn't allow me to reproduce it either, perhaps it needs to have left and right notes. Try this:

Start "Chopsticks", manually jump to somewhere in the middle via the progress bar, press some wrong notes and see the count go up. Jump Back using the "<" button and the counter is reset. Now press wrong notes and the counter goes up, but not down any more when pressing the "<" button.

3. I used the old one here viewtopic.php?p=38838#p38838 because it's the only German one I could find referenced in the forum.

Going from your current reference I'd suggest the following translations for German:

Code: Select all

<text id="keyRange" v="%1% Keys"/>
should be

Code: Select all

<text id="keyRange" v="%1% Tasten"/>

Code: Select all

<text id="keyLightsHeading" v="Key Lights"/>
<text id="keyLights" v="Ch.%1% Lights"/>
should be

Code: Select all

<text id="keyLightsHeading" v="Leuchttasten"/>
<text id="keyLights" v="K.%1% Licht"/>
Licht translates just as "light", which is lengthwise a good compromise to something like "Beleuchtung" (=lighting system, lights)

While we're at it some further refinements (capitalization and shorter forms):

Code: Select all

<text id="tabProgress" v="Fortschritt-Aufschlüsselung" />
<text id="columnActualSpeed" v="Tatsächliche Geschwindigkeit" />
<text id="columnDateEarned" v="Datum verdient" /> 
<text id="columnAvgSpeed" v="Durchschnittsgeschwindigkeit" />
<text id="leftHand" v="Linke Hand" />
<text id="rightHand" v="Rechte Hand" />
<text id="bothHands" v="Beide Hände" />
<text id="left" v="Links" />
<text id="right" v="Rechts" />
<text id="both" v="Beide" />
<text id="tabInstructions" v="Anweisungen" />
<text id="freePlay" v="Freispiel" /> <!-- means free game as won in a pinball machine -->
<text id="playSong" v="Ein Lied spielen" />
<text id="continue" v="Weiter" />
<text id="back" v="Zurück" />
<text id="cancel" v="Abbrechen" />
<text id="save" v="Speichern" />
<text id="add" v="Hinzufügen" />
<text id="clear" v="Löschen" /> 
could be

Code: Select all

<text id="tabProgress" v="Fortschritt" />
<text id="columnActualSpeed" v="Geschwindigkeit" />
<text id="columnDateEarned" v="Datum" /> 
<text id="columnAvgSpeed" v="Ø Geschwindigkeit" /> /> <!-- Unicode for average symbol is U+00D8 -->
<text id="leftHand" v="linke Hand" />
<text id="rightHand" v="rechte Hand" />
<text id="bothHands" v="beide Hände" />
<text id="left" v="links" />
<text id="right" v="rechts" />
<text id="both" v="beide" />
<text id="tabInstructions" v="Anleitung" />
<text id="freePlay" v="freies Spiel" />
<text id="playSong" v="ein Lied üben" /> <!-- Translates to practice / learn a song -->
<text id="continue" v="weiter" />
<text id="back" v="zurück" />
<text id="cancel" v="abbrechen" />
<text id="save" v="speichern" />
<text id="add" v="hinzufügen" />
<text id="clear" v="löschen" /> 
Last edited by monkel on 05-24-19 3:26 am, edited 1 time in total.
Nicholas
Posts: 13135

Post by Nicholas »

1. I see it now. Thanks for your persistence. :D The real bug there is that the song isn't giving you the ~2 seconds of lead-in it's supposed to when you rewind all the way. If it were, the errors would also reset correctly. This appears to be new behavior in 10.6, so it shouldn't be too hard to track down. I'll get that fixed.

3. Thanks for all of those. I'll get that incorporated for the next build!
Nicholas
Posts: 13135

Post by Nicholas »

1. Alright, if you try 10.6.5239, is this any better?

2. These should be in r5239, too!
Post Reply