# Launcher

**URL:** https://forum.revolutionarygamesstudio.com/t/launcher/335
**Category:** Gameplay
**Created:** [April 9, 2017, 5:11am UTC](https://forum.revolutionarygamesstudio.com/t/launcher/335 "2017-04-09T05:11:52Z")
**Posts on this page:** 20
**Page:** 1

<div class="post-metadata">

### Author: ![Narotiza](https://thrivedevforum-cdn.b-cdn.net/user_avatar/forum.revolutionarygamesstudio.com/narotiza/32/1524_2.png) [@Narotiza](https://forum.revolutionarygamesstudio.com/u/Narotiza)
#### Post date: [April 9, 2017, 5:11am UTC](https://forum.revolutionarygamesstudio.com/t/launcher/335/1 "2017-04-09T05:11:52Z")

</div>

Making a new thread, since otherwise I’d be pretty much derailing the Mod Support one.

 ![](https://thrivedevforum-uploads.b-cdn.net/original/1X/063e5e249bbc6a409ac4aab691364ed3218a7b4e.png)

Here is a mockup I’ve made for a Thrive launcher; it would give the player a quick glance at recent news each time they start it up, as well as recent Dev Forum posts.  
It would also allow the player to more easily download the newest updates, as well as letting them play older versions too - The arrow next to the ‘Download/Play’ button would give a dropdown list of older versions and such, which the player could choose to play.

There are some things that I neglected to include that would be rather useful: The ability to change settings before launching, important links to important sites like [revolutionarygamesstudio.com](http://revolutionarygamesstudio.com), the community and dev forums, and our various social media accounts; and finally, perhaps some sort of simple way to load mods.

EDIT: Here is a version with the Developer Forum and News boxes switched around, plus with some other small changes.

 ![](https://thrivedevforum-uploads.b-cdn.net/original/1X/230e0b3fff90de2d6295f774344f7bf99f609837.png)

---

<div class="post-metadata">

### Author: ![hhyyrylainen](https://thrivedevforum-cdn.b-cdn.net/user_avatar/forum.revolutionarygamesstudio.com/hhyyrylainen/32/2243_2.png) [@hhyyrylainen](https://forum.revolutionarygamesstudio.com/u/hhyyrylainen)
#### Post date: [April 9, 2017, 8:12am UTC](https://forum.revolutionarygamesstudio.com/t/launcher/335/2 "2017-04-09T08:12:01Z")

</div>

Looks good, I’m just afraid that I won’t be able to create a launcher that looks so good.

One thing I wanted to say is about having links somewhere. Would it be better to have tabs like “news”, “settings”, “link” at the top or maybe a links button to the right of the play button which would popup/replace the news with a links window?

Also I’m trying to create a few mockups in different frameworks and see which one turns out the best.

---

<div class="post-metadata">

### Author: ![hhyyrylainen](https://thrivedevforum-cdn.b-cdn.net/user_avatar/forum.revolutionarygamesstudio.com/hhyyrylainen/32/2243_2.png) [@hhyyrylainen](https://forum.revolutionarygamesstudio.com/u/hhyyrylainen)
#### Post date: [April 9, 2017, 10:42am UTC](https://forum.revolutionarygamesstudio.com/t/launcher/335/3 "2017-04-09T10:42:43Z")

</div>

Okay so none of the ones I tried (Gtk, wxWidgets, Qt5) supported a web browser view out of the box, but Qt had quite easily installable one and so does gtk (I didn’t test that). Out of these qt is probably the easiest to get working both on linux and windows, with wxWidgets being a close second and Gtk being quite a pain to build on windows. I’m most familiar with gtk so that would be easiest for me, but I guess I would have to build the windows releases for that. Qt has some quite weird licensing terms so on that basis I would also prefer gtk.

wxWidgets was quite bad (at least the GUI designers) so I don’t recommend using it, even if it provides a more “native” look on each os.

This is my attempt with wxWidgets:

 ![](https://thrivedevforum-uploads.b-cdn.net/original/1X/6db87c6370a9cbecd35ee2920780d2ecb7809ba5.png)

And with gtk:

 ![](https://thrivedevforum-uploads.b-cdn.net/original/1X/85b22d0dfd4b2556ba655a78d95da80df02155c0.png)  
(It should be possible to replace those text boxes with web browser like in qt)

And finally Qt version that has web browsers:

 ![](https://thrivedevforum-uploads.b-cdn.net/original/1X/3391c0cefd9ba1b15e52dc2fa30c73763af1f72c.png)

As I said above I much prefer working with gtk, so if no one steals this task from me I’m probably going to end up using gtk and having to compile all the releases my self

---

<div class="post-metadata">

### Author: ![Oliveriver](https://thrivedevforum-cdn.b-cdn.net/user_avatar/forum.revolutionarygamesstudio.com/oliveriver/32/1962_2.png) [@Oliveriver](https://forum.revolutionarygamesstudio.com/u/Oliveriver)
#### Post date: [April 9, 2017, 11:24am UTC](https://forum.revolutionarygamesstudio.com/t/launcher/335/4 "2017-04-09T11:24:12Z")

</div>

@Narotiza I really like that launcher design, although as you say, it could do with all the extra sections you list.

Of the three options, I think GTK looks the best, but I assume there’s a load of customisability for each so it won’t be so much of a problem. Is there a reason why we can’t just use CEGUI again though?

For both of you, here are some details of the website design if you want to emulate it:

- Background colour: #2B2B2B with 90% opacity
- Text colour: #DEDEDE
- Heading text colour: #FFFFFF
- Link text colour: #6ACDEB
- Hover link text colour: #56A7BF
- Content font: Lucida Grande, Arial, sans-serif
- Titles font: Century Gothic, Arial, sans-serif
- Base font size: 12px

---

<div class="post-metadata">

### Author: ![hhyyrylainen](https://thrivedevforum-cdn.b-cdn.net/user_avatar/forum.revolutionarygamesstudio.com/hhyyrylainen/32/2243_2.png) [@hhyyrylainen](https://forum.revolutionarygamesstudio.com/u/hhyyrylainen)
#### Post date: [April 9, 2017, 11:57am UTC](https://forum.revolutionarygamesstudio.com/t/launcher/335/5 "2017-04-09T11:57:41Z")

</div>

> [@Oliveriver](#):
>
> Is there a reason why we can’t just use CEGUI again though?

CEGUI is meant for realtime graphics (meaning that it needs the application window to be rendered (usually) 60 times per seconds) whereas those other GUI libraries I mentioned are designed for desktop applications meaning they only render when needed and thus consume a fraction of the cpu time. That’s why game engines aren’t used to create launchers. And it should be possible to use fewer libraries than the normal thrive executable and that way reduce the download size of the launcher.

---

<div class="post-metadata">

### Author: ![hhyyrylainen](https://thrivedevforum-cdn.b-cdn.net/user_avatar/forum.revolutionarygamesstudio.com/hhyyrylainen/32/2243_2.png) [@hhyyrylainen](https://forum.revolutionarygamesstudio.com/u/hhyyrylainen)
#### Post date: [April 9, 2017, 12:03pm UTC](https://forum.revolutionarygamesstudio.com/t/launcher/335/6 "2017-04-09T12:03:07Z")

</div>

For maximum modern app development we could use [electron](https://github.com/electron/electron). Which allows desktop apps to be created like websites with javascript and html. I haven’t looked into how such apps are distributed but as that library is pretty popular you would think that they have figured out how to distribute them easily

---

<div class="post-metadata">

### Author: ![hhyyrylainen](https://thrivedevforum-cdn.b-cdn.net/user_avatar/forum.revolutionarygamesstudio.com/hhyyrylainen/32/2243_2.png) [@hhyyrylainen](https://forum.revolutionarygamesstudio.com/u/hhyyrylainen)
#### Post date: [April 9, 2017, 4:05pm UTC](https://forum.revolutionarygamesstudio.com/t/launcher/335/7 "2017-04-09T16:05:36Z")

</div>

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:

 ![](https://thrivedevforum-uploads.b-cdn.net/original/1X/32763eaee3ab0957a2f199540141e2b95fb0d7d0.png)  
I didn’t apply styles yet as I was struggling with HTML wanting to overflow everything and cause scrollbars all over the place.

---

<div class="post-metadata">

### Author: ![hhyyrylainen](https://thrivedevforum-cdn.b-cdn.net/user_avatar/forum.revolutionarygamesstudio.com/hhyyrylainen/32/2243_2.png) [@hhyyrylainen](https://forum.revolutionarygamesstudio.com/u/hhyyrylainen)
#### Post date: [April 9, 2017, 6:37pm UTC](https://forum.revolutionarygamesstudio.com/t/launcher/335/8 "2017-04-09T18:37:30Z")

</div>

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

 ![](https://thrivedevforum-uploads.b-cdn.net/original/1X/40010184512d45fd8514f9431841aa6b96321221.png)

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.

---

<div class="post-metadata">

### Author: ![Limnodromus](https://thrivedevforum-cdn.b-cdn.net/user_avatar/forum.revolutionarygamesstudio.com/limnodromus/32/638_2.png) [@Limnodromus](https://forum.revolutionarygamesstudio.com/u/Limnodromus)
#### Post date: [April 9, 2017, 11:28pm UTC](https://forum.revolutionarygamesstudio.com/t/launcher/335/9 "2017-04-09T23:28:37Z")

</div>

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

---

<div class="post-metadata">

### Author: ![hhyyrylainen](https://thrivedevforum-cdn.b-cdn.net/user_avatar/forum.revolutionarygamesstudio.com/hhyyrylainen/32/2243_2.png) [@hhyyrylainen](https://forum.revolutionarygamesstudio.com/u/hhyyrylainen)
#### Post date: [April 10, 2017, 1:28pm UTC](https://forum.revolutionarygamesstudio.com/t/launcher/335/10 "2017-04-10T13:28:34Z")

</div>

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

 ![](https://thrivedevforum-uploads.b-cdn.net/original/1X/ed259182d6bd9781e8797b9656caa6f52118d2ee.png)

This is starting to shape up pretty nicely

---

<div class="post-metadata">

### Author: ![Atrox](https://thrivedevforum-cdn.b-cdn.net/user_avatar/forum.revolutionarygamesstudio.com/atrox/32/684_2.png) [@Atrox](https://forum.revolutionarygamesstudio.com/u/Atrox)
#### Post date: [April 10, 2017, 3:03pm UTC](https://forum.revolutionarygamesstudio.com/t/launcher/335/11 "2017-04-10T15:03:36Z")

</div>

Oh god yes we’re getting a launcher!!

---

<div class="post-metadata">

### Author: ![Narotiza](https://thrivedevforum-cdn.b-cdn.net/user_avatar/forum.revolutionarygamesstudio.com/narotiza/32/1524_2.png) [@Narotiza](https://forum.revolutionarygamesstudio.com/u/Narotiza)
#### Post date: [April 10, 2017, 6:02pm UTC](https://forum.revolutionarygamesstudio.com/t/launcher/335/12 "2017-04-10T18:02:37Z")

</div>

It’s turning out great so far!

---

<div class="post-metadata">

### Author: ![hhyyrylainen](https://thrivedevforum-cdn.b-cdn.net/user_avatar/forum.revolutionarygamesstudio.com/hhyyrylainen/32/2243_2.png) [@hhyyrylainen](https://forum.revolutionarygamesstudio.com/u/hhyyrylainen)
#### Post date: [April 10, 2017, 8:22pm UTC](https://forum.revolutionarygamesstudio.com/t/launcher/335/13 "2017-04-10T20:22:11Z")

</div>

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:

 ![](https://thrivedevforum-uploads.b-cdn.net/original/1X/0b5d4dfc3a5da2201178d8956d17dd7ddf23e2dd.png)

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

---

<div class="post-metadata">

### Author: ![hhyyrylainen](https://thrivedevforum-cdn.b-cdn.net/user_avatar/forum.revolutionarygamesstudio.com/hhyyrylainen/32/2243_2.png) [@hhyyrylainen](https://forum.revolutionarygamesstudio.com/u/hhyyrylainen)
#### Post date: [April 11, 2017, 9:49pm UTC](https://forum.revolutionarygamesstudio.com/t/launcher/335/14 "2017-04-11T21:49:43Z")

</div>

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

 ![](https://thrivedevforum-uploads.b-cdn.net/original/1X/4891ae77124ad213dbe2e74a3dbe3854feb47a4c.png)

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

---

<div class="post-metadata">

### Author: ![Narotiza](https://thrivedevforum-cdn.b-cdn.net/user_avatar/forum.revolutionarygamesstudio.com/narotiza/32/1524_2.png) [@Narotiza](https://forum.revolutionarygamesstudio.com/u/Narotiza)
#### Post date: [April 11, 2017, 9:51pm UTC](https://forum.revolutionarygamesstudio.com/t/launcher/335/15 "2017-04-11T21:51:28Z")

</div>

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

---

<div class="post-metadata">

### Author: ![hhyyrylainen](https://thrivedevforum-cdn.b-cdn.net/user_avatar/forum.revolutionarygamesstudio.com/hhyyrylainen/32/2243_2.png) [@hhyyrylainen](https://forum.revolutionarygamesstudio.com/u/hhyyrylainen)
#### Post date: [April 12, 2017, 10:41am UTC](https://forum.revolutionarygamesstudio.com/t/launcher/335/16 "2017-04-12T10:41:34Z")

</div>

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…

---

<div class="post-metadata">

### Author: ![hhyyrylainen](https://thrivedevforum-cdn.b-cdn.net/user_avatar/forum.revolutionarygamesstudio.com/hhyyrylainen/32/2243_2.png) [@hhyyrylainen](https://forum.revolutionarygamesstudio.com/u/hhyyrylainen)
#### Post date: [April 12, 2017, 5:18pm UTC](https://forum.revolutionarygamesstudio.com/t/launcher/335/17 "2017-04-12T17:18:30Z")

</div>

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:

 ![](https://thrivedevforum-uploads.b-cdn.net/original/1X/2d2cd2988abf700db035df00b9f70a6a85e4bd24.png)

---

<div class="post-metadata">

### Author: ![Oliveriver](https://thrivedevforum-cdn.b-cdn.net/user_avatar/forum.revolutionarygamesstudio.com/oliveriver/32/1962_2.png) [@Oliveriver](https://forum.revolutionarygamesstudio.com/u/Oliveriver)
#### Post date: [April 12, 2017, 6:26pm UTC](https://forum.revolutionarygamesstudio.com/t/launcher/335/18 "2017-04-12T18:26:05Z")

</div>

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

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.

---

<div class="post-metadata">

### Author: ![hhyyrylainen](https://thrivedevforum-cdn.b-cdn.net/user_avatar/forum.revolutionarygamesstudio.com/hhyyrylainen/32/2243_2.png) [@hhyyrylainen](https://forum.revolutionarygamesstudio.com/u/hhyyrylainen)
#### Post date: [April 12, 2017, 6:46pm UTC](https://forum.revolutionarygamesstudio.com/t/launcher/335/19 "2017-04-12T18:46:18Z")

</div>

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

> [@Oliveriver](#):
>
> 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?

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.

---

<div class="post-metadata">

### Author: ![Narotiza](https://thrivedevforum-cdn.b-cdn.net/user_avatar/forum.revolutionarygamesstudio.com/narotiza/32/1524_2.png) [@Narotiza](https://forum.revolutionarygamesstudio.com/u/Narotiza)
#### Post date: [April 13, 2017, 8:02am UTC](https://forum.revolutionarygamesstudio.com/t/launcher/335/20 "2017-04-13T08:02:26Z")

</div>

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.

[Next page](https://forum.revolutionarygamesstudio.com/t/launcher/335.md?page=2)
