Release EDDI 3.3 - Bring your cockpit to life

I hadn't messed with System variables before. I tried them out today and I don't get values for Destination. The others seem to work fine.

Is this data provided by the API or a glitch.

I always start with blaming myself and try to figure out what I'm doing wrong, but I seem to be setting up the other System variables correctly and getting the expected values.
 
I think that the last version of EDDI (4.0.0 b3) is missing some of the previous version updates:
  • the edited script don't stay selected anymore
  • the "humanize" phrases are no longer localized (it uses "over", "well over" etc. while i have set the language to italian)
I have to say that i'm using a personality which is 2 versions behind, as i was translating it and i did'nt edited it all again from the new one. Could it be a problem?
 
I think that the last version of EDDI (4.0.0 b3) is missing some of the previous version updates:
  • the edited script don't stay selected anymore
  • the "humanize" phrases are no longer localized (it uses "over", "well over" etc. while i have set the language to italian)
I have to say that i'm using a personality which is 2 versions behind, as i was translating it and i did'nt edited it all again from the new one. Could it be a problem?
I don't think the edited script ever did "stay selected", though I'm not sure exactly what you mean either. Please elaborate?
The 4.0.0-b1 release included changes to the structure of {Humanise()} that invalidated the old translations (we're using phrases rather than just words - this should reduce the edge cases we see with odd outputs). I'm afraid that you'll need to revisit that section of your translation. We apologize for the inconvenience but believe that the revised structure provides a significant improvement.
 
Last edited:
I don't think the edited script ever did "stay selected", though I'm not sure exactly what you mean either. Please elaborate?
I was referring to https://github.com/EDCD/EDDI/issues/2154 ... not sure what i saw, then: i thought i saw it solved and working 😬
The 4.0.0-b1 release included changes to the structure of {Humanise()} that invalidated the old translations (we're using phrases rather than just words - this should reduce the edge cases we see with odd outputs). I'm afraid that you'll need to revisit that section of your translation. We apologize for the inconvenience but believe that the revised structure provides a significant improvement.
Ok, but these new strings are not in Crowdin, as the only new strings without italian translation are "elite 1", "elite 2" etc...
 
Ok, but these new strings are not in Crowdin, as the only new strings without italian translation are "elite 1", "elite 2" etc...
They are on CrowdIn. It looks like you translated the strings about two months ago but the translations have not yet been approved? Please approve the translations to add them to the translations branch.
 
🥳 🥳 🥳 We're pleased to announce that EDDI version 4.0.0-rc1 is now available for all users, either from the in-app upgrade or from here The full change log is available here.

This update adds additional events and refinements for Odyssey. It also incorporates Inara API updates (except for suit loadouts which still need to be implemented).
 
🥳 🥳 🥳 We're pleased to announce that EDDI version 4.0.0-rc1 is now available for all users, either from the in-app upgrade or from here The full change log is available here.

This update adds additional events and refinements for Odyssey. It also incorporates Inara API updates (except for suit loadouts which still need to be implemented).
Once again i have to thank the whole development team of eddi for their hard work.For me EDDI is part and parcel of ED giving the needed "life" to this game.
 
Guys, there's any chance to change the way the scripts are managed?

I'm trying to update my translation to the last eddi.json but:
  • looking at the diffs in Github have no use 'cause each whole script is just one line
  • i can't open two instances of EDDI to do a script-by-script comparison on two windows
  • there's no utilities helping in "decomposing" the json in just a single file with the scripts as they appears in the editor.
  • the "diff view" in EDDI is not smart enough, resultin in it being not useful

I wonder if having a big .cottle file with all the scripts, and then "compile it" in the usual json file when building EDDI could be done, or if could exist another solution to manage all the scripts outside the eddi editor... otherwise i'll desist in creating the standard eddi.it.json and just build a personality for my own needs.


(i don't know if this sounds like a rant, which is not; it is a honest question with the reasons that makes me ask.
I am more than willing to build a "default" italian localization but i'm always struggling to stay up-to-date and now it requires a very lot of time).
 
Guys, i'm here again to talk about the dreaded Humanise functions.
It still works bad in italian: no singolar/plurals, and not all the quirks my language requires (which i wrote about it in the comments in Crowdin.
But then I took a look at the code, and saw the FormatVerbatim line (commented with the italian as example) and i had an idea:
IN ITALIAN, everything should works well if the Humanise function could follow this logic (in pseudo-code):

"Nearly/Over/etc." + FormatVerbatim(ValueRoundedToTheClosestUnit) + "and a half"

So, following my logic, these scripts:
{Humanise(1434)}, {Humanise(2634321)}
will become
"Nearly" + FormatVerbatim(1000) + "and a half"
and
"Over" + FormatVerbatim(2000000) + "and a half"

This works flawlessy in italian, as the voice take care itself of the "full" part of the number without any efforts in your part.
I can't undertand why this should'nt work also in english but this is'nt really important: you know why.
But for the italian, and if i'm not missing something, this is really all that should be done.
 
Guys, i'm here again to talk about the dreaded Humanise functions.
It still works bad in italian: no singolar/plurals, and not all the quirks my language requires (which i wrote about it in the comments in Crowdin.
But then I took a look at the code, and saw the FormatVerbatim line (commented with the italian as example) and i had an idea:
IN ITALIAN, everything should works well if the Humanise function could follow this logic (in pseudo-code):

"Nearly/Over/etc." + FormatVerbatim(ValueRoundedToTheClosestUnit) + "and a half"

So, following my logic, these scripts:
{Humanise(1434)}, {Humanise(2634321)}
will become
"Nearly" + FormatVerbatim(1000) + "and a half"
and
"Over" + FormatVerbatim(2000000) + "and a half"

This works flawlessy in italian, as the voice take care itself of the "full" part of the number without any efforts in your part.
I can't undertand why this should'nt work also in english but this is'nt really important: you know why.
But for the italian, and if i'm not missing something, this is really all that should be done.
I need to think about this because, to be honest, it is Saturday night and I have been drinking. 🥃

You may very well be onto something useful here. I initially created FormatVewrbatim() to deal with some things in the Russian language, but if it more useful for other languages then of course I am happy to make it available to Cottle.

As you know, I have French, German, Italian, and lately Russian as second languages, so I anm aware of what you are wresiting with.
 
Oh, Humanise(). The worst-named custom function and also the hardest to internationalise, to the point where perhaps we shouldn't try.

Its job is to give an approximate description of a number in a format that a TTS voice can speak in a natural way.

The Humanise() function was initially written with only English in mind, and it is proving very difficult to localise in a way that works for all grammars when you have only template strings as a weapon, because it is much more fussy than a function ought to be. This especially the case for Russian, where numbers are declined for gender and case.

IMHO, Humanise() does a lot of work to dance around a variety of phrasings that don't translate well.

Translators might be better advised to forget Humanise() and instead use Cottle's round() function and let their TTS voice handle how to speak the number.
 
Absolute noob question incoming, almost too ashamed to post this.

Congrats to the Dev team on the release of 4.0. Not sure if this is the right place for this, but here goes. I've been using and enjoying EDDI for some time now. Now that I have customized the speech responder to my heart's content, what files should I backup so I don't loose my customization? I've looked in the EDDI directory but can't find my customized scripts.
 
Last edited:
Top Bottom