Release EDDI 3.3 - Bring your cockpit to life

I did as you suggested and installed to a different location, and I've spent several hours going over most of the scripts in my personality.

First, I'd like to say what great addition this syntax colouring is! I really like it. I will have to change the colours though, when that feature becomes available, because I'm a bit colour-blind, so I do have some difficulty with the dark purple and black (of course that may also be down to my screen :unsure:). With that in mind, I do have a couple of things I'd like to mention.

Sometimes the variable in a {set <var> to <data>} is light grey, other times it's very dark purple/black (or it looks like it to me). What's the reason for this? I couldn't immediately see a pattern to it, so I'm just curious. I'm also thinking that I can't really see a difference between the black and purple. To me, the dark shades are too close for me to distinguish between. At least, that's what I'm guessing, it could also be that the purple/black are being coloured wrong, and I'm just not able to see the difference. 😳

The yellow error highlight is great. It helped me see a couple more mistakes that I had missed when going through all the scripts. One thing I noticed with this was with the missing colons from the System report script that you recently fixed. Obviously my edited version didn't have this fix in place, but I was a little confused when the yellow highlight was on the { of the next line after the missing colon. When I first saw this I thought something was wrong with that line, then I read the change log and realised what it was trying to tell me. Shouldn't it have highlighted the end of the line where the colon was missing? Is this something that can be done?

The only gripe I have, that I can think of, is that I can't right-click to do a copy/paste in the new editing engine. I have to use the icons at the top, or keyboard shortcuts instead. Is this something that can be added?

Overall, considering this is the first implementation, I am very impressed. Well done guys! 😄

o7

DC
FYI, body text is currently set as dark slate gray while code is purple.
Specific example scripts would be the best way to troubleshoot syntax coloring errors. Please share both the script and the specific line numbers that we need to review.
As for the placement of the yellow highlight, the actual region where the code cannot be resolved depends on the location of the missing character. If EDDI can still resolve the script except for missing a bracket or other delimiter at the end of the script, the yellow highlight may only appear at the end of the script.
 
I was checking my personal profile and was about to post my findings but after reading Darkcyde's post I don't need to because they are almost the same :)

Browsing the default scripts (EDDI 3.5.2-b2) I noticed two yellow highlights in the "Bodies to map" script. Below is a screenshot in case you want to look into it.

Bodies to map.JPG
 
FYI, body text is currently set as dark slate gray while code is purple.
Specific example scripts would be the best way to troubleshoot syntax coloring errors. Please share both the script and the specific line numbers that we need to review.
As for the placement of the yellow highlight, the actual region where the code cannot be resolved depends on the location of the missing character. If EDDI can still resolve the script except for missing a bracket or other delimiter at the end of the script, the yellow highlight may only appear at the end of the script.
I've had a look over a few today, under daylight rather than electric light, and I can see slightly more of a difference between the dark colours now, but not by much. For me at least, I'd need there to be a more contrasting difference. That's just down to my eyesight and being colour-blind though. I am predominantly red-green colour-blind, but I also have trouble with similar shades of lightness or darkness. In this case, I find it difficult to distinguish between the dark slate grey, purple, and black. When VB said 'black' in his post, I mis-read what he meant, because I can't really see much of a difference between them. Maybe if the dark slate grey was made a bit lighter, to a more medium grey, that may help me?

As for my confusion over the colouring of certain parts, this picture of the Cargo Depot script has an example.
Cargo Depot Script.png

On lines 11 and 12 there are {set …} statements where the variable to set is light grey in the first ('remaining') and dark in the second ('haulage'). I think it's dependant on what the actual word is for the variable to set, I'm just not sure why though. Is there an index of what each colour represents somewhere? That would be a big help for me. In the script I can see that a Pause() is different to a Find(), but from my perspective as a user, they are both functions, so why is one one colour and the other a different colour? I'm guessing it's because Find() (and Round() ) are built-in Cottle functions, while Pause() is an EDDI function. Unfortunately, I don't think I'm going to be much help with bug hunting/troubleshooting the syntax colouring until I can make better colour differentiations for me.

Looking at the above post from J. Calvert (Joshua), I can't see why the yellow error highlight is showing. It's looks fine to me. Running just that code in a new blank script works 100% as expected. Personally though, I'd remove those escaped quote marks, and replace them with single quotes (which is what I have done in all of my own scripts). By doing this, the yellow error highlight disappears.

Having gone through every one of my scripts last night, and gone over a few again today, I'm fairly sure that my own edits have cleared up any potential errors in their code that would have been highlighted in yellow. As I've already looked though all the defaults from v3.5.0 in order to rebuild my personality, I had already fixed the bugs I found in those default scripts where I came across them. I still have about 3-4 that I'm going to submit to GitHub soon, once I've finished my rebuild, and happy that I've got everything.

If there's anything I can help with, I'm more than happy to try stuff out for you, just let me know. :)

EDIT: Hmm, I've just compiled a list from my own change log, of the problems I found in the default scripts, and it turns out it's a bit longer than I thought. 13 problems over 15 scripts, and that's not including the instances of things like punctuation missing (which would make it even longer). I assume you would still prefer these to all be opened individually on GitHub as separate issues? Most things are just simple stuff, but there are a couple of (what I would consider as) major script breaking bugs.
 
Last edited:
You're right, the edit view would benefit from a right-click menu. Shouldn't be too hard.

Re the set keyword, I learned a lot in the course of developing the grammar definition that the coloring engine uses, including that the set and declare keywords parse completely differently depending on whether a single, hard-to-spot colon is present. Variable expressions expect an expression after to (without a colon), like {set x to 3 * 4}. Function expressions expect body text after to: (with a colon), for example {set f(x) to: Here is some body text {return x * 42}}. I hadn't really appreciated this because the body text nearly always contains only a code block. Similarly for declare ... as.

Moreover there can be white space before the colon! On reflection there is consistency here: in all the structures (if, for, while) a colon always indicates a transition from code to body text. Indeed the docs do call it the "body declaration separator character".

I hope that clarifies things for you.

Incidentally, a comment block is technically a regular code block with the underscore being a command just like set or if. It's even valid to put white space before the underscore, though I can't think why anyone would ever want to. { _ this is a valid comment } This has made me less keen on the style of closing comments with _}. Sure, it looks more symmetrical but it's possibly giving end users a slightly misleading idea of the rules.

Noted re the color issue. I took care to ensure that the engine is configurable but I won't have a chance to expose that functionality until after Christmas. For each of the categories:
  • Body text
  • Comment
  • Code
  • Delimiter
  • Unexpected delimiter
  • Escape delimiter
  • Keyword
  • Quote mark
  • Operator
  • Literals
  • Built-in functions
  • Custom functions
  • Custom properties
we will be able to control:
  • Foreground color (named color or ARGB values)
  • Background color (ditto)
  • Font family
  • Font size
  • Font weight (bold etc)
  • Font style (italic, underlined etc)
The theme will be saved in a JSON file which people can share. I'll probably do that bit first and release it for testing while I write the GUI for it.
 
Last edited:
...
On lines 11 and 12 there are {set …} statements where the variable to set is light grey in the first ('remaining') and dark in the second ('haulage').
...
Aha that clarifies! What you see as light grey is "LightSeaGreen" and is used for custom properties defined by EDDI, for example in delivered and totaltodeliver in line 25. The engine simply checks for words in our list of custom properties rather than parsing the grammar at that level, as it is a coloring engine not a full-on parser. We may be able to refine that later.
 
Here is the default color theme (the colors are standard web colors, see for example https://github.com/EDCD/EDDI/blob/master/docs/color-table.png):

Code:
  <Color name="Body text" foreground="DarkSlateGray">
  <Color name="Comment" foreground="Green" fontStyle="italic">
  <Color name="Code" foreground="Purple">
  <Color name="Delimiter" foreground="Purple" fontWeight="bold">
  <Color name="UnexpectedDelimiter" foreground="Purple" background="Yellow">
  <Color name="EscapeDelimiter" foreground="Orchid">
  <Color name="Keyword" foreground="MediumVioletRed">
  <Color name="Quote mark" foreground="Blue">
  <Color name="Operator" foreground="MediumVioletRed" fontWeight="bold">
  <Color name="Literals" foreground="Blue">
  <Color name="Built-in functions" foreground="MediumOrchid" fontWeight="bold">
  <Color name="Custom functions" foreground="DodgerBlue">
  <Color name="Custom properties" foreground="LightSeaGreen">
 
Thank you VB, for such a detailed and thorough explanation. That has helped a lot, so much appreciated. :)

You're right, the edit view would benefit from a right-click menu. Shouldn't be too hard.
Awesome, thank you!

As for the colon stuff, I had thought it was something like that. I guess after doing things a certain way for so long, I kinda stopped thinking why it's done that way.

Incidentally, a comment block is technically a regular code block with the underscore being a command just like set or if. It's even valid to put white space before the underscore, though I can't think why anyone would ever want to. { _ this is a valid comment } This has made me less keen on the style of closing comments with _}. Sure, it looks more symmetrical but it's possibly giving end users a slightly misleading idea of the rules.
I had never thought about it like that, that it is still a code block. Makes sense though. I think, with my eyesight (damaged visual field, so I can't see one end of a line if I look at the other, that's on top of being colour-blind) having a corresponding underscore at the end is a great help for me to see where a comment ends, and it's not just another line of code or body text. Just personal preference as an aid for me. And the lack of symmetry bugged me! Lol! :LOL:

On a side note regarding my visual field, I made this diagram a while back for someone, to show what I can and can't see. So yeah, a lot of the time I can't see sh*t! :LOL:
Visual Field Diagram - Bordered.png

Aha that clarifies! What you see as light grey is "LightSeaGreen" and is used for custom properties defined by EDDI, for example in delivered and totaltodeliver in line 25. The engine simply checks for words in our list of custom properties rather than parsing the grammar at that level, as it is a coloring engine not a full-on parser. We may be able to refine that later.
Ahh, so I was kind of on the right lines when I said it seemed dependant on the actual word. That makes a lot more sense now, thank you. See, my colour-blindness messing me up again. ;)

Thank you again, and I'm looking forward to your update after Christmas! :)

DC
 
We already have work in progress for the right-click menu ("context menu" is Microsoft's term for it) and only using the "Custom properties" color in the correct context, i.e. after a dot. But it's time for me to pack my bags and head away now.
 
Happy New Year to everyone! 🎉

New Year, new day... so why not have a new version of my EDDI profile too? ;)

It's been a long time coming, I know. I finally managed to get to Colonia from Beagle Point about halfway through November, and have been working on rebuilding it using the EDDI v3.5.0 default as a base since then. It's not just a simple rebuild though, I've made a lot of changes, fixes and updates, and done something to almost every script in one way or another. So much so, I've actually started a new Change Log because the old one was getting too big, and that's also why I'm not posting the change log here like I usually do (it's still in the Zip file though).

Well, enjoy it (or not), or make use of just the bits you want to add to your own personality. :)

And as always, a big thank you to the EDDI team for their continued hard work on making EDDI the best it can be! Here's to a great 2020 for EDDI and Elite Dangerous! :D

EDIT: Seems Dropbox doesn't allow downloading of the archive anymore from free accounts. So I had to add it here as a zip. :confused:
 

Attachments

Last edited:
Happy New Year to everyone! 🎉

New Year, new day... so why not have a new version of my EDDI profile too? ;)

It's been a long time coming, I know. I finally managed to get to Colonia from Beagle Point about halfway through November, and have been working on rebuilding it using the EDDI v3.5.0 default as a base since then. It's not just a simple rebuild though, I've made a lot of changes, fixes and updates, and done something to almost every script in one way or another. So much so, I've actually started a new Change Log because the old one was getting too big, and that's also why I'm not posting the change log here like I usually do (it's still in the Zip file though).

Well, enjoy it (or not), or make use of just the bits you want to add to your own personality. :)

And as always, a big thank you to the EDDI team for their continued hard work on making EDDI the best it can be! Here's to a great 2020 for EDDI and Elite Dangerous! :D

EDIT: Seems Dropbox doesn't allow downloading of the archive anymore from free accounts. So I had to add it here as a zip. :confused:
Thanks a lot for the New Years gift. I installed it and tried it out and it works just fine. Only thing I want to change is the entering station info on "green lights to the right" which I would prefer having as "green lights to starboard" but cannot remember which command it is I change. I had a look through my previous profile but could not find it?. Also once I have copied your profile and renamed it can I then delete the folder in my EDDI drive C folder?.
 
Thanks a lot for the New Years gift. I installed it and tried it out and it works just fine. Only thing I want to change is the entering station info on "green lights to the right" which I would prefer having as "green lights to starboard" but cannot remember which command it is I change. I had a look through my previous profile but could not find it?. Also once I have copied your profile and renamed it can I then delete the folder in my EDDI drive C folder?.
You need the 'Landing Pad Report' script. The very last line says with the green lights {OneOf("on your right", "on your starboard side", "to starboard")}. Just delete the "on your right", (including the quote marks and the comma).

I'm not quite sure what you mean. I assume you extracted the zip to a folder and then copied the personality file from there, into your EDDI personalities folder? If so, then yes, you can delete the folder you temporarily extracted the files to. However, if you mean the "AppData\Roaming\EDDI\personalities" folder on drive C, then no. That is the place EDDI looks to for all your personality files, so it needs to be there. The files inside that folder, are all the individual personality profiles, so if you've made a copy of my one and then made changes to that, the original copy of my one can be deleted if you want to. Does that answer your question?
 
You need the 'Landing Pad Report' script. The very last line says with the green lights {OneOf("on your right", "on your starboard side", "to starboard")}. Just delete the "on your right", (including the quote marks and the comma).

I'm not quite sure what you mean. I assume you extracted the zip to a folder and then copied the personality file from there, into your EDDI personalities folder? If so, then yes, you can delete the folder you temporarily extracted the files to. However, if you mean the "AppData\Roaming\EDDI\personalities" folder on drive C, then no. That is the place EDDI looks to for all your personality files, so it needs to be there. The files inside that folder, are all the individual personality profiles, so if you've made a copy of my one and then made changes to that, the original copy of my one can be deleted if you want to. Does that answer your question?
Yes that is understood and thanks again for all the time you guys take to make ED more immersive for the rest of us.
 
Hi - I'm getting some erroneous readouts when entering some systems telling me I either have bounties to cash in, or that I'm wanted in a system and have fines or bounties on me. Except I don't... (And with the fines bounties on me, I mean none of my ships have fines or bounties in that particular system, so it's not that I'm in a different ship.)

It seems to be random systems not all systems, and has been going on for some time. Really not a huge issue, but not sure where it's coming from.

I removed and reinstalled EDDI to see whether that would clear it up, but it doesn't seem to have done so. Is it perhaps a corrupted file (even with the fresh install)? Any thoughts?

Many thanks for a great app!
 
Open EDDI

Select Crime tab on the left - 4th position

Delete what you don't want.

I'd suggest stopping at a station that has the interstellar factors contact first to make sure you've got things paid up.

In EDDI the box at the lower left will find the closest IFC for your current position.

EDIT: LOL, I found one in mine as well and got a false report traveling to the system listed in the combat monitor station listed. I just deleted the Crimemonitor.json in the Appdata/Roaning/EDDI folder to see if that cures it.
 
Last edited:
Open EDDI

Select Crime tab on the left - 4th position

Delete what you don't want.

I'd suggest stopping at a station that has the interstellar factors contact first to make sure you've got things paid up.

In EDDI the box at the lower left will find the closest IFC for your current position.

EDIT: LOL, I found one in mine as well and got a false report traveling to the system listed in the combat monitor station listed. I just deleted the Crimemonitor.json in the Appdata/Roaning/EDDI folder to see if that cures it.
Thanks, I'll take a look in the crime tab, and probably delete the Crimemonitor.json to see if that helps.

I visit IF pretty regularly, usually immediately after completing missions that have generated bounties, my CMDR is generally law abiding :D, and I know which of my ships have fines or bounties on them (very few of them do, and you can see it most easily in the shipyard), and these are definitely false positives. And it's even easier to tell with the (incorrect) notice that I have bounties to collect simply by looking in the transactions tab, and of course visiting the Contacts and there being nothing there.

Just a bit strange, and wondering where EDDI is picking up this info which is definitely incorrect. As I said, not a huge issue for me, but would be better if it wasn't happening. :)
 
Select Crime tab on the left - 4th position
Delete what you don't want.
Thanks again GJ51 - Found a bunch of entries there, so deleted them all. I guess that for whatever reason the game didn't update EDDI when I paid / collected them, and I suspect that they are from quite a while ago.

Deleted the Crimemonitor.json also. Will see if that resolves the issue. Thanks for your help!
 
Yep removing crimemonitor.json should fix any lingering issues. I would have to check the release history but ISTR Hoodathunk made some fixes in that area at some point. The items you were seeing many have been from before those fixes went in.
 
Just to update...

I just fired it all up again, and now EDDI shows two lots of bounties to be claimed, one for the correct amount, one is out by about 25,000cr on the low side. Not a big deal.

There are however another three lots of bounties to be claimed in my transactions tab, although possibly the amounts are small (all below 100,000cr)

I also have two bounties on my head that aren't showing (from planetary scan jobs), but since I'm not in the wanted ship that may explain that...

Edit: Just collected one lot of bounties, and it is now gone from the crime monitor tab.
 
Last edited:
Top Bottom