🤑 Indie game store🙌 Free games😂 Fun games😨 Horror games
👷 Game development🎨 Assets📚 Comics
🎉 Sales🎁 Bundles

Startup Sequence

A topic by kilkonie created Jan 12, 2016 Views: 905 Replies: 16
Viewing posts 1 to 6

Just some minor feedback, but it might be nice to polish up your stand-alone startup experience. It's not really clear what's happening when you first launch the application, without reading a tiny bit of documentation.

I did some unsolicited work rather than just file a bug. I'll likely continue with the editor itself later this week.

Startup Dialogs [Imgur Link]

Moderator (Edited 3 times)

That looks nice, very warm! It cheats a bit over the actual functional complexity we need to expose in the UI, but that's totally OK for a visual mockup. You might want to check out the functional mockups we did for the upcoming launcher redesign, since it will add more stuff like chat, server management, etc. https://trello.com/c/IVEnTXCe/701-redesign-launcher

Overall I don't know that we want to go that far into a game-like look for the UI, but it is thought-provoking, Pixel-boy, Bilou and I will definitely have an interesting discussion about it and we might come up with our own proposal somewhere in the middle. In any event, I really want to see what you'll come up with for the project editor window itself :)


Sure thing. I was trying to do justice to the brand you've been building and match your current tone. Plus, I've been primarily looking at it as stand-alone application. This changes the appearance of the experience.

Do you think your users will have many server connections?

What's the most important thing you want someone to do on this screen — is it a frequent or infrequent action?

Is there an existing product with a launcher/connector that you like? Minecraft, Blizzards Game Launcher?

Functionally, it looks you aim to support quite a few things:

  • Welcome a new user to the product
  • Communicate essential news about the project, possible release notes
  • Provide links to community sources
  • Show that a local server is running on a given IP and Port
  • Provide statistics about the currently running server (number of users)
  • Start / stop a server manually
  • Adjust connection settings
  • Adjust account settings
  • Adjust plug-in settings
  • Add a new server
  • Edit a server (Rename, change port, delete)

We continue with the process of connecting to a server, handling network/auth errors:

  • Connect to a server, communicate timeouts or networking errors
  • Authenticate with the server, create an account on a public server, communicate auth errors
  • Display a list of projects on the server to join
  • Add a new project
  • Edit a project (Rename, backup, delete)
Next, you're looking into beefing up the interaction on the server side, so that a server owner gets a MotD and a local chat area out of the box:
  • Display server messages
  • Provide links to server resources (predominantly website links)
  • Join server discussion channel(s)

My first impression was that this was lightweight 'launcher' UI that I wanted out of my way so I could open my IDE and get working. It feels like it's getting heavy before it's time. However, I understand that your big selling feature is the collaboration. I just wonder if the discussion and project/server portal should be part of the launcher / local-server window.

I'm just catching up; I'll keep thinking about it.

(Edited 1 time)

Do you intend on having a single identity / account? In your Trello board mockup you've placed your username in the corner. It think it makes a big difference in the experience overall - how and when you authenticate. Do you do it centrally or distributed.


Yes it is a big deal and we're not quite sure how to approach it yet.

One goal is to avoid running any centralized infrastructure whenever possible, to avoid single points of failure (and reduce costs!)

Another very clear goal is to never require that people sign up before they can use Superpowers. One should be able to click on an invite link and hop on as a guest right away.

Now, if we can somehow provide opt-in identity support, through OAuth or something similar, that'd be awesome. But we haven't figured out a technical solution yet, much less a workflow for it.


I'd avoid OAuth.

Informal, per-server accounts seem fine. Why not start with a pragmatic solution - like a password to register with the server. If you know the passphrase you can join the server. The server can pass a private session key to the client — if the password changes, regenerate the key.

Then allow joining the server with a unique username / password. If you choose to manage your identity within the client - the client could do the account configuration for you — but that implies that the client has the password in the clear to submit to the server. Without central management it's hard to ensure folks have created a unique username – worst case, you'll have Alex as a user name and you'll join your friends server and you'll become Alex #2 when participating.

I have to say, the design you made, while very good, is a bit ... childish ? It makes Superpowers look like a game for kids basically

Well, I was generally trying to match the style they've set forth on the website. I'm pretty certain I wouldn't carry that through onto the IDE user interface. I'll post a conservative alternative when I get some time.

Yes, but if you have tried Craftstudio, you know that is the Craftstudio's spirit, so I don't see what is the problem, after all, Superpowers is supposed to give to everyone the ability to create video games, so why not show it with an childish style ? ^^

Craftstudio's Launcher


You are correct, although overall, I'd say Superpowers's tone is definitely meant to be a bit more "grown-up" than CraftStudio's, if that makes sense?


At Gugu42's request, here is a conservative alternate design that take into account some of Elisée's proposed features...

Imgur Album with Updated Screen


Digging the second set of mockups! :)

Something that might not have been clear from the functional launcher mockups I shared: the chat / community-tab is supposed to be global, not per server. There's already a per-project chat and that's probably enough?

The idea is that the global chat is about... serendipitiously meeting people, finding projects and helping one another :D.

Yeah I read your previous post and I wondered about that. This is what felt a bit odd to me. You're creating two places for chat with two different UIs / code paths. One in the editor and one the portal launcher. It feels awkward, but I get it.

Perhaps it's just Superheros on the left (with your account, if you have single-sign on) and there's a Community first item.


I'm about done for the day — but I updated with a community tab. I think this gets a bit in the direction, structurally. I added in a Games tab, because I think it might be nice to mine the discussion area with a monitoring bot and keep a running list of shared games.

As a feature request, it would be nice to focus on importing a game into your server. From a Getting Started area, links to key places (documentation) is good, but having sample projects with a one-click install would be really helpful. Similarly, if I connect to a server it would be nice if people had an export option to allow people to clone/branch the game locally. This way someone could share a project on their sever and when you connect, you can simply take a copy from the discussion area.

This means that you really should construct an input field in the discussion area which allows you post a game from your server as efficiently as possible. The biggest barrier I see there is that folks won't have their routers set up correctly and they'll need to distribute via some hosting service.

My biggest beef with all of this is that when I first start, it's not really particularly friendly getting you connected and starting a new project. It's awkward for a new user to understand that they have an game-building tool, but there's this server in the way. A novice user would launch the tool and expect "New Project" to be seen almost immediately on the screen. All of these designs fail that simple test.


Moderator (Edited 3 times)
As a feature request, it would be nice to focus on importing a game into your server.

Yes, definitely something we want to have. Created an issue for it.

The biggest barrier I see there is that folks won't have their routers set up correctly and they'll need to distribute via some hosting service.

Definitely a concern, but I think with good documentation like this maybe most people will be able to port forward.

My biggest beef with all of this is that when I first start, it's not really particularly friendly getting you connected and starting a new project.

I think clicking on "My Server" (or "My Computer" or whatever) before being able to create a new project is an OK thing to ask, it's a single click and it's important to have this context of "OK, this is being created on my own server but I can also connect to someone else's".

The explanatory paragraph reminds me of the first run popup in CraftStudio:

I think we should have it appear only once in Superpowers too. But it should be shorter and more to the point (just realized that text says CraftStudio is still "very much in development". Oops, forgot to update it...). That "Create my first project" button could be carried over, too, and it would remove the awkwardness of having to open the server you were concerned with.

(Edited 1 time)

What would you like to do differently from CraftStudio — in terms of the launch / discussion area?

Would you like to see it showcase "released" games or maybe more like a classified to find team members?

Would you like to build a server portal for a team?

To keep the feature list concise it feels like:

• Provide news about Superpowers, documentation, tutorials, release notes, web links, etc.
• Manage your server, your games, and team permissions
• Discuss — in a decentralized way?
• Explore other people's servers and games — in a decentralized way?

[Stealth edit...]

I should note that I haven't seen CraftStudio before — and my original goal was just to encourage you to polish up your 'out of box' experience for first-time users. It looks like you've got experience with that and have a direction. So, I'm happy to sit back and watch it happen — I'm sure you have your own timeline for these things.



Mostly replying to kilkonie's post above:


Sure thing. I was trying to do justice to the brand you've been building and match your current tone.

You definitely did, it feels like one of Pixel-boy's mockups! :)

Is there an existing product with a launcher/connector that you like? Minecraft, Blizzards Game Launcher?

From a visual point of view, the Blizzard game launcher is an interesting reference (very polished). The Steam and itch clients come to mind too, but they are probably too dark. Superpowers is bright and happy.

I dislike Minecraft's launcher, it feels unpolished visually with its out-of-place default widgets. But hey, it gets the job done with its big Play button, profile management and news section.

For Superpowers, we need to strike a balance between welcoming and functional, I think it's especially important that we avoid pushing too much of our own universe into the launcher, to avoid making projects with different aesthetics feel out of place. The Superpowers website has a fairly neutral color scheme with a few bright pieces of artwork that works well I think.

Functional goals

As exemplified by the long list of features you wrote, the launcher has a fairly big job to do. It's the headquarters for one's server(s) and a bridge with the community. But it doesn't mean it needs to get in the way of getting to work, just like Steam isn't supposed to get in the way of playing your games, we just need to be smart about it. A list of recently opened projects might come in handy, like the one that appears when you right-click Steam's icon.

The global community chat was a big thing in CraftStudio (Superpowers's predecessor), and many CraftStudians are missing this place where we can meet, chat and invite one another to our projects in Superpowers. Plus it's great for beginners to get real-time help when getting started. For people who don't like that kind of social integration, we should totally have a "Go invisible" or "Don't join community chat on startup" option though.

The launcher should be easily dismissed but remain in the system tray so that your server keeps running, you can be notified of mentions in the chat, open it to join a new server, or manage your local server.

Do you think your users will have many server connections?

I see it like this: there are two types of users that we need to accommodate, those who work with close friends / on their own on a single server and don't care about interacting with the broader community for the most part, and those who will be very social and go check out / help out with many projects. It's a fine line to walk for sure.

  1. For people not yet invested in Superpowers who are joining someone else's server, we already provide a very unobtrusive way to use Superpowers: through their Web browser.
  2. For those running their own server who want to skip the launcher UI and head straight into their most recent projects, Windows's jump lists sound like a great fit:

(Apparently OS X has a similar feature named Dock Tile).