(http://davince.tengudev.com/sphere/spherun/SpheRun.png)
A cross-platform Sphere game launcher
(http://davince.tengudev.com/sphere/spherun/SpheRun0.1-01.png) (http://davince.tengudev.com/sphere/spherun/SpheRun0.1-02.png) (http://davince.tengudev.com/sphere/spherun/SpheRun0.1-03.png)
After getting frustrated with how little you can do with startup games, I decided to write an external game launcher for Sphere instead.
It is written with node-webkit (https://github.com/rogerwang/node-webkit). This unfortunately makes the file rather big, but it makes the launcher very cross-platform and easy to modify. (Note: I'll compress the launcher file on later releases, making it at least twice smaller.)
Features- View a list of your Sphere games and launch them.
- Shows information about the game from game.sgm and info.txt files.
- Shows a screenshot if the game folder has a screenshot.png, an icon if it has icon.png and a video if it has a video.webm file.
- Supports multiple game paths (which don't have to be near a Sphere engine file).
- Written in HTML/CSS/JavaScript, so can be edited, improved and themed easily.
InstructionsNote: there's no configuration options yet, so you have to set up your game and engine paths manually.
This thing won't work until you do.- Open SpheRun.cfg
- This is a JavaScript file containing some simple arrays of data right now.
- Add or edit paths to Sphere game directories at CONFIG.gamepaths.
- Define your game engine at CONFIG.engines. Only CONFIG.engines[0] runs at the moment.
DownloadsCurrent version (0.1):- Package only version (http://davince.tengudev.com/sphere/spherun/spherun-0.1.nw) - for if you already have node-webkit and just want to download a small .nw file.
- Windows (http://davince.tengudev.com/sphere/spherun/spherun-0.1-windows.zip)
- Linux (http://davince.tengudev.com/sphere/spherun/spherun-0.1-linux.zip) (32-bit)
- OSX (untested) (http://davince.tengudev.com/sphere/spherun/spherun-0.1-osx.zip)
Future plans0.2
===
Proper config file support (INI or JSON?)
Add a configuration menu (with link in the header)
- Engines
- Games
- Whether or not to use Wine (Linux/OSX)?
Make this menu show on first run
Add an engine selector in the header
0.3
===
Keep track of whether or not the engine is running and disable the launch button
Keyboard support (arrows, enter, ?)
Open an engine's config.exe
0.4
===
Add editors to configuration menu
Open game with editor
Open editor
0.5
===
Functionally replace config.exe
Theming support
Ideas after 1.0
===============
Get data from an online database of game info?
Browse data resources (using sphere-web-tools)?
LicenseCreative Commons Attribution 3.0 Unported (https://creativecommons.org/licenses/by/3.0/)
I get a failed to extract archive message when running it in OSX.
Hmm, I might have put the source files in the wrong location, then. Could you go into the node-webkit.app directory and move everything but the Contents dir one directory up (so in the same location where nwsnapshot is)?
I don't get it, how do you do that? I only see two files: 'node-webkit' and 'nwsnapshot'. Is there a way of physically entering them?
node-webkit would be the .app I mentioned. It's actually a regular folder, I'm sure OSX "sees" it as a runnable app instead, though. Maybe you can cd into it or get into it with a right-click or something?
Edit: for now, try getting the package only version in the downloads and grab a copy of node-webkit (https://github.com/rogerwang/node-webkit#downloads). Then put the nw file in the same path as the node-webkit app. I'm going to try and fix the zip I uploaded but uploading will take a while, so...
It worked when I moved the contents up a level. :)
Awesome, I had a hunch it would. The download has been fixed.
Created GitHub repo (https://github.com/sphere-group/sphere-launcher) for the launcher, DaVince. Push your code there!
Done, thanks for that!
Question - for posterity and as a "just in case," do we want to provide a XULRunner version of the launcher that uses Gecko instead of WebKit? Mozilla's finally gotten their act together and realized sometimes people just want Gecko webapps without all the heft of the Firefox chrome and is once again maintaining up-to-date XULRunner downloads.
https://developer.mozilla.org/en-US/docs/XULRunner (https://developer.mozilla.org/en-US/docs/XULRunner) (latest at posting is XULRunner 22.0, presumably same features as Firefox 22.0)
What XULRunner provides (https://developer.mozilla.org/en-US/docs/XULRunner/What_XULRunner_Provides)
Not sure - how different is it from node-webkit? I'll need to look into the base file size, too, and its capabilities in loading local files and running local processes. Depending how they match up to each other I might just make a full switch.
But I'll need to take some time for this tomorrow.