
TruePlay fait partie de la Fall Creators Update
Une liste non exhaustive des améliorations disponibles via la Fall Creators Update de Windows 10 déployée depuis le 17 octobre dernier vient d’être publiée sur cette plateforme. Le lecteur voudra bien l’étendre avec TruePlay, une API que Microsoft a annoncée dans le cadre de la sortie de la build 16251 destinée aux Insiders. TruePlay est destinée aux développeurs qui veulent empêcher les tricheurs de prendre le pas sur leurs adversaires dans des sessions de jeux PC.
L’API permet la création de jeux qui fonctionnent dans des processus protégés contre les modifications mémoire. Cette protection permet de rendre l’expérience de jeu exempte d’attaques perpétrées par les aimbots ou autres speedhack, notamment, lors des sessions de jeux opposant plusieurs joueurs en ligne.
Par ailleurs, la firme de Redmond précise que la protection mémoire est couplée à un service de monitoring des sessions de jeu géré par le duo de fonctions EnableActiveGameMonitoring() et ReportGameActivity() dans l’exemple d’utilisation qui suit. Le service de surveillance est prévu pour traquer les manipulations mémoire mises en place par les tricheurs. À cet effet, il est prévu que des alertes soient générées et transmises aux développeurs desdits jeux. Dans le but de protéger la vie privée des utilisateurs, Microsoft assure que seuls ces derniers recevront les informations système collectées.
Code : | Sélectionner tout |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 | unsigned int frameNumber = 0; bool Init() { auto gameMonitor = Windows::Gaming::UI::GameMonitor::GetDefault(); if (gameMonitor != nullptr) { // The game displays the system UI to help the customer turn on game monitoring. concurrency::create_task(gameMonitor->RequestPermissionAsync()).then([=](Windows::Gaming::UI::GameMonitoringPermission permissionState) { if (permissionState == Windows::Gaming::UI::GameMonitoringPermission::Allowed) { // The customer turned on game monitoring. The game can proceed. } else if (permissionState == Windows::Gaming::UI::GameMonitoringPermission::DeniedByUser) { // The customer cancelled out of the dialog; game monitoring is not enabled. // The game should exit experiences or disable features which require game monitoring. } else if (permissionState == Windows::Gaming::UI::GameMonitoringPermission::DeniedBySystem) { // System policy prohibits game monitoring. The opt-in dialog will not be displayed because the customer cannot // give permission. The game should disable features requiring game monitoring. } }); } else { // Game monitoring is not supported on this system. } } void GameTick() { // ... Game logic ... // Update the anti-cheat system every 5 minutes in a 60 FPS game. if (frameNumber % (5 * 60 * 60) == 0) { GAME_MONITORING_PERMISSION_STATE permissionState; if (FAILED(GetGameMonitoringPermissionState(&permissionState))) { return; } if (permissionState != GAME_MONITORING_ALLOWED && permissionState != GAME_MONITORING_NOT_SUPPORTED) { // The game can't mitigate this, so it exits the function. return; } ReportGameActivity(); } ++frameNumber; } // Called by game logic. void EnterSinglePlayerMatch() { // Disable monitoring for offline games. EnableActiveGameMonitoring(FALSE); } // Called by game logic. void EnterMultiPlayerMatch() { EnableActiveGameMonitoring(TRUE); SetGameActivityCorrelationId(L"GameDefinedCorrelationIdToAssociateWithTruePlayLogs"); // The monitoring state may have changed, so update the service immediately. ReportGameActivity(); } |
L’API TruePlay est pour le moment réservée au développement d’applications dites universelles (UWP) c'est-à-dire pour des cibles matérielles tournant sous Windows 10 : PC, tablettes, Xbox, etc.
Source : MSDN
Et vous ?

Vous avez lu gratuitement 677 articles depuis plus d'un an.
Soutenez le club developpez.com en souscrivant un abonnement pour que nous puissions continuer à vous proposer des publications.
Soutenez le club developpez.com en souscrivant un abonnement pour que nous puissions continuer à vous proposer des publications.