EC Version 1.1.0 Progress

First off, we have our own section of the forum now, this means more threads dealing with EC such as bugs and suggestion, and now version progress 🙂

My current list of things to tackle in this update are as follows:

  • Search bar Done
  • Skin selector Done
  • Language files Done
  • Runtimes button
  • Changelog viewer

There will also be some bug fixes and code layout changes (these won’t be as noticeable).

If you have a suggestion you want to see added, head over to: https://www.eclipseorigins.com/topic/86254/ec-suggestions


What all’s been done:

  • Gave text stuff its own module
  • Fixed an issue where clicking a package in the list view might send you to the wrong game
  • Added a search bar that works with the Featured option
  • Search bar works with my packages
  • Skin selector now loads what skins you have when clicked, so you don’t need to close EC to add or remove a skin from your folder
  • Skin selection now works
  • Changed the config language file to xml
  • Added a GUI file that uses xml

Currently I’m still reorganizing and rewriting code. Originally I was trying to get EC to work and get it released quickly, so the code wasn’t organized at all, now I’m organizing it better.

I’m also redoing how certain values are retrieved which should help with preventing bugs in the future.


Once I’m doing with EC’s update, I’ll be bringing its code over to the updater to help that fix the bugs with that. It will also mean I have less edits to do as I update both since the codes will be so similar.

This post is deleted!

Finished the selecting system for the skins 🙂 I still have to add the saving, but changing is working

alt text

There’s a quick preview for ya’ll. Other than that, I’ve just been moving and reorganizing code.

This post is deleted!

@general-awesome Because it’s the lang I currently know best. I’m thinking of changing to Dlang after EC is stable, but that won’t be for a month or two.

Finished the skin selecting code. It now saves which skin you chose (if that skin is deleted then it will use the default skin).

Also finished the saving code for files.

I was busy today and wasn’t able to do a whole lot, I should have more time on monday to do bigger changes, but I’ll do the smaller ones this weekend.

More under the hood updates. I’m still reorganizing the code and changing how how things are done. Currently I’m breaking more things tan I’m fixing, but it is coming along.

One issue with EC is that it can’t see what you have in spoilers on the site (this has to do with how the spoilers work and not with EC), so avoid using spoilers with EC version histories.

Update time! There been more code improving and optimizations, but that isn’t something that’s very visibly.

What I’m currently working on is much more visible: Language support. The ultimate plan for language support is to host the best (most correct/polished) language files so they can be easily downloaded with EC, as well as support any language the user wants.

Currently I’ve written English.lang and am working on Pirate.lang (to make sure all the controls are changing their text). I still haven’t tested non-English characters, but I’ll be getting to that in due time.

The rest of this post is going to be about the lang files, so feel free to stop reading if you don’t care 😉



The .lang files can be opened with notepad or any text editor. The files have a custom layout that’s easy to read (it’s just the control’s name with an = and the text of the control).

Eg. (English and Pirate) (These are in separate files)
lblMyPackages=My Packages
lblMyPackages=Me Booty

The areas of file are divided by the Form the controls are on and what types of controls they are. This is for ease of reading and not for EC. If you want to change the order of the controls, say by the text on them, then you can; EC will have no problem reading the file.


Some of the control names have a _# at the end

Eg.
btnUpdate_0=Launch
btnUpdate_1=Update

This is because the button/control has multiple texts it can display.


Each language will have its own .lang file. This is to keep the clutter per file down to a minimum. This also means it’s easier to show all the files in the folder when you click on the language menu. Each language in the folder will be displayed. The skin selector uses the same system.

Language files are done and working, here’s a preview of the changes (I know the pirate lang needs work, thank goodness that the community will be able to improve the files).

alt text

Remember that the languages in the list are updated when you click the Language button based on what languages are in the folder.

I got curious about what characters would be supported with EC, and I was surprised…

alt text

alt text

I think it’s safe to say most language characters are supported. I just went to google translate and typed random things to get the character to test.

Also, languages should now be finished. I still have a few things to tweak with them, but otherwise they are working like a charm.


Currently I’m working on changing how package info is stored and retrieved to make it more user friendly.

Very nice!

The update progress is coming along pretty nicely 🙂 can’t really show much since it’s mainly code based. As I said before, that way EC handles the packages is changing, so a lot of code needs to be changed to handle this. I just finished the Previous and Next buttons in the tile view so that they change packages properly.


For those of you who are curious, I use a sort of chunk system to store the current package and prev/next packages. This allows the user to change to the next package with minimal wait time. Without this, it can take a second or two to load the package info. When the update is released, you can see the time it takes to load packages while the list view loads all the packages.



Since I’m now waiting for the next batch of updates, I’ll work on a version of EC that’s only the forms and language files. This will let the community make language files (and visually know if they’re using the right/best word [eg. Start/Begin for the launch button] for each element). If all goes well I should have that finished tomorrow for everyone to use.

Let’s see what languages we can support 😄


For those of you that are interested with how the language system in EC works (and who didn’t read the previous posts), the .lang file will have a list of form elements. Each element will have a “=” and text (eg. btnMyPackages=My Packages). Changing “My Packages” to “Me Booty” will change the text of the button to “Me Booty”. The list of languages is determined by the .lang files in the data/language folder. You can add a language while running EC and it will appear in the list without needing to restart EC.

For some of the form controls, there will be multiple texts that it can say. This is addressed by having a “_0” or “_1” after the control’s name (eg. btnLaunch_0=Launch). The code will then decide which text to use ( _0 or _1 ).

I finished the Language Preview version of EC, check it out 🙂 Keep in mind that this is EC stripped of all functions. The only thing it gets from online is ER’s image (for testing the tile view).

https://www.mediafire.com/file/5s14j2lfu2tsine/Eclipse Connect Language Preview.rar

Zyn wanted to see what all EC supports for characters. It supports unicode

alt text
alt text
alt text
alt text
alt text
alt text
alt text

Currently I’m working on redoing the download and extracting code. The old code worked, but I’m restructuring it and improve it so it works better with the new methods EC is using. I think I have the text changing finished, but I do need to do some testing before I know for sure.

Other than that, I’ve just been reorganizing code, moving it around, stripping and rewriting it, and breaking it lol. Not a whole lot to say, but I like keeping everyone in the loop.


Adding a bit more to this post.

So I’ve set up the code for updating a package (check, download, extract). I still need to make a few changes so the background updater can use it easier and use it without problems.

So that’s what I’m currently working on (restructuring code). Not sure what I have to do after that… I do still need to work on the rest of the packages (currently I’m finishing up on the games, next will be engines).

Time for another update… I have the majority of the game package code working (I still need to fix some of the download code that gets the file extension to save the file), but the extracting works just fine. I also changed how EC checks the version and downloads updates (it’s a code change, the process is still the same).

Currently I can’t work on the engine package code, so I have to put EC’s update on hold for now… I’ll be working on the Updater which will use more of EC’s code (I first made the Updater, EC was then based off that code, and now I’m making the Updater based of EC’s new code).

I wish I had more good news about EC, but currently I’m just not able to keep working on it. I’ll let you all know when the engine package stuff is finished and I can resume work 🙂

EDIT: It was pointed out to me that it sounded like I was quitting EC: this is not the case, one of the libs EC uses is not finished and I have to wait for it to be more complete before I’m able to resume work. I’ll be back to working on EC as soon as I can.

As the Updater and EC use very similar and the same code in some places, changing one means I’ve changed the other (some subs are the same so I’m copying them over, they don’t use the same files).

Currently I’m redoing the config file to use the xml format, but I might change to using json down the road.


If you’re curious about the Updater progress…

I finished the language and gui system in the Updater. This let’s you customize controls to look how you want. I’ll be copying this code over to EC when I finish with the updater.

Here’s the updater’s gui preview, it will be almost identical to EC’s, but EC will have more controls to choose from. https://www.youtube.com/watch?v=-z5NnboW74o&feature=youtu.be

Log in to reply