1. Le forum de Minecraft-France va définitivement fermer ses portes. Celui-ci restera en lecture seule mais vous ne pourrez plus y apporter de nouveaux topics. Nous vous invitons à nous rejoindre sur le Discord de Minecraft-France qui permet de présenter vos projets, discuter avec la communauté etc.. Merci à tous d'avoir fait vivre ce forum de nombreuses années. Pour nous rejoindre sur Discord, Cliquez ici

[WIP][1.6.2] Créer un Launcher Minecraft [Visual Basic 2010]

Discussion dans 'Tutoriels' créé par _Tryall_, 22 Juil 2013.

  1. _Tryall_

    _Tryall_ Mineur de Fer

    Inscrit:
    30 Jan 2012
    Messages:
    501
    Points:
    109
    Sexe:
    Homme
    Ce Tutoriel est en cour de redaction, merci pour votre compréhension.


    Nous allons apprendre dans ce Tutoriel écrit à codder un launcher en Visual Basic (la version 2010), Déjà Visual Basic c'est quoi ? c'est simplement un langage de programmation super simple pour les débutants développé par Microsoft pour permettre à tout le monde de codder son petit programme sur Windows, surtout si vous vous débrouillez bien en anglais, vous trouverez vite fait la correspondance des codes, voir même chercher sur des forums anglophones pourquoi pas ?

    Au début vous n'allez surement rien comprendre, contentez juste de suivre mon tutoriel à la lettre, je vais vous guider (dans le merveilleux monde de Visual...). Une fois le tutoriel finit, vous pourrez commencer à modifier le code.

    Pourquoi faire un Launcher ?

    Les Launchers servent à modifier le Client Minecraft et à rassembler des informations directement dessus. Par exemple si vous avez un serveur modder, il sera plus simple pour vos utilisateurs de rejoindre votre serveur puisque le launcher installera automatiquement les mods, au lieu de demander au joueur de le faire Manuellement. Vous pouvez aussi proposer des News, votre site, un bouton de dons, ect...

    Le seul problème du Visual Basic, c'est qu'il est (normalement) disponible que pour les utilisateurs Windows. MAIS, Visual Basic permet de modifier très rapidement l'aspect visuel sans avoir besoin de se servir du code, et en parlant de code c'est surement l'un des langages de programmation les plus facile. Si vous voulez un launcher pour Mac ou Linux, apprenez à créer un launcher en JAVA, vous allez surement en baver si vous êtes débutant mais il existe aussi pas mal de tuto pour faire un launcher basique en Java.


    pour commencer, vous aurez besoin de :

    - Un Serveur WEB (ou simplement une DropBox, Téléchargez DropBox sur l'internet, il est simple d'utilisation, mais malheureusement, je vais me servir d'un serveur WEB de chez MTXServ).

    - Visual Basic 2010 (Vous pouvez le télécharger ICI. En tout cas, j'ai pris ce lien).


    Commençons à codder !


    [1] L'Apparence


    L'Apparence de votre launcher est importante, plus c'est beau, plus les utilisateurs apprécions d'utiliser votre Launcher à celui du launcher Minecraft officiel pour rejoindre votre serveur. Pour les besoins du Tutoriel je ne vais pas faire une oeuvre d'art, Je vais donc faire de simples maquettes juste pour vous montrer.

    Donc, quand vous lancez visual basic, vous tomberez sur ce truc :

    [​IMG]

    - Cliquez sur "Nouveau Projet" à gauche.

    - Cliquez sur "Application Windows Form"

    Vous avez maintenance ceci (avec une petite légende pour ne pas être perdu) :

    [​IMG]

    Ce que nous allons faire, c'est étirer la zone du Style graphique du launcher pour qu'il prenne toute la place de la "palette graphique". Puis clickez sur le launcher que vous venez d'étirer.

    Dans la Configuration (fenêtre des Propriétés) Modifiez Ceci :

    Background Image --> Sélectionnez l'image de Fond
    Background Image Tile ---> Mettez celui que vous voulez, Moi je met Title, c'est juste celui que j'aime le plus.
    Ico --> Mettez une image ".ICO" que vous pouvez aller sur ce Site pour convertir n'importe quel .png en .ICO
    Text --> Mettez le nom de votre serveur par exemple


    Vous avez donc ceci :

    [​IMG]

    Maintenant Nous allons mettre les boutons dans la boîte à outil ! On va par exemple en prendre 3 et Renommer le Text en "Connexion" "Site Internet" et "Patch"

    On va aussi prendre une "RichTextBox" et une "PictureBox"

    Mettez votre Logo dans la PictureBox grâce aux options, et dans l'option "SizeMode" Choisissez celui qui règle au mieux votre Logo. Modifiez le Background Color --> onglet "Web" et choisissez la couleur transparente si vous voulez rentre transparent le fond de votre Logo si il est déjà transparent.

    Voilà ce que nous avons : (excusez moi pour la pub, c'est le seul Logo que j'avais sous la main, de toute façon ce serveur est mort depuis plus d'un ans :p)

    [​IMG]

    Voilà, je pense que c'est bon ! Maintenant le Code !


    [2] Le Code (La RichTextBox)

    Bon ! Nous allons commencer par un code plutôt simple, vous allez avoir besoin de votre FTP ou de votre dropbox.

    Déjà, Créez un fichier .txt sur votre bureau, nommez-le MOTD par exemple, et écrivez une phrase au hasard dedans. Envoyez ce Fichier .txt sur votre FTP avec FileZilla (ou DropBox, c'est la même chose) et faites click droit sur le Fichier .txt ---> Copiez l'adresse dans le presse Papier (une phrase du même genre pour DropBox)

    Sur FileZilla, il vous donne une adresse "FTP" et pas "Web" du Style "ftp://[Nom D'utilisateur]@[L'adresse]"
    Supprimez tout le lien SAUF l'adresse et mettez http:// devant. Si vous n'êtes pas sûr, rentrez l'adresse sur votre navigateur Internet, normalement vous aurez le Texte qui s'affiche.

    Maintenant double clickez sur le FOND de votre launcher (pas sur un bouton, RichTextBox au autre, Le fond), vous arrivez normalement sur une page avec un début de Code.

    [​IMG]

    Et vous allez entrer ce Code :

    Code (cpp):
    Dim MOTD As String = "[Votre URL]/MOTD.txt"
            Dim MOTDTemp As String = My.Computer.FileSystem.SpecialDirectories.Temp & "\MOTD.txt"
            My.Computer.Network.DownloadFile(MOTD, MOTDTemp, "", "", True, 2000, True)
            RichTextBox1.Text = System.IO.File.ReadAllText(MOTDTemp)

    Si vous voulez comprendre le code qui se trouve au dessus, continuez à lire !
    Dim MOTD As String veut dire qu'on déclare une variable "MOTD" de type String (une suite de caractère).
    Après le "=" il y a l'url de votre MOTD.txt, ça veut dire qu'on assigne dans la variable "MOTD" l'url de votre MOTD.txt

    Dim MOTDTemp As String Veut dire qu'on déclare une autre variable "MOTDTemp" de type string (une suite de caractère) Après le "=" on assigne à cette variable le chemin d'accès des fichiers temporaires de votre ordinateur plus l'accès au /MOTD.txt

    My.Computer.Network.DownloadFile(MOTD, MOTDTemp, "", "", True, 2000, True) Ici on télécharge le fichier qui est assigné à la variable MOTD (on aurait pu le faire sans déclarer une variable, mais c'est plus lisible comme ça)
    et on met le fichier téléchargé dans le répertoire indiqué par la variable MOTDTemp


    Remplacez "MOTD" par le nom de votre Fichier, et "MOTDTemp" par le nom de votre Fichier + Temp.
    N'oubliez pas de remplacer l'URL de votre lien. Je laisse le mien, si vous voulez le Tester.

    Et Miracle ! Quand vous lancez votre launcher grâce à la flèche verte sur la barre d'outil, votre Message est affiché !

    [​IMG]

    Voilà, éditez votre Fichier .txt autant que vous le voulez, il sera modifié à chaque fois que le launcher sera lancé ! c'est purement inutile, mais c'est déjà un plus si vous voulez écrire une new ou autre.


    [3] Le Code (Le Site Internet)

    J'aurais peut être du commencer par cela, mais c'est trop tard :p

    Pour ouvrir un site, Rien de plus simple ! Double clickez sur votre bouton, vous arriverez sur la même page qu'avant, sauf que l'ancienne y est toujours.

    Et mettez y ce code :

    Code (cpp):
    process.start("http://www.minecraft-france.fr/")
    Mettez simplement l'URL de votre site entre les (" ") pour ouvrir votre site.

    Lancez encore une fois votre launcher, clickez sur le bouton que vous venez d'éditer, et votre site s'affiche !


    [4] Le Patch

    Le Patch c'est le base de votre launcher, c'est aussi le code le plus long et complexe. Déjà, préparez 3 choses :

    - Un Launcher Minecraft (celui que vous pouvez trouver officiellement, ou non...)
    - Un Fichier .txt
    - Les fichiers que vous voulez Modifier.

    Quand je parle des fichiers à modifier, c'est par exemple le dossier"1.6.2" dans "version" qui se trouve lui même dans le ".minecraft", et par exemple le dossier "Assets" qui se trouve dans le Dossier ".Minecraft"

    Techniquement, le code pour le remplacer est le même. On peut aussi tout simplifier et remplacer directement le ".minecraft", mais je pense que si on supprime le ".minecraft" des utilisateurs, ils vont pas être super content.

    Uploadez ces 3 fichiers sur votre FTP.


    Maintenant, Du Blabla pour comprendre comment le launcher fonctionne.

    Quand une personne ouvre pour la première fois votre launcher, le but du launcher est de télécharger les fichiers modifiés pour que l'utilisateur puisse rentrer sur votre serveur Modder. Le Seul problème c'est : "comment savoir si les fichiers sont déjà modifiés ou non ?" on pourrait très bien repatcher le jeu à chaque connexion mais ce serait juste super chiant. Donc on va utiliser un code de "comparaison" à chaque fois que la personne va lancer son Launcher.
    Et comment ? Avec le fichier Text ! nous pouvons voir si la version est à jour ou non.

    Donc vous allez écrire sur votre Fichier Text qui va aller sur votre FTP un nombre. 1 par exemple. Donc si l'utilisateur n'a pas de fichier Version.txt par exemple, le launcher va télécharger touts les fichiers du jeu et mettre en plus des mods, un fichier Version.txt avec "1" dedans. Comme ça, quand le launcher sera lancé pour la deuxième fois, il va détecter un fichier Version.txt et il va l'analyser pour savoir si le nombre dedans est le même que sur le FTP. Comme ça, si sur votre FTP vous mettez à jour vos mods, vous changerez le nombre dans le fichier Version.txt pour que le launcher puisse faire télécharger les nouveaux fichiers au Joueur.

    Pour Optimiser le bousin, on va mettre ce code que quand le joueur va clicker sur "connexion", si c'est pas à jour, il va demander à l'utilisateur de clicker sur "Patch", sinon il va lancer le launcher de Minecraft.

    Comme ça, même si il y a un bug dans le Code de vérification, l'utilisateur pourra toujours forcer le Patch des Mods.


    On passe à la vérification du Fichier.txt, qu'on va nommer Version.txt et mettre un joli petit '1' dedans.

    Double clickez sur le bouton 'connexion'
     
    • J'aime J'aime x 8
    • Informatif Informatif x 1
    • Utile Utile x 1
    #1 _Tryall_, 22 Juil 2013
    Dernière édition: 23 Juil 2014
  2. TheDictator

    TheDictator Enter the World

    Inscrit:
    22 Juil 2013
    Messages:
    33
    Points:
    33
    Sexe:
    Homme
    C'est moi qui beuG ou alors le tutoriel n'est pas finit ?
     
  3. Thetekiller

    Thetekiller Enter the World

    Inscrit:
    22 Juil 2013
    Messages:
    16
    Points:
    31
    Sexe:
    Homme
    Il a dit qu'il étais pas finit.
    Regarde en haut de la page
     
  4. TheDictator

    TheDictator Enter the World

    Inscrit:
    22 Juil 2013
    Messages:
    33
    Points:
    33
    Sexe:
    Homme
    Ha mince, je suis un peu blond --', merci de ta réponse ^^
     
    • J'approuve J'approuve x 1
  5. Thetekiller

    Thetekiller Enter the World

    Inscrit:
    22 Juil 2013
    Messages:
    16
    Points:
    31
    Sexe:
    Homme
    Pas de soucis
     
    • Troll Troll x 1
  6. _Tryall_

    _Tryall_ Mineur de Fer

    Inscrit:
    30 Jan 2012
    Messages:
    501
    Points:
    109
    Sexe:
    Homme
    Je passe de temps en temps pour faire avancer le Tuto. La partie de l'apparence est finie.
     
  7. Thetekiller

    Thetekiller Enter the World

    Inscrit:
    22 Juil 2013
    Messages:
    16
    Points:
    31
    Sexe:
    Homme
    ok
     
    • Troll Troll x 3
    • Mauvaise orthographe Mauvaise orthographe x 1
  8. Poireau

    Poireau Résident de l'End

    Inscrit:
    25 Août 2012
    Messages:
    5 097
    Points:
    209
    Sexe:
    Homme
    Je cite le règlement :
    Donc je sanctionne.
     
    • J'approuve J'approuve x 1
  9. _Tryall_

    _Tryall_ Mineur de Fer

    Inscrit:
    30 Jan 2012
    Messages:
    501
    Points:
    109
    Sexe:
    Homme
    Le chapitre 2 et 3 sont disponibles !
     
  10. Erevlys

    Erevlys Nouveau

    Inscrit:
    29 Mar 2011
    Messages:
    1
    Points:
    80
    Vivement la suite ! :)
     
  11. zombiecraft17

    zombiecraft17 Nouveau

    Inscrit:
    24 Juil 2013
    Messages:
    1
    Points:
    30
    Sexe:
    Homme
    Le Tutoriel est génial ! :) Cette partie est excellente,manque plus que la suite ! :D
     
  12. MrPriixy

    MrPriixy Nouveau

    Inscrit:
    10 Juil 2013
    Messages:
    8
    Points:
    40
    Sexe:
    Homme
    J'ai hâte à la suite !
     
  13. flouzzi59

    flouzzi59 Nouveau

    Inscrit:
    2 Août 2013
    Messages:
    1
    Points:
    30
    Sexe:
    Homme
    tros hâte pour avoir la suite ses prévue pour quand ?
     
    • Mauvaise orthographe Mauvaise orthographe x 2
  14. damagedkiller13

    damagedkiller13 Nouveau

    Inscrit:
    7 Août 2013
    Messages:
    9
    Points:
    30
    Sexe:
    Homme
    Merci pour ton aide! J'attend avec impatience la suite de ton tutoriel :D
     
  15. _Tryall_

    _Tryall_ Mineur de Fer

    Inscrit:
    30 Jan 2012
    Messages:
    501
    Points:
    109
    Sexe:
    Homme
    Actuellement je suis en vacance, Désolé de ne pas avoir prévenu plus tôt...
     

Partager cette page