Skip to content
lstebner edited this page Jul 18, 2012 · 2 revisions

This is going to be a brain dump of some systems we think Pine will need to run. Consider these just high level ideas and then separate pages can be created to expand on each.

Local Storage

Each Pine will need a local database to store user account info, installed games and save data. I am currently thinking this will be mongo powered which can run locally on each box.

I think that mongo is a small enough process that we will be able to store a lot of data without wearing down the system, it's also very fast with writing which will be what is happening most of the time. It will still be important to test the balance between cloud and local storage to make sure games can use all the resources they need.

Local Process

This will be a nodejs powered application that will run in the background. It will provide access to the local storage via API calls that games will be able to access for save/load, player sign in, achievements, leaderboards, etc.

Network Cloud

There will need to be a similar cone process that exists on a server somewhere that the local one can access to do cloud saves, player profile retrieval and for updating games on the local storage. I imagine everything in here will be optional if games choose to use it. The Pine should be able to run out of box and manage everything locally with no internet connection.

Marketplace

The marketplace will exist on a server with a public web address and be the main hub for acquiring games. The idea isn’t to exchange real money here, but I think the term Marketplace makes a lot of sense for what this should represent.

Game Package

Some sort of structure will need to be created for what a game package should be, but it’d be nice to have a tar of assets needed for the game along with a json file that contains all meta info for the game as well as explains the assets and what to do with them. These will be downloaded from the Marketplace, but will run locally on the Pine and basically act as the users game library.

Clone this wiki locally