Clé du jeu Diablo 3. Comment j'ai obtenu la clé de la version bêta de Diablo III. Placement en réseau des héros

29 mars 2012 à 01:17

Comment j'ai obtenu la clé de la bêta de Diablo III

  • Développement de sites Web,
  • Programmation

Dans les vidéos YouTube C'est bien Récemment, des clés de Diablo III Beta ont commencé à apparaître. Dans la vidéo de 7 minutes, la clé est affichée pendant une seconde ; celui qui l'active en premier gagne. Voici à quoi ressemble la clé sur une image fixe :

Pensez-vous la même chose que moi ?


Il y a 10 clés au total.

Clé 1
Je ne connaissais pas la première clé et probablement personne ne le savait. Certaines personnes ont de la chance.

Clé 2
Pour la deuxième vidéo, le bot le plus simple était prêt, qui met à jour la page avec la vidéo ajoutée toutes les 10 secondes et, si une nouvelle vidéo apparaît, une fenêtre modale sous forme d'alerte le signale. Il s'est avéré qu'au bout de 4 heures, YouTube détecte le bot et lui demande de saisir recaptcha, puis toutes les heures, il lui demande de le saisir. C'est très gênant, mais je ne voulais pas vraiment perdre de temps et écrire normalement, car je m'attendais à ce que la deuxième touche apparaisse différemment, par exemple, au moins en lettres vertes. J'ai raté la deuxième clé, mais quand j'ai vu les mêmes chiffres et lettres gris, dans la même police, la même taille, sur le même fond blanc et même la taille des trois mêmes lignes, j'ai décidé de créer un robot normal.

Clé 3
Pour la troisième vidéo, le bot a utilisé l'API YouTube, dont le quota de nombre de requêtes permettait une analyse toutes les 5 secondes pendant 12 heures.

L'algorithme était simple :

Ainsi, une alerte est apparue m'informant de la sortie d'une nouvelle vidéo, je me suis connecté à battle.net, après 10 secondes la vidéo a été téléchargée, après encore 10 secondes une capture d'écran avec le numéro de série est apparue :


Je l'ai entré et... il s'est avéré qu'il était déjà utilisé. L'analyse des erreurs a montré que les données via l'API YouTube sont mises à jour avec un délai pouvant aller jusqu'à 5 minutes ! Lorsque le robot a découvert la nouvelle vidéo, il était déjà trop tard. Certains des autres robots ou utilisateurs appuyant sur F5 ont eu de la chance.

Clé 4
Dans la quatrième vidéo, le bot a été amélioré : il utilise désormais environ 100 serveurs proxy (1 thread pour chaque serveur proxy), qui analysent les gdata toutes les 5 secondes. Des tests ont montré qu'environ 20 proxys signalent simplement instantanément la sortie d'une nouvelle vidéo, les autres rattrapent leur retard en une minute, c'était génial. Contrairement à gdata, les liens directs apparaissent immédiatement pour n'importe quelle IP, donc ici, sans proxy, le bot télécharge simplement des vidéos en 20 flux (cela fonctionnait même en 1000 flux, YouTube le permet). La vitesse de téléchargement a augmenté. L'algorithme de scan a été amélioré : le bot scanne d'abord la deuxième partie de la vidéo en 4 threads (dans toutes les vidéos précédentes, la clé de série apparaissait à la fin de la vidéo), puis la première partie en 4 threads. Pour des raisons de fiabilité, le pas de numérisation a été réduit à 500 ms et d'autres paramètres ont également été légèrement affaiblis.

Ainsi, une alerte est apparue annonçant la sortie d’une nouvelle vidéo. Avant que j'aie eu le temps de me connecter à battle.net, la vidéo avait déjà été téléchargée (10 secondes) et une capture d'écran avec le numéro de série est apparue :

J'étais heureux d'avoir pris en compte la possibilité de son apparition en deux lignes. En me serrant la main, je l'ai écrit et activé d'une manière ou d'une autre ! Tout cela a pris environ 20 secondes. J'ai eu beaucoup de chance avec l'analyse : l'algorithme a montré presque immédiatement le numéro de série, malgré le fait que l'analyse complète a duré 30 secondes. Dans cette vidéo, il s'est avéré qu'il y avait deux clés qui apparaissaient séquentiellement, j'ai entré la seconde. Félicitations à celui qui a activé le premier !

Il reste encore 5 clés
Vous pouvez affiner l'algorithme : lancez le scan en même temps que le démarrage du téléchargement, l'algorithme deviendra plus compliqué, mais le gain sera de 10 secondes. Vous pouvez également reconnaître le numéro de série et le saisir automatiquement dans battle.net. Ensuite, la clé peut être saisie même en 5 secondes.

Tout a été écrit en Java en utilisant HttpComponents (protocole http) et VLCj (traitement vidéo)

P.S. Diablo III est cool

MISE À JOUR
C'était intéressant d'écrire le bot lui-même, donc je considère les 20 heures passées comme du temps consacré au divertissement, et non comme 20 heures pour lesquelles on pourrait gagner beaucoup plus d'argent que ce que coûte la clé elle-même. Pendant mon temps libre, je me détends ou étudie quelque chose de nouveau, plutôt que de travailler, mais voici quelque chose d'agréable et d'utile. Je n'ai pas encore fini le jeu.

Algorithme
Je n'ai délibérément pas indiqué immédiatement l'algorithme de détermination du numéro de série pour deux raisons. Ayant appris l'algorithme absolument précis, les auteurs de ThisIsHorosho rendront rapidement la clé méconnaissable, et je ne rendrai pas service à ceux qui écrivent également le bot. Même si j'avoue qu'il n'y a pas de telles personnes, mais à en juger par les commentaires, ils saisissent les numéros de série en 3 minutes, appuient-ils vraiment sur F5 en attendant...

Eh bien, puisqu'il y a beaucoup de questions sur l'algorithme... L'essentiel est que l'algorithme soit très rapide. L'idée principale est immédiatement visible sur la capture d'écran avec le numéro de série.

  1. Nous prenons une photo du cadre et l'enregistrons avec une taille de 640x320, VLCj vous permet d'enregistrer des images avec n'importe quelle résolution, même si la vidéo en a une autre. Tous les points proches de la couleur du texte sont rendus noirs, tout le reste est blanc. En conséquence, nous obtenons des images en noir et blanc. Quelques-unes de ces images sont incluses dans cet article.
  2. Pour chaque capture d'écran, nous calculons les statistiques des points blancs et noirs. Nous déclarons en arrière-plan ceux où le nombre de points blancs est supérieur à 92 % ; dans les tests, 94 % suffisaient, mais c'est avec une marge. Dans les cadres en arrière-plan, nous recherchons le numéro de série.
  3. Nous reculons de 30 pixels des bords du cadre, puisque la série apparaît plus près du centre, mais jamais du bord. Nous divisons le champ restant en 20x20 carrés, dans chacun desquels nous comptons le nombre de points noirs
  4. Nous déclarons que les carrés avec un nombre de points noirs compris entre 10 % et 60 % sont des carrés avec des lettres - cela tient compte du fait qu'une lettre ne peut tenir qu'à moitié dans le carré et avec une certaine marge.
  5. Les cadres qui ont une séquence continue d'au moins 6 carrés avec des lettres horizontalement et 3 carrés verticalement sont déclarés cadres avec un numéro de série. Nous les sauvegardons dans un dossier.

Par conséquent, seules les images avec un texte similaire au numéro de série apparaissent :

En pratique, ils ne sont pas nombreux, il n'est donc pas difficile de trouver celui dont vous avez besoin.

Travailler avec VLCj
Travailler avec VLCj est très simple. Tout d'abord, j'ai lu la documentation www.capricasoftware.co.uk/vlcj/tutorial1.php, puis j'ai joué un peu avec la classe MediaPlayer, mais c'était en quelque sorte bogué, en général j'ai décidé d'appeler des fonctions directes depuis la bibliothèque LibVlc - ce est à la fois plus rapide et sans bug.

Nous créons d’abord la bibliothèque
LibVlc libvlc = LibVlcFactory.factory().create();

Ensuite, nous créons un tableau de 8 AnalyzerThreads (de type Runnable) (chacun 1/8 du temps vidéo), que nous transmettons à Executors.newFixedThreadPool(4) dans cet ordre : 4, 5, 6, 7, 0, 1, 2, 3. Ceux. La deuxième partie de la vidéo sera numérisée en premier, puis la première. Chaque AnalyzerThread contient le code suivant :

System.out.println("Exécuter la section " + num); libvlc_media_player_t p_mi = nul ; libvlc_media_t média = null ; essayez ( // préparer //libvlc_instance_t instance = libvlc.libvlc_new(0, new String); libvlc_instance_t instance = libvlc.libvlc_new(2, new String("--vout", "dummy")); p_mi = libvlc.libvlc_media_player_new( instance); libvlc.libvlc_audio_toggle_mute(p_mi); libvlc.libvlc_media_new_path(instance, fileName); .libvlc_media_player_pause(p_mi) ; // démarrer la capture d'écran int block = blockFrom;<= msTo; msTime += msInBlock, block++) { String path = snapshotPath + File.separator + "snap-" + String.format("%03d.png", block); libvlc.libvlc_media_player_set_time(p_mi, msTime); int r = libvlc.libvlc_video_take_snapshot(p_mi, 0, path, picWidth, picHeight); if (r != 0) System.out.println("SNAPSHOT FAILED: block=" + block + ", returnCode=" + r); else analyzeImage(path); } } finally { if (p_mi != null) libvlc.libvlc_media_player_stop(p_mi); if (media != null) libvlc.libvlc_media_release(media); if (p_mi != null) libvlc.libvlc_media_player_release(p_mi); System.out.println("Close section " + num); }

La fonction analyseImage détermine si la clé est dans la capture d'écran ou non ; si c'est le cas, elle l'enregistre dans un dossier spécial.

Vingt ans se sont écoulés depuis que des hordes de morts-vivants, dirigées par les puissants démons Diablo, Méphisto et Baal, ont dévasté Sanctuaire, mais ceux qui ont lutté contre le mal ancien se souviennent encore des terribles événements de cette époque... À la recherche de connaissances qui leur permettront Pour aider à vaincre de nouvelles incarnations du mal, Deckard Cain est retourné dans les ruines de la cathédrale de Tristram. Et puis le héraut de l'Apocalypse descendit du ciel, englouti par les flammes : le coup tomba sur l'endroit même où Diablo entra autrefois dans le monde. La flamme céleste a réveillé l'ancien Mal. L'heure a sonné ! Les héros de Sanctuary doivent une fois de plus se lever pour défendre le monde des mortels contre les forces déchaînées des enfers.

ATTENTION! Vous achetez des codes (pas un disque) ! Le jeu est téléchargé après activation !

Comment utiliser le code Diablo III Standard Edition (RU) :

1) Accédez à eu.battle.net/ru/ et inscrivez-vous (si vous avez un compte Battle Net, connectez-vous).
2) Après vous être connecté, sélectionnez la section « Joindre la clé de jeu » (eu.battle.net/account/management/claim-code.html) et entrez le code Diablo III Standard Edition (RU) acheté.

Comment utiliser un code Diablo III Guest Pass (RU) :

1) Allez sur http://www.diablo3.com/guest et inscrivez-vous (si vous avez un compte Battle Net, connectez-vous).
2) Entrez la clé invité reçue
3) Téléchargez le jeu gratuitement (La version Invité permet de jouer à Diablo III jusqu'à la bataille avec le Roi Squelette dans l'Acte I)

Comment utiliser le code WoW Guest Pass (RU) :

1) Allez sur http://www.warcraft.com/guest et entrez la clé d'invité que vous avez reçue
2) Téléchargez la version d'essai gratuite du jeu
3) Jouez gratuitement à World of Warcraft jusqu'au niveau 20

A propos de la disponibilité : Beaucoup, régulièrement, officiellement (depuis SoftClub). Vous recevez les codes d'activation immédiatement après le paiement ! Comprend le code principal et le code invité pour D3 et WoW (tous réimprimés à partir de l'édition Jewel sur disque).

Avis

2

Aucun retour reçu des clients.

Afin de contrer la violation des droits d'auteur et des droits de propriété, ainsi que d'exclure les accusations infondées contre l'administration du site de complicité dans une telle violation, l'administration de la plateforme de trading Plati (http://www.site) fait appel à vous avec une demande - en cas de détection de violations sur la plateforme de trading Plati, informez-nous immédiatement à l'adresse du fait d'une telle violation et fournissez-nous des informations fiables confirmant votre droit d'auteur ou vos droits de propriété. Dans la lettre, veillez à inclure vos coordonnées (nom complet, numéro de téléphone).

Afin d'exclure les rapports infondés et délibérément faux faisant état de violations de ces droits, l'administration refusera de fournir des services sur la plateforme de trading Plati uniquement après avoir reçu de votre part des déclarations écrites de violation accompagnées de copies de documents confirmant vos droits d'auteur ou de propriété, au adresse : 123007, Moscou, voie Maly Kaluzhsky. 4, bâtiment 3, Cabinet d'Avocat « AKAR N°380 ​​».

Afin de répondre rapidement aux violations de vos droits et à la nécessité de bloquer les actions de vendeurs peu scrupuleux, Plati vous demande d'envoyer un télégramme certifié, qui servira de base au blocage des actions du vendeur, ce télégramme doit contenir une indication de : le type de droits violés, la confirmation de vos droits et vos coordonnées (sur le plan organisationnel - forme juridique de la personne, nom complet). Le blocage sera levé après 15 jours si vous ne fournissez pas au cabinet d'avocats des documents écrits confirmant vos droits d'auteur ou de propriété.

Malgré le fait que l'utilisation de codes de triche dans les jeux informatiques réduit généralement l'intérêt pour le jeu, ce sujet reste toujours populaire. Malheureusement, même dans le cas du jeu de rôle populaire Diablo 3, les joueurs recherchent avec impatience des opportunités d'obtenir injustement des avantages en matière de jeu.

L'utilisation de divers codes dans Diablo 3, ou plutôt de programmes de triche spéciaux, a sa propre caractéristique très importante, qui est rarement expliquée par les distributeurs (parfois payants) de ces programmes de triche. Je vous invite sur le site à bien réfléchir à votre désir d'obtenir un avantage dans le jeu par des moyens malhonnêtes, car cet événement pourrait bien se terminer de manière désastreuse pour votre compte sur bataille.net, mais commençons dans l'ordre.

Placement en réseau des héros

Il n'y a pas de jeu local dans Diablo 3, tous les héros sont stockés sur le serveur, il n'y a donc pas de jeu local ni de héros locaux ici. Ainsi, même l’édition banale des sauvegardes, qui était souvent pratiquée dans Diablo 2, ne peut pas aider ici, car nous n’y avons pas accès. Mais il n'y a pas lieu de s'inquiéter pour la sécurité de nos personnages, nous pouvons jouer pour eux aussi bien depuis le travail que depuis la maison ou dans un cybercafé.

Tous les personnages peuvent jouer à la fois dans leur propre monde et avec d’autres joueurs, vous ne pouvez donc pas utiliser directement les codes de triche dans le jeu, ils n’existent tout simplement pas. C'est-à-dire qu'ils n'existent pas dans la nature, grâce au format spécial du jeu de rôle Diablo 3, où tout est subordonné à un jeu collectif, un passage commun. Les développeurs ne pouvaient donc tout simplement pas laisser de codes susceptibles de renforcer votre personnage.

Il n'y a aucun code dans le jeu !

Il n'y a pas de codes dans Diablo 3. Ce serait la fin de ce chapitre sur le site, mais cela n'aura pas l'air très joli, je vais donc diluer le paragraphe avec quelques autres phrases. Il n'y a pas de triche officielle et sûre pour Diablo Three, et il n'y en aura pas à l'avenir, donc toute utilisation de celles-ci viole le contrat d'utilisation, que vous avez d'ailleurs accepté sans condition. Mais que font les tricheurs dans le nouveau monde de Sanctuary ?

Maphacks, bots et autres programmes

Diablo 3 utilise des programmes de triche spéciaux qui, d'une manière ou d'une autre, donneront un avantage hors jeu à vos personnages. Soit dit en passant, forcer les robots à cultiver de l'or ou des objets est également considéré comme de la triche et de la triche. C'est ainsi que les joueurs piratent le jeu et obtiennent des options supplémentaires pour leurs héros.

De nombreuses ressources Internet distribuent activement divers hacks de cartes et robots pour Diablo 3, non seulement sans avertir du danger possible de leur utilisation, mais en glissant aussi souvent des virus dans les archives. Ainsi, la popularité du jeu et le désir d'utiliser différentes astuces sont pleinement exploités par les propriétaires malhonnêtes de divers sites de jeux.

Vous devez donc être prudent au stade de la recherche et du téléchargement de différents hacks pour au troisième Diablo, car vous pouvez attraper un virus, et non le programme souhaité. En principe, le mieux est de ne pas télécharger du tout de cheats pour ce jeu et de ne pas les utiliser.

N'utilisez pas de triche

Même si la première raison que je vais décrire fera sourire de nombreux fans de jeux informatiques, je ne peux m'empêcher de la mentionner. En utilisant divers programmes de triche, vous réduisez considérablement le plaisir du jeu et violez les principes du fair-play. Bien que Diablo 3 soit pour beaucoup une quête éternelle d'or et d'artefacts puissants. Dans cette version, le jeu, au lieu de détente et de plaisir, apporte principalement des émotions négatives.

La deuxième raison, un avertissement, est plus pressante et concerne vos finances personnelles. Le fait est que si vous utilisez des astuces et des robots, vous pouvez simplement être banni du jeu. Blizzard a une assez bonne surveillance des tricheurs, et dix millions de joueurs veulent un jeu équitable pour leur argent. En conséquence, les tricheurs perdront probablement de l’argent. Et tu devras recommencer acheter Diablo 3 avec votre propre argent.

En conséquence, la recherche et l'utilisation de divers hacks et astuces, les robots de Diablo 3 peuvent entraîner non seulement une infection de votre ordinateur, mais également une interdiction de votre compte sur battle.net, de sorte que vous perdrez l'opportunité d'explorer Sanctuaire. tout à fait. Cet article Arbs ne vous semble peut-être pas trop anodin, mais le risque d'utiliser des astuces dans Diablo 3 est assez élevé, car le jeu est assez cher.

Pendant ce temps, vous pouvez obtenir un avantage dans le jeu en utilisant une méthode plus sûre, à savoir : acheter de l'or, c'est-à-dire la monnaie du jeu. En conséquence, vous dépenserez moins d'argent, le résultat sera plus fiable et vous gagnerez également du temps sur la configuration des hacks et des astuces. C'est encore plus sûr à utiliser vente aux enchères officielle pour de l'argent réel. La meilleure solution est de jouer à Diablo 3 pour le plaisir.