Digital Soft Code est une société basée à Bordeaux. Elle possède des bureaux dans lesquels leurs employés développent des jeux vidéo sous le label DSC Studio 22. Actuellement, ils travaillent sur Energy Heroes qui a déjà été greenlighté sur Steam et dont vous pourrez tester la bêta dès mercredi. Mais Digital Soft Code exerce une autre activité : la conception et la vente de cheats.

Comment une société qui crée des jeux vidéo et sponsorise un club de progamers peut, en parallèle de ça, développer des outils qui nuisent aux développeurs et à la scène eSports ? Nous les avons contactés pour essayer de comprendre ces contradictions. Et c’est en toute simplicité qu’ils nous ont répondu :

NoFrag : J’ai bien compris que vous aviez deux équipes séparées, l’une consacrée aux jeux et l’autre aux cheats, mais j’imagine qu’il existe une certaine porosité entre elles, ne serait-ce que parce qu’elles partagent la même direction.

x22 [NDLR : x22 est le pseudo du développeur, ainsi que la marque de leurs cheats] : Les membres de l’équipe de développement de JV n’interviennent pas dans les activités de cheats et s’auto-dirigent. Je m’occupe seul de cette activité. Ils me rendent des comptes sur le développement du jeu, ainsi que sur les deadlines. Je me suis cependant permis de leur donner quelques conseils de programmation au début du développement pour éviter des failles inutiles.

NoFrag : Votre expertise dans la création de cheats pourrait-elle bénéficier à l’intégration d’un système anti-cheat dans Energy Heroes ?

x22 : Pour l’instant il n’y a pas de système anti-cheat dans Energy Heroes. L’équipe de développement de JV ne possède pas cette expertise, en revanche comme je disais précédemment, je m’assure à ce que les développeurs prennent les précautions nécessaires pour éviter certaines failles que l’on retrouve dans la plupart des jeux actuels. Cependant, si cela était nécessaire, il ne me que faudrait très peu de temps pour mettre en place un système qui détecterait 95% des cheats actuels.

NoFrag : A contrario, est-il envisageable que vous sortiez un cheat pour Energy Heroes ?

x22 : Non, je ne pense pas. Mais que ce soit moi ou nos concurrents, si le jeu est populaire, les joueurs vont en réclamer, et il y aura des cheats.


Un cheat pour The Division développé par x22

NoFrag : N’avez-vous pas peur que Valve décide de retirer votre jeu de Steam à cause des cheats que vous commercialisez pour DOTA 2, CSGO, etc. ?

x22 : Non, pas vraiment. Valve fera son choix, quel qu’il soit, je n’ai pas de pouvoir sur leur décision. Valve sanctionnerait l’équipe de développement et ils seraient probablement déçus. Mais notre présence sur Steam n’est pas une fin en soi. Steam est un outil qui permet simplicité et visibilité dans la distribution du jeu, mais on pourrait très bien s’en passer.

NoFrag : Étant donné votre position particulière, peut-être avez-vous des idées ou des suggestions qui pourraient permettre aux deux mondes de cohabiter. Voyez-vous des solutions à même de satisfaire à la fois les joueurs qui souhaitent tricher et ceux qui désirent jouer des parties équilibrées ? Et par la même, des solutions qui réconcilieraient les développeurs de cheats et ceux de jeux vidéo ?

Le prix du cheat
Il y a un an et demi, un hacker révélait que les cheats privés pouvaient coûter plus de 1000$ et s’activer en LAN à partir de n’importe quel PC rien qu’en se connectant à Steam.Il estimait que ceux développés par x22, des cheats grands publics moins perfectionnés et facturés environ 15$/mois, devaient leur rapporter entre 40.000$ et 50.000$ par mois rien que pour CSGO.

x22 : Je ne pense pas que ces deux mondes puissent cohabiter. Du moins pas officiellement. Je n’imagine aucun joueur acceptant que certains aient des privilèges qu’eux n’ont pas. Par exemple, le cas des jeux pay-to-win, ils sont très mal vus et moyennement populaires. Des joueurs payent pour avoir des avantages qui déséquilibrent une partie. Mais officieusement, je pense que les tricheurs et les joueurs réguliers cohabitent déjà. Je suis prêt à parier que 50% du TOP1000 de CSGO est composé de tricheurs. Et je ne parle pas des tricheurs qui font cent Headshots par minute, je parle de tricheurs qui se donnent un léger coup de pouce pour avancer un peu plus. Ceux-là, on est incapable de dire s’ils trichent ou s’ils sont bons.

Avant de conclure ce mail, j’aimerais avoir votre avis sur ces questions : il y’a 10-12 ans, il était inenvisageable de pouvoir voler ou de se téléporter dans un jeu (ce qu’il est possible de faire dans GTA5, Rust, WarZ, DayZ, ArmA, H1Z1, Planetside 2, BF3, BF4) et encore moins de pouvoir être invincible ou de modifier les dégâts des armes (BF3, BF4, GTA5). Pourquoi les gros développeurs, ayant le budget pour, n’investissent pas dans des cheat coders, ne serait-ce que pour des conseils ? Il ne faut pas de système anti-cheat pour régler cela, juste un meilleur code client/serveur. Cela est quand même dommage de laisser des erreurs aussi grossières pour des gros titres.

Ou alors, est-ce qu’ils auraient des raisons de “laisser faire” ? 🙂

Les éditeurs complices ?

Ainsi, un simple développeur de cheats pourrait facilement créer un système bloquant 95% des cheats actuels ? Il ne serait même pas nécessaire de créer un anti-cheat, mais simplement de réaliser un meilleur code client/serveur ? Pourquoi les développeurs ne font-ils pas cet effort ?

La réponse est évidente : un tricheur est un joueur ayant acheté à la fois un jeu et un cheat, généralement sous la forme d’un abonnement protégé par des DRM. S’il se fait bannir du jeu et qu’il veut continuer à bénéficier des nouvelles versions du cheat qu’il a acheté, il va devoir racheter le jeu. Sortir un jeu vulnérable permet donc aux développeurs d’attirer une clientèle de tricheurs qui peuvent être amenés à acheter plusieurs fois leurs jeux. Pourquoi alors chercher à protéger leurs titres ?

Options d’un cheat pour The Division :
Aimbot
– Auto Aim ( OnPress / Full )
– Aim at Enemy (AI)
– Aim at Ally (Player)
– Aim at Rogue
– Auto Fire
– Bone Aim ( Head / Body / Any )
– Smooth Aim (Humanized)
– Aim Angle
– Fire Delay
– Trigger Bot ( OnPress / Full )
– No Spread
– No Recoil
Hack
– No Reload
– Rapid Fire
– Teleport to Crosshair
Visual
– 3D / 2D Radar
– Player ESP
– Enemy ESP
– Hostage ESP
– JTF ESP
– Civilian ESP
– Bounding Box
– Crosshair (Cross – Dot)
Esp
– Name Info
– Distance Info
– Health Info
– 5 ESP Icons

Là aussi, la réponse est évidente. Les ventes d’un jeu multi dépendent directement de la qualité de l’expérience qu’il procure. Elles peuvent être encore boostées par une scène compétitive active qui fera la promo du titre en attirant des spectateurs aux différentes compétitions. Or, les cheats dégradent l’expérience de jeu et mettent à mal les compétitions.

Les gains apportés par les cheaters qui achètent un titre en plusieurs exemplaires compensent-ils les pertes dues aux nuisances causées par les tricheurs ? J’ai posé la question à des développeurs qui travaillent actuellement chez deux des plus grands éditeurs au monde. Le premier a déjà officié sur NoFrag et vous le connaissez peut-être sous le nom de L_Etranger. Le second travaille actuellement chez un studio réputé pour ses FPS ; nous l’appellerons Socrate pour préserver son anonymat.

L’avis des développeurs

« La complicité entre les développeurs de jeux et les vendeurs de cheats est un vieux fantasme imbécile », explique Socrate. « Je ne peux pas penser une seconde que quiconque écrit cela y croit réellement. Il y a tellement d’éléments pour soutenir le contraire que les lister serait une perte de temps. De mon expérience directe, il n’y a absolument rien qui me laisse penser qu’une telle complicité existe au sein des studios où j’ai travaillé. »

L_Etranger souligne que « pour les grosses productions, les plateformes cibles sont majoritairement les consoles. Ce sont des plateformes fermées, il n’est pas possible de lancer un programme non approuvé [comme un cheat] à moins de les jailbreak. Ce problème est de la responsabilité du constructeur et non des développeurs ou des éditeurs. Sachant que la principale raison de jailbreak une console est de pouvoir jouer à des jeux piratés et que les constructeurs font leur beurre sur la vente des jeux, ils sont au taquet pour lutter contre le jailbreak. La dernière génération est plutôt bien protégée, MS et Sony mettent régulièrement à jours les firmwares, bannissent les consoles suspectes… Dans ce contexte, ce qui importe lors du développement de l’architecture multijoueur n’est pas vraiment la sécurité (il n’y pas de transferts de codes de cartes bancaires durant une partie), mais la compatibilité d’intégration avec les fonctions du jeu (mécaniques et systèmes), puis le confort du joueur. »

Les développeurs et les éditeurs ne seraient donc pas complices des créateurs de cheats. Mais ne feraient-ils cependant pas preuve d’un certain laxisme ? Avec leurs moyens, ne pourraient-ils pas lutter plus efficacement contre la triche et, comme le suggère x22, annihiler facilement 95% des cheats actuels ? Comment expliquer qu’on puisse voler ou devenir invicible dans GTA 5 alors que c’était parfaitement impossible dans QuakeWorld il y a vingt ans ?

Pas vu, pas pris
Certains cheats peuvent être très difficiles à repérer, même avec un arbitre surveillant directement le joueur. Par exemple, un sniper utilisant un “auto trigger” ne visera pas mieux, mais déclenchera son tir automatiquement dès qu’un ennemi passera devant son viseur.

« x22 laisse penser qu’il y a d’importantes négligences et cite plusieurs exemples comme Battlefield 4 ou GTA5 », explique Socrate. « Je ne connais que peu de monde ayant travaillé sur ces jeux directement, mais les exemples qu’il cite avec condescendance sont un peu imbéciles ou naïfs à mon sens. Absolument tout le monde dans l’industrie est familier avec l’architecture réseau “à la QuakeWorld”, la plus robuste en théorie, mais elle ne s’applique pas directement sans énormément de travail supplémentaire à certains paradigmes que l’on retrouve dans certains jeux modernes (intégration de l’animation et de la physique au déplacement des personnages par exemple). Il s’agit souvent de compromis plutôt que d’erreurs grossières. »

QuakeWorld fonctionne sur une architecture client serveur où le serveur centralise et contrôle la position et les actions de tous les joueurs ce qui lui permet par exemple de leur interdire d’augmenter leur cadence de tir, d’être invincible ou de passer à travers les murs. Alors que dans de nombreux jeux modernes, une partie des actions et de l’état des joueurs sont calculées côté client ce qui permet à un cheat de les altérer.

« Cette architecture en plus d’être coûteuse est aussi très peu tolérante, » ajoute L_Etranger, « il suffit de problèmes de connexion pour que le joueur se retrouve téléporté en arrière (rubber banding) ou bloqué sur place. Cela est assez injuste envers les joueurs subissant du throttling [NDLR : bridage] de leurs fournisseurs, ceux ne pouvant jouer qu’en WIFI et tous les autres n’ayant pas la possibilité d’avoir une connexion fiable. C’est pourquoi il est plus courant d’utiliser des architectures plus tolérantes, et du coup plus vulnérables. Mais comme expliqué plus haut, l’exploitation de la vulnérabilité est relative à la sécurité de la plateforme, très fermée sur console.

D’autant plus que le selon le jeu, une réplication de cette précision n’est pas toujours viable. Par exemple dans GTA 5, en plus de devoir synchroniser les joueurs entre eux, il faudrait également répliquer un grand nombre de NPCs et de véhicules avec des physiques complexes. Cela demanderait une bande passante ainsi qu’une puissance de calcul trop importantes.

Aucune technologie ne peut être invulnérable aux cheats

Après, même l’architecture la plus robuste reste faillible : un système serveur/client avec validation par le serveur de toutes actions/mouvements permet de corriger la position d’un joueur qui a modifié son jeu et essaye de traverser un mur où d’avoir des munitions infinies. Mais cela ne l’empêche pas d’altérer l’affichage et les contrôles qui restent locaux à sa machine, pour créer des wallhacks et des aimbots… [Même en déportant tout le jeu sur un PC distant et en jouant] via un stream, les contrôles restent locaux et donc exploitables par un aimbot. »

« L’aimbot est un bon exemple », renchérit Socrate. « Il est en théorie possible de construire un robot complètement déconnecté de ton PC qui analyserait l’écran et donnerait des inputs tout à fait valides pour ne faire que des headshots. Idem pour la compensation du recul dans CS: les patterns étant prédéfinis, rien n’empêche mécaniquement de les compenser à la perfection. Ça signifie que d’un point de vue architecture réseau, ce sont des cheats contre lesquels on ne peut rien faire. Même chose pour les wallhacks : à partir du moment où le client connait la position des autres joueurs même s’ils ne sont pas visibles (ce qui est nécessaire pour localiser les sons par exemple), tu peux imaginer intercepter les appels DirectX que va faire le jeu pour implémenter ton hack. À nouveau, ton architecture réseau ne peut pas t’aider à ce niveau. À ma connaissance, ces cheats sont principalement détectés par analyse statistique. En gros, quelqu’un qui fait 100% de headshots en full-auto avec des mouvements de souris parfaits se fera repérer immédiatement. Un cheater plus malin, qui ne se sert de son aimbot qu’une fois de temps en temps, ne se fera pas détecter par contre. Mais du coup, il n’est peut-être pas si gênant que ça pour les autres, sauf si c’est en compétition. »


Un cheat de type “ESP” pour Extrasensory perception

À en croire Socrate et L_Etranger, les développeurs et les éditeurs n’ont pas d’intérêts à sortir des jeux vulnérables, contrairement à ce que sous-entend x22. Quand ils choisissent de baser leur architecture réseau sur des technologies moins sécurisées, c’est pour des contraintes techniques (complexité des animations, nombre de NPCs, physique des véhicules) et pour le confort des joueurs qui ne possèdent pas des connexions robustes très haut débit. Et quand bien même ils choisissent une architecture serveur/client semblable à celle de Quakeworld, il est impossible qu’un jeu soit parfaitement protégé car des automates parfaitement indépendants du jeu peuvent analyser l’affichage ou les appels DirectX afin d’offrir aimbots et wallhacks.

L_Etranger conclut que « le cheat sur PC est surtout dû à l’exploitation d’une faiblesse qui fait aussi sa force : son ouverture. Exploiter les faiblesses d’un système, c’est une pratique vieille comme l’humanité. Ce n’est pas pour rien que tous les sports ont des arbitres. »