mirror of
https://github.com/4jcraft/4jcraft.git
synced 2026-04-24 13:43:36 +00:00
275 lines
12 KiB
C
275 lines
12 KiB
C
#pragma once
|
||
|
||
/*
|
||
AchievementGamerscore Value in gamerscore of the achievement
|
||
AchievementID ID of achievement unlocked
|
||
EnemyTypeID What type of enemy or challenge was the player facing? To
|
||
prevent data-loss by overflowing the buffer, we recommend enemy type.
|
||
EnemyWeaponID What weapon the enemy is holding or what counter/AI the enemy is
|
||
taking to overcome a challenge EnrollmentType How did players enroll? (Using
|
||
Kinect) LandscapeOrPortrait Are you currently showing in landscape or
|
||
portrait mode? (Win8 only) LevelDurationInSeconds How long, total, has the
|
||
user been playing in this level - whatever best represents this duration for
|
||
attempting the level you'd like to track. LevelExitProgressStat1 Refers
|
||
to the highest level performance metric for your game.<2E> For example, a
|
||
performance metric could points earned, race time, total kills, etc. This is
|
||
entirely up to you and will help us understand how well the player performed, or
|
||
how far the player progressed <20>in the level before exiting.
|
||
LevelExitProgressStat2 Refers to the highest level performance metric for your
|
||
game.<2E> For example, a performance metric could points earned, race time, total
|
||
kills, etc. This is entirely up to you and will help us understand how well the
|
||
player performed, or how far the player progressed <20>in the level before exiting.
|
||
LevelID This is a more granular view of mode, allowing teams to get a sense of
|
||
the levels or maps players are playing and providing some insight into how
|
||
players progress through a game. Teams will have to provide the game mappings
|
||
that correspond to the integers. The intent is that a level is highest level at
|
||
which modes can be dissected and provides an indication of player progression in
|
||
a game. The intent is that level start and ends do not occur more than every 2
|
||
minutes or so, otherwise the data reported will be difficult to understand.
|
||
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. LevelInstanceID
|
||
Generated by the game every time LevelStart or LevelResume is called. This
|
||
should be a unique ID (can be sequential) within a session. LowResMapX Player
|
||
position normalized to 0-255 LowResMapY Player position normalized to 0-255
|
||
LowResMapZ Player position normalized to 0-255
|
||
MapID Unique ID for the current map the player is on
|
||
MarketplaceOfferID Unique ID for the Xbox LIVE marketplace offer that the
|
||
upsell links to MicroGoodTypeID Describes the type of consumable or microgood
|
||
MultiplayerInstanceID multiplayerinstanceID is a title-generated value that is
|
||
the same for all players in the same multiplayer session.<2E> NumberOfLocalPlayers
|
||
the number of players that are playing together in the game locally in the
|
||
current session (on the same piece of hardware) NumberOfOnlinePlayers the
|
||
number of players that are playing together in the game online in the current
|
||
session (not on the same piece of hardware) NumberOfSkeletonsInView the max
|
||
and min of skeletons that were in view, regardless of enrollment
|
||
OptionalSubLevelID Used when a title has more heirarchy required.
|
||
OptionalSubLevel ID = 0 means undefined or unknown. OptionalSubModeID Used
|
||
when a title has more heirarchy required. OptionalSubMode ID = 0 means
|
||
undefined or unknown. PlayerLevelUpProgressStat1 Refers to a performance
|
||
metric for your player when they level or rank up. This is entirely up to you
|
||
and will help us understand how well the player performed, or how far the player
|
||
has progressed. PlayerLevelUpProgressStat2 Refers to a performance metric
|
||
for your player when they level or rank up. This is entirely up to you and will
|
||
help us understand how well the player performed, or how far the player has
|
||
progressed. PlayerWeaponID What weapon the player is holding or what
|
||
approach/tact the player is taking to overcome a challenge
|
||
PlayspaceFeedbackWarningDirection identifies which side of the playspace
|
||
players are getting too close to that results in the playspace feedback
|
||
SaveOrCheckpointID It is important that you also generate and save a unique
|
||
SaveOrCheckpointID that can be read and reported when the player resumes from
|
||
this save file or checkpoint. These IDs should be completely unique across the
|
||
player<EFBFBD>s experience, even if they play the same level multiple times. These IDs
|
||
are critical to allowing us to re-stitch a player<65>s experience in your title and
|
||
provide an accurate measure of time in level. SecondsSinceInitialize Number
|
||
of seconds elapsed since Sentient initialize. SecondsSinceInitializeMax Number
|
||
of seconds elapsed since Sentient initialize. SecondsSinceInitializeMin Number
|
||
of seconds elapsed since Sentient initialize. SkeletonDistanceInInches
|
||
Identifies the distance of the skeleton from the Kinect sensor TitleBuildID
|
||
Build version of the title, used to track changes in development as well as
|
||
patches/title updates
|
||
*/
|
||
|
||
/*
|
||
ModeID
|
||
An in-game setting that significantly differentiates the play style of the game.
|
||
(This should be captured as an integer and correspond to mode specific to the
|
||
game.) Teams will have to provide the game mappings that correspond to the
|
||
integers. The intent is to allow teams to capture data on the highest level
|
||
categories of gameplay in their game. 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.
|
||
*/
|
||
enum ETelem_ModeId {
|
||
eTelem_ModeId_Undefined = 0,
|
||
eTelem_ModeId_Survival,
|
||
eTelem_ModeId_Creative, // Unused in current game version
|
||
};
|
||
|
||
/*
|
||
OptionalSubModeID
|
||
Used when a title has more heirarchy required.
|
||
OptionalSubMode ID = 0 means undefined or unknown.
|
||
*/
|
||
enum ETelem_SubModeId {
|
||
eTelem_SubModeId_Undefined = 0,
|
||
eTelem_SubModeId_Normal,
|
||
eTelem_SubModeId_Tutorial,
|
||
};
|
||
|
||
/*
|
||
LevelID
|
||
This is a more granular view of mode, allowing teams to get a sense of the
|
||
levels or maps players are playing and providing some insight into how players
|
||
progress through a game. Teams will have to provide the game mappings that
|
||
correspond to the integers. The intent is that a level is highest level at which
|
||
modes can be dissected and provides an indication of player progression in a
|
||
game. The intent is that level start and ends do not occur more than every 2
|
||
minutes or so, otherwise the data reported will be difficult to understand.
|
||
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.
|
||
*/
|
||
enum ETelem_LevelId {
|
||
eTelem_LevelId_Undefined = 0,
|
||
eTelem_LevelId_PlayerGeneratedLevel = 1,
|
||
// 4J Stu - We currently do not have any specific levels (other than the
|
||
// tutorial which is tracked as a mode) so this is unused at the moment
|
||
};
|
||
|
||
/*
|
||
OptionalSubLevelID
|
||
Used when a title has more heirarchy required. OptionalSubLevel ID = 0 means
|
||
undefined or unknown.
|
||
*/
|
||
enum ETelem_SubLevelId {
|
||
eTelem_SubLevelId_Undefined = 0,
|
||
eTelem_SubLevelId_Overworld,
|
||
eTelem_SubLevelId_Nether,
|
||
eTelem_SubLevelId_End,
|
||
};
|
||
|
||
/*
|
||
MenuID
|
||
Describes the specific menu seen. MenuID = 0 means undefined or unknown.
|
||
*/
|
||
// 4J Stu - FOR REFERENCE ONLY - Should map 1:1 with the
|
||
// CConsoleMinecraftApp:EUIScene enum Values that are commented out here are not
|
||
// currently reported
|
||
enum ETelem_MenuId {
|
||
// eTelemMenuId_PartnernetPassword = 0,
|
||
// eTelemMenuId_Intro = 1,
|
||
// eTelemMenuId_SaveMessage = 2,
|
||
// eTelemMenuId_Main = 3,
|
||
// eTelemMenuId_FullscreenProgress = 4,
|
||
eTelemMenuId_Pause = 5,
|
||
// eTelemMenuId_CraftingPanel_2x2 = 6,
|
||
// eTelemMenuId_CraftingPanel_3x3 = 7,
|
||
// eTelemMenuId_Furnace = 8,
|
||
// eTelemMenuId_Container = 9,
|
||
// eTelemMenuId_Largecontainer_small = 10,// for splitscreen
|
||
// eTelemMenuId_Inventory = 11,
|
||
// eTelemMenuId_Trap = 12,
|
||
// eTelemMenuId_Debug = 13,
|
||
// eTelemMenuId_DebugTips = 14,
|
||
// eTelemMenuId_HelpAndOptions = 15,
|
||
eTelemMenuId_HowToPlay = 16,
|
||
// eTelemMenuId_HowToPlayMenu = 17,
|
||
// eTelemMenuId_Controls = 18,
|
||
// eTelemMenuId_Settings_Menu = 19,
|
||
// eTelemMenuId_Settings_All = 20,
|
||
// eTelemMenuId_Leaderboards = 21,
|
||
// eTelemMenuId_Credits = 22,
|
||
// eTelemMenuId_Death = 23,
|
||
// eTelemMenuId_TutorialPopup = 24,
|
||
eTelemMenuId_MultiGameCreate = 25,
|
||
// eTelemMenuId_MultiGameJoinLoad = 26,
|
||
eTelemMenuId_MultiGameInfo = 27,
|
||
// eTelemMenuId_SignEntry = 28,
|
||
// eTelemMenuId_InGameInfo = 29,
|
||
// eTelemMenuId_ConnectingProgress = 30,
|
||
eTelemMenuId_DLCOffers = 31,
|
||
eTelemMenuId_SocialPost = 32,
|
||
// eTelemMenuId_TrialExitUpsell = 33,
|
||
eTelemMenuId_LoadSettings = 34,
|
||
// eTelemMenuId_Chat = 35,
|
||
// eTelemMenuId_Reinstall = 36,
|
||
};
|
||
|
||
/*
|
||
OptionalSubMenuID
|
||
Used when a title has more heirarchy required. OptionalSubMenuID = 0 means
|
||
undefined or unknown.
|
||
*/
|
||
enum ETelemetry_HowToPlay_SubMenuId {
|
||
eTelemetryHowToPlay_Basics = 0,
|
||
eTelemetryHowToPlay_HUD,
|
||
eTelemetryHowToPlay_Inventory,
|
||
eTelemetryHowToPlay_Chest,
|
||
eTelemetryHowToPlay_LargeChest,
|
||
eTelemetryHowToPlay_InventoryCrafting,
|
||
eTelemetryHowToPlay_CraftTable,
|
||
eTelemetryHowToPlay_Furnace,
|
||
eTelemetryHowToPlay_Dispenser,
|
||
eTelemetryHowToPlay_NetherPortal,
|
||
};
|
||
|
||
/*
|
||
EnemyTypeID What type of enemy or challenge was the player facing?
|
||
To prevent data-loss by overflowing the buffer, we recommend enemy type.
|
||
*/
|
||
enum ETelemetryChallenges {
|
||
eTelemetryChallenges_Unknown = 0,
|
||
|
||
eTelemetryTutorial_TrialStart,
|
||
eTelemetryTutorial_Halfway,
|
||
eTelemetryTutorial_Complete,
|
||
|
||
eTelemetryTutorial_Inventory,
|
||
eTelemetryTutorial_Crafting,
|
||
eTelemetryTutorial_Furnace,
|
||
eTelemetryTutorial_Fishing,
|
||
eTelemetryTutorial_Minecart,
|
||
eTelemetryTutorial_Boat,
|
||
eTelemetryTutorial_Bed,
|
||
|
||
eTelemetryTutorial_Redstone_And_Pistons,
|
||
eTelemetryTutorial_Portal,
|
||
eTelemetryTutorial_FoodBar,
|
||
eTelemetryTutorial_CreativeMode,
|
||
eTelemetryTutorial_BrewingMenu,
|
||
|
||
eTelemetryInGame_Ride_Minecart,
|
||
eTelemetryInGame_Ride_Boat,
|
||
eTelemetryInGame_Ride_Pig,
|
||
eTelemetryInGame_UseBed,
|
||
|
||
eTelemetryTutorial_CreativeInventory, // Added TU5
|
||
|
||
eTelemetryTutorial_EnchantingMenu,
|
||
eTelemetryTutorial_Brewing,
|
||
eTelemetryTutorial_Enchanting,
|
||
eTelemetryTutorial_Farming,
|
||
|
||
eTelemetryPlayerDeathSource_Fall,
|
||
eTelemetryPlayerDeathSource_Lava,
|
||
eTelemetryPlayerDeathSource_Fire,
|
||
eTelemetryPlayerDeathSource_Water,
|
||
eTelemetryPlayerDeathSource_Suffocate,
|
||
eTelemetryPlayerDeathSource_OutOfWorld,
|
||
eTelemetryPlayerDeathSource_Cactus,
|
||
|
||
eTelemetryPlayerDeathSource_Player_Weapon,
|
||
eTelemetryPlayerDeathSource_Player_Arrow,
|
||
|
||
eTelemetryPlayerDeathSource_Explosion_Tnt,
|
||
eTelemetryPlayerDeathSource_Explosion_Creeper,
|
||
|
||
eTelemetryPlayerDeathSource_Wolf,
|
||
eTelemetryPlayerDeathSource_Zombie,
|
||
eTelemetryPlayerDeathSource_Skeleton,
|
||
eTelemetryPlayerDeathSource_Spider,
|
||
eTelemetryPlayerDeathSource_Slime,
|
||
eTelemetryPlayerDeathSource_Ghast,
|
||
eTelemetryPlayerDeathSource_ZombiePigman,
|
||
|
||
eTelemetryTutorial_Breeding,
|
||
eTelemetryTutorial_Golem,
|
||
|
||
eTelemetryTutorial_Anvil, // Added TU14
|
||
eTelemetryTutorial_AnvilMenu,
|
||
eTelemetryTutorial_Trading,
|
||
eTelemetryTutorial_TradingMenu,
|
||
eTelemetryTutorial_Enderchest,
|
||
|
||
eTelemetryTutorial_Horse, // Java 1.6.4
|
||
eTelemetryTutorial_HorseMenu,
|
||
eTelemetryTutorial_Fireworks,
|
||
eTelemetryTutorial_FireworksMenu,
|
||
eTelemetryTutorial_Beacon,
|
||
eTelemetryTutorial_BeaconMenu,
|
||
eTelemetryTutorial_Hopper,
|
||
eTelemetryTutorial_HopperMenu,
|
||
|
||
// Sent over network as a byte
|
||
}; |