All notable changes to this project will be documented in this file.
- Fixed a bug with teleport data not being validated properly before extrating analytics data
- Added changelog
- Cleaned the README
- Add "custom_fields" to events
- Added types to the public facing api
- Applied StyLua to codebase
- Removed LocalScript that was added in 2.2.3, causing errors on requiring GameAnalyticsClient module
- Fixed bug where PlayerData would reference BasePlayerData tables instead of making copies
- Added datastore queue
- Fix to wally support
- Fixed bug related to game passes purchases
- Added support for wally (OBS: breaking changes)
- Fixed argument order
- Corrected to use new postie api where referenced
- Postie script updated
- Replace global spawn and wait with task library
- Fixed postie bug after moving the script under gameanalytics script
- Replaced rbxmx generator script with rojo build command (requires min. rojo 6)
- Moved postie script inside GameAnalytics scripts
- Fixed error message in errorhandler
- Country code field always sent with events now (sent as 'null' if country code couldn't be fetched)
- Fixed undefined variable errors
- Fixed potential error in session end event code
- Added error tracking if country code fails to get retrieved
- Fixed ab testing
- Fixed bug with remote configs and ab testing ids not being added to events
- Fixed GetPlayerDataFromCache function
- Fixes to gamepass in business events
- Fixed detection of website gamepasses throttling datastores
- Fixed sesion start and end issues which caused problems with metrics
- Corrected variable name inside GetPlayerDataFromCache function
- Player data cache now accepts both userId of string or number type
- Fixed not clearing session start ts because teleport flag was not cleared
- Fixed logic for error handler
- Added player id to error events sent from error reporting
- Fixed ScriptContext.Error error reporting
- Switched from using LogService to ScriptContext.Error for error reporting
- Fixed setAvailableGamepasses function
- Correct install instructions and fixed GameAnalyticsServerInit script
- Correct business event for 'Gamepass' itemType
- Added country code to events to get correct country of users
- Corrected install instructions
- Moved everything from GameAnalyticsServer to GameAnalytics module and created a template server script for calling the initialize function.
- Added queue for functions like addDesignEvent etc. that are called before player or GA is initialized
- Renamed server init with settings script and restructured it (new usage)
- Added session_num to init request
- Replaced previous HMAC + SHA256 + Base64 implementation with HashLib. This version is around 23 - 25% faster.
- Changed indenting from spaces to tabs (Roblox default).
- Worked on reformatting so it followed the Roblox Lua style guide a little better.
- Updated the luacheck files more.
- Fixed rojo file
- Updated postie script
- Added website game pass purchase tracking support
- Remote configs fixes
- Remote Config calls have been updated and the old calls have deprecated. Please see GA documentation for the new SDK calls and migration guide
- A/B testing support added
- Improvements for business event
- Fix to playerRemoved function
- Added bindable event to listen to when player is ready (has gotten its player data loaded)
- Started using new bit module instead of old one
- Fixes for progression events
- Bug fix for platform name fallback option
- Fix for command center populated events
- Fixes to some types of events not being sent
- Fixed bug with automatic error events
- Fixed bug with error events not sending (another one)
- Fixed bug with error events not sending
- Fixed multi-place game bugs
- Added support for multi-place game sessions
- Changed Postie from being a script to a modulescript
- Added Postie module to replace invokeclient call in playerjoined
- Fixed playerjoined method to not wait indefinitely in some cases
- Fixed playerjoined method to not wait indefinitely in some cases
- Fixed load table bug
- Added missing files to rbxmx
- Performance to enum lookups
- Added limit to how many events there can max be in the events queue
- Added better error handling for thread task execution
- Added toggle function for debug logging in studio mode
- Threading performance fix
- Various bug fixes
- Bug fixes to manual configuration and initialization of sdk
- Updated server scripts to just be descendants of ServerScriptService and not just direct child of ServerScriptService
- Added enable/disable event submission function
- Moved settings related code in GameAnalyticsServer script into a new script called GameAnalyticsServerInitUsingSettings to allow manual initialization from own script (OPS look at new INSTALL instructions for new script)
- Renamed GameAnalyticsScript to GameAnalyticsServer
- Removed script location restriction on GameAnalyticsClient
- Small corrections
- Fixed automatic sending of error events
- Added script for generating rbxmx file
- Fixed sha256 performance issues
- Added processReceiptCallback function to use within your own processReceipt method
- Replaced all string.len and table.getn with # operator instead
- Using game:GetService() to access services instead of using game.[some_service]
- Fixed device recognition method
- Fixed automatic sending of error events
- Small bugs fixes
- Added session tracking
- Implemented custom event logging
- Integrated teleport data handling