the game where you go into mines and start crafting! but for consoles (forked directly from smartcmd's github)
at master 731 lines 25 kB view raw
1/************************************************************************/ 2/* THIS FILE WAS AUTOMATICALLY GENERATED */ 3/* PLEASE DO NOT MODIFY */ 4/************************************************************************/ 5// Generated from Version: 24, on (9/4/2013 8:47:23 AM) 6 7#include <xtl.h> 8 9#include "SenClientStats.h" 10 11using namespace Sentient; 12 13/************************************************************************/ 14/* STATS */ 15/************************************************************************/ 16 17// PlayerSessionStart 18BOOL SenStatPlayerSessionStart ( DWORD dwUserID, INT SecondsSinceInitialize, INT ModeID, INT OptionalSubModeID, INT LevelID, INT OptionalSubLevelID, INT TitleBuildID, INT SkeletonDistanceInInches, INT EnrollmentType, INT NumberOfSkeletonsInView, INT DeploymentType ) 19{ 20 struct 21 { 22 INT SecondsSinceInitialize; 23 INT ModeID; 24 INT OptionalSubModeID; 25 INT LevelID; 26 INT OptionalSubLevelID; 27 INT TitleBuildID; 28 INT SkeletonDistanceInInches; 29 INT EnrollmentType; 30 INT NumberOfSkeletonsInView; 31 INT DeploymentType; 32 } LocalStruct = { SecondsSinceInitialize, ModeID, OptionalSubModeID, LevelID, OptionalSubLevelID, TitleBuildID, SkeletonDistanceInInches, EnrollmentType, NumberOfSkeletonsInView, DeploymentType }; 33 SenStat st; 34 st.dwUserID = dwUserID; 35 st.dwStatID = 128; 36 st.dwFlags = SenStatFlag_Normal; 37 st.dwNumProperties = 10; 38 st.arrProperties = (CHAR*)&LocalStruct; 39 st.dwNumValues = 0; 40 st.arrValues = NULL; 41 st.arrValueFlags = NULL; 42 43#ifdef SEN_LOGTELEMETRY 44 // if we're in debug build with logging then log the stat to a file for testing 45 SentientDebugLogStatSend("PlayerSessionStart", &st ); 46#endif 47 48 49 return Sentient::SentientStatsSend( &st ) == S_OK; 50} 51 52// PlayerSessionExit 53BOOL SenStatPlayerSessionExit ( DWORD dwUserID, INT SecondsSinceInitialize, INT ModeID, INT OptionalSubModeID, INT LevelID, INT OptionalSubLevelID ) 54{ 55 struct 56 { 57 INT SecondsSinceInitialize; 58 INT ModeID; 59 INT OptionalSubModeID; 60 INT LevelID; 61 INT OptionalSubLevelID; 62 } LocalStruct = { SecondsSinceInitialize, ModeID, OptionalSubModeID, LevelID, OptionalSubLevelID }; 63 SenStat st; 64 st.dwUserID = dwUserID; 65 st.dwStatID = 129; 66 st.dwFlags = SenStatFlag_Normal; 67 st.dwNumProperties = 5; 68 st.arrProperties = (CHAR*)&LocalStruct; 69 st.dwNumValues = 0; 70 st.arrValues = NULL; 71 st.arrValueFlags = NULL; 72 73#ifdef SEN_LOGTELEMETRY 74 // if we're in debug build with logging then log the stat to a file for testing 75 SentientDebugLogStatSend("PlayerSessionExit", &st ); 76#endif 77 78 79 return Sentient::SentientStatsSend( &st ) == S_OK; 80} 81 82// HeartBeat 83BOOL SenStatHeartBeat ( DWORD dwUserID, INT SecondsSinceInitialize ) 84{ 85 struct 86 { 87 INT SecondsSinceInitialize; 88 } LocalStruct = { SecondsSinceInitialize }; 89 SenStat st; 90 st.dwUserID = dwUserID; 91 st.dwStatID = 130; 92 st.dwFlags = SenStatFlag_Normal; 93 st.dwNumProperties = 1; 94 st.arrProperties = (CHAR*)&LocalStruct; 95 st.dwNumValues = 0; 96 st.arrValues = NULL; 97 st.arrValueFlags = NULL; 98 99#ifdef SEN_LOGTELEMETRY 100 // if we're in debug build with logging then log the stat to a file for testing 101 SentientDebugLogStatSend("HeartBeat", &st ); 102#endif 103 104 105 return Sentient::SentientStatsSend( &st ) == S_OK; 106} 107 108// LevelStart 109BOOL SenStatLevelStart ( DWORD dwUserID, INT SecondsSinceInitialize, INT ModeID, INT OptionalSubModeID, INT LevelID, INT OptionalSubLevelID, INT LevelInstanceID, INT MultiplayerInstanceID, INT SingleOrMultiplayer, INT FriendsOrMatch, INT CompeteOrCoop, INT DifficultyLevel, INT NumberOfLocalPlayers, INT NumberOfOnlinePlayers, INT License, INT DefaultGameControls, INT AudioSettings, INT SkeletonDistanceInInches, INT NumberOfSkeletonsInView ) 110{ 111 struct 112 { 113 INT SecondsSinceInitialize; 114 INT ModeID; 115 INT OptionalSubModeID; 116 INT LevelID; 117 INT OptionalSubLevelID; 118 INT LevelInstanceID; 119 INT MultiplayerInstanceID; 120 INT SingleOrMultiplayer; 121 INT FriendsOrMatch; 122 INT CompeteOrCoop; 123 INT DifficultyLevel; 124 INT NumberOfLocalPlayers; 125 INT NumberOfOnlinePlayers; 126 INT License; 127 INT DefaultGameControls; 128 INT AudioSettings; 129 INT SkeletonDistanceInInches; 130 INT NumberOfSkeletonsInView; 131 } LocalStruct = { SecondsSinceInitialize, ModeID, OptionalSubModeID, LevelID, OptionalSubLevelID, LevelInstanceID, MultiplayerInstanceID, SingleOrMultiplayer, FriendsOrMatch, CompeteOrCoop, DifficultyLevel, NumberOfLocalPlayers, NumberOfOnlinePlayers, License, DefaultGameControls, AudioSettings, SkeletonDistanceInInches, NumberOfSkeletonsInView }; 132 SenStat st; 133 st.dwUserID = dwUserID; 134 st.dwStatID = 131; 135 st.dwFlags = SenStatFlag_Normal; 136 st.dwNumProperties = 18; 137 st.arrProperties = (CHAR*)&LocalStruct; 138 st.dwNumValues = 0; 139 st.arrValues = NULL; 140 st.arrValueFlags = NULL; 141 142#ifdef SEN_LOGTELEMETRY 143 // if we're in debug build with logging then log the stat to a file for testing 144 SentientDebugLogStatSend("LevelStart", &st ); 145#endif 146 147 148 return Sentient::SentientStatsSend( &st ) == S_OK; 149} 150 151// LevelExit 152BOOL SenStatLevelExit ( DWORD dwUserID, INT SecondsSinceInitialize, INT ModeID, INT OptionalSubModeID, INT LevelID, INT OptionalSubLevelID, INT LevelInstanceID, INT MultiplayerInstanceID, INT LevelExitStatus, INT LevelExitProgressStat1, INT LevelExitProgressStat2, INT LevelDurationInSeconds ) 153{ 154 struct 155 { 156 INT SecondsSinceInitialize; 157 INT ModeID; 158 INT OptionalSubModeID; 159 INT LevelID; 160 INT OptionalSubLevelID; 161 INT LevelInstanceID; 162 INT MultiplayerInstanceID; 163 INT LevelExitStatus; 164 INT LevelExitProgressStat1; 165 INT LevelExitProgressStat2; 166 INT LevelDurationInSeconds; 167 } LocalStruct = { SecondsSinceInitialize, ModeID, OptionalSubModeID, LevelID, OptionalSubLevelID, LevelInstanceID, MultiplayerInstanceID, LevelExitStatus, LevelExitProgressStat1, LevelExitProgressStat2, LevelDurationInSeconds }; 168 SenStat st; 169 st.dwUserID = dwUserID; 170 st.dwStatID = 132; 171 st.dwFlags = SenStatFlag_Normal; 172 st.dwNumProperties = 11; 173 st.arrProperties = (CHAR*)&LocalStruct; 174 st.dwNumValues = 0; 175 st.arrValues = NULL; 176 st.arrValueFlags = NULL; 177 178#ifdef SEN_LOGTELEMETRY 179 // if we're in debug build with logging then log the stat to a file for testing 180 SentientDebugLogStatSend("LevelExit", &st ); 181#endif 182 183 184 return Sentient::SentientStatsSend( &st ) == S_OK; 185} 186 187// LevelSaveOrCheckpoint 188BOOL SenStatLevelSaveOrCheckpoint ( DWORD dwUserID, INT SecondsSinceInitialize, INT ModeID, INT OptionalSubModeID, INT LevelID, INT OptionalSubLevelID, INT LevelInstanceID, INT MultiplayerInstanceID, INT LevelExitProgressStat1, INT LevelExitProgressStat2, INT LevelDurationInSeconds, INT SaveOrCheckPointID, INT SaveSizeInBytes ) 189{ 190 struct 191 { 192 INT SecondsSinceInitialize; 193 INT ModeID; 194 INT OptionalSubModeID; 195 INT LevelID; 196 INT OptionalSubLevelID; 197 INT LevelInstanceID; 198 INT MultiplayerInstanceID; 199 INT LevelExitProgressStat1; 200 INT LevelExitProgressStat2; 201 INT LevelDurationInSeconds; 202 INT SaveOrCheckPointID; 203 INT SaveSizeInBytes; 204 } LocalStruct = { SecondsSinceInitialize, ModeID, OptionalSubModeID, LevelID, OptionalSubLevelID, LevelInstanceID, MultiplayerInstanceID, LevelExitProgressStat1, LevelExitProgressStat2, LevelDurationInSeconds, SaveOrCheckPointID, SaveSizeInBytes }; 205 SenStat st; 206 st.dwUserID = dwUserID; 207 st.dwStatID = 133; 208 st.dwFlags = SenStatFlag_Normal; 209 st.dwNumProperties = 12; 210 st.arrProperties = (CHAR*)&LocalStruct; 211 st.dwNumValues = 0; 212 st.arrValues = NULL; 213 st.arrValueFlags = NULL; 214 215#ifdef SEN_LOGTELEMETRY 216 // if we're in debug build with logging then log the stat to a file for testing 217 SentientDebugLogStatSend("LevelSaveOrCheckpoint", &st ); 218#endif 219 220 221 return Sentient::SentientStatsSend( &st ) == S_OK; 222} 223 224// LevelResume 225BOOL SenStatLevelResume ( DWORD dwUserID, INT SecondsSinceInitialize, INT ModeID, INT OptionalSubModeID, INT LevelID, INT OptionalSubLevelID, INT LevelInstanceID, INT MultiplayerInstanceID, INT SingleOrMultiplayer, INT FriendsOrMatch, INT CompeteOrCoop, INT DifficultyLevel, INT NumberOfLocalPlayers, INT NumberOfOnlinePlayers, INT License, INT DefaultGameControls, INT SaveOrCheckPointID, INT AudioSettings, INT SkeletonDistanceInInches, INT NumberOfSkeletonsInView ) 226{ 227 struct 228 { 229 INT SecondsSinceInitialize; 230 INT ModeID; 231 INT OptionalSubModeID; 232 INT LevelID; 233 INT OptionalSubLevelID; 234 INT LevelInstanceID; 235 INT MultiplayerInstanceID; 236 INT SingleOrMultiplayer; 237 INT FriendsOrMatch; 238 INT CompeteOrCoop; 239 INT DifficultyLevel; 240 INT NumberOfLocalPlayers; 241 INT NumberOfOnlinePlayers; 242 INT License; 243 INT DefaultGameControls; 244 INT SaveOrCheckPointID; 245 INT AudioSettings; 246 INT SkeletonDistanceInInches; 247 INT NumberOfSkeletonsInView; 248 } LocalStruct = { SecondsSinceInitialize, ModeID, OptionalSubModeID, LevelID, OptionalSubLevelID, LevelInstanceID, MultiplayerInstanceID, SingleOrMultiplayer, FriendsOrMatch, CompeteOrCoop, DifficultyLevel, NumberOfLocalPlayers, NumberOfOnlinePlayers, License, DefaultGameControls, SaveOrCheckPointID, AudioSettings, SkeletonDistanceInInches, NumberOfSkeletonsInView }; 249 SenStat st; 250 st.dwUserID = dwUserID; 251 st.dwStatID = 134; 252 st.dwFlags = SenStatFlag_Normal; 253 st.dwNumProperties = 19; 254 st.arrProperties = (CHAR*)&LocalStruct; 255 st.dwNumValues = 0; 256 st.arrValues = NULL; 257 st.arrValueFlags = NULL; 258 259#ifdef SEN_LOGTELEMETRY 260 // if we're in debug build with logging then log the stat to a file for testing 261 SentientDebugLogStatSend("LevelResume", &st ); 262#endif 263 264 265 return Sentient::SentientStatsSend( &st ) == S_OK; 266} 267 268// PauseOrInactive 269BOOL SenStatPauseOrInactive ( DWORD dwUserID, INT SecondsSinceInitialize, INT ModeID, INT OptionalSubModeID, INT LevelID, INT OptionalSubLevelID, INT LevelInstanceID, INT MultiplayerInstanceID ) 270{ 271 struct 272 { 273 INT SecondsSinceInitialize; 274 INT ModeID; 275 INT OptionalSubModeID; 276 INT LevelID; 277 INT OptionalSubLevelID; 278 INT LevelInstanceID; 279 INT MultiplayerInstanceID; 280 } LocalStruct = { SecondsSinceInitialize, ModeID, OptionalSubModeID, LevelID, OptionalSubLevelID, LevelInstanceID, MultiplayerInstanceID }; 281 SenStat st; 282 st.dwUserID = dwUserID; 283 st.dwStatID = 135; 284 st.dwFlags = SenStatFlag_Normal; 285 st.dwNumProperties = 7; 286 st.arrProperties = (CHAR*)&LocalStruct; 287 st.dwNumValues = 0; 288 st.arrValues = NULL; 289 st.arrValueFlags = NULL; 290 291#ifdef SEN_LOGTELEMETRY 292 // if we're in debug build with logging then log the stat to a file for testing 293 SentientDebugLogStatSend("PauseOrInactive", &st ); 294#endif 295 296 297 return Sentient::SentientStatsSend( &st ) == S_OK; 298} 299 300// UnpauseOrActive 301BOOL SenStatUnpauseOrActive ( DWORD dwUserID, INT SecondsSinceInitialize, INT ModeID, INT OptionalSubModeID, INT LevelID, INT OptionalSubLevelID, INT LevelInstanceID, INT MultiplayerInstanceID ) 302{ 303 struct 304 { 305 INT SecondsSinceInitialize; 306 INT ModeID; 307 INT OptionalSubModeID; 308 INT LevelID; 309 INT OptionalSubLevelID; 310 INT LevelInstanceID; 311 INT MultiplayerInstanceID; 312 } LocalStruct = { SecondsSinceInitialize, ModeID, OptionalSubModeID, LevelID, OptionalSubLevelID, LevelInstanceID, MultiplayerInstanceID }; 313 SenStat st; 314 st.dwUserID = dwUserID; 315 st.dwStatID = 136; 316 st.dwFlags = SenStatFlag_Normal; 317 st.dwNumProperties = 7; 318 st.arrProperties = (CHAR*)&LocalStruct; 319 st.dwNumValues = 0; 320 st.arrValues = NULL; 321 st.arrValueFlags = NULL; 322 323#ifdef SEN_LOGTELEMETRY 324 // if we're in debug build with logging then log the stat to a file for testing 325 SentientDebugLogStatSend("UnpauseOrActive", &st ); 326#endif 327 328 329 return Sentient::SentientStatsSend( &st ) == S_OK; 330} 331 332// MenuShown 333BOOL SenStatMenuShown ( DWORD dwUserID, INT SecondsSinceInitialize, INT ModeID, INT OptionalSubModeID, INT LevelID, INT OptionalSubLevelID, INT MenuID, INT OptionalMenuSubID, INT LevelInstanceID, INT MultiplayerInstanceID ) 334{ 335 struct 336 { 337 INT SecondsSinceInitialize; 338 INT ModeID; 339 INT OptionalSubModeID; 340 INT LevelID; 341 INT OptionalSubLevelID; 342 INT MenuID; 343 INT OptionalMenuSubID; 344 INT LevelInstanceID; 345 INT MultiplayerInstanceID; 346 } LocalStruct = { SecondsSinceInitialize, ModeID, OptionalSubModeID, LevelID, OptionalSubLevelID, MenuID, OptionalMenuSubID, LevelInstanceID, MultiplayerInstanceID }; 347 SenStat st; 348 st.dwUserID = dwUserID; 349 st.dwStatID = 137; 350 st.dwFlags = SenStatFlag_Normal; 351 st.dwNumProperties = 9; 352 st.arrProperties = (CHAR*)&LocalStruct; 353 st.dwNumValues = 0; 354 st.arrValues = NULL; 355 st.arrValueFlags = NULL; 356 357#ifdef SEN_LOGTELEMETRY 358 // if we're in debug build with logging then log the stat to a file for testing 359 SentientDebugLogStatSend("MenuShown", &st ); 360#endif 361 362 363 return Sentient::SentientStatsSend( &st ) == S_OK; 364} 365 366// AchievementUnlocked 367BOOL SenStatAchievementUnlocked ( DWORD dwUserID, INT SecondsSinceInitialize, INT ModeID, INT OptionalSubModeID, INT LevelID, INT OptionalSubLevelID, INT LevelInstanceID, INT MultiplayerInstanceID, INT AchievementID, INT AchievementGamerscore ) 368{ 369 struct 370 { 371 INT SecondsSinceInitialize; 372 INT ModeID; 373 INT OptionalSubModeID; 374 INT LevelID; 375 INT OptionalSubLevelID; 376 INT LevelInstanceID; 377 INT MultiplayerInstanceID; 378 INT AchievementID; 379 INT AchievementGamerscore; 380 } LocalStruct = { SecondsSinceInitialize, ModeID, OptionalSubModeID, LevelID, OptionalSubLevelID, LevelInstanceID, MultiplayerInstanceID, AchievementID, AchievementGamerscore }; 381 SenStat st; 382 st.dwUserID = dwUserID; 383 st.dwStatID = 138; 384 st.dwFlags = SenStatFlag_Normal; 385 st.dwNumProperties = 9; 386 st.arrProperties = (CHAR*)&LocalStruct; 387 st.dwNumValues = 0; 388 st.arrValues = NULL; 389 st.arrValueFlags = NULL; 390 391#ifdef SEN_LOGTELEMETRY 392 // if we're in debug build with logging then log the stat to a file for testing 393 SentientDebugLogStatSend("AchievementUnlocked", &st ); 394#endif 395 396 397 return Sentient::SentientStatsSend( &st ) == S_OK; 398} 399 400// MediaShareUpload 401BOOL SenStatMediaShareUpload ( DWORD dwUserID, INT SecondsSinceInitialize, INT ModeID, INT OptionalSubModeID, INT LevelID, INT OptionalSubLevelID, INT LevelInstanceID, INT MultiplayerInstanceID, INT MediaDestination, INT MediaType ) 402{ 403 struct 404 { 405 INT SecondsSinceInitialize; 406 INT ModeID; 407 INT OptionalSubModeID; 408 INT LevelID; 409 INT OptionalSubLevelID; 410 INT LevelInstanceID; 411 INT MultiplayerInstanceID; 412 INT MediaDestination; 413 INT MediaType; 414 } LocalStruct = { SecondsSinceInitialize, ModeID, OptionalSubModeID, LevelID, OptionalSubLevelID, LevelInstanceID, MultiplayerInstanceID, MediaDestination, MediaType }; 415 SenStat st; 416 st.dwUserID = dwUserID; 417 st.dwStatID = 139; 418 st.dwFlags = SenStatFlag_Normal; 419 st.dwNumProperties = 9; 420 st.arrProperties = (CHAR*)&LocalStruct; 421 st.dwNumValues = 0; 422 st.arrValues = NULL; 423 st.arrValueFlags = NULL; 424 425#ifdef SEN_LOGTELEMETRY 426 // if we're in debug build with logging then log the stat to a file for testing 427 SentientDebugLogStatSend("MediaShareUpload", &st ); 428#endif 429 430 431 return Sentient::SentientStatsSend( &st ) == S_OK; 432} 433 434// UpsellPresented 435BOOL SenStatUpsellPresented ( DWORD dwUserID, INT SecondsSinceInitialize, INT ModeID, INT OptionalSubModeID, INT LevelID, INT OptionalSubLevelID, INT LevelInstanceID, INT MultiplayerInstanceID, INT UpsellID, INT MarketplaceOfferID ) 436{ 437 struct 438 { 439 INT SecondsSinceInitialize; 440 INT ModeID; 441 INT OptionalSubModeID; 442 INT LevelID; 443 INT OptionalSubLevelID; 444 INT LevelInstanceID; 445 INT MultiplayerInstanceID; 446 INT UpsellID; 447 INT MarketplaceOfferID; 448 } LocalStruct = { SecondsSinceInitialize, ModeID, OptionalSubModeID, LevelID, OptionalSubLevelID, LevelInstanceID, MultiplayerInstanceID, UpsellID, MarketplaceOfferID }; 449 SenStat st; 450 st.dwUserID = dwUserID; 451 st.dwStatID = 140; 452 st.dwFlags = SenStatFlag_Normal; 453 st.dwNumProperties = 9; 454 st.arrProperties = (CHAR*)&LocalStruct; 455 st.dwNumValues = 0; 456 st.arrValues = NULL; 457 st.arrValueFlags = NULL; 458 459#ifdef SEN_LOGTELEMETRY 460 // if we're in debug build with logging then log the stat to a file for testing 461 SentientDebugLogStatSend("UpsellPresented", &st ); 462#endif 463 464 465 return Sentient::SentientStatsSend( &st ) == S_OK; 466} 467 468// UpsellResponded 469BOOL SenStatUpsellResponded ( DWORD dwUserID, INT SecondsSinceInitialize, INT ModeID, INT OptionalSubModeID, INT LevelID, INT OptionalSubLevelID, INT LevelInstanceID, INT MultiplayerInstanceID, INT UpsellID, INT MarketplaceOfferID, INT UpsellOutcome ) 470{ 471 struct 472 { 473 INT SecondsSinceInitialize; 474 INT ModeID; 475 INT OptionalSubModeID; 476 INT LevelID; 477 INT OptionalSubLevelID; 478 INT LevelInstanceID; 479 INT MultiplayerInstanceID; 480 INT UpsellID; 481 INT MarketplaceOfferID; 482 INT UpsellOutcome; 483 } LocalStruct = { SecondsSinceInitialize, ModeID, OptionalSubModeID, LevelID, OptionalSubLevelID, LevelInstanceID, MultiplayerInstanceID, UpsellID, MarketplaceOfferID, UpsellOutcome }; 484 SenStat st; 485 st.dwUserID = dwUserID; 486 st.dwStatID = 141; 487 st.dwFlags = SenStatFlag_Normal; 488 st.dwNumProperties = 10; 489 st.arrProperties = (CHAR*)&LocalStruct; 490 st.dwNumValues = 0; 491 st.arrValues = NULL; 492 st.arrValueFlags = NULL; 493 494#ifdef SEN_LOGTELEMETRY 495 // if we're in debug build with logging then log the stat to a file for testing 496 SentientDebugLogStatSend("UpsellResponded", &st ); 497#endif 498 499 500 return Sentient::SentientStatsSend( &st ) == S_OK; 501} 502 503// PlayerDiedOrFailed 504BOOL SenStatPlayerDiedOrFailed ( DWORD dwUserID, INT ModeID, INT OptionalSubModeID, INT LevelID, INT OptionalSubLevelID, INT LevelInstanceID, INT MultiplayerInstanceID, INT LowResMapX, INT LowResMapY, INT LowResMapZ, INT MapID, INT PlayerWeaponID, INT EnemyWeaponID, INT EnemyTypeID, INT SecondsSinceInitialize, INT CopyOfSecondsSinceInitialize ) 505{ 506 struct 507 { 508 INT ModeID; 509 INT OptionalSubModeID; 510 INT LevelID; 511 INT OptionalSubLevelID; 512 INT LevelInstanceID; 513 INT MultiplayerInstanceID; 514 INT LowResMapX; 515 INT LowResMapY; 516 INT LowResMapZ; 517 INT MapID; 518 INT PlayerWeaponID; 519 INT EnemyWeaponID; 520 INT EnemyTypeID; 521 INT SecondsSinceInitialize; 522 INT CopyOfSecondsSinceInitialize; 523 INT Count; 524 } LocalStruct = { ModeID, OptionalSubModeID, LevelID, OptionalSubLevelID, LevelInstanceID, MultiplayerInstanceID, LowResMapX, LowResMapY, LowResMapZ, MapID, PlayerWeaponID, EnemyWeaponID, EnemyTypeID, SecondsSinceInitialize, CopyOfSecondsSinceInitialize, 1 }; 525 DWORD arrValueFlags[] = { SenStatValueFlag_Min, SenStatValueFlag_Max, SenStatValueFlag_Inc }; 526 527 SenStat st; 528 st.dwUserID = dwUserID; 529 st.dwStatID = 142; 530 st.dwFlags = SenStatFlag_Normal; 531 st.dwNumProperties = 13; 532 st.arrProperties = (CHAR*)&LocalStruct; 533 st.dwNumValues = 3; 534 st.arrValues = (CHAR*)&LocalStruct.SecondsSinceInitialize; 535 st.arrValueFlags = arrValueFlags; 536 537#ifdef SEN_LOGTELEMETRY 538 // if we're in debug build with logging then log the stat to a file for testing 539 SentientDebugLogStatSend("PlayerDiedOrFailed", &st ); 540#endif 541 542 543 return Sentient::SentientStatsSend( &st ) == S_OK; 544} 545 546// EnemyKilledOrOvercome 547BOOL SenStatEnemyKilledOrOvercome ( DWORD dwUserID, INT ModeID, INT OptionalSubModeID, INT LevelID, INT OptionalSubLevelID, INT LevelInstanceID, INT MultiplayerInstanceID, INT LowResMapX, INT LowResMapY, INT LowResMapZ, INT MapID, INT PlayerWeaponID, INT EnemyWeaponID, INT EnemyTypeID, INT SecondsSinceInitialize, INT CopyOfSecondsSinceInitialize ) 548{ 549 struct 550 { 551 INT ModeID; 552 INT OptionalSubModeID; 553 INT LevelID; 554 INT OptionalSubLevelID; 555 INT LevelInstanceID; 556 INT MultiplayerInstanceID; 557 INT LowResMapX; 558 INT LowResMapY; 559 INT LowResMapZ; 560 INT MapID; 561 INT PlayerWeaponID; 562 INT EnemyWeaponID; 563 INT EnemyTypeID; 564 INT SecondsSinceInitialize; 565 INT CopyOfSecondsSinceInitialize; 566 INT Count; 567 } LocalStruct = { ModeID, OptionalSubModeID, LevelID, OptionalSubLevelID, LevelInstanceID, MultiplayerInstanceID, LowResMapX, LowResMapY, LowResMapZ, MapID, PlayerWeaponID, EnemyWeaponID, EnemyTypeID, SecondsSinceInitialize, CopyOfSecondsSinceInitialize, 1 }; 568 DWORD arrValueFlags[] = { SenStatValueFlag_Min, SenStatValueFlag_Max, SenStatValueFlag_Inc }; 569 570 SenStat st; 571 st.dwUserID = dwUserID; 572 st.dwStatID = 143; 573 st.dwFlags = SenStatFlag_Normal; 574 st.dwNumProperties = 13; 575 st.arrProperties = (CHAR*)&LocalStruct; 576 st.dwNumValues = 3; 577 st.arrValues = (CHAR*)&LocalStruct.SecondsSinceInitialize; 578 st.arrValueFlags = arrValueFlags; 579 580#ifdef SEN_LOGTELEMETRY 581 // if we're in debug build with logging then log the stat to a file for testing 582 SentientDebugLogStatSend("EnemyKilledOrOvercome", &st ); 583#endif 584 585 586 return Sentient::SentientStatsSend( &st ) == S_OK; 587} 588 589// SkinChanged 590BOOL SenStatSkinChanged ( DWORD dwUserID, INT SecondsSinceInitialize, INT ModeID, INT OptionalSubModeID, INT LevelID, INT OptionalSubLevelID, INT LevelInstanceID, INT MultiplayerInstanceID, INT SkinID ) 591{ 592 struct 593 { 594 INT SecondsSinceInitialize; 595 INT ModeID; 596 INT OptionalSubModeID; 597 INT LevelID; 598 INT OptionalSubLevelID; 599 INT LevelInstanceID; 600 INT MultiplayerInstanceID; 601 INT SkinID; 602 } LocalStruct = { SecondsSinceInitialize, ModeID, OptionalSubModeID, LevelID, OptionalSubLevelID, LevelInstanceID, MultiplayerInstanceID, SkinID }; 603 SenStat st; 604 st.dwUserID = dwUserID; 605 st.dwStatID = 144; 606 st.dwFlags = SenStatFlag_Normal; 607 st.dwNumProperties = 8; 608 st.arrProperties = (CHAR*)&LocalStruct; 609 st.dwNumValues = 0; 610 st.arrValues = NULL; 611 st.arrValueFlags = NULL; 612 613#ifdef SEN_LOGTELEMETRY 614 // if we're in debug build with logging then log the stat to a file for testing 615 SentientDebugLogStatSend("SkinChanged", &st ); 616#endif 617 618 619 return Sentient::SentientStatsSend( &st ) == S_OK; 620} 621 622// BanLevel 623BOOL SenStatBanLevel ( DWORD dwUserID, INT SecondsSinceInitialize, INT ModeID, INT OptionalSubModeID, INT LevelID, INT OptionalSubLevelID, INT LevelInstanceID, INT MultiplayerInstanceID ) 624{ 625 struct 626 { 627 INT SecondsSinceInitialize; 628 INT ModeID; 629 INT OptionalSubModeID; 630 INT LevelID; 631 INT OptionalSubLevelID; 632 INT LevelInstanceID; 633 INT MultiplayerInstanceID; 634 } LocalStruct = { SecondsSinceInitialize, ModeID, OptionalSubModeID, LevelID, OptionalSubLevelID, LevelInstanceID, MultiplayerInstanceID }; 635 SenStat st; 636 st.dwUserID = dwUserID; 637 st.dwStatID = 145; 638 st.dwFlags = SenStatFlag_Normal; 639 st.dwNumProperties = 7; 640 st.arrProperties = (CHAR*)&LocalStruct; 641 st.dwNumValues = 0; 642 st.arrValues = NULL; 643 st.arrValueFlags = NULL; 644 645#ifdef SEN_LOGTELEMETRY 646 // if we're in debug build with logging then log the stat to a file for testing 647 SentientDebugLogStatSend("BanLevel", &st ); 648#endif 649 650 651 return Sentient::SentientStatsSend( &st ) == S_OK; 652} 653 654// UnBanLevel 655BOOL SenStatUnBanLevel ( DWORD dwUserID, INT SecondsSinceInitialize, INT ModeID, INT OptionalSubModeID, INT LevelID, INT OptionalSubLevelID, INT LevelInstanceID, INT MultiplayerInstanceID ) 656{ 657 struct 658 { 659 INT SecondsSinceInitialize; 660 INT ModeID; 661 INT OptionalSubModeID; 662 INT LevelID; 663 INT OptionalSubLevelID; 664 INT LevelInstanceID; 665 INT MultiplayerInstanceID; 666 } LocalStruct = { SecondsSinceInitialize, ModeID, OptionalSubModeID, LevelID, OptionalSubLevelID, LevelInstanceID, MultiplayerInstanceID }; 667 SenStat st; 668 st.dwUserID = dwUserID; 669 st.dwStatID = 146; 670 st.dwFlags = SenStatFlag_Normal; 671 st.dwNumProperties = 7; 672 st.arrProperties = (CHAR*)&LocalStruct; 673 st.dwNumValues = 0; 674 st.arrValues = NULL; 675 st.arrValueFlags = NULL; 676 677#ifdef SEN_LOGTELEMETRY 678 // if we're in debug build with logging then log the stat to a file for testing 679 SentientDebugLogStatSend("UnBanLevel", &st ); 680#endif 681 682 683 return Sentient::SentientStatsSend( &st ) == S_OK; 684} 685 686// TexturePackChanged 687BOOL SenStatTexturePackChanged ( DWORD dwUserID, INT SecondsSinceInitialize, INT ModeID, INT OptionalSubModeID, INT LevelID, INT OptionalSubLevelID, INT LevelInstanceID, INT MultiplayerInstanceID, INT TexturePackId, INT Purchased ) 688{ 689 struct 690 { 691 INT SecondsSinceInitialize; 692 INT ModeID; 693 INT OptionalSubModeID; 694 INT LevelID; 695 INT OptionalSubLevelID; 696 INT LevelInstanceID; 697 INT MultiplayerInstanceID; 698 INT TexturePackId; 699 INT Purchased; 700 } LocalStruct = { SecondsSinceInitialize, ModeID, OptionalSubModeID, LevelID, OptionalSubLevelID, LevelInstanceID, MultiplayerInstanceID, TexturePackId, Purchased }; 701 SenStat st; 702 st.dwUserID = dwUserID; 703 st.dwStatID = 147; 704 st.dwFlags = SenStatFlag_Normal; 705 st.dwNumProperties = 9; 706 st.arrProperties = (CHAR*)&LocalStruct; 707 st.dwNumValues = 0; 708 st.arrValues = NULL; 709 st.arrValueFlags = NULL; 710 711#ifdef SEN_LOGTELEMETRY 712 // if we're in debug build with logging then log the stat to a file for testing 713 SentientDebugLogStatSend("TexturePackChanged", &st ); 714#endif 715 716 717 return Sentient::SentientStatsSend( &st ) == S_OK; 718} 719 720namespace Sentient 721{ 722 723 extern int statsVersion; 724 725 class StatsVersionClass { 726 public: StatsVersionClass() { statsVersion = 24; } 727 }; 728 729 static StatsVersionClass versionClass; 730} 731