For a recent client Flash game project I needed a highscore table to be shown in-game and in-html outside of the game experience. I considered buy vs build and decided on find a great solution online.
There are a few contenders out there offering high-score tables and other things for Flash developers. Some are cost money. Most are free.
So what is Scoreoid?
As CasualConnect says – Scoreoid is a non-restrictive, reliable and easy to use gaming platform designed to handle scoring, leaderboards and game management, including advanced functions for multi-platform games such as platform content awareness to advanced player management, developed by game developers for game developers.
Scoreoid’s goal is to handle scoring and leaderboard functionality offering plenty of features to make games better; shortening game development time and costs, and giving developers time to work on their games.
What makes Scoreoid unique?
Unlike similar solutions, Scoreoid is focused on providing game developers in game features to help improve their game titles and at the same time focusing on giving game developer’s more time to work on their game. Scoreoid is also truly cross platform: with Scoreoid’s Open Web API there is no need to download SDK’s, no waiting for updates, and yes, Scoreoid works on every platform.
1. Easily create saved games
2. Create advanced leaderboards
3. Player management and in game notifications
My Philosophy of API Design
- Easy to learn - Intuitive, readable, with good examples & documentation
- Easy to use – Single entry point, KISS, adopts common standards, & has its own consistent language
- Hard to misuse – Explicit error message suggesting parameters values & strong typing
- Audience-appropriate / Sufficiently Powerful – Meet current needs and be (invisibly?) flexible for the future
My Scoreoid AS3 SDK
As the first comment below states, the terms ‘SDK’ and ‘API’ can be confused and unclear. I chose to call my work an ‘SDK’ in that it is a closed chunk of code that is language specific (AS3) to access Scoreoid’s server-side ‘API’.
The SDK is meant to be a vertical slice representing 100% of a subset of the Scoreoid API. There is a method to initialize, to make the request, a strong typed request object, a response event (success and failure). Its 100%, EXCEPT I was thinking to make a strong object “also” for the response (this is not done, it stays a json/xml object depending on the request parameters). I use a custom implementation of ‘AS3 Enums’ to further this goal. Enums do not natively exist in AS3.
Snippet from My Scoreoid AS3 SDK
//INITIALIZE Scoreoid.initialize(Configuration.SCOREOID_API_KEY, Configuration.SCOREOID_GAME_ID, Response.JASON); //LISTEN TO REQUEST'S RESPONSE Scoreoid.addEventListener(ScoreoidEvent.GET_SCORES, onGetScores ); Scoreoid.addEventListener(ScoreoidEvent.GET_SCORES_COMPLETE, onGetScoresComplete ); Scoreoid.addEventListener(ScoreoidEvent.GET_SCORES_ERROR, onGetScoresError ); //CREATE REQUEST - CONSTRUCTOR ACCEPTS ONLY THE REQUEST'S REQUIRED PARAMETERS var getScoresRequest : GetScoresRequest = new GetScoresRequest(); //ADD OPTIONAL PARAMETERS getScoresRequest.order_by = OrderBy.DATE; getScoresRequest.order = Order.ASCENDING; //asc or desc getScoresRequest.limit = ""; //DONT' SET A START DATE //BUT DO SET END DATE TO EXACTLY NOW //getScoresRequest.start_date = new Date(); getScoresRequest.end_date = new Date(); getScoresRequest.platform = ""; getScoresRequest.difficulty = 0; //SEND REQUEST Scoreoid.getScores(getScoresRequest);
- Leave comments below. What do you think is great? What do you think is horrible?