diff --git a/Minecraft.Client/Platform/Common/Telemetry/TelemetryManager.cpp b/Minecraft.Client/Platform/Common/Telemetry/TelemetryManager.cpp index 058bf9fc9..b89193002 100644 --- a/Minecraft.Client/Platform/Common/Telemetry/TelemetryManager.cpp +++ b/Minecraft.Client/Platform/Common/Telemetry/TelemetryManager.cpp @@ -146,9 +146,9 @@ Title needs to track this and report it as a property. These times will be used to create timelines and understand durations. This should be tracked independently of saved games (restoring a save should not reset the seconds since initialize) */ -INT CTelemetryManager::GetSecondsSinceInitialize() +int CTelemetryManager::GetSecondsSinceInitialize() { - return (INT)(app.getAppTime() - m_initialiseTime); + return static_cast(app.getAppTime() - m_initialiseTime); } /* @@ -159,27 +159,27 @@ The intent is to allow teams to capture data on the highest level categories of For example, a game mode could be the name of the specific mini game (eg: golf vs darts) or a specific multiplayer mode (eg: hoard vs beast.) ModeID = 0 means undefined or unknown. The intent is to answer the question "How are players playing your game?" */ -INT CTelemetryManager::GetMode(DWORD dwUserId) +int CTelemetryManager::GetMode(int userId) { - INT mode = (INT)eTelem_ModeId_Undefined; + int mode = static_cast(eTelem_ModeId_Undefined); Minecraft *pMinecraft = Minecraft::GetInstance(); - if( pMinecraft->localplayers[dwUserId] != NULL && pMinecraft->localplayers[dwUserId]->level != NULL && pMinecraft->localplayers[dwUserId]->level->getLevelData() != NULL ) + if( pMinecraft->localplayers[userId] != NULL && pMinecraft->localplayers[userId]->level != NULL && pMinecraft->localplayers[userId]->level->getLevelData() != NULL ) { - GameType *gameType = pMinecraft->localplayers[dwUserId]->level->getLevelData()->getGameType(); + GameType *gameType = pMinecraft->localplayers[userId]->level->getLevelData()->getGameType(); if (gameType->isSurvival()) { - mode = (INT)eTelem_ModeId_Survival; + mode = static_cast(eTelem_ModeId_Survival); } else if (gameType->isCreative()) { - mode = (INT)eTelem_ModeId_Creative; + mode = static_cast(eTelem_ModeId_Creative); } else { - mode = (INT)eTelem_ModeId_Undefined; + mode = static_cast(eTelem_ModeId_Undefined); } } return mode; @@ -192,17 +192,17 @@ For titles that have sub-modes (Sports/Football). Mode is always an indicator of "How is the player choosing to play my game?" so these do not have to be consecutive. LevelIDs and SubLevelIDs can be reused as they will always be paired with a Mode/SubModeID, Mode should be unique - SubMode can be shared between modes. */ -INT CTelemetryManager::GetSubMode(DWORD dwUserId) +int CTelemetryManager::GetSubMode(int userId) { - INT subMode = (INT)eTelem_SubModeId_Undefined; + int subMode = static_cast(eTelem_SubModeId_Undefined); if(Minecraft::GetInstance()->isTutorial()) { - subMode = (INT)eTelem_SubModeId_Tutorial; + subMode = static_cast(eTelem_SubModeId_Tutorial); } else { - subMode = (INT)eTelem_SubModeId_Normal; + subMode = static_cast(eTelem_SubModeId_Normal); } return subMode; @@ -216,11 +216,11 @@ The intent is that level start and ends do not occur more than every 2 minutes o Levels are unique only within a given modeID - so you can have a ModeID =1, LevelID =1 and a different ModeID=2, LevelID = 1 indicate two completely different levels. LevelID = 0 means undefined or unknown. */ -INT CTelemetryManager::GetLevelId(DWORD dwUserId) +int CTelemetryManager::GetLevelId(int userId) { - INT levelId = (INT)eTelem_LevelId_Undefined; + int levelId = static_cast(eTelem_LevelId_Undefined); - levelId = (INT)eTelem_LevelId_PlayerGeneratedLevel; + levelId = static_cast(eTelem_LevelId_PlayerGeneratedLevel); return levelId; } @@ -231,24 +231,24 @@ For titles that have sub-levels. Level is always an indicator of "How far has the player progressed." so when possible these should be consecutive or at least monotonically increasing. LevelIDs and SubLevelIDs can be reused as they will always be paired with a Mode/SubModeID */ -INT CTelemetryManager::GetSubLevelId(DWORD dwUserId) +int CTelemetryManager::GetSubLevelId(int userId) { - INT subLevelId = (INT)eTelem_SubLevelId_Undefined; + int subLevelId = static_cast(eTelem_SubLevelId_Undefined); Minecraft *pMinecraft = Minecraft::GetInstance(); - if(pMinecraft->localplayers[dwUserId] != NULL) + if(pMinecraft->localplayers[userId] != NULL) { - switch(pMinecraft->localplayers[dwUserId]->dimension) + switch(pMinecraft->localplayers[userId]->dimension) { case 0: - subLevelId = (INT)eTelem_SubLevelId_Overworld; + subLevelId = static_cast(eTelem_SubLevelId_Overworld); break; case -1: - subLevelId = (INT)eTelem_SubLevelId_Nether; + subLevelId = static_cast(eTelem_SubLevelId_Nether); break; case 1: - subLevelId = (INT)eTelem_SubLevelId_End; + subLevelId = static_cast(eTelem_SubLevelId_End); break; }; } @@ -260,9 +260,9 @@ INT CTelemetryManager::GetSubLevelId(DWORD dwUserId) Build version of the title, used to track changes in development as well as patches/title updates Allows developer to separate out stats from different builds */ -INT CTelemetryManager::GetTitleBuildId() +int CTelemetryManager::GetTitleBuildId() { - return (INT)VER_PRODUCTBUILD; + return static_cast(VER_PRODUCTBUILD); } /* @@ -270,32 +270,32 @@ Generated by the game every time LevelStart or LevelResume is called. This should be a unique ID (can be sequential) within a session. Helps differentiate level attempts when a play plays the same mode/level - especially with aggregated stats */ -INT CTelemetryManager::GetLevelInstanceID() +int CTelemetryManager::GetLevelInstanceID() { - return (INT)m_levelInstanceID; + return m_levelInstanceID; } /* MultiplayerinstanceID is a title-generated value that is the same for all players in the same multiplayer session. Link up players into a single multiplayer session ID. */ -INT CTelemetryManager::GetMultiplayerInstanceID() +int CTelemetryManager::GetMultiplayerInstanceID() { return m_multiplayerInstanceID; } -INT CTelemetryManager::GenerateMultiplayerInstanceId() +int CTelemetryManager::GenerateMultiplayerInstanceId() { #if defined(_DURANGO) || defined(_XBOX) FILETIME SystemTimeAsFileTime; GetSystemTimeAsFileTime( &SystemTimeAsFileTime ); - return *((INT *)&SystemTimeAsFileTime.dwLowDateTime); + return static_cast(SystemTimeAsFileTime.dwLowDateTime); #else return 0; #endif } -void CTelemetryManager::SetMultiplayerInstanceId(INT value) +void CTelemetryManager::SetMultiplayerInstanceId(int value) { m_multiplayerInstanceID = value; } @@ -304,9 +304,9 @@ void CTelemetryManager::SetMultiplayerInstanceId(INT value) Indicates whether the game is being played in single or multiplayer mode and whether multiplayer is being played locally or over live. How social is your game? How do people play it? */ -INT CTelemetryManager::GetSingleOrMultiplayer() +int CTelemetryManager::GetSingleOrMultiplayer() { - INT singleOrMultiplayer = (INT)eSen_SingleOrMultiplayer_Undefined; + int singleOrMultiplayer = static_cast(eSen_SingleOrMultiplayer_Undefined); // Unused //eSen_SingleOrMultiplayer_Single_Player @@ -314,19 +314,19 @@ INT CTelemetryManager::GetSingleOrMultiplayer() if(app.GetLocalPlayerCount() == 1 && g_NetworkManager.GetOnlinePlayerCount() == 0) { - singleOrMultiplayer = (INT)eSen_SingleOrMultiplayer_Single_Player; + singleOrMultiplayer = static_cast(eSen_SingleOrMultiplayer_Single_Player); } else if(app.GetLocalPlayerCount() > 1 && g_NetworkManager.GetOnlinePlayerCount() == 0) { - singleOrMultiplayer = (INT)eSen_SingleOrMultiplayer_Multiplayer_Local; + singleOrMultiplayer = static_cast(eSen_SingleOrMultiplayer_Multiplayer_Local); } else if(app.GetLocalPlayerCount() == 1 && g_NetworkManager.GetOnlinePlayerCount() > 0) { - singleOrMultiplayer = (INT)eSen_SingleOrMultiplayer_Multiplayer_Live; + singleOrMultiplayer = static_cast(eSen_SingleOrMultiplayer_Multiplayer_Live); } else if(app.GetLocalPlayerCount() > 1 && g_NetworkManager.GetOnlinePlayerCount() > 0) { - singleOrMultiplayer = (INT)eSen_SingleOrMultiplayer_Multiplayer_Both_Local_and_Live; + singleOrMultiplayer = static_cast(eSen_SingleOrMultiplayer_Multiplayer_Both_Local_and_Live); } return singleOrMultiplayer; @@ -336,23 +336,23 @@ INT CTelemetryManager::GetSingleOrMultiplayer() An in-game setting that differentiates the challenge imposed on the user. Normalized to a standard 5-point scale. Are players changing the difficulty? */ -INT CTelemetryManager::GetDifficultyLevel(INT diff) +int CTelemetryManager::GetDifficultyLevel(int diff) { - INT difficultyLevel = (INT)eSen_DifficultyLevel_Undefined; + int difficultyLevel = static_cast(eSen_DifficultyLevel_Undefined); switch(diff) { case 0: - difficultyLevel = (INT)eSen_DifficultyLevel_Easiest; + difficultyLevel = static_cast(eSen_DifficultyLevel_Easiest); break; case 1: - difficultyLevel = (INT)eSen_DifficultyLevel_Easier; + difficultyLevel = static_cast(eSen_DifficultyLevel_Easier); break; case 2: - difficultyLevel = (INT)eSen_DifficultyLevel_Normal; + difficultyLevel = static_cast(eSen_DifficultyLevel_Normal); break; case 3: - difficultyLevel = (INT)eSen_DifficultyLevel_Harder; + difficultyLevel = static_cast(eSen_DifficultyLevel_Harder); break; } @@ -366,17 +366,17 @@ INT CTelemetryManager::GetDifficultyLevel(INT diff) Differentiates trial/demo from full purchased titles Is this a full title or demo? */ -INT CTelemetryManager::GetLicense() +int CTelemetryManager::GetLicense() { - INT license = eSen_License_Undefined; + int license = eSen_License_Undefined; if(ProfileManager.IsFullVersion()) { - license = (INT)eSen_License_Full_Purchased_Title; + license = static_cast(eSen_License_Full_Purchased_Title); } else { - license = (INT)eSen_License_Trial_or_Demo; + license = static_cast(eSen_License_Trial_or_Demo); } return license; } @@ -385,9 +385,9 @@ INT CTelemetryManager::GetLicense() This is intended to capture whether players played using default control scheme or customized the control scheme. Are players customizing your controls? */ -INT CTelemetryManager::GetDefaultGameControls() +int CTelemetryManager::GetDefaultGameControls() { - INT defaultGameControls = eSen_DefaultGameControls_Undefined; + int defaultGameControls = eSen_DefaultGameControls_Undefined; // Unused //eSen_DefaultGameControls_Custom_controls @@ -401,25 +401,25 @@ INT CTelemetryManager::GetDefaultGameControls() Are players changing default audio settings? This is intended to capture whether players are playing with or without volume and whether they make changes from the default audio settings. */ -INT CTelemetryManager::GetAudioSettings(DWORD dwUserId) +int CTelemetryManager::GetAudioSettings(int userId) { - INT audioSettings = (INT)eSen_AudioSettings_Undefined; + int audioSettings = static_cast(eSen_AudioSettings_Undefined); - if(dwUserId == ProfileManager.GetPrimaryPad()) + if(userId == ProfileManager.GetPrimaryPad()) { - BYTE volume = app.GetGameSettings(dwUserId,eGameSetting_SoundFXVolume); + unsigned char volume = app.GetGameSettings(userId, eGameSetting_SoundFXVolume); if(volume == 0) { - audioSettings = (INT)eSen_AudioSettings_Off; + audioSettings = static_cast(eSen_AudioSettings_Off); } else if(volume == DEFAULT_VOLUME_LEVEL) { - audioSettings = (INT)eSen_AudioSettings_On_Default; + audioSettings = static_cast(eSen_AudioSettings_On_Default); } else { - audioSettings = (INT)eSen_AudioSettings_On_CustomSetting; + audioSettings = static_cast(eSen_AudioSettings_On_CustomSetting); } } return audioSettings; @@ -431,7 +431,7 @@ For example, a performance metric could points earned, race time, total kills, e This is entirely up to you and will help us understand how well the player performed, or how far the player progressed  in the level before exiting. How far did users progress before failing/exiting the level? */ -INT CTelemetryManager::GetLevelExitProgressStat1() +int CTelemetryManager::GetLevelExitProgressStat1() { // 4J Stu - Unused return 0; @@ -443,7 +443,7 @@ For example, a performance metric could points earned, race time, total kills, e This is entirely up to you and will help us understand how well the player performed, or how far the player progressed  in the level before exiting. How far did users progress before failing/exiting the level? */ -INT CTelemetryManager::GetLevelExitProgressStat2() +int CTelemetryManager::GetLevelExitProgressStat2() { // 4J Stu - Unused return 0; diff --git a/Minecraft.Client/Platform/Common/Telemetry/TelemetryManager.h b/Minecraft.Client/Platform/Common/Telemetry/TelemetryManager.h index 8c7cee1c5..03d21cfa6 100644 --- a/Minecraft.Client/Platform/Common/Telemetry/TelemetryManager.h +++ b/Minecraft.Client/Platform/Common/Telemetry/TelemetryManager.h @@ -50,24 +50,24 @@ protected: float m_fLevelStartTime[XUSER_MAX_COUNT]; - INT m_multiplayerInstanceID; - DWORD m_levelInstanceID; + int m_multiplayerInstanceID; + int m_levelInstanceID; // Helper functions to get the various common settings - INT GetSecondsSinceInitialize(); - INT GetMode(DWORD dwUserId); - INT GetSubMode(DWORD dwUserId); - INT GetLevelId(DWORD dwUserId); - INT GetSubLevelId(DWORD dwUserId); - INT GetTitleBuildId(); - INT GetLevelInstanceID(); - INT GetSingleOrMultiplayer(); - INT GetDifficultyLevel(INT diff); - INT GetLicense(); - INT GetDefaultGameControls(); - INT GetAudioSettings(DWORD dwUserId); - INT GetLevelExitProgressStat1(); - INT GetLevelExitProgressStat2(); + int GetSecondsSinceInitialize(); + int GetMode(int userId); + int GetSubMode(int userId); + int GetLevelId(int userId); + int GetSubLevelId(int userId); + int GetTitleBuildId(); + int GetLevelInstanceID(); + int GetSingleOrMultiplayer(); + int GetDifficultyLevel(int diff); + int GetLicense(); + int GetDefaultGameControls(); + int GetAudioSettings(int userId); + int GetLevelExitProgressStat1(); + int GetLevelExitProgressStat2(); }; extern CTelemetryManager *TelemetryManager;