General - Questions about our services and game development

  • We found the Solar2D cross-platform framework to be a good entry point into game development.

  • You can develop a game and test it in real-time using the "Corona Simulator" (an application that can run your code on your Windows/Mac desktop).

  • Then you can compile the game into a standalone package that can be uploaded to mobile App Stores or installed on Windows and Mac desktops.
    Note: to compile your game for iOS and Android devices you need to install that platform's development software ("Xcode" for iOS, "Android Studio" for Android)

  • All you need to start developing in Corona and testing with the Corona Simulator, is the Corona Software Development Kit (SDK).

  • The SDK is available for download on Windows and Mac, from here: Solar2D

  • We have created a video that walks you through downloading and installing Solar2D's Corona Simulator application.
    A link to the video can be found in the "Solar2D" platform FAQ group listed below in this FAQ.

  • Once you have the software developers kit installed, we recommend you subscribe to one of our services then download the demo game - also look at our YouTube Channel, where you will find several videos showing how to integrate our services into this complete, working Corona demo game that you can run in the Corona Simulator.
  • We provide a means for game developers to share aggregated player data between players: to link individual gamers together to create a social dimension to your games that rewards repeat playing.

  • We do that by providing a centralised data-store that your games can communicate with over standard secure HTTPS.

  • Currently, we offer game developers storage for each game player's high-scores, so players can see how their individual high-score compares to other players of the game.

  • We also offer game developers data storage to track a player's in-game collectibles and achievements, and with each achievement having an optional score associated with it, it gives the game developer the opportunity to create their own gamer score system.

  • By offering these centralised services, we free up the game developer's time to concentrate on creating great games, while we manage the data between their games and players.

  • And we want to ensure that you trust us with this data. We are completely transparent on the data we collect from you and the data we send back.

  • Unlike opaque plugins that some game frameworks/engines offer through their marketplaces, you only send the data to us that is required for the call to our web service to work, and we return data formatted in JSON that you can then manipulate to your own ends.

  • The only player indentifier we ask for is a player name, so we have something to associate a high-score and achievement to.

  • In the future we are looking to develop a set of services that "follow" the player, so that you will be able to track your games that they play.
    For this to work, we would need a unique user identifier to connect the player and the games together.
    This extra data will only be required for those services that need it, and we will inform you of this requirement before you sign up for a service so you are completely aware of what we will do with the data - to put you and your gamers worries over privacy at ease.
  • No. This text was coded into the scene by the developer. You are under no obligation to advertise that your game uses our services.
  • REST stands for REpresentational State Transfer.

  • REST APIs are a type of Web Service APIs.

  • A REST API is a standardised architecture style for creating a Web Service API.

  • One of the requirements to be a REST API is the utilisation of HTTP methods to make a request over a network.

  • You connect to our service using HTTP POST method calls.

  • A POST method passes one or more parameters as key/value pairs to an URL, and receives back a response from the server.

  • The response is in the JSON format. JSON stands for JavaScript Object Notation, and is a popular method for packaging data for transfer over a network.
  • We provide implementation notes for several popular languages (C#, PHP, cURL, Jquery, LUA).

  • These notes detail each method call, the expected response and example code.

  • Find these implementation notes on each subscribed service's detail page.

  • We also provide files for download that include fully working games that implements the High Score, Achievement and Collectible services.
  • We have created this Playlist on YouTube of videos showing you how to track calls made to your subscribed service(s) with either a DEVELOPER API key or a LIVE API key.
  • We raise an invoice every month on the day you created your account with us.

  • If you have not exceeded your monthly FREE allowance of API calls to any of your subscribed services, we will raise an Information-Only invoice.

  • If you have exceeded your monthly FREE allowance of API calls, and we have charged you, then we will raise a Chargeable invoice through our payment processor, PayPal.

  • PayPal will send you an e-mail with a link to view and pay the invoice (either by credit/debit card or PayPal account).

  • You can view both types of invoice on this web-site by simply selecting the "Billing" option from the top-menu shown on each page (when you are logged in).

  • When a new invoice is raised (Chargeable or Information-Only) the web-site will display a small "inv" badge next to the "Billing" menu option.

  • Important note: if you leave a chargeable invoice unpaid for over 7 days the system will automatically start restricting access to ALL your subscribed services.
    This will mean service(s) will not process any API calls.
    Once the outstanding invoice has been paid, your service(s) will start processing API calls.

Platform: Solar2D LUA/Corona - Questions about implementing our services with the Solar2D Gaming Platform

  • We have created this Playlist on YouTube of videos showing how to use Solar2D with our services.

Platform: Unity - Questions about implementing our services with the Unity Gaming Platform

This article explains through a worked example how to consume RESTful web services in Unity3d using C#:

Please note: FGS cannot provide implementation support for this platform.
Please refer to this platform's forums for help with questions relating to RESTful API calls.

Platform: Unreal - Questions about implementing our services using Epic's Unreal Gaming Platform

  • Unreal is built upon C++, a language that, unlike C#, does not have native methods to manage Http calls and instead requires the developer to write their own calling methods, or use someone elses - through either a library or a plugin.

  • The easiest method of calling a RESTful Web API Service from Unreal is using a plugin that can be managed by Blueprints.

  • Two popular plugins for UE4 are:

Please note: FGS cannot provide implementation support for this platform.
Please refer to this platform's forums for help with questions relating to RESTful API calls.

Troubleshooting - Something not quite working? Maybe you will an answer here...

  • Invalid Credentials indicates that either or both the API-KEY or the InstanceId values that are passed with each call are wrong.

  • If you are using our code-base to make calls, or one of the our LUA game demos, then please check in the file "FGS/functions.lua" to ensure that you are using the correct API-KEY keys for that game.

  • If this is happening while using a Developer API key, then run the "CLEAR 'DEV' INSTALL" option found on each Service details page, then try again.

  • You can also use one of the downloadable test LUA applications to execute the "Ping" method using the API-KEY and the InstanceId that you are having trouble with (our StarExplorer+/++/+++ demo games store the game's current InstanceID in the "fgs.JSON" file found in the simulator's Project Sandbox "Documents" folder).

Note: if you are calling the RecordNewInstallation method, then InstanceId is not used and instead you should check that you are using the correct game Id for the API-KEY you are using.

Back to Support