Closed Darkcyde13 closed 5 months ago
Just realised there is a new update to beta 3. I've just installed that, and the problem remains.
I'm not sure if EDDI ever described the way you're describing or if we simply made some bad assumptions when we wrote the script. We certainly didn't test every possible permutation. :-)
Once a value has been set
, custom functions cannot touch it anymore. This fails:
{set another to '{OneOf("Another one", "One more", "Thats another one")}'}
{another}
This succeeds:
{set another to OneOf("Another one", "One more", "Thats another one")}
{another}
I will update the Star report
script accordingly.
Ah, sorry, my second example was more to test if it happened with other functions too, or if it was Spacialise() specifically that caused it. :-)
I was also wondering if this has come about as a result of the changes to the escape sequences and quote marks, although I've not gone back to 4.0.3 to test it.
Did you see my additional comment on #2614? It's kind of similar to this in that, as far as I can tell, it should work, but doesn't and is regarding quote marks.
What's Wrong (please be as specific as possible)
Expected
Star classes in Star report to be spoken correctly.
Observed
For star classes that use
Spacialise()
, the spacialise word is being spoken.Steps to reproduce
Configuration
My Investigation
Investigation Notes
In my travels, I came across a rare M class star. When EDDI read out the Star report it said: This orange giant is Very rare and interesting, relative to similar class {Spacialise('M')}-class orange giants, with an unusually young age of well over 1 billion years and a high rate of rotation at just over 130 days. As you can see, it emits a yellow-orange light.
This is from my modified version, so I went to the EDDI default to check there. The only difference in this case, is that I've added "-class" to the end of the line, making
{set class to "{Spacialise('M')}-class"}
. The EDDI default doesn't have the -class part, but otherwise is identical.Copying that line into a new blank script, and then adding
{class}
after so that it is spoken, results in this: {Spacialise('M')}-classIt looks like a problem with the quote marks like in #2614 but even adding \ before the ' doesn't make any difference. I'm guessing this will be the same for all star classes that use Spacialise().
I've also tried the following:
This is the same, and results in this being spoken: {OneOf("Another one", "One more", "Thats another one")}
As a workaround (for now) I can
cat()
the two portions of my code like this:{set class to cat(Spacialise("M"), "-class")}
But this is only a bandaid for the underlying problem, because the original line should work OK as it is.
EDDI Logs
No errors in the log, just lines like this when I click the test button:
2024-06-22T23:00:40 [Info] SpeechResponder:Start Initialized Speech Responder
Player journals
N/A