- Le code source de Far Cry, FPS sorti en 2004, a été mis en ligne sur Internet Archive et a fuité publiquement
- Il a été téléversé sous le nom de fichier "Far Cry 1.34 Complete", et certains utilisateurs affirment avoir réussi à lancer le jeu après modification de certains fichiers source
- Le code inclut certains fichiers .exe, mais ni le code Xbox ni les assets du jeu ne sont inclus
- Depuis sa mise en ligne fin juin, il n’y a eu ni demande de retrait de la part d’Ubisoft ni prise de position officielle
- Far Cry avait été salué à sa sortie pour ses visuels et son gameplay très ouvert, et a connu un succès commercial avec plus de 2,5 millions d’exemplaires vendus
Circonstances de la fuite et composition des fichiers
- Un fichier nommé "Far Cry 1.34 Complete" a été téléversé sur Archive par un utilisateur nommé Llaetha.ro
- Le code source semble presque complet, et certains utilisateurs affirment avoir pu lancer le jeu après avoir modifié les fichiers source
- Le code comprend certains fichiers .exe, mais n’inclut ni le code Xbox ni les assets du jeu
- Tous les patchs du titre ne sont pas inclus, mais des utilisateurs indiquent qu’il est possible d’exécuter une version PC de debug sur le matériel
- La compilation génère 332 erreurs, et le projet ne peut donc pas être compilé tel quel
Diffusion de la fuite et réponse d’Ubisoft
- L’information sur la fuite a d’abord été partagée sur Twitter par Vincius Medeiros, avant d’être largement relayée sur des plateformes sociales comme Reddit
- Le code source a été mis en ligne fin juin, mais aucune demande de retrait (takedown) n’a été effectuée par Ubisoft
- Ubisoft n’a pas non plus publié de commentaire officiel sur cette fuite
Présentation du jeu Far Cry
- Far Cry est sorti en mars 2004 en exclusivité sur PC Microsoft Windows
- Le jeu a été salué pour ses visuels, son rythme de gameplay et la grande liberté laissée au joueur
- Il a connu un succès commercial avec plus de 730 000 exemplaires vendus dans les quatre premiers mois suivant sa sortie, et plus de 2,5 millions au total
1 commentaires
Avis sur Hacker News
J’aimerais que les entreprises publient simplement en open source leurs très vieux moteurs de jeu à des fins éducatives
Il suffirait de réduire tous les assets du jeu à 1/10 de leur taille pour qu’ils soient peu agréables à regarder, mais utilisables comme éléments de substitution
Cela aiderait aussi probablement l’ensemble du secteur en matière de vivier de talents
Windows 9x et le Mac OS classique ne sont plus vendus depuis plus de 20 ans et constituaient des impasses évolutives, donc il serait logique de publier leur code source pour que les gens puissent apprendre et les faire tourner plus facilement sur du matériel récent
Adobe a aussi clairement déclaré Flash Player mort, donc il ne semble pas y avoir de bonne raison de garder fermé le code d’un produit qui n’apporte plus de bénéfice, ni financier ni pour l’écosystème. Je parle ici non pas des outils de création Flash, mais du plugin Flash Player et de l’application autonome, tandis que les outils de création survivent sous le nouveau nom Adobe Animate
Même logique pour Trident, le moteur d’Internet Explorer, Presto, le moteur d’Opera, Winamp, ainsi que l’app mobile de Path. Path en particulier était vraiment superbe à l’époque de son apogée vers 2013, et j’aimerais voir comment ses filtres photo en temps réel étaient implémentés
En y repensant, les applications non ludiques se prêtent encore mieux à la publication du code source que les jeux. Les vieux jeux reviennent parfois sous forme de remasters pour plateformes modernes, en réutilisant le moteur ou une partie des assets, alors que les logiciels non ludiques, une fois morts, disparaissent généralement pour de bon
Le moteur physique Havok me vient immédiatement à l’esprit, mais il y en a beaucoup d’autres, et chacun est un plugin contenant du code propriétaire. Pour publier le code, il faudrait retirer tout cela, ce qui représenterait un travail énorme, et après ça il est probable que le code ne fonctionne plus de toute façon
Ce n’est pas seulement un problème récent. Comme l’a dit un autre commentaire, Doom lui-même a eu ce problème à l’origine, si bien que seul le code source Linux avait été publié
Ce serait bien que tous les assets et toutes les dépendances soient aussi automatiquement publiés sous une licence autorisant leur utilisation pour ce jeu et ses œuvres dérivées
En laissant les choses en l’état, la plupart des sources disparaissent avec le temps, et l’humanité entière s’en trouve appauvrie
Si la maintenance est arrêtée, cela pourrait être publié dans le domaine public après un délai raisonnable, par exemple 5 ans
Cela pourrait aussi résoudre plusieurs problèmes, comme l’excès de déchets électroniques
Je me souviens de la sortie de Far Cry. À l’époque, Doom 3 et Half-Life 2 étaient depuis un moment les jeux les plus attendus, parce qu’ils promettaient des graphismes très en avance sur tout ce qui existait alors
Mais à force d’être repoussés, Far Cry est sorti quelques mois plus tôt et a attiré une part importante de l’attention avec des graphismes d’un niveau comparable
Aujourd’hui, on voit rarement ce type de jeux PC exclusifs techniquement ambitieux. Leur importance sur le marché a fortement diminué. Les smartphones et les ordinateurs portables couvrent désormais la plupart des usages, donc moins de gens possèdent des PC de bureau coûteux, et ceux qui veulent jouer achètent souvent une console
The Witcher 3 était vraiment stupéfiant à sa sortie, et Red Dead Redemption 2 aussi est magnifique sur PC, même s’il était au départ exclusif aux consoles
Hellblade: Senua's Sacrifice a poussé très loin ce qu’il est possible de faire avec des ressources de développement limitées, et Star Citizen, bien qu’encore non sorti, reste un projet extrêmement ambitieux sur le plan technique
Cyberpunk 2077 a peut-être connu un lancement totalement catastrophique, mais à ma connaissance c’est le premier grand jeu à être sorti avec un renderer entièrement en ray tracing
Nous n’avons sans doute pas la même définition de ce qu’est un jeu « techniquement ambitieux ». Unreal Engine 5 propose des fonctionnalités réellement impressionnantes, et permet même à de petits développeurs indés d’atteindre un niveau de fidélité graphique complètement nouveau. La récente vidéo de « Unrecord » a conduit beaucoup de gens à la prendre pour de vraies images
La différence, c’est que les consoles n’ont commencé à vraiment convenir au genre FPS qu’à partir de la génération Xbox/PS2. À ce moment-là, c’était essentiellement Halo
Les FPS étaient donc, par nature, quasi exclusifs au PC, et seuls les plus gros jeux recevaient quelques années plus tard des portages console maladroits ou des spin-offs. FarCry Instincts en est un exemple
Les consoles ne sont devenues des plateformes de premier rang pour les FPS qu’à partir du milieu des années 2000, avec la génération 360/PS3. C’est pourquoi FarCry 1 était une exclusivité PC en 2004, alors que FarCry 2 est sorti simultanément sur consoles et sur PC en 2008
Même sans ray tracing, c’est de très loin l’un des plus beaux jeux auxquels j’ai joué depuis longtemps, au moins depuis The Witcher 3. L’histoire frappe fort aussi, et la bande-son est excellente
Dans les logiciels de jeu côté client, il est difficile d’empêcher qu’un petit saut technique soit immédiatement copié. Le cloud et le mobile constituent à peu près les derniers fossés défensifs
Est-ce qu’on va évoluer vers une conception de logiciels en boîte noire et vers les modules matériels de plateforme de confiance pour imposer sur PC le fossé technique des développeurs ?
Doom 3 a eu un portage correct, et Far Cry a été recréé en Far Cry Instincts, un meilleur jeu mais avec des graphismes moins poussés. Half-Life 2 a aussi été porté en 2005, mais de façon assez brute
Le véritable gagnant cette année-là, c’était The Chronicles of Riddick: Escape from Butcher Bay. Il réalisait sur Xbox, quelques mois avant la sortie PC de Doom 3, ce que Doom 3 faisait — ombres au pochoir, normal maps et éclairage unifié — et c’était aussi un meilleur jeu
Le résultat de
$ grep -ir "remove this after e3" | wc -lest 40Les premiers niveaux de Far Cry 1 étaient vraiment étonnants. On pouvait affronter des ennemis humains intelligents dans des décors de jungle et de plage en utilisant plusieurs stratégies
En revanche, les derniers niveaux se passaient tous dans des bâtiments étouffants avec d’étranges monstres qui couraient partout
Si tous les niveaux avaient eu l’ambiance du début, ça aurait sans doute été le meilleur jeu de ma vie
Puis à la fin, je me retrouvais à vider 500 balles sur des monstres façon Doom qui n’arrêtaient jamais d’arriver depuis le fond de couloirs sombres
Mais une fois entré dans les bâtiments sombres de la fin, la furtivité n’avait soudain plus aucune importance, et le jeu se transformait en shooter à réflexes instantanés où les jump scares et la vitesse de réaction comptaient davantage. Au final, je ne l’ai jamais terminé
Je me souviens à peine des derniers niveaux, et je n’ai pas non plus fini le jeu
C’était l’un des plus beaux jeux de l’époque
J’ai arrêté de jouer il y a quelques années, mais j’ai récemment vu mon cousin jouer à Far Cry 6, et même si ça avait l’air meilleur, ce n’était pas non plus un bond si énorme. Même 17 ans plus tard. C’est étonnant
Far Cry 1 était effectivement un très beau jeu, mais les nouveaux opus sont clairement bien plus beaux que l’original
L’industrie du jeu vidéo se trouve dans une position très étrange, un peu comme celle du cinéma. Reprendre des franchises des années 80-90 et en faire des suites est devenu la norme. Il y a l’avantage de monétiser la nostalgie chez les plus âgés, un autre avantage avec les nouveaux joueurs qui ne connaissent pas l’œuvre originale et consomment quand même, et un troisième : c’est bien moins coûteux que de créer quelque chose de totalement nouveau
La gestion façon MBA n’est pas compatible avec la prise de risques créatifs, donc les bons nouveaux jeux se sont largement raréfiés
Dans le jeu vidéo, l’évolution graphique suit aussi une logique similaire. Il est bien plus rentable de reprendre un moteur existant et de le retoucher légèrement à chaque génération. C’est pourquoi la qualité graphique des Far Cry récents est au moins très proche de celle des 3 ou 4 précédents, et pas si éloignée non plus de l’original
C’est le résultat d’une culture de l’amélioration progressive motivée par la réduction des coûts. Il y a aussi le fait que le rendement d’une augmentation du nombre de polygones chute de manière exponentielle. Une roue avec 3 points est horrible, mais avec 6, donc deux fois plus, une roue hexagonale est déjà bien meilleure et suffisait largement dans les vieux jeux. Avec 12, on la distingue à peine d’un cercle au premier coup d’œil, et avec 24 ou davantage, on perçoit presque plus la différence par rapport à la génération précédente
Même si les outils ont énormément progressé, il faut toujours du temps humain pour dessiner et concevoir quelque chose. Si on vise des niveaux de détail de plus en plus extrêmes, il faut davantage d’artistes, et les artistes ne fonctionnent pas particulièrement bien dans ce modèle
Cela dit, si on compare une vidéo YouTube de l’original tournant avec des réglages élevés sur une machine puissante et une vidéo de FC6 avec les paramètres au maximum sur un PC haut de gamme moderne, ça reste impressionnant
Far Cry 3 est le genre de jeu dont le gameplay est si bon qu’on ne fait plus attention aux graphismes, mais le 4 donne l’impression d’être sur une autre planète
Que ce soit légal ou non, je suis content que ce genre de choses soit rendu public. C’est ancien, donc ça ne causera probablement pas beaucoup de tort, et c’est excellent comme matériel d’apprentissage
Plutôt que d’apprendre à ajouter une couche de lave fragile et vulnérable par-dessus une autre, comme un énième stagiaire développeur C++ avec un fort turnover, il existe largement assez de meilleures ressources qui enseignent de bonnes pratiques
Je me souviens d’un bug qui augmentait la quantité de mouvement avec le deltaplane si on piquait vers le bas puis qu’on remontait
À l’époque, Far Cry 1 avait des graphismes presque surréalistes
Le jeu était amusant, mais ce qui m’agaçait le plus, c’est que si on lançait une pierre ou une grenade à un endroit visible par les ennemis, la jauge de furtivité tombait instantanément à 0 et ils se mettaient immédiatement à tirer
J’y ai beaucoup joué, héhé
La scène où l’on sort du bunker était incroyable, et peu après, à cause de « Doyle », on comprenait que ça allait finir en visite guidée
J’ai passé beaucoup de temps à lire du code source de jeux sur des sites comme https://github.com/bobeff/open-source-games, donc ça pourrait bien devenir mon nouveau projet du week-end
Voici d’autres bons liens liés à la fuite
github.com/StrongPC123/Far-Cry-1-Source-Full
breachforums.vc/Thread-FarCry-1-Leaked-Source-Code
Le dépôt GitHub a l’air plus intéressant
Il est possible que quelqu’un ait mis sur archive.org un contenu aussi manifestement contrefaisant pour mettre archive.org dans l’embarras
Quoi qu’il arrive ensuite, si quelque chose arrive, ce sera un jeu de taupe-taupe que le titulaire des droits n’a aucune chance de gagner
La dernière fois que j’en ai entendu parler, archive.org hébergeait aussi des ROM Nintendo, et là la violation du droit d’auteur est évidente