Using GameAnalytics (Retention and Monetisation) (Ez mode)

When testing in studio, I noticed the game stutters when the game analytics sends out the events. Should I be concerned about this? Does this happen in a live game?

That would be the message encryption in action. I’m not sure why it’s so expensive, but it is. It will only be the server freezing up for ~0.5-1 second, so your clients probably won’t notice.

1 Like

This might be a stupid question but for the SendWait variable in the Analytics module, how long should it be for actual games?

I’ve left mine at around 300 seconds however, my game is beginning to lag and I’m guessing it might because of this value so I was wondering what your SendWait variables are.

Sorry for the bump :c

2 Likes

For anyone looking at this now like I am, GameAnalytics now provides a built in Roblox SDK pack, just scroll to the bottom in the SDK list.

1 Like

It’s also easier to use and provides you with in-depth instructions to using it.

1 Like

I don’t think so, source? AFAIK they do not sell the actual data but generate industry-wide reports.

EDIT: here’s a statement by someone who works at GameAnalytics: Link to official GameAnalytics Roblox SDK - #18 by sdk_ga

5 Likes

Thats not what it says, it says they may. I’m inclined to believe their statement on it, and I think this was just added so they have the ability to change business model.

REGARDLESS, the costs of having your anonymised data sent off to someone is very low, and is far outweighed by the benefits of proper analytics. They’re GDPR compliant, so they definitely won’t be sending off specific user data

1 Like

For the record, large customer data platforms, cloud analytics platforms, and mobile application telemetry apis all have privacy policies like that @TheAviator01. It wouldn’t surprise me that GameAnalytics has something similar. This is just a legal disclaimer for the fact that they may utilize third-party customer data processing apis which likely could be used to track or inform advertisers or vendors.

For comparison’s sake, any Android or iOS mobile application can choose to track IDFA/IDFV data about consumers that persists across app sessions and can be used (legally or illegally) to inform 3rd parties. You’d be surprised what GDPR, HIPAA, and other data privacy compliant platforms could do with your information. I’d not be any more concerned about GameAnalytics than I would be about Clash of Clans or Roblox itself.

2 Likes

Just now seeing this. Nice module.

I have one question. What would I do if I have a sink/source that involves two currencies at the same time? My game has two currencies and some transactions take both at the same time.

Im getting this error:

14:31:44.409 - AnnotateEvent is not a valid member of ReplicatedStorage
14:31:44.410 - Stack Begin
14:31:44.410 - Script ‘ReplicatedStorage.Analytics.AnalyticsModule’, Line 442 - function ClientInit
14:31:44.411 - Script ‘Players.hisokachan.PlayerScripts.Analytics.LocalScript’, Line 2
14:31:44.411 - Stack End

All I’ve done is make a folder in RepStorage and PlayerScripts and copied the code from the guide. The player script is a local script btw.

Any thoughts?

I was attempting to Initiate the module from Replicated Storage which doesn’t run scripts therefore the module wasn’t running. I fixed this issue by moving my main init script to ServerScriptService

I’m now getting this error several times after I join the game

15:15:28.512 - ReplicatedStorage.Analytics.AnalyticsModule:244: attempt to index nil with ‘Name’
15:15:28.513 - Stack Begin
15:15:28.513 - Script ‘ReplicatedStorage.Analytics.AnalyticsModule’, Line 244 - function AnnotateEvent
15:15:28.515 - Script ‘ReplicatedStorage.Analytics.AnalyticsModule’, Line 141 - function AddToEventQueue
15:15:28.516 - Script ‘ReplicatedStorage.Analytics.AnalyticsModule’, Line 338
15:15:28.517 - Stack End
15:15:28.520 - Maximum event re-entrancy depth exceeded for ScriptContext.Error

By the way, GameAnalytics has a Roblox SDK! You don’t even have to use a custom module!

Its custom SDK doesn’t work last time I checked - at all!

Whenever I’ve used their Roblox SDK it’s worked fine. Are you only testing in Studio? When in Studio requests are sent to the sandbox API, not the production API.

This doesn’t seem to work for me, I get this error message when I try to use RecordTransaction or RecordResource:

Screen Shot 2020-06-15 at 8.24.40 PM

I looked at the source code, and it seems that this is causing the problem:

URL_Events				= "http://api.gameanalytics.com/v2/" .. GameKey .. "/events"

I went to the link and it said this

Screen Shot 2020-06-15 at 8.26.15 PM

Please help, thanks!

Wow! Goodbye, blade and rtrack!

Thanks so much, this will definitely help me out :heart:

Here is a high five for your effort :raised_hand_with_fingers_splayed:

Edit: I will be using this on Infinite Autocorrect and What’s The Word (front-page games). For anybody scrolling by, it works great!

1 Like

Making a seperate reply, because this should get some attention.

You do use spawn, which is inefficient.
I would reccommend something like coroutine.resume(coroutine.create(func()end))?

EDIT: Oop, there are some issues. Anybody know how to solve the “Http 400” error?
Annotation 2020-06-16 082903
Does that after every attempt to send request.

GameAnalytics made an official SDK for Roblox!

Nice tutorial though!

3 Likes

It’s not recommended to use it. It has many critical errors that can disable other functions in other scripts(For example some MarketplaceService stuff)

Anyways, this is pretty nice! Is there any way to send Premium Playtime? I don’t understand http://restapidocs.gameanalytics.com/#event-types

1 Like