Principe du mode

D2 Survivors propose un survivors‑like dans l’univers de Diablo II : le joueur choisit l’une des sept classes, parcourt les cinq actes puis les difficultés Nightmare et Hell, tout en voyant ses compétences se déclencher automatiquement. Le système de progression repose sur la collecte d’une carte à chaque niveau, comme dans les jeux de type survivor. Le mode fonctionne uniquement avec une copie personnelle de Diablo II (patch 1.14) ou de Diablo II: Resurrected.

Architecture technique

Le projet s’appuie sur une application web ou de bureau qui, à la première exécution, lit les fichiers d’art et de son depuis le répertoire d’installation de l’utilisateur. Cette lecture se fait une seule fois ; les ressources sont ensuite stockées dans le stockage local du navigateur ou dans le dossier de l’application, évitant tout accès répété au disque. Le moteur utilise les données de compétences, d’objets et de niveaux déjà présentes dans le jeu original, les réinterprète via du JavaScript pour générer les effets d’auto‑cast et la logique d’apparition des hordes.

Le support des sept classes implique le décodage des arbres de compétences propres à chaque héros. Le code extrait les paramètres de chaque sort (portée, dégâts, temps de recharge) depuis les fichiers .d2x du jeu, puis les applique à un système d’événement qui déclenche les sorts dès que les conditions de combat sont remplies. Cette approche évite de recréer les mécaniques de combat, mais nécessite une correspondance exacte entre les structures de données du jeu source et le moteur JavaScript.

Implications de sécurité et de confidentialité

Le mode ne comporte aucune connexion réseau : aucune donnée n’est envoyée vers un serveur externe, ni même vers des services d’analyse. Les fichiers lus restent sur l’appareil de l’utilisateur, que ce soit dans le stockage du navigateur ou dans le répertoire de l’application de bureau. Cette conception élimine les risques de fuite de données personnelles ou de copie non autorisée du contenu du jeu, mais elle dépend de la capacité du navigateur à accéder aux fichiers locaux, fonction généralement restreinte aux environnements de type « file:// » ou aux extensions spécifiques.

Du point de vue de la sécurité, le fait que le code s’exécute côté client signifie que toute vulnérabilité éventuelle du moteur JavaScript affecterait uniquement l’instance locale. Aucun vecteur d’injection externe n’est présent, car aucune API serveur n’est invoquée. Cependant, l’accès direct aux fichiers du jeu requiert que l’utilisateur accorde explicitement les permissions de lecture, ce qui peut être bloqué par des politiques de sécurité strictes sur certains navigateurs.

Limites et perspectives

Le principal frein réside dans la dépendance à une copie légitime du jeu : sans le patch 1.14 ou la version Resurrected, le mode ne peut pas charger les ressources nécessaires. De plus, l’absence de serveur central empêche toute mise à jour automatisée du contenu ou l’ajout de nouveaux défis en ligne. Le mode reste donc limité à une expérience solo, sans classements ou événements multijoueurs.

Futurement, l’ajout d’un système de modding local pourrait permettre aux utilisateurs d’étendre les cartes ou d’ajuster les paramètres de difficulté, tout en conservant le modèle de confidentialité actuel. Le projet, développé par une seule personne, continue d’évoluer grâce aux rapports de bugs et aux contributions de la communauté.