Chay Hunter

Chay heads up the marketing, the content, and the table tennis at GameAnalytics. He’s a passionate cinephile who plays way too many games and loves a good book. He rarely wins at table tennis. Follow Chay on Twitter.

From today, we’re happy to announce a brand new SDK for Microsoft’s Universal Windows Platform (UWP). Download the latest GameAnalytics SDK for UWP here. This SDK immediately opens up powerful, cross-platform analysis and reporting for anyone interested in building games within the Microsoft device family. We are planning to offer full support for Microsoft Xbox in the coming months.

About Microsoft UWP

Prior to Windows 10, you would target a specific operating system (either Windows, or Windows Phone), making the development process for a range of devices both time-consuming and resource intensive. With their latest O/S, Microsoft has revealed the Universal Windows Platform – and with it a new, more streamlined approach to managing their APIs.

Microsoft UWP Devices
The Microsoft device family hierarchy

The API surface is now grouped into “device families”, meaning that you can support a wide range of devices (including mobile, tablet, PC, Xbox, HoloLens and Surface Hub), with just one app.

A device family identifies the APIs, functionality, and specific characteristics of devices within the device family. It also determines which devices your game is compatible with from the Windows Store. You can still build functionality for the unique features of each of those devices with special adaptive code.

This update means that you can build games in a more unified manner; using a centralised codebase in a single project view, with the ability run on an impressive selection of Windows hardware. For more information about building UWP apps visit Microsoft’s online guide, or watch the video overview below.

Why develop for Microsoft UWP?

For game developers, creating UWP apps offers a powerful suite to build more complex and engaging games that utilise cutting-edge technology, such as Cortana voice commands and mixed reality applications. UWP apps also benefit from seamless integration into the Windows Store, which offers a centralised distribution channel into over 200 markets across the globe.

Statement from Microsoft

“We are always looking to build better relationships with developers to bring new games to Windows devices,” said Emilio Salvador Prieto, Senior Director, Windows Product Marketing at Microsoft Corp. “We are excited that GameAnalytics will be available to game developers to help extend their reach to Windows devices. At the same time, it helps us learn various game development workflows and processes so we can adapt and provide the right resources.”

Getting started in 3 steps

1. Create a UWP game

To get started, simply login to your GameAnalytics account and add your first Microsoft UWP game. When you’ve created your game, you’ll find your integration keys in the settings menu (the gear icon), under ‘Game information’. You’ll need to copy your ‘Game key’ and ‘Secret key’ for the following steps.

2. Install the native UWP SDK

To get the latest version of the GameAnalytics SDK for UWP, you can install it directly via the Nuget package manager in Visual Studio. Follow the instructions below to install the GameAnalytics SDK for Microsoft UWP.

OPTION 1: Install using Nuget

OPTION 2: Manual installation

  • Open GA-SDK-UWP.sln and compile the GA_SDK_UWP project
  • Create a Nuget package: nuget pack GA_SDK_UWP/GA_SDK_UWP.nuspec
  • Copy the resulting GameAnalytics.UWP.SDK.[VERSION].nupkg (where [VERSION] is the version specified in the .nuspec file) into for example C:\Nuget.Local (the name and location of the folder is up to you)
  • Add C:\Nuget.Local (or whatever you called the folder) to the Nuget package sources (and disable Official Nuget source)
  • Add GameAnalytics.UWP.SDK package from the Nuget packet manager

FINAL STEP: Initialize the integration

Call this method to initialize using the game key and secret key for your game.

[php]// Initialize

GameAnalytics.Initialize("[game key]", "[secret key]");

:bulb:[/php]

Below is a practical example of code that you can call at the beginning of the game to initialize GameAnalytics.

[php]using GameAnalyticsSDK.Net;

namespace MyGame

{

public class MyGameClass

{

// … other code from your project …

void OnStart()

{

GameAnalytics.SetEnabledInfoLog(true);
GameAnalytics.SetEnabledVerboseLog(true);
GameAnalytics.ConfigureBuild("0.10");
GameAnalytics.ConfigureAvailableResourceCurrencies("gems", "gold");
GameAnalytics.ConfigureAvailableResourceItemTypes("boost", "lives");
GameAnalytics.ConfigureAvailableCustomDimensions01("ninja", "samurai");
GameAnalytics.ConfigureAvailableCustomDimensions02("whale", "dolpin");
GameAnalytics.ConfigureAvailableCustomDimensions03("horde", "alliance");
GameAnalytics.Initialize("[game key]", "[secret key]");

}

}

}[/php]

3. Build to your game engine

We’ve provided full documentation for each game engine and platform. You can view and download all files on our Github page, or follow the steps below. We currently support building to the following game engines with Microsoft UWP:

You can also connect to the service using the GameAnalytics Rest API. We are planning to add support for GameMaker with UWP in the near future – more news to follow.

Chay Hunter

Chay heads up the marketing, the content, and the table tennis at GameAnalytics. He’s a passionate cinephile who plays way too many games and loves a good book. He rarely wins at table tennis. Follow Chay on Twitter.

Join a community of passionate game developers, who get our newsletter every week!

Sign up for a free surprise