Skip to content

Tracker

Cristina Alonso edited this page Feb 8, 2019 · 20 revisions

Contents

Introduction

You can integrate the tracker in your code to start generating traces from your game. These traces will be usually sent to an analysis server, however, you can also configure the tracker to store them locally for other purposes (debugging, manual analysis...).

To make the tracker work you need to configure the storage and start sending traces.

Currently, we provide some tracker implementations.

Storage types

Network Storage

This storage sends the traces to an analysis server. The rage-analytics back-end server expects the tracker to be configured using the xAPI traces format. It needs the following configuration parameters:

  • Host: of the server. This value usually looks like <rage_server_hostmane>/api/proxy/gleaner/collector. The collector is an endpoint designed to retrieve traces and send them to the analysis pipeline.
  • Tracking code: a unique tracking code identifying the game. This code is created in the frontend when creating a new game.

Local Storage

This storage writes the traces in a local file. It needs the path where the traces should be stored.

Generating traces

The tracker exposes an API designed to collect, analyze and visualize the data. The API defines a set of game objects which represent elements of the game on which players can perform one or several types of interactions. Some examples of player's interactions are:

  • start or complete (interaction) a level (game object)
  • increase or decrease (interaction) the number of coins (game object)
  • select or unlock (interaction) a power-up (game object)

A gameplay is the flow of interactions that a player performs over these game objects in a sequential order.

The main types of game objects supported are:

  • Completable: for Game, Session, Level, Quest, Stage, Combat, StoryNode, Race or any other generic Completable. Methods: Initialized, Progressed and Completed.
  • Accessible: for Screen, Area, Zone, Cutscene or any other generic Accessible. Methods: Accessed and Skipped.
  • Alternative: for Question, Menu, Dialog, Path, Arena or any other generic Alternative. Methods: Selected and Unlocked.
  • TrackedGameObject: for Enemy, NPC, Item or any other generic GameObject. Methods: Interacted and Used.

Implementations

The tracker is implemented in the following technologies:

architecture-3-style-unified-and-updated pptx 1 Figure 1.: an overview of the different tracker implementations and their connections to RAGE.

Clone this wiki locally