Search Unity

NuTracking Library

Discussion in 'Assets and Asset Store' started by w162, Jul 22, 2011.

  1. w162

    w162

    Joined:
    Mar 31, 2011
    Posts:
    26

    http://www.premiereliaison.com/nutracking/
    Link to Unity Asset Store http://u3d.as/content/premiere-liaison/nu-tracking-library/22N

    NuTracking is a game analytics library that built upon the mature and stable backend of Google Analytics. It provides an easy elegant solution for you to collect and analyze the behavior of your players.

    The first version of NuTracking is released as a script asset in Unity’s Asset Store. It provides the following features:

    - Easy integration to your game

    Following up the tutorial, everyone can setup a Google Analytics account in 2 minutes, and then integrate NuTracking to your Unity project within a few seconds.

    - Track common player activity automatically

    With no extra work, you could be able to access the information of total game sessions, daily unique players, daily new players, their geo location, the operation system, etc.

    If you provide In-App purchases in your game, it could also be easily tracked.

    - Privacy protection

    Google’s motto is “don’t do evil”. But do NOT over-trust them.

    By default, the IP address was collected for geo location analyzation. And it’s obfuscated to prevent the back-tracing to protect the privacy of players. The true machine ID (like UUID in iPhone) is also obfuscated as well. By default, all the data that is sent to Google Analytics is anonymously.

    Also, NuTracking use the HTTPS protocol to communicate with Google Analytics whenever feasible. It encrypts information with SSL and protects you and your players from eavesdropping and sniffer attacks.

    - Cross platform

    The implementation of NuTracking considered the restriction of Unity framework in each of its supported platform. It is tested in WebPlayer, OSX, iOS, and even the Unity editor. Android has not been tested but it’s quite likely to be compatible as well.

    - Asynchronized behavior

    NuTracking is working asynchonized with the game code. It won’t slow down your game for waiting network transmission, etc. It just works silently to fulfill its task in the background.

    - Source code provided, easy to customize

    Every game has its special elements want to be tracked. NuTracking library provides general interface functions to trace any customized behavior with Google Analytics’s mechanisms (page view, event, or transaction).

    Since the full source code is provided, it’s possible to highly customized that to do any geeky tracking you want. But, please understand that there is limitations when accessing the backend of Google Analytics. And you should always concern the player’s privacy and never track more than necessary.

    - Support both Unity Free and Pro edition

    NuTracking is implemented with pure C# code. So you could use that even with Unity Free version.

    Please check http://www.premiereliaison.com/nutracking/ for detailed information



    Here are the how-tos:
    Integrate NuTracking to your Unity project - http://www.premiereliaison.com/2011/07/integrate-nutracking-to-your-unity-project/
    Tracking Examples with Google Analytics - http://www.premiereliaison.com/2011/07/tracking-examples-with-google-analytics/

    And the future plan:
    Future plan of NuTracking - http://www.premiereliaison.com/2011/07/future-plan-of-nutracking/
     
    Last edited: Jul 22, 2011
  2. Bugfoot

    Bugfoot

    Joined:
    Jan 9, 2009
    Posts:
    533
    Great stuff, I was actually about the start something similar, but it looks like I wont have to ;) You should provide a link to the app store asset in your original post by the way (at least for lazy people like me!).
     
  3. nopcode

    nopcode

    Joined:
    Apr 29, 2011
    Posts:
    67
    You need to provide examples on your web site on how to track somethings - say for example starting a new game or completing a goal, so that we can get a proper feel as to what this gives us for the money.
     
  4. w162

    w162

    Joined:
    Mar 31, 2011
    Posts:
    26
    @Spk @nopcode Thank you very much for your suggestion. I revised my post to include the URL and examples :)
     
  5. nopcode

    nopcode

    Joined:
    Apr 29, 2011
    Posts:
    67
    I was referring to your existing examples on your web site - all you have is "drop this here", which doesn't show what your package can do. What I (and others) would need is some examples of how you would connect your package in code to an event - say, user killed the boss in X moves - and what the resulting tracking on Google would look like for that event.
    What you have right now is mostly just Google Analytics screenshots, which is kinda useless for most folks who haven't been using GA for a while if at all, and a connection to the main camera, with no specifics.
     
  6. w162

    w162

    Joined:
    Mar 31, 2011
    Posts:
    26
    Ok. I understand what you mean. Currently there is AddGenericEvent(), which is already been used for tracking iPhone device informations. And also AddGenericTransaction(), which is used to tracking in-app purchases. However, the usage of them could be very flexible. Maybe the "kill boss" event could also be presented as a transaction if user wants, although may not favored by GA.

    You are totally right. What I am missing right now is detailed reference for all these functionality. I will take the documentation improvement as the next step.
     
  7. w162

    w162

    Joined:
    Mar 31, 2011
    Posts:
    26
  8. pixelsteam

    pixelsteam

    Joined:
    May 1, 2009
    Posts:
    924
    Can this provide granularity of what level completed by specific players and how long in each level.
     
  9. w162

    w162

    Joined:
    Mar 31, 2011
    Posts:
    26
    Yes, these stats could be tracked via events. The mechanism of event tracking is very flexible.

    Google's Event Tracking Guide: http://code.google.com/apis/analytics/docs/tracking/eventTrackerGuide.html

    And all these kind of customized events could be analyzed with Google Analytics' web interface.
     
  10. ripcurlx

    ripcurlx

    Joined:
    Aug 24, 2011
    Posts:
    2
    Hi,

    does anyone of you use NuTracking also for the unity WebPlayer? For mobile everything works fine, but I always get crossdomain errors if I publish it for the Web.

    Any ideas?

    Best,

    Christoph
     
  11. w162

    w162

    Joined:
    Mar 31, 2011
    Posts:
    26
    @ripcurlx

    I am sorry to hear that you still met the crossdomain error with the WebPlayer. I checked again the issue and recognized that it's a basic restriction of Unity WebPlayer's security model (http://unity3d.com/support/documentation/Manual/Security Sandbox.html), even we don't use the WWW class to issue the HTTP requests.

    However, this article (http://blog.mostlytigerproof.com/20...atistics-using-google-analytics-and-unity-3d/) described a valid workaround, by deploy Google's ga.js, and triggering external JavaScript to do the tracking. It could solve the cross-domain issue because:

    I will improve NuTracking Library and implement this technique in the next build.
     
  12. ripcurlx

    ripcurlx

    Joined:
    Aug 24, 2011
    Posts:
    2
    Thanks for the confirmation. We've already implemented a switch that calls the google analytics from the Website. I just wanted to know if there is a workaround to send the calls from unity as well.

    Cheers,

    Christoph
     
  13. w162

    w162

    Joined:
    Mar 31, 2011
    Posts:
    26
    NuTracking Library 0.2.0 is available on Unity Asset Store now. On this build I redirected the tracking API to the external JS call. However, some code needs to be added to the .html file which contains the Unity WebPlayer.

    More information could be found here: http://www.premiereliaison.com/2011/08/use-nutracking-library-with-unity-webplayer/

    @ripcurlx Thank you so much for your support!