Launcher

I tested electron out and it seems pretty cool, it’s especially useful that I can create releases for all platforms with a single command.
And it uses css for styling. So @Oliveriver if you could post those properties as a css style sheet I could throw them in more easily.

This is what I got now:


I didn’t apply styles yet as I was struggling with HTML wanting to overflow everything and cause scrollbars all over the place.

2 Likes

I tried to add some of the style things, but this is still quite bare:

I’m going to focus next on making it work.

Btw if anyone has access to create a new repository in the revolutionary games’ github page getting a repository for the launcher would be great.

1 Like

Looks really good, showing a lot of quick progress!!

I was able to integrate @Oliveriver’s feeds into the launcher:

This is starting to shape up pretty nicely

5 Likes

Oh god yes we’re getting a launcher!!

1 Like

It’s turning out great so far!

I started implementing the downloading and unzipping on releases, so I don’t have anything to show for that.
But I added a popup thing for the links and play button:

Would be good to get a repo up for this soon, so someone could help me with the html styles and content…

4 Likes

Progress update: the launcher can now download, unzip and run thrive.
It even shows log of the thrive output while playing:

also the feed is back after it broke after the website updates

4 Likes

You’re making great progress so far! Any news on the layout itself? I can design assets if necessary, like the gear and such.

Are you familiar with html and css? Because basically all of the layout is in one html and a css file and they should be pretty easy to tweak.

I hope we can soon find someone who can create a repo for the launcher so we can get some collaboration going on…

Also, I just wasted spent an entire day fixing the streams and getting a truncation working for the posts. But now the feeds are better than on the main site; they have youtube videos and images in them. I also added some variables that control whether images and youtube videos are loaded.

Here’s a screenshot:

2 Likes

That makes two of us who’ve spent far too long micro-managing those feeds. :smile:

Once the repository is up I might reverse-engineer them and adjust what’s on the website (although if it’s anything other than HTML and CSS I’ll struggle). I can also help with visuals if you want. How far away are you from making something that can check for changes in the latest release and only download files which have been changed? That’s really the main utility a launcher would have for us.

The repo is now here: https://github.com/Revolutionary-Games/Thrive-Launcher

Pretty far as I haven’t really found anything premade that would create delta zips. I’m thinking I’ll need to write a script for creating delta updates before it makes sense to try to implement it in the launcher.

I noticed there’s some horizontal scrollbars and I assume that’s because of the large images; can you shrink the images down automatically?
EDIT: Also, by assets I meant the graphics and stuff; I have no knowledge in either of those things.

It’s definitely possible to shrink the images, but I’m not sure if it takes 5 seconds or 5 minutes to fix.

Electron (the framework I’m using) uses html files for the UI so it’s basically a website shown in a window. That’s why I asked if you were familiar with that. So basically if you know how to make a website it can be put into the launcher and it will look exactly the same it does in chrome.

I think the launcher is now ready for testing, so here are the windows and linux release zips: https://boostslair.com/files/temp/thrive-launcher/

2 Likes

Will the launcher be able to update itself too?

There would need to be a separate executable on windows for that to work, so no.
But with all the version data being downloaded it should be rare for the launcher to need updating, but I’ve added a popup box that tells the user that there is a new version, which they can ignore if the launcher can still understand the current version file.

Of course it is possible to add self updating later.

Should the launcher handle the options in ogre.cfg?

Once I do the options menu there’s not going to be an ogre.cfg anymore. Even then it would be quite difficult to modify the settings from the launcher. So I think the best choice is for thrive to automatically detect a “good” resolution when started without an existing configuration file. The player can then use the options menu to tweak things, pretty much how it is in most games.