Prototype - Playground

Playground is a prototype of a games distribution framework. It was a concept that seemed like a good idea. Then found out that the Stencyl folks also thought so and had specced something out which I’ve tried to implement here. Playground gives a cute interface to finding and starting games. It uses JNLP as the launch descriptor and has a pluggable backend for locating games (currently implemented against a Java Unlimited server).

The current prototype doesn’t have many games on but kinda shows the intention. While I think the prototype has come off ok I’m not really sure where it should go next.

There are a few rough edges to sand on the front end but it’s mostly functional… note that when downloading the game and/or launching you currently get an ugly message and have to wait. No status. Thats something I’m intending to fix if I can see a direction from here.

http://slick.cokeandcode.com/demos/playground.jnlp

I’d appreciated feedback/ideas where and what to do next (other than stick the code in the bin :)).

Kev

Looks very Slick but you could spice up the interface a bit.

Is there any intelligent-code behind the update-button, or does it just redownload the file? It seemed so…

You should have multiple ways to filter the games: by genre, author, last-played, high-rated, etc etc.

Would be nice if it was stored in some kind of online database that is queried behind the scenes.

there is. and the API looks a little something like this

Thats really cool. Great kev :slight_smile:

didnt work on my 7600gs and winXp.

seemed like screen changed resolution, then it crashed back to desktop and set the resolution back to normal.

Err yea I got a window, the lwjgl icon changed, and then crash-to-desktop before anything could appear on a 7900gs.

Same here. It used to work, but now it just pops up a window and closes out. I assume that it’s fetching the latest version of slick, which could be incompatible with this program.

Should be working again now, the wonders of running an ant script.

Kev

That’s sleak and sexy kev, good job. I like the download / play mechanics.

Did I mention that it looks good :wink:

all you need to add games is the .jnlp? How could I add my game?

Yep, it’s just JNLP based. The list of games and categories is stored in a backend database that has several impls (XML file, local DB etc), the most prominent of which is the database stored at Java Unlimited. Woogley speculated that a page could be added to allow game submittal - fairly keen on keeping the games added good quality and complete tho (unlike most of mine :/).

Woogley?

Kev

yeah there currently isnt a game submission page. me/kev are tossing around the idea of a complete website and such… but as the title says: “prototype”

but just for kicks, kingaschi, PM me the following…

  • your game’s JNLP URL
    -.your game’s homepage URL
  • your game’s description (how to play etc)
  • a thumbnail URL (around this size)
  • a logo URL (around this size)

this is the only game I’m adding for right now, so before others ask… not yet :wink:

sent ;D

open up the Playground client and click “Update” on the first screen. then your game will appear in “All Games” and under the “Strategy” section

unfortunately your game crashes, check the java console :wink:

I checked. I believe you forgot to supply the argument for the main method! args[0] does not exists, that’s why the application is crashing!

Fix by adding “Main”:
“…/bin/java …ogley-net-3\tritonus_share.jar;lib/pgjnlp.jar; com.aevumobscurum.or2.game.Or2Game Main

Also, please make sure the following properties are set:

		<property name="sun.java2d.noddraw" value="true"/>
		<property name="webstart" value="true"/>
		<property name="webstart.dir" value="aevumobscurum-or2game"/>
		<property name="webstart.extra.dir" value="http://www.aevumobscurum.com/original/webstart/extra"/>

Also: -Xmx64m won’t cut it! Use 384MB instead…

instead of using “java” to start the games - how about “javaws”?

that is all on kevin’s side and how he processes webstart files, not sure if he yet takes all webstart settings into account.

I have the lazy/easy job of backend work :wink:

don’t you create a security issue with submitting games, because the game is run from the playground I don’t need to authorise it?

then again when I choose to download it its the same step as pressing ok at some other screen

Good question! Playground is not a JNLP/Webstart client, it uses JNLP but doesn’t enforce that the user approve out of sandbox actions. Logic here is if you downloaded an exe game from the interweb and ran it - it could do anything, why are we making it hard for people to play games? It does however confirm signatures on JARs and so prevents tampering with the original distributers intent. It also provides the sandbox if the application doesn’t request all-permissions so we could just show an out of sandbox icon for games.

At the end of the day by trusting the database you’re connecting Playground to, you’re trusting that the games in the database arn’t going to kill your system. Pretty much like when you trust the games from a portal.

Future could be to add an approve option every time, but to be honest the warning every time a game is updated just didn’t look slick enough :slight_smile:

Kev

issue is not necessarily a problem, and personally I don’t see it as a problem.

Just some things need to be thought off and addressed…

However I like to say first that I enjoy not having the whole warning stuff.

now on to stuff to be addressed,

  • What do you take responsibility for am I just providing a player-game-matching service or do I also do the actual selecting of the catalogue, meaning do I take responsibly for whatever happens playing the games and to what extend.
  • If I do have an open submission how am I going to verify that the program is save. do I need access to the source?

I also like how it doesn’t create a record under the windows add and remove nonsense for every game.

psst, hey:

Congratulations!

The following domains are available:

game-playground.net
game-playground.com
games-playground.com

get a database filled, register a domain, I’ll pitch it, other will pitch it. java for world domination. :wink: