Jump to content

Search the Community

Showing results for tags 'Minecraft'.



More search options

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


Forums

  • Communauté
    • Before Anything
    • Announcements
    • Members Presentations
    • Your Projects
    • Recruitment
  • Tutoriels
    • La base
    • Vanilla
    • Forge
    • Bukkit
    • Astuces
    • Autre
    • En attente de validation
    • En cours de rédaction
  • Créations
    • Minecraft
    • Games & Software
    • Web
    • Suggestions
  • The Graphic Corner
    • Personal Galleries
    • Public Galleries
    • On-Demand Creations
  • General Talk
    • General
    • Video Games
    • Development

Found 110 results

  1. Man'Stone est un serveur Minecraft survie sous candidature inspiré d’Hermitcraft. Après des expériences tumultueuse sur d'autres serveurs survie, nous décidons de lancer notre serveur. Nous recherchons actuellement des nouveaux joueurs pour rejoindre l’aventure et passer du bon temps sur le serveur. Nous vous invitons aussi à partager se message avec vos amis. Toutefois, il y a certains critères à respecter pour se faire admettre sur le serveur. Nous cherchons des gens matures, ouverts à la critique et sérieux. De plus, il est nécessaire d’avoir un minimum d’expérience sur Minecraft et avoir un level de build, redstone ou survie raisonnable. Pour donner de l’intérêt aux joueurs et perdurer le serveur dans le temps nous avons établi quelques règles que vous pouvez visionnez sur notre discord. Si vous êtes intéressé à rejoindre le serveur, veuillez rejoindre ce serveur distord: https://discord.gg/PwcEPrm afin de poster votre candidature. Sur ce, nous vous attendons. Le discord: https://discord.gg/PwcEPrm
  2. Team Owary: Build, Graphisme, Développement. Qui sommes nous» Nous sommes une team de développement, de graphisme et de build. Nous recrutons des développeurs, des graphistes, des builders et des community managers. Nous recrutons davantage d’effectif pour faire évoluer la team ! Notre but étant de pouvoir servir certain serveur en difficulté. Nous espérons faire évoluer le projet ! Recrutements » ───────────────────── ─────〖Développeur 〗──── ───────────────────── Minecraft ➢ Savoir maîtriser le Java (Plugin Spigot), Avoir des projets que vous avez fait à nous présenter. Web ➢ Savoir maîtriser la plupart des langages webs, Avoir des projets que vous avez fait à nous présenter. ───────────────────── ─────〖Graphiste〗────── ───────────────────── Maîtriser un de ces domaines: dessin, peinture, graphisme, photographie, Avoir des créations que vous avez fait à nous présenter. ─────────────────── ─────〖Builder〗────── ─────────────────── Être fort en build, Savoir travailler en équipe, Avoir des créations que vous avez fait à nous présenter. ──────────────────────────── ─────〖Community Manager〗───── ──────────────────────────── Être mature, Avoir un bon orthographe, Être actif. Contact » Email: owary.developpement@gmail.com Discord: discord.gg/sKphMaf Twitter: https://twitter.com/DeveloppementO
  3. Bonjour, J'ai pour projet d'ouvrir un serveur Minecraft 1.12.2. moddé avec forge sous launcher, (launcher déja créer) et je voudrais que quand on se connecte au launcher, le jeu minecraft se lance mais je voudrais avoir un menu personalisé, ça je sais faire mais je ne sais pas installer forge à mcp.. C'est pour cela que je recherche de l'aide ici, si quelqu'un peux m'aider se serais vraiment très gentils de sa part, Bonne journée, lesFLY
  4. Probleme Launcher 1.8

    Bonjour voila j'ai un souci quand le lance le Bootstrap qui ensuite il me lance mon Launcher sur ECLIPSE cela fonctionne parfaitement le Launcher télécharge bien les fichiers, mais quand je veux faire un teste en exportant le Bootstrap sur le bureau sa m'ouvre bien le Bootsrap avec le Launcher tout ça mais ça télécharge 20/nombre de fichier a chaque fois donc pour tout télécharger completement je doit quitter re-ouvrir le Bootstrap et sa télécharge 20 fichier en plus et ça a chaque fois. Merci si quelqu'un peux m'aider se ne serait pas de refus merci !
  5. Nous recherchons des développeurs JAVA Expérimenter (rémunéré) Pour continuer notre mods forge Venez en PV Si ça vous intéresse Il vous faudra Un exemple de ce que vous savez faire Votre expérience dans le développement Prouvez que le code est bien le vôtre Un bout du cahier des charges est disponible
  6. Bonjour, En suivant le tutoriel video pour crée un launcher je me suis heurter a un problme le jeux ne se lance pas apres le telechargement, voici les log La classe Launcher.java La classe LauncherFrame.java La classe LauncherPanel.java
  7. Bonjour/Bonsoir,Mon serveur est un serveur PvP Faction Farm2Win accesible de la version 1.8 à 1.14 !Mon serveur ouvre ce samedi 1 juin a 18h00Il n'y a aucune boutique sur le serveur !Vous pourrez ainsi obtenir les différents grades en Farmant toutes sortes d'items !Il y aura aussi des events réguliers comme une loterie et des totems !Je vous montre le trailer ici : Pour toute demande de partenariat veuillez me contactez discord : Leandro#4551IP : rivercraft.mccube.frSite : rivercraft.cfDiscord : https://discordapp.com/invite/2G34UReLes différents grades (atouts): Guerrier ------------------------------------------------------ - Accés au kit guerrier - Préfix Guerrier- Accés au /feed - Accés a l'enderchest au niveau 4 - Accés a 4 homesCoût : 100 000 money Gardien ------------------------------------------------------ - Accés aux atouts d'avant - Accés au kit gardien - Accés au prefix Gardien - Accés au kit pillage - Accés au /craft et /enchant - Accés a 5 homes Coût : 300 000 money Champion ------------------------------------------------------ - Accés aux atouts d'avant - Accés au kit Champion - Accés au prefix Champion - Accés au kit Agriculteur - Accés au kit Alchimiste - Accés au /repair - Accés a la clé de la box fer - Accés a 7 homes Coût : 750 000 money Roi ------------------------------------------------------ - Accés aux atouts d'avant - Accés au kit Roi - Accés au prefix Roi - Accés au kit Obsi - Accés au kit Enchanteur - Accés a la clé de la box OR - Accés a l'enderchest de niveau 5 - Accés a 10 homes - Coût : 1 200 000 money Démon ------------------------------------------------------ - Accés aux atouts d'avant - Accés au kit Démon - Accés au prefix Démon - Accés au kit Potions - Accés a la clé de la box Diamant - Accés a 12 homes Cout : 3 000 000 money Enderchest ------------------------------------------------------ L'enderchest à été changé vous pour ouvrir votre enderchest faites /ec open ou clique droit sur un enderchest ! Vous commencez avec un enderchest avec 36 slots ! Ensuite : Guerrier : 45 slots Gardien : 45 slots Champion : 45 slots Roi : 54 slots Démon 54 slots RTP ------------------------------------------------------ Pour vous téléportez aléatoirement sur la map faites /rc Trade ------------------------------------------------------ Trade sécurisé en fesant clique droit + sneak pour ouvrir le menu d'échange avec la personne concernés ! ou /trade etlenomdujoueur AP ------------------------------------------------------ Pour avoir un ap veuillez contactez un modérateur ! Les 10 premiers a avoir un grade démon auront un ap !
  8. Créer son propre launcher perso de zéro Cette uvre est mise à disposition selon les termes de la Licence Creative Commons Attribution - Pas dUtilisation Commerciale - Pas de Modification 4.0 International . Tout partage implique que vous citiez l'auteur original. \!/ CE TUTORIEL REQUIRE DES CONNAISSANCE EN JAVA POUR FAIRE VOTRE PROPRE INTERFACE SI VOUS NE L'AVEZ PAS APPRIS, DIRECTION OPEN CLASSROOM \!/ -[INTRODUCTION]- CE TUTORIEL N'EST PLUS A JOUR, IL FAUT SUIVRE LES TUTORIAUX VIDEOS ICI : http://forum.ironcraft.fr/topic/6738-videos-forgevanilla-1-créer-son-launcher-minecraft-de-zéro-entièrement-personalisé/ Salut tout le monde ! Voila un tutoriel qui va être surement fort utile a la communauté, un tutoriel pour créer a partir de rien, son launcher Minecraft personnalisé, pour toute version, et avec compatibilité forge. Ce tutoriel regroupe en fait trois librairies crées de zéro par moi-même ! - OpenAuth pour l'authentification, par Moi-Même - S-Update pour la mise a jour, par Moi-Même - OpenLauncherLib pour le lancement du jeu et un peu l'authentification, par Moi-Même -[SOMMAIRE]- 1] Préparation 2] Création d'une fenêtre de base simple 3] Authentification (OpenAuth) 4] Mise à jour (S-Update) A] Partie Java B] Partie Cloud (Les packs pré-faits sont ici !) C] La Progress Bar 5] Lancement du jeu (OpenLauncherLib) 6] Features en plus A] Créer un bootstrap simple et rapide B] Créer son pack avec n'importe quelle version forge/vanilla C] Sauvegarder le pseudo du joueur D] Faire en sorte de pouvoir bouger la fenêtre en cliquant dessus 7] Exporter son launcher A] En .JAR B] En .EXE C] En .APP 1] Préparation Dans cette partie nous allons préparer le projet avec les librairies et tous le tralala... Spoiler Commencez par télécharger les quatres librairies via ces liens : OpenAuth - Adf.ly (Me supporter) OpenAuth - Direct S-Update - Adf.ly (Me supporter) S-Update - Direct OpenLauncherLib - Adf.ly (Me supporter) OpenLauncherLib - Direct Gson (Par Google, utilisé par OpenAuth) Maintenant ouvrez eclipse et créez un nouveau projet, appelez le comme vous voulez Faites clique droit sur le projet --> Build Path. --> Add External Archives et ajoutez tous les jars obtenus Spoiler Ok maintenant on va préparer l'OpenLauncherLib avec trois constantes. L'objet GameVersion L'objet GameVersion contient les informations à propos de la version de Minecraft. Le nom précis de la version, et le type de la version. Vous avez le choix entre 3 types de version, 1.7.2 ou moins, 1.7.10, et 1.8 ou plus. Créons une classe apelée Launcher. C'est là qu'on rangera tout ce qui n'a pas de rapport avec l'interface. Créons donc notre objet GameVersion : public class Launcher { public static final GameVersion LC_VERSION = new GameVersion("nomdelaversion", "typedelaversion"); } Je l'ai appelée LC_VERSION, LC est l'abréviation de LaunCher, je vous conseille de faire pareil avec le nom de votre serveur, par exemple si votre serveur s'appelle PimpFaction, appeler votre variable PF_VERSION. Après c'est comme vous voulez ^^. Je l'ai mis final donc il faut mettre le nom de la variable en majuscule car c'est la convention ! Pour le premier argument mettez votre version précise (c'est important pour les assets). Par exemple "1.7.10", ou "1.8.3", etc... Pour le deuxieme argument, si votre version est inférieure ou égale à la 1.7.2, mettez GameType.V1_7_2_LOWER. Si votre version est la 1.7.10 mettez GameType.V1_7_10. Si votre version est supérieure ou égale à la 1.8 mettez GameType.V1_8_HIGHER. Si votre version est 1.5.2 ou en dessous, mettez GameType.V1_5_2_LOWER. Par exemple pour un serveur en 1.7.10 mettez : public static final GameVersion LC_VERSION = new GameVersion("1.7.10", GameType.V1_7_10); Pour un serveur en 1.6.4 mettez : public static final GameVersion LC_VERSION = new GameVersion("1.6.4", GameType.V1_7_2_LOWER); Pour un serveur en 1.4.7 mettez public static final GameVersion LC_VERSION = new GameVerison("1.4.7", GameType.V1_5_2_LOWER); L'objet GameInfos L'objet GameInfos contient les informations de Minecraft. Il contient le nom du serveur, votre objet GameVersion, et si forge est activé ou non. Créez donc votre objet GameInfos comme ceci (en dessous de LC_VERSION) : public static final GameInfos LC_INFOS = new GameInfos("NomDuServeur", ObjetGameVersion, tweaksActiveOuNon, tweaks); Remplacez NomDuServeur par le nom de votre serveur par exemple "PimpFaction", remplacez votre ObjetGameVersion pour votre objet GameVersion créé plus haut par exemple LC_VERSION, remplacez tweaks par si vous utilisez des tweaks où non (mettez true si vous êtes en 1.6.4 ou plus et que vous voulez forge, ou en 1.6.4 ou plus et que vous êtes en Vanilla avec Optifine et/ou Shader). Ensuite remplacez tweaks, par si vous avez mis false dans tweaksActiveOuNon mettez new GameTweak[] {} (pas de tweak), après si vous êtes en Forge fous mettez new GameTweak[] {GameTweak.FORGE}, mais si vous êtes en Vanilla, si vous voulez Shader mettez new GameTweak[] {GameTweak.SHADER}, et si vous voulez optifine mettez new GameTweak[] {GameTweak.OPTIFINE}, et si vous voulez les deux, mettez new GameTweak[] {GameTweak.OPTIFINE, GameTweak.SHADER}. Par exemple pour un serveur s'appelant PimpFaction en forge utilisant l'objet GameVersion créé plus haut : public static final GameInfos LC_INFOS = new GameInfos("PimpFaction", LC_VERSION, true, new GameTweak[] {GameTweak.FORGE}); Le dossier de jeu Votre dossier de jeu est généré automatiquement par votre objet GameInfos, c'est génial non ? Il est dans AppData pour Windows, Application Support pour MAC, etc... Je vous conseil de stocker le dossier de jeu dans une variable pour pouvoir y acceder plus rapidement plus tard. Par exemple (en dessous de LC_INFOS) : public static final File LC_DIR = LC_INFOS.getGameDir(); Sinon utilisez tout simplement Launcher.LC_INFOS.getGameDir() à chaque fois 2] Création d'une fenêtre de base simple Spoiler Bon, je vais faire très simple, mais pas moche pour autant, parce que je suis maniaque. Je m'attarde pas trop sur le code, c'est juste a titre d'exemple. Créez une classe appelée LauncherFrame, elle contiendra le code de la fenêtre. Spoiler public class LauncherFrame extends JFrame implements ActionListener { private static LauncherFrame instance; private JLabel titre; private JTextField pseudo; private JPasswordField mdp; private JButton jouer; private JProgressBar pb; private String username = null; private String accessToken = null; private String id = null; public LauncherFrame() { this.setTitle("Mon Launcher Style"); this.setSize(850, 500); this.setUndecorated(true); this.setDefaultCloseOperation(EXIT_ON_CLOSE); this.setLocationRelativeTo(null); this.setLayout(null); this.getContentPane().setBackground(new Color(64, 64, 64)); titre = new JLabel("Mon Launcher Style", SwingConstants.CENTER); titre.setForeground(Color.WHITE); titre.setFont(titre.getFont().deriveFont(60f)); titre.setBounds(0, 20, 850, 100); this.add(titre); pseudo = new JTextField("Pseudo"); pseudo.setBounds(350, 275, 150, 20); this.add(pseudo); mdp = new JPasswordField("Mot de Passe"); mdp.setBounds(350, 305, 150, 20); this.add(mdp); jouer = new JButton("Jouer !"); // Enregistre la fenetre entant qu'ActionListener jouer.addActionListener(this); jouer.setBounds(350, 335, 150, 20); this.add(jouer); pb = new JProgressBar(); pb.setStringPainted(true); pb.setBounds(0, 480, 850, 20); this.add(pb); this.setVisible(true); } @Override public void actionPerformed(ActionEvent e) { Thread t = new Thread() { @Override public void run() { // Ici on appellera les methodes de la class Launcher } }; t.start(); } public static void main(String[] args) { // Astuce pour avoir le style visuel du systeme hôte try { UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName()); } catch (Exception e) { e.printStackTrace(); } instance = new LauncherFrame(); } // Retourne l'instance de LauncherFrame public static LauncherFrame getInstance() { return instance; } // Retourne l'instance de notre progress bar public JProgressBar getProgressBar() { return pb; } } N'oubliez pas CTRL + SHIFT + O pour les imports Au final ce joli code rend comme ça : Spoiler 3] Authentification (OpenAuth) Spoiler Bon, commençons par remplir notre méthode run() du thread de actionPerformed() dans LauncherFrame // On empeche l'utilisateur de modifier son pseudo/mot de passe ou de reappuyer sur jouer pseudo.setEnabled(false); mdp.setEnabled(false); jouer.setEnabled(false); // On s'authentifie dans un try catch try { Launcher.auth(pseudo.getText(), new String(mdp.getPassword())); } catch (AuthenticationException e) { // Si ça n'a pas marché on réactive tout pseudo.setEnabled(true); mdp.setEnabled(true); jouer.setEnabled(true); // On affiche l'erreur e.printStackTrace(); // Et on affiche un message d'erreur JOptionPane.showMessageDialog(LauncherFrame.this, "Impossible de se connecter : " + e.getErrorModel().getErrorMessage(), "Erreur", JOptionPane.ERROR_MESSAGE); } Et dans notre class Launcher : private static AuthInfos authInfos; public static void auth(String username, String password) throws AuthenticationException { } L'objet AuthInfos nous permettra de stocker les informations reçues. Et dans auth(), on authentifie le joueur. Authenticator authenticator = new Authenticator(Authenticator.MOJANG_AUTH_URL, AuthPoints.NORMAL_AUTH_POINTS); AuthResponse rep = authenticator.authenticate( AuthAgent.MINECRAFT, username, password, ""); authInfos = new AuthInfos(rep.getSelectedProfile().getName(), rep.getAccessToken(), rep.getSelectedProfile().getId()); 4] Mise à jour (S-Update) Donc, dans cette partie nous allons nous attaquer a la partie mise à jour, je vais devoir faire un mini tuto sur comment utiliser S-Update, mais vous allez voir, c'est simplissime. A] Partie Java Spoiler Tous d'abord créons une fonction vide dans Launcher : public static void update() throws IOException { } Puis appelons la dans LauncherFrame dans notre méthode run() de actionPerformed() dans LauncherFrame, après Launcher.auth(), toujours dans le try catch, appelons notre méthode. pb.setString("Verification des mises à jours"); Launcher.update(); Et rajoutez un autre bloc catch après l'autre comme ceci : catch (IOException e) { // Affichage d'un message d'erreur JOptionPane.showMessageDialog(null, "Impossible de mettre a jour mon serveur ! : " + e, "Erreur !", JOptionPane.ERROR_MESSAGE); // On reactive tout pseudo.setEnabled(true); mdp.setEnabled(true); jouer.setEnabled(true); // On affiche l'erreur e.printStackTrace(); } Ensuite initialisons notre objet SUpdate dans la méthode update() qu'on viens de créer : final SUpdate su = new SUpdate("http://monsitestyle.fr/fichiersserveur/", LC_DIR); puis mettons à jour ! LauncherFrame.getInstance().getProgressBar().setString("Mise à jour..."); su.update(); C'est tout pour la partie code ! B] Partie cloud (Les packs pré-faits sont ici !) Spoiler Alors la partie cloud, très courte et très simple depuis S-Update 2 ! Tout d'abord téléchargez l'installateur (installer.php) ici : https://github.com/TheShark34/S-Update-Server/ (si vous ne pouvez pas le télécharger, téléchargez les sources en .zip et prenez juste installer.php). Ensuite sur votre FTP créez ou allez dans un dossier ou sera le serveur S-Update. Mettez-y le fichier installer.php. Ensuite depuis votre navigateur allez sur le fichier installer.php, vous devrez apercevoir le logo S-Update et une barre de chargement (très rapide). Et vous devriez tout d'un coup voir la page de configuration. La page de configuration permet de configurer un pseudo et un mot de passe pour accéder ensuite aux pages protégés dans le dossier protected/. Et l'URL de redirection est là où seront redirigés ceux qui iront sur la page du serveur. Quand vous avez fini cliquer sur le bouton =) Ensuite, vous accédez alors à l'accueil de S-Update (le dossier protected/) après avoir entré votre pseudo mot de passe. Donc voilà c'est bon ! Tout est configuré ! Sur cette page vous voyez le nombre total de connexion et les 5 dernières connexions en détail. Vous pouvez cliquer sur le bouton Configurer pour changer le mot de passe/pseudo/l'url de redirection. Vous avez maintenant juste a mettre les fichiers dans le dossier files/ du dossier de votre serveur sur votre FTP, et vous rendre dans la page d'indexage accessible depuis la page d'acceuil administrateur quand vous avez fini pour appliquer les changements ! Et pour mettre à jour les fichiers, juste changez les dans le dossier files/, et re-allez sur la page d'indexage =). Aussi vous pouvez mettre des zips dans le dossier zips ! Mettez les dans le dossier où ils devraient être extraits, mais attention, ce dossier sera automatiquement ignoré à la vérification ! Voici des packs préfaits à mettre dézipper directement dans le dossier de votre serveur 1.7.10 1.7.10-forge D'autres versions arrivent bientôt =) Si vous avez des packs qui marchent dites-le moi ! C] La Progress Bar Spoiler C'est super simple. Avant su.update(); Créez un nouveau thread qui tourne en boucle et change la barre : Thread t = new Thread() { public void run() { while (true) { LauncherFrame.getInstance().getProgressBar().setMaximum(su.getNumberOfFilesToDownload()); LauncherFrame.getInstance().getProgressBar().setValue(Downloader.getTotalDownloaded()); } } }; t.start(); 5] Lancement du jeu (OpenLauncherLib) Spoiler Commencons par créer une nouvelle méthode launch dans notre class Launcher : public static void launch() { } Pour l'appeler, toujours dans le try catch de notre action listener, après Launcher.update();, mettez : Launcher.launch(); Donc dans notre méthode commencons par créer un objet GameLauncher : GameLauncher gameLauncher = new GameLauncher(ObjetGameInfos, TypeDeGameFolder, authInfos); Remplacez ObjetGameInfos par l'objet GameInfos créé dans la partie 1], TypeDeGameFolder par le type d'organisation de votre dossier (si vous avez pris un pack préfait ou avez suivit le tutoriel de création de pack prenez GameFolder.BASIC). Et en dernier notre objet AuthInfos. Si vous voulez rajouter des arguments JVM (comme -Xms / -Xmx) rajoutez un tableau de String en dernier argument ! Par exemple, avec des arguments JVM -Xms512M et -Xmx1024M, les objets créés plus haut, et une organisation de dossier basique : GameLauncher gameLauncher = new GameLauncher(LC_INFOS, GameFolder.BASIC, authInfos, new String[] {"-Xms512M", "-Xmx1024M"}); Ensuite juste à lancer le jeu ! try { Process p = gameLauncher.launch(); Thread.sleep(5000L); LauncherFrame.getInstance().setVisible(false); p.waitFor(); System.exit(0); } catch (IOException e) { e.printStackTrace(); JOptionPane.showMessageDialog(LauncherFrame.getInstance(), "Impossible de lancer mon serveur ! : " + e, "Erreur", JOptionPane.ERROR_MESSAGE); System.exit(1); } catch (InterruptedException e) { System.exit(0); } ALORS ! Explication : D'abord on run tout dans un try catch. Déjà je lance le jeu et je récupère le processus créé. (1ère ligne : Process p = gameLauncher.launch() . Ensuite j'attends 5 secondes le temps que la fenêtre du jeu s'affiche (2ème ligne : Thread.sleep(5000L) . Ensuite je ferme notre fenêtre de launcher (3ème ligne : LauncherFrame.getInstance().setVisible(false)). J'attends que le processus se termine (4ème ligne : p.waitFor()). Et je quitte manuellement pour être sur que le launcher ne reste pas ouvert (5ème ligne : System.exit(0)). Ensuite dans le catch IOException J'affiche l'erreur (1ère ligne : e.printStackTrace)). J'affiche un message d'erreur (2ème ligne : JoptionPane.showMessageDialog(...)). Et je quitte (3ème ligne : System.exit(1)). Et le dernier catch arrive quand on a pas pu attendre que le processus se soit terminé ou juste pas pu attendre 5 secondes, donc ce n'est pas grave, on quitte juste pour être sur que le launcher ne reste pas ouvert. Voilà ! 6] Features en plus Votre launcher est beau, fonctionnel, mais basique. Voilà une liste de features à ajouter a votre launcher ! Proposez-moi en d'autre ! Cette liste s'embellit constament ! A] Créer un bootstrap simple et rapide Spoiler Donc, pour ceux qui ne savent pas, un bootstrap est un mini programme qui mettera à jour le launcher. C'est un autre programme séparé du launcher, il va télécharger et lancer le launcher. C'est un launcher de launcher, et c'est lui que vous distriburrez publiquement et non votre launcher. Il vous permettera de mettre à jour votre launcher en case de besoins, y compris les librairies car je sort régulièrement des mises à jour, c'est donc fortement conseillé, mais on peut s'en passer. Donc commencez par créer un nouveau projet sur Eclipse. Ajoutez y l'OpenLauncherLib et S-Update. Ensuite créez une nouvelle class, ici on va l'appeler MyBootstrap. (Ne l'appelez pas Bootstrap ou ça va vous faire chier avec l'OpenLauncherLib). Créez une méthode main simple qui lance la méthode start ok ? public class MyBootstrap { public static void main(String[] args) { MyBootstrap myBootstrap = new MyBootstrap(); myBootstrap.start(); } public void start() { } } D'abord déclarez 3 variables en haut de votre classes : private File launcherHome = new File(GameDir.createGameDir("nom_du_serveur"), "Launcher"); private SplashScreen splash; private ErrorUtil errorUtil; Le première sera le dossier ou sera sauvegardé le launcher et tout ça, remplacez nom_du_serveur par le nom de votre serveur, ca generera le dossier .nom_du_serveur dans AppData La deuxième sera notre splash. Et la troisième sera notre instance d'ErrorUtil permettant d'écrire dans un crash report et d'afficher un message d'erreur en une ligne ! Merci l'OpenLauncherLib ! Donc maintenant dans notre méthode start, commençons par initialiser notre objet ErrorUtil (permet d'attraper les erreurs pour faire des crash reports) : errorUtil = new ErrorUtil(launcherHome); Ensuite après, créons notre splash screen et affichons le ! try { splash = new SplashScreen("NomDeVotreServeur", ImageIO.read(getClass().getResourceAsStream("VOTREIMAGEDESPLASH.png"))); } catch (IOException e) { // Ne peut normalement pas arriver errorUtil.catchError(e, "L'image du splash n'existe pas !"); } splash.setVisible(true); Remplacez biensur VOTREIMAGEDESPLASH par le nom de votre image de splash, elle devra être a coté de votre classe !, et NomDeVotreServeur par le nom de votre serveur ! Si vous lancez vous verrez un joli splash apparaître normalement ! Ensuite après, passons à la mise à jour du launcher. Comme d'hab, merci S-Update ! SUpdate su = new SUpdate("http://monurldemiseajourdeBOOTSTRAP/", launcherHome); try { su.update(); } catch (IOException e) { errorUtil.catchError(e, "Impossible de mettre à jour le launcher !"); } Remplacez biensur l'url pas l'url d'un dossier (PAS LE MME QUE CELUI DU LAUNCHER) (créez un nouveau serveur S-Update) ou on mettera les fichiers de mises à jour. Ensuite donc, passons au lancement du launcher ! Grace à l'OpenLauncherLib c'est hyper simple ! LauncherClasspath launcherClasspath = new LauncherClasspath(new File(launcherHome, "launcher.jar"), new File(launcherHome, "Libs/")); LauncherInfos launcherInfos = new LauncherInfos("NOMDUSERVEUR", "CLASSEPRINCIPALEDULAUNCHER"); Bootstrap bootstrap = new Bootstrap(launcherClasspath, launcherInfos); try { Process p = bootstrap.launch(); Thread.sleep(1000L); splash.setVisible(false); p.waitFor(); } catch (IOException e) { errorUtil.catchError(e, "Impossible de lancer le launcher !"); } catch (InterruptedException e) { } System.exit(0); Remplacez biensur NOMDUSERVEUR par le nom de votre Serveur, et CLASSEPRINCIPALEDULAUNCHER par la classe principale de votre launcher. Comment former une classe principale ? Prenez le package ou est la classe qui contient la méthode main(String[] args) (dans le tuto LauncherFrame) et rajoutez le nom de la classe. Par exemple la classe LauncherFrame dans le package fr.pimpfaction.launcher donc on marquera fr.pimpfaction.launcher.LauncherFrame EXPLICATIONS ! 1. Création de l'objet LauncherClasspath contenant le fichier du launcher et le dossier des libs 2. Création de l'objet LauncherInfos qui contient le nom du serveur et la classe principale du launcher 3. Création de l'objet Bootstrap qui contient nos deux objets et qui lancera le jeux ! Dans le try 1. On lance le launcher et récupère le process 2. On attends un peu car sinon ce serait trop rapide et on ne verrait pas le splash 3. On ferme le splash 4. On attends la fin du process Dans le catch on demande a ErrorUtil de gérer l'erreur Et a la fin on quitte manuellement pour être sur que le Bootstrap ne reste pas lancé ! Voilà le code final ! public class MyBootstrap { private File launcherHome = new File(GameDir.createGameDir("nom_du_serveur"), "Launcher"); private SplashScreen splash; private ErrorUtil errorUtil; public static void main(String[] args) { MyBootstrap bootstrap = new MyBootstrap(); bootstrap.start(); } public void start() { errorUtil = new ErrorUtil(launcherHome); try { splash = new SplashScreen("MONSERVEUR", ImageIO.read(MyBootstrap.class.getResourceAsStream("MONIMAGEDESPLASH"))); } catch (IOException e) { } splash.setVisible(true); SUpdate su = new SUpdate("http://monurldemiseajourdeBOOTSTRAP/", launcherHome); try { su.update(); } catch (IOException e) { errorUtil.catchError(e, "Impossible de mettre à jour le launcher !"); } LauncherClasspath launcherClasspath = new LauncherClasspath(new File(launcherHome, "launcher.jar"), new File(launcherHome, "Libs/")); LauncherInfos launcherInfos = new LauncherInfos("MONSERVEUR", "CLASSEPRINCIPALEDULAUNCHER"); Bootstrap bootstrap = new Bootstrap(launcherClasspath, launcherInfos); try { Process p = bootstrap.launch(); Thread.sleep(1000L); splash.setVisible(false); p.waitFor(); } catch (IOException e) { errorUtil.catchError(e, "Impossible de lancer le launcher !"); } catch (InterruptedException e) { } System.exit(0); } Voila =) Simple non ? Merci l'OpenLauncherLib ! Maintenant comment organiser le dossier de mise a jour du bootstrap ? Dans le dossier (donc sur votre FTP). Faite comme dans la partie 4] pour créer votre serveur S-Update (UTILISEZ UN AUTRE QUE CELUI DU LAUNCHER). Et mettez-y vos librairies et votre launcher. Voilà ! B] Créer son pack avec n'importe quelle version forge/vanilla Spoiler Pour créer votre pack ce n'est pas compliqué. Le truc c'est que dans votre .minecraft officiel les versions sont entrelacées. Alors supprimez votre .minecraft officiel (faites une sauvegarde si vous voulez) et avec le launcher officiel téléchargez la version souhaitez. Ensuite si vous voulez Forge pour votre pack, téléchargez forge depuis leur site (http://files.minecraftforge.net/) et installez le, ensuite LANCEZ MINECRAFT CEST TRS IMPORTANT Maintenant dans votre .minecraft copiez tous les dossiers dans un autre dossier, maintenant on va travailler dans ce dossier. Dans ce dossier prenez le fichier versions/<votreversion>/<votreversion>.jar et mettez le a la racine du dossier. Appelez le minecraft.jar Ensuite supprimez le dossier versions/ et resourcepacks/. Maintenant dans le dossier librairies, cherchez dans la barre de recherche *.jar. Prenez tous les fichiers .jar (pas les .jar.sha) et copiez les dans un dossier libs/ qui sera a la racine du dossier de base. Supprimez le dossier librairies/ Téléchargez les natives ici : http://dl.dropbox.com/u/31232797/mcnatives.zip Mettez tout ce qu'il contient dans un dossier natives/ dans votre pack. Maintenant, zippez ce que contient le dossier assets/ dans un fichier zip (osef du nom), et laissez ce zip dans le dossier assets. Maintenant déplacez le dossier assets dans un dossier zips/ qui lui est à côté et non pas dans le dossier files/ Voilà vous devriez avoir un dossier zips avec un dossier assets contenant un fichier assets.zip (mais vous pouvez changez son nom), un dossier files/ avec : un dossier libs/ (avec juste des .jar), un dossier natives/ et un fichier minecraft.jar. Si vous voulez shader/optifine, mettez la lib dans le dossier libs Mettez tous ça dans le dossier de votre serveur S-Update et c'est bon =). C] Sauvegarder le pseudo du joueur Spoiler Dans cette partie, nous allons juste sauvegarder le pseudo de la personne qui se connecte, pour pouvoir le remettre lorsque qu'il relance le launcher. Créons donc un objet UsernameSaver au début de LauncherFrame : private UsernameSaver usernameSaver = new UsernameSaver(VotreObjetGameInfos); Biensur remplacez VotreObjetGameInfos par votre objet GameInfos, par exemple : private UsernameSaver usernameSaver = new UsernameSaver(Launcher.LC_INFOS); Ensuite, dans le constructeur, vous voyez pseudo = new JTextField("Pseudo"); ? Remplacez le par ça : pseudo = new JTextField(usernameSaver.getUsername("Pseudo")); Le "Pseudo" qu'on lui donne est la valeur par défault retournée si le fichier n'existe pas ! Pour enregistrer le pseudo, dans actionPerformed au tout début, vous avez juste à mettre ça : usernameSaver.setUsername(pseudo.getText()); Voilà ! Simple non =) ? D] Faire en sorte de pouvoir bouger la fenêtre en cliquant dessus Spoiler Si vous avez enlevé les bordures de votre fenêtre (fenetre.setUndecorated(true)) vous avez du voir que vous ne pouvez plus la bouger. On va remedier à ca en faisant en sorte que lorsqu'on reste cliqué sur la fenêtre et qu'on bouge la souris, çela bouge aussi la fenêtre. Depuis l'OpenLauncherLib 2 c'est super simple ! Vous avez juste à rajouter ça dans le constructeur de la classe votre fenêtre (LauncherFrame). (Plutot vers la fin). WindowMover mover = new WindowMover(this); this.addMouseListener(mover); this.addMouseMotionListener(mover); Et voilà ! Vous devriez être capable de bouger votre fenêtre en restant cliqué dessus ! 7] Exporter son launcher A] En JAR Spoiler Lisez cette partie attentivement. Bon, c'est une petite partie, mais la plus importante. Dans cette partie nous allons considérer que vous avez éclipse, sinon c'est que vous n'êtes pas un débutant, donc vous comprendrez cette partie quand même . Don faite clique droit sur le projet de votre Bootstrap si vous en avez créé un, ou Launcher sinon, Export --> Java --> Runnable Jar File. Dans Launch Configuration, choisissez l'entrée qui s'appelle : NomDuProjet - NomDeLaMainClass Si vous ne la voyez pas, elle est créé quand vous lancez votre Launcher/Bootstrap pour la première fois. Ensuite si vous avez un boostrap, cochez absolument "Copy required libraries in a sub-folder next to the jar" au lieu de "Extract required libraries into the jar" POUR LE LAUNCHER, et "Extract required libraries into the jar" POUR LE BOOTSTRAP. Un dossier NomDeVotreProjet_lib se crééra, ignorez le. Sinon, cochez "Extract required libraries into the jar" si vous avez un launcher seul, c'est très important ! Et vous pouvez exporter votre launcher ! Voilà vous avez un .jar ! Maintenant, on va faire comme les pros: Créér un .exe pour Windows, et même, un .app pour Mac ! (Si vous avez un Bootstrap c'est lui que vous devez transformer !) B] En .EXE Spoiler Commencez par télécharger Launch4J à cette adresse : http://sourceforge.net/projects/launch4j/files/launch4j-3/3.7/ Ensuite, lancez le. Dans Output File, mettez la déstination du .exe, n'oubliez pas .exe à la fin ! Dans Jar, mettez votre .JAR généré plus haut. Dans icon vous pouvez mettre l'icon de votre programme en format .ico (Pour convertir : http://iconverticons.com/online/) Ensuite allez dans l'onglet JRE et mettez dans Min JRE version 1.6.0 si votre launcher a été compilé avec Java 6, 1.7.0 avec Java 7 etc... Pour savoir, clique droit sur votre projet eclipse --> Properties --> Java Compiler. C'est la version minimum que devra avoir l'utilisateur qui lance votre programme. Je vous conseil très fortemment de prendre Java 6. Même si vous avez Java 8 installé ça marchera si vous changez les paramètres dans eclipse. Voilà ensuite appuyez sur l'écrou en haut et c'est bon ! Si vous voulez sauvegardé votre configuration, appuyez sur la disquette. Vous n'aurez qu'a la restaurer en appuyant sur le dossier après. C] En .APP Spoiler Commencez par télécharger SharkBundler (c'est un logiciel fait par moi ) : Windows : Adf.ly (Me Supporter) - Direct MAC : Adf.ly (Me Supporter) - Direct Autre : Adf.ly (Me Supporter) - Direct Ensuite, dans Jar File mettez votre fichier .JAR généré plus haut. Dans Output mettez le .app a généré (n'oubliez pas le .app à la fin !) (ne vous inquiétez pas les .app sont des dossiers) Dans Icon mettez l'icone si vous voulez au format .icns (Pour convertir : http://iconverticons.com/online/) Dans Minor Java Ver mettez la version de Java de votre programme. Si votre launcher a été compilé avec Java 6, marquez 6, ou 7 avec Java 7 etc... Pour savoir, clique droit sur votre projet eclipse --> Properties --> Java Compiler. C'est la version minimum que devra avoir l'utilisateur qui lance votre programme. Je vous conseil très fortemment de prendre Java 6. Même si vous avez Java 8 installé ça marchera si vous changez les paramètres dans eclipse. Ensuite dans Main Class mettez le package de votre classe principale suivit du nom de la classe. Par exemple si la classe de votre programme qui contient la methode public static void main s'appelle ClassPrincipale et se trouve dans le package fr.theshark34.coolcraft. Mettez fr.theshark34.coolcraft.ClassPrincipale. Ensuite dans App Name mettez le nom de votre Launcher. Et voilà appuyez sur Bundle et c'est bon ! Vous pouvez aussi sauvegarder votre configuration pour la sauvegarder plus tard. Voilà, c'est la fin de ce tutoriel, merci de l'avoir lu ! N'hésitez pas à créer un sujet dans la partie support si vous avez un problème, je me ferais un plaisir d'y repondre !
  9. Bonjour, Nous sommes SalvosCraft, un jeune serveur naissant qui n'est pas encore ouvert au public. Nous cherchons des personnes matures à l'écoute et en capacité de pouvoir nous donner un coup de main à la création du serveur. Vous pouvez postuler aux postes de modérateur (pour l'instant nous en avons pas trop besoin puisqu'il s'agit d'un serveur en développement), de builder (ayez un minimum de créativité et d'envie), de développeur etc... Merci de poster votre candidature sur ce forum : http://salvoscraft.forumactif.com/f1-recrutement-on En cas de besoin discord - Pexi#2263 Cordialement, L'équipe SalvosCraft Voici un petit aperçu de quoi ressemble le serveur, il n'y a pas grand chose c'est pour cela que nous cherchons des motivés :)
  10. Les bases de forge

    Sommaire Par quoi je commence ? Dossier : Tout savoir sur l'installation. Premier mod Les meilleurs mods commencent comme ça. Allo ? Est-ce que ça marche ? Premier build et distribution. Vous pouvez proposer des améliorations sur le topic de discussion.
  11. IMPORTANT DE TOUT LIRE ET DE FAIRE PASSER LE MESSAGEJ'ai remarqué depuis le début que j'ai créer Mon serveur Minecraft, que chacun des joueurs qui jouent a minecraft(en majoritée) aiment créer et l'ont m'a beaucoup parler de faire des unions de serveur ou autre pour s'unir ou autre(que j'ai toujours refusé) mais une idée a mijotée dans ma tête car moi aussi j'aime créer et même trop disons, et minecraft était un bon outil pour le faire valoir Je me suis dit, pourquoi ne pas faire quelque chose que tout le monde pourrait y participer et ainsi être chacun le créateur de quelque choseAlors j'ai eu une idée:Pourquoi ne pas créer un «Studio» qui rassemblerais tout le monde Et voila, j'ai créer Stralyris Studios, qui est un discord qui rassemble:Développeurs, concepteurs, Graphistes, Rédacteurs, Responsables, Representants, graphistes, Traducteur, Rédacteur et bien autre! tout le monde peut contribuerLes règles sont simple: Personne ne peut partir et travailler sur le projet seul, personne ne peut se l'attribuer et tout le monde peut le gérer.Ce projet ne s'adresse pas que pour minecraft ou le jeux vidéo mais aussi pour le web, pour les applis, tout ce que vous voulez, il nous faut juste des gens pour tout mettre en place, et ces gens c'est vous!Si vous voulez participer, c'est simple, vous devez simplement aller faire votre candidature ici et je vous recontacterai si vous êtes interessant pour le projet!(Il y a de grandes chances que oui)https://goo.gl/forms/Z0B6fkrL6GhuWtNv2N'hésitez surtout pas a renvoyer le formulaire et d'en parler a tout le monde, plus il y a de gens, plus le potentiel est grands!
  12. ------------------------------------------------------ Les 4 Royaumes -------------------------------------------------- Bonjour, je suis le fondateur du serveur : http://lesquatresroyaumes.tech/ c'est un serveur moddé unique en sont genre, avec 4 classes différentes, une histoire propre au serveur et des mods choisis pour une expérience de jeux inédit dans un décor magnifique. e voudrais un mod qui concerne un block en particulier dans minecraft. Il s'agirais que lorsque le joueur pose le bloc celui-ci soit détruit après 30 secondes avec un craft personnalisé qui permettra dans avoir 8 à la fois. L'image est l'une des 6 faces du block. Pour le craft il faudrait 5 stick de bois et 4 planches de n'importe quel bois. le nom du block serais Bridge-block.
  13. Présentation Je suis AtonHa, étudiant en faculté. Pour les curieux, je fais une License informatique et j'en suis à ma dernière année. Par ailleurs, je consacre beaucoup de temps à coder pendant mon temps libre afin d'améliorer mes compétences en programmation. J'ai participé à des projets de grande envergure, si je puisse-dire, dans un projet de cms minecraft avec d'autres développeurs. En ce qui me concerne, j'ai créé des dizaines de sites à but commercial et pour donner vie à mes projets personnels. Le web m'intéresse beaucoup puisque c'est de là qu'est né ma passion pour l'informatique. J'aime bien me diversifier en jonglant de langage en langage par exemple en faisant un jour du php et un jour du java. En d'autres termes, l'aventure fait parti de mes caractéristiques et je n'aime pas exécuter des tâches répétitives comme le travail à la chaîne. Vous allez certainement vous poser la question ci-après: Pourquoi te surnommes-tu AtonHa ? J'adore la mythologie égyptienne, et si vous décomposez mon pseudo, vous remarquerez ( pour ceux qui connaissent ) que Aton est le dieu du soleil et Ha est le dieu du désert oriental. Ma passion pour Minecraft Depuis mon adolescence, j'ai tissé une grande importance pour minecraft puisque c'était l'un de mes premiers jeux préférés derrière Call of. J'ai passé des bons moments tout comme des mauvais sur Minecraft. Je m'étais lancé dans la création d'un serveur PVP/Faction qui faisait parti des meilleurs serveurs Français. C'était d'ailleurs mon tout premier serveur et après son extinction, j'ai décidé de créer d'autres serveurs pour essayer de le réincarner. Aujourd'hui, ma passion pour Minecraft continue de subsister malgré mon âge. Psychologiquement il est impossible de m'en séparer puisque ça a marqué mon adolescence même si j'y joue plus du tout. Où veux-tu en venir ? Comme je vous l'ai dit au-dessus, Minecraft et moi sommes devenu de bons amis. De ce fait, j'ai décidé de me lancer dans la vente de launcher Minecraft pour poursuivre mes études et pour payer mon logement. Qu'en est-il du prix ? Je vends 20€ le launcher avec tout compris: Système d'authentification Minecraft ou Personnalisé Un lot de fenêtres pour dispatcher le launcher en plusieurs composants. ( Par exemple: une fenêtre pour l'installation et une fenêtre pour l'authentification) Système de suppression de fichiers en xml Système d'installation de fichiers en xml Je vous fourni mon code php pour créer et rafraîchir le code xml Toutefois, le design du launcher est à fournir par le client et n'est pas inclus dans l'offre. Si vous le souhaitez, je peux vous diriger vers mon collègue, qui s'occupe de cela. Je vends également le bootstrap à 6€ permettant ainsi de mettre à jour automatiquement le launcher. De plus, pour apporter une mise à jour graphique ou pour ajouter de nouvelles fonctionnalités au launcher, c'est 3€. Admettons que vous vouliez ajouter une nouvelle fonctionnalité, vous aurez 3€ + le prix de la fonctionnalité à payer. Exemple de travail réalisé Pour info: Vous avez ci-dessous le launcher, le bootstrap + la fenêtre d'installation. Me contacter Vous pouvez me contacter via mon site personnel https://www.atonha.fr ou directement par mail en me faisant parvenir votre message sur getmycms@gmail.com ou alors en m'ajoutant sur discord @AtonHa#3323.
  14. Bonjour je viens de créer un site web permettant au joueur de Minecraft de mettre leur CV cela permet au serveur de trouver des personnes compétentes dans tous les domaines simplement car c'est eux qui vont vers les joueurs et non le joueur vers eux . Le problème principal dans Minecraft est la visibilité pour faire une candidature à un serveur il faut le connaitre mais pas de souci M.CV est là, plus besoin de faire connaitre votre serveur alors qu'il n'est pas ouvert pour recruter des Buidleur, Développeur, Etc rechercher les sur M.CV Visiter le site maintenant
  15. Mod pour mon future serveur

    Bonjours à toi qui lis ce texte Si tu lis ça c'est que tu es sûrement codeur minecraft Donc j'aurais besoin de quelqu'un qui pourrais me faire sois un lu cher avec image de fond ect comme (si vous connaissez) le luncher de paladium sois le mod principal du serveur . Je suis "trop petit" (j'ai dix ans) donc je ne pourrais pas vous payer .
  16. Bonjour ou bonsoir tout le monde, Je fais ce sujet aujourd'hui pour vous annoncez le recrutement de mon serveur Minecraft. Pour commencer voici quelques informations: Le nom du serveur: Hézon Type de jeux: PvP, Créatif (bientot op prison) Les versions crackées acceptées: Oui Notre équipe déjà présente: Fondateurs: ImSinaroo & lelecooldu54 Administrateurs: burlyskuire185 & Mifhyz Développeurs: B4LL0_ Modérateurs: x (2 places) Architectes: fireofthestar & Torkeuille Assistants: x (3 place) YouTubeur: x (1 place) Graphiste: x (1 place) Nous recrutons encore: 2 Modérateurs 3 Assistants 1 YouTubeur 1 Graphiste Les recrutements se passe ici : http://hezon.my-heberg.fr/forum/#zone-recrutement.7 PS: Les candidatures des YT et des graphistes seront prioritaires. Cordialement ImSinaroo,
  17. [Usebub] "CrashCo"

    Bonsoir à tous ! Aujourd'hui je viens vers vous pour vous pars de mon avis de cet UseBug et une solution pour le patcher. Alors je trouve cette technique dégueulasse de ce faire lag ou completement couper sa connexion pour pouvoir casser des blocs dans un claim Oo. Donc voila je fais une sorte d'appelle au dev spigot pour patcher cela. Je ne suis pas asser compétant pour le faire malheureusement. Alors ma technique serait deux systèmes pour patcher cela. Le 1er serais de kick automatiquement une personnes qui a + de 300ms en moyenne. La 2eme sera de faire système de gestion de packet. Je m'explique. Il y aura un coté serveur et client. Le plugin serais le serveur et le client du joueur le client ducoup. Le serveur enverais une requête au client. Comme une sorte de ping en gros. Si le client ne répond pas il est automatiquement kick. Une requête toute les 1/2 seconde sera envoyer. Voila dite moi si vous avez d'autre proposition ou si quelqu'un est en train de bosser sur un système comme ça :D Je vous fais des bisous :3
  18. Salut ! J'ai commencé le développement d'un mod se centrant sur K9, le chien robot dans Doctor Who, niveau programmation, pas de souci, je devrai m'en sortir, mais niveau graphique... J'aurais donc besoin d'un modèle en Java pour K9, qui actuellement ressemble à ça https://media.forgecdn.net/attachments/thumbnails/230/502/310/172/2018-06-08_20.png Alors que la volonté était ça : https://images-na.ssl-images-amazon.com/images/I/91Qd1ntyNUL._SY355_.jpg Si vous avez la foi et l'envie de m'aidez, je vous en serais sincèrement reconnaissant ! Curse : https://minecraft.curseforge.com/projects/k9-mod Github : https://github.com/LotuxPunk/K9
  19. MysoriaTeam Bonjour à tous, et bienvenue sur notre CV. ▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃ ▃▃▃✘Qui Sommes nous ?✘ ▃▃▃ ▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃ Notre team se compose à l’heure actuelle de 4 personnes, ce qui permet de diminuer considérablement le temps d’attente de chaque commande. Nous utilisons uniquement MCP. Notre Team a pour ambition de se développer dans tous les domaines. C'est pourquoi nous profitions de ce CV pour recruter des Builders ainsi que des Graphistes. Pour les personnes intéressées, nous vous invitons à rejoindre le discord. Nos Réalisations : ▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃ ▃▃▃LAUNCHERS ▃▃▃ ▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃ ✓ Authentification Site (AuthMineWeb) ou Premium✓ ✓Sélection de la RAM✓ ✓Launcher Windows / Mac / Linux✓ ✓Version 1.7.10 ou supérieur✓ ✓Bootstrap personnalisé✓ ✘Design NON FOURNI✘ ✘Vous devez avoir un hébergeur web pour pouvoir héberger vos fichiers !✘ ✘Temps de livraison : Entre 2H et 3J après la validation de la commande. (Ces temps varient en fonction du travail demandé)✘ ▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃ ▃▃▃MCP ▃▃▃ ▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃ ✓Nouveaux Blocks✓ ✓Nouveaux Items✓ ✓Nouveaux Minerais✓ ✓Nouvelles Armures✓ ✓Nouveaux Outils✓ ✓Custom F3 / Inventaire / Echap / Menu Principal✓ ✓InfoBoard✓ ✓ToggleSprint✓ ✓Claim✓ ✓CPS✓ ✓Radio✓ ✓AntiCheat✓ ✓Wiki✓ ✓ArmorHUD✓ ✓PotionHUD✓ ✘Vous devez ABSOLUMENT avoir toutes les textures de votre MOD! ✘ ✘Temps de livraison : Entre 1J et 7J après la validation de la commande. (Ces temps varient en fonction du travail demandé)✘ ▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃ ▃▃▃SPIGOT▃▃▃ ▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃ ✓Nouveaux Blocks✓ ✓Nouveaux Items✓ ✓Nouveaux Minerais✓ ✓Nouvelles Armures✓ ✓Nouveaux Outils✓ ✘Temps de livraison : Entre 1J et 3J après la validation de la commande. (Ces temps varient en fonction du travail demandé)✘ ▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃ ▃▃▃ ✓Nous Contacter ?✓ ▃▃▃ ▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃▃ Nous disposons d’un site internet : https://Mysoria.fr [EN MAINTENANCE] sur lequel vous trouverez des exemples de nos réalisations en images. Pour toutes commandes, nous disposons d’un discord : https://discord.gg/w4TekjS A bientôt, MysoriaTeam
  20. Les GUIs dans Minecraft Cette uvre est mise à disposition selon les termes de la Licence Creative Commons Attribution - Pas dUtilisation Commerciale - Pas de Modification 3.0 non transposé . Tout partage implique que vous citiez l'auteur original. -[iNTRODUCTION]- Salut tout le monde ! En ce moment la plupart des demandes d'aide ont rapport avec les GUI. Contrairement à ce que croient la plupart d'entre vous, ce n'est vraiment pas compliqué. Mais un tutoriel sera surement fort utile. Ce tutoriel fonctionne pour la 1.7, la 1.8, et surement (peut-être avec quelques modifications) pour la 1.6, où même peut-être pour la 1.5, ou moins. -[sOMMAIRE]- 1] Préparation 2] Les éléments de GUI 3] Les GUI Containers 4] Créer votre propre objet Gui (composant) 5] Codes et astuces ! 1] Préparation Donc, premièrement, pour créer un menu, il faut créer un GuiScreen, pour ça, il faut créer notre classe qui extends de GuiScreen : public class MonGui extends GuiScreen { } C'est si simple que ça ! Donc, il y a deux méthodes importantes, les voicis : initGui() : @Override public void initGui() { super.initGui(); } Cette méthode n'est exécutée que lorsque le Gui est créé, (quand le Gui s'affiche ou que la fenêtre est redimensionnée) drawScreen(int mouseX, int mouseY, float partialTicks) : @Override public void drawScreen(int mouseX, int mouseY, float partialTicks) { super.drawScreen(mouseX, mouseY, partialTicks); } Le nom des arguments parlent d'eux mêmes ! Cette méthode est exécutée le plus souvent possible (à chaque tour de MC, pour info si les FPS sont à 65 par exemple, cette méthode sera exécutée 65 par seconde !) Voilà ! C'est tout pour cette préparation ! 2] Les éléments de GUI Donc, on va voir les différents éléments de Gui et comment les utiliser ! GuiButton : Pour créer un bouton il suffit de l'enregistrer dans la liste de bouton dans la méthode initGui, comme ceci : this.buttonList.add(new GuiButton(x, y, WIP)); 3] Les GUI Containers 4] Créer votre propre objet Gui (composant) 5] Codes et astuces WORK IN PROGRESS
  21. Changer l’icône du jeu < Introduction /> Bonjour à tous; Beaucoup d'entre vous se demande comment changer l'icône du jeu afin de donner une identité supplémentaire au client de votre serveur, et si vous en avez marre de la table de craft. C'est ce que nous allons voir aujourd'hui ! PS : Il faut aussi savoir, que cela ne fonctionne pas avec le launcher officiel, celui-ci télécharge de nouveau les assets. Il est donc fortement recommandé de suivre ce tutoriel pour votre serveur avec vos assets. < Prérequis /> Notepad++ ou autre éditeur de textes Dossier Assets Client Perso Logiciel de création graphique (Photoshop, Illustrator, etc...) Vos icônes ( 16x16 et 32x32) < Let's Go ! /> 1 / Choisir une icône Avant tous, il faut bien choisir ces icônes. Vous devez choisir une icône qui sois en accord avec votre Serveur ou vous-même, c'est au choix et nous devons respecter cela ! Il existe des sites spécialisés dans les icônes, mais rien de mieux que de la créer soit même. Pour ce faire, rendez-vous sur votre logiciel graphique. Pour ma part il s'agit de Photoshop, je vais donc créer une icône pour illustrer ce tutoriel. Veilliez à bien faire ces deux tailles d'icônes : 16x16 pixels 32x32 pixels Cela doit représenter un carré parfait. Pour créer votre icône personnalisée, il existe une multitude de tutoriels en rapport avec le logiciel graphique souhaité, je vous laisse donc allez voir. Pour ce tutoriel, nous allons prendre ces 2 icônes là : Une de 32x32 et une autre de 16x16 (Oui, c'est un sac de Bitcoin, voici donc mon adresse : censuré ! ) Enregistrez bien votre image en PNG, c'est un meilleur format niveau qualité que le JPEG. 2 / Recherchons les assets ! Pour cela, fait Windows + R pour ouvrir exécuter, tapez %appdata% afin d’accéder à votre dossier Roaming. Dans ce dernier, ouvrez le dossier de votre serveur. Localisez le dossier assets, puis enfin indexes que vous ouvrez bien sur. 3 / Localisons les Icônes ! Dans ce dernier, vous y trouverez un fichier .json qui est numéroté en fonction de la version choisie. Ouvrez-le donc, avec bien sur, un éditeur de texte. Pour ma part Notepad++ et faite CTRL + F , afin de lancer une demande de recherche. Recherchez le mot "icons" Cela va nous donner plusieurs résultats, mais intéressons-nous à ces deux lignes la : "icons/icon_16x16.png": { "hash": "bdf48ef6b5d0d23bbb02e17d04865216179f510a", "size": 3665 }, "icons/icon_32x32.png": { "hash": "92750c5f93c312ba9ab413d546f32190c56d6f1f", "size": 5362 }, Elles disposent de 2 sœurs identiques, qui sont "minecraft/icons/icon_16x16.png": { "hash": "bdf48ef6b5d0d23bbb02e17d04865216179f510a", "size": 3665 }, "minecraft/icons/icon_32x32.png": { "hash": "92750c5f93c312ba9ab413d546f32190c56d6f1f", "size": 5362 }, On distingue bien l'emplacement, un nom avec que des chiffres et une taille. Ne cherchez pas avec l'adresse, vous ne les retrouverez pas ! C'est la ligne Hash qui nous intéresse plus ! On peut remarquer que les hash de son identiques pour minecraft/icons/icon_32x32.png et icons/icon_32x32.png Cela réduis donc le temps à chercher les fichiers correspondant. Nous allons nous intéresser au fichier icons/icon_16x16.png Qui dispose de cet Hash la : bdf48ef6b5d0d23bbb02e17d04865216179f510a Dans cet hash, nous avons certes que des lettres et chiffre, mais une information précuise sur son emplacement. Quand on regarde, le début est bd, il s'agit pas d'un élément tiers, mais plutôt d'un classement pour bien ce repérer à travers certains dossiers. 4 / Recherchons le dossier des icônes Pour l'icône 16x16, sont classement bd Et pour l'icône 32x32, cela sera 92 Il vous suffit pour cela, de retourner dans le dossier principal des assets et d'ouvrir le dossier objects. Ce dernier, contiendra un nombre important de sous-dossiers avec des lettres minuscules et majuscules, mais aussi des chiffres parfois combinés avec des lettres. Rappelez-vous de ce que nous avions dit juste avant, les icônes sont rangées suivant un classement bien spécifique. Recherchons donc le dossier bd et 92 Ouvrez-en un, et vous remarquerez que dedans nous retrouvons notre fameuse suite de lettres et chiffres hash ! Il se présente sous forme d'un fichier sans extensions et illisibles. Mais il nous intéresse fortement. 5 / Modifions les icônes La méthode est identique pour l'icône 16x16 et l’icône 32x32, je vais donc me focalisé sur une seule d'entre elles. /// Il est préférable que les extensions sois visible sur les fichiers, sur Windows 10, vous avez un onglets "Affichage", et dans "Afficher/Masqués", cochez "Extensions de noms de fichiers" Nous allons copier/coller ou déplacer notre icône 16x16 dans le dossier bd. Copier le nom du hash de l'icône 16x16 qui est bdf48ef6b5d0d23bbb02e17d04865216179f510a Et supprimer le fichier. Renommez, votre icône avec ce nom et supprimez bien son extension. Vous allez donc avoir un message d'avertissement comme quoi le fichier deviendra illisible, acceptez-le ! Effectuez la même chose pour l'icône 32x32, dont le nom est 92750c5f93c312ba9ab413d546f32190c56d6f1f Reste plus qu'à fermer tout cela et à lancer le jeu ! N'oubliez pas pour ceux disposant de leurs assets en ligne via la tutoriel de Litarvan, de bien mettre à jour les assets du dossier Files, sinon vous ne les aurez pas. Résultats final avec exemple Si vous avez des questions, vous pouvez les poser :)
  22. [1.7.x] StatusEffectHUD

    je sais que tout le monde attendent à ce que quelqu'un fasse un tutoriel en VANILLA pour le StatusEffectHUD alors je l'ai fais et je vous le fais partager StatusEffectHUD en Vanilla -[iNTRODUCTION]- Bonjour à tous ! Dans ce tutoriel, nous allons faire un StatusEffectHUD commençons sans attendre -[sOMMAIRE]- 1]Création d'un "if" 2]Création d'un "for" 3]LesIcônes 4] Afficher les niveaux des effets 1]Création d'un "if" Tout d'abord on va aller dans le GuiIngame.java puis on va aller dans RenderGameOverlay mettre nos codes en dessus de ces 3 int : int var11; int var12; int var13; qui est en dessus de ce if : if (!this.mc.thePlayer.isPotionActive(Potion.confusion)) { float var10 = this.mc.thePlayer.prevTimeInPortal + (this.mc.thePlayer.timeInPortal - this.mc.thePlayer.prevTimeInPortal) * par1; if (var10 > 0.0F) { this.func_130015_b(var10, var6, var7); } } donc maintenant on va mettre notre if qui va dire que si il y a plus de 5 potion d'activer ça les empiles mais pour ça il faut déja mettre notre Collection pour les potions et aussi un int les voici : Collection ph1 = this.mc.thePlayer.getActivePotionEffects(); int ph2 = 33; j'ai mis ph pour PotionHUD maintenant le if c'est : if (ph1.size() > 5) //si les effect de potion activé est supérieur a 5 alors ... { ph2 = 132 / (ph1.size() - 1); ... il s'empile avec ces valeurs } 2]Création d'un "for" pour le "for" on va mettre tout ce qu'il faut pour que les effect de potion s'affiche avec le temps l'icone et le nom de la potion donc pour ça le "for" sera : for (Iterator ph3 = this.mc.thePlayer.getActivePotionEffects().iterator(); ph3.hasNext(); var2 += ph2) { donc ici on a crée un Iterator qui va donc nous permettre d'avencer sauf que normalement vous avez une erreur sur me var2 et nous allons ajouter en même un autre var qui nous servira plus bas donc plus haut avant le if il suffis de mettre ceci : int var2 = 0; int var1 = 0; donc maintenant dans notre for on va rajouter quelque variables pour qu'il aille chercher les effets de potions : PotionEffect ph4 = (PotionEffect)ph3.next(); Potion ph5 = Potion.potionTypes[ph4.getPotionID()]; // ici on va chercher le type de potion qui est actif GL11.glColor4f(1.0F, 1.0F, 1.0F, 1.0F); pour le text c'est avec le niveaux des potion donc c'est plus bas maintenant on a just le nom de la potion qui s'affiche maintenant on veut sa durée : this.mc.fontRenderer.drawStringWithShadow(Potion.getDurationString(ph4), var1 + 10 + 18, var2 + 6 + 10, 8355711); //ici on affiche la duré de l'effet en court ce qui nous donne pour le moment ceci : //début du code PotionEffectHUD int var1 = 0; int var2 = 0; int ph2 = 33; Collection ph1 = this.mc.thePlayer.getActivePotionEffects(); if (ph1.size() > 5) { ph2 = 132 / (ph1.size() - 1); } for (Iterator ph3 = this.mc.thePlayer.getActivePotionEffects().iterator(); ph3.hasNext(); var2 += ph2) { PotionEffect ph4 = (PotionEffect)ph3.next(); Potion ph5 = Potion.potionTypes[ph4.getPotionID()]; GL11.glColor4f(1.0F, 1.0F, 1.0F, 1.0F); this.mc.fontRenderer.drawStringWithShadow(Potion.getDurationString(ph4), var1 + 10 + 18, var2 + 6 + 10, 8355711); } //fin code PotionEffectHUD 3] LesIcônes maintenant il faut afficher certaine chose comme le contour (ou pas si vous voulez pas il suffis de retirer le code que je vais vous donner) et les icônes donc pour les icônes on va déjà rajouter un bindTexture tout en haut du GuiIngame.java : protected static final ResourceLocation inventory = new ResourceLocation("textures/gui/container/inventory.png"); voilà et dans notre "for" on va rajouter en dessus de : GL11.glColor4f(1.0F, 1.0F, 1.0F, 1.0F); on va mettre : this.mc.getTextureManager().bindTexture(inventory); // ici on va chercher la texture maintenant on va chercher les icônes dans ce .png donc on ajouter un if : if (ph5.hasStatusIcon()) { int ph6 = ph5.getStatusIconIndex(); this.drawTexturedModalRect(var1 + 6, var2 + 7, 0 + ph6 % 8 * 18, 198 + ph6 / 8 * 18, 18, 18); //on va chercher l'icône et on le place ou il faut } si vous voulez le contour il suffis d'ajouter cette ligne au dessus du if des icônes : this.drawTexturedModalRect(var1, var2, 0, 166, 140, 32); // ici on affiche le contour si vous avez envis d'enlever le contour il suffis d'enlever cette ligne 4] Afficher les niveaux des effets donc pour afficher le niveaux des effets on va déja rajouter en dessus de notre deuxième if pour afficher les icônes un String qui va chercher le nom en fonction de leur ID : String ph7 = I18n.format(ph5.getName()/*ici il cherche le nom*/, new Object[0]); maintenant que on a ça on va pouvoir afficher le niveau pour cela rien de plus simple on fais des "if" et des "else if" donc on commence par le niveau 2 car le niveau 1 ne s'affiche pas donc on met : if (ph4.getAmplifier() == 1) // si la potion a un niveau de 1 qui est le niveau 2 car le niveau 1 c'est 0 alors .... { ph7 = ph7 + " II" ;// ... on affiche a coté du nom de la potion "II" } et maintenant on va faire ça pour 4 niveaux donc en dessus de ça on ajoute : else if (ph4.getAmplifier() == 2)// si la potion a un niveau de 2 qui est 3 alors ... { ph7 = ph7 + " III"; // on affiche a coté du nom de la potion "III" } else if (ph4.getAmplifier() == 3) // si la potion a un niveau de 3 qui est 4 alors ... { ph7 = ph7 + " IV"; // on affiche a coté du nom de la potion "IV" } maintenant que on a ça il faut le placer donc en dessous du if on ajoute : this.mc.fontRenderer.drawStringWithShadow(ph7, var1 + 10 + 18, var2 + 6, 16777215); //ici on place le nom de la potion ou il faut ce qui nous donne au finale tout ceci : //début du code PotionEffectHUD int var1 = 0; int var2 = 0; int ph2 = 33; Collection ph1 = this.mc.thePlayer.getActivePotionEffects(); if (ph1.size() > 5) { ph2 = 132 / (ph1.size() - 1); } for (Iterator ph3 = this.mc.thePlayer.getActivePotionEffects().iterator(); ph3.hasNext(); var2 += ph2) { PotionEffect ph4 = (PotionEffect)ph3.next(); Potion ph5 = Potion.potionTypes[ph4.getPotionID()]; GL11.glColor4f(1.0F, 1.0F, 1.0F, 1.0F); this.mc.getTextureManager().bindTexture(inventory); this.drawTexturedModalRect(var1, var2, 0, 166, 140, 32); if (ph5.hasStatusIcon()) { int ph6 = ph5.getStatusIconIndex(); this.drawTexturedModalRect(var1 + 6, var2 + 7, 0 + ph6 % 8 * 18, 198 + ph6 / 8 * 18, 18, 18); } String ph7 = I18n.format(ph5.getName(), new Object[0]); if (ph4.getAmplifier() == 1) { ph7 = ph7 + " II" ; } else if (ph4.getAmplifier() == 2) { ph7 = ph7 + " III"; } else if (ph4.getAmplifier() == 3) { ph7 = ph7 + " IV"; } this.mc.fontRenderer.drawStringWithShadow(ph7, var1 + 10 + 18, var2 + 6, 16777215); this.mc.fontRenderer.drawStringWithShadow(Potion.getDurationString(ph4), var1 + 10 + 18, var2 + 6 + 10, 8355711); } //fin code PotionEffectHUD voilà le tutoriel est terminé bon jeu avec votre StatusEffectHUD !
  23. Merci à chaos90 pour son aide par rapport à ce tutoriel! ArmorHUD en Vanilla Cette uvre est mise à disposition selon les termes de laLicence Creative Commons Attribution - Pas dUtilisation Commerciale - Pas de Modification 3.0 non transposé. Tout partage implique que vous citiez l'auteur original. -[iNTRODUCTION]- Nous sommes partis pour un tutoriel pour afficher un ArmorHUD en Vanilla ( code by dermenslof puis modifié par chaos90 ) -[TUTORIEL]- On va commencer par insérer un petit bout de code juste au dessus du ce code ci: public void renderGameOverlay(float par1, boolean par2, int par3, int par4) Nous allons donc ajouter ceci: private void drawItemInToScreen(ItemStack is, int x, int y, float par3, boolean overlay) // On demande au jeu d'afficher l'item sur l'écran { if (is != null) { float an = (float)is.animationsToGo - par3; //On lui dit d'effectuer toute animation par rapport à l'item if (an > 0.0F) { GL11.glPushMatrix(); float dec = 1.0F + an / 5.0F; GL11.glTranslatef((float)(x + 8), (float)(y + 12), 0.0F); GL11.glScalef(1.0F / dec, (dec + 1.0F) / 2.0F, 1.0F); GL11.glTranslatef((float)(-(x + 8)), (float)(-(y + 12)), 0.0F); } itemRenderer.renderItemAndEffectIntoGUI(this.mc.fontRenderer, this.mc.getTextureManager(), is, x, y); //On lui dit de prendre la texture de l'item et de l'afficher sur l'écran if (an > 0.0F) GL11.glPopMatrix(); if (overlay) itemRenderer.renderItemOverlayIntoGUI(this.mc.fontRenderer, this.mc.getTextureManager(), is, 16, y); // Même chose qu'au dessus! } } Nous allons ensuite modifier quelques éléments: if (!this.mc.playerController.enableEverythingIsScrewedUpMode()) // <------- ATTENTION CETTE FONCTION EXISTE DEJA JUSTE A REMPLACER { GL11.glColor4f(1.0F, 1.0F, 1.0F, 1.0F); this.mc.getTextureManager().bindTexture(widgetsTexPath); InventoryPlayer var31 = this.mc.thePlayer.inventory; this.zLevel = -90.0F; this.drawTexturedModalRect(var6 / 2 - 91, var7 - 22, 0, 0, 182, 22); this.drawTexturedModalRect(var6 / 2 - 91 - 1 + var31.currentItem * 20, var7 - 22 - 1, 0, 22, 24, 22); this.mc.getTextureManager().bindTexture(icons); GL11.glEnable(GL11.GL_BLEND); OpenGlHelper.glBlendFunc(775, 769, 1, 0); this.drawTexturedModalRect(var6 / 2 - 7, var7 / 2 - 7, 0, 0, 16, 16); OpenGlHelper.glBlendFunc(770, 771, 1, 0); this.mc.mcProfiler.startSection("bossHealth"); this.renderBossHealth(); this.mc.mcProfiler.endSection(); if (this.mc.playerController.shouldDrawHUD()) { this.func_110327_a(var6, var7); } this.mc.mcProfiler.startSection("actionBar"); GL11.glEnable(GL12.GL_RESCALE_NORMAL); RenderHelper.enableGUIStandardItemLighting(); for (var11 = 0; var11 < 9; ++var11) { var12 = var6 / 2 - 90 + var11 * 20 + 2; var13 = var7 - 16 - 3; this.renderInventorySlot(var11, var12, var13, par1); } Puis, juste en dessous de ces nouveaux éléments, rajouter ceci, qui va faire afficher au jeu le HUD: ItemStack is; //render itemArmor for (int i = 0; i < 4; ++i) { is = this.mc.thePlayer.inventory.armorItemInSlot(4 - i - 1); if (is == null) continue; drawItemInToScreen(is, 0, i * 17, par1, true); this.mc.fontRenderer.drawString("§f§l" + (is.getMaxDamage() - is.getItemDamageForDisplay()), 18, i * 17 + 5, 0); } //render itemInHand is = this.mc.thePlayer.inventory.getCurrentItem(); if (is != null) { Item i = is.getItem(); boolean outils = i instanceof Item; if (!i.isItemTool(is) || outils && !(i instanceof ItemArmor)) { drawItemInToScreen(is, 40, 1 * 5, par1, false); GL11.glDisable(GL11.GL_BLEND); this.mc.fontRenderer.drawString("" + "§n§lDurabilité :§r§c§l " + (is.getMaxDamage() - is.getItemDamageForDisplay()) + " §r§n§lQuantité :§r§c§l " + is.stackSize, 60, 1 * 5 + 5, 553648127); } } RenderHelper.disableStandardItemLighting(); GL11.glDisable(GL12.GL_RESCALE_NORMAL); this.mc.mcProfiler.endSection(); GL11.glDisable(GL11.GL_BLEND); } -[CONCLUSION]- Voilà, votre HUD s'affiche désormais! Je ne me suis pas amuser à tout décoder, mais si l'envie vous en viens, n'hésitez pas! /!\ Je me répète, mais le code est de dermenslof , puis modifié par chaos90, pas de moi! Sur ce, bon jeu avec votre ArmorHUD EDIT de Dermenslof: j'assume rien du tout, à la base c'est mon code mais pas les modifs apportées totalement aberrantes (genre: boolean outils = i instanceof Item; et j'en passe)
  24. Bonjour voyageurs, je vois que vous êtes arrivés jusque ici. Seriez vous à la recherche d'une étincelle d'aventure ? Avez vous déjà songé a un monde bercé entre la lumière et les ténèbres, un monde a la fois traumatisé et magnifié par une force immortelle ayant ravagé le monde pendant de longues années ? Laissez moi vous raconter une histoire ... Existait il y a bien longtemps de cela deux plans d'existences.. Celui des Aubécliens, persuadés que la lumière et la sagesse pourrons créer un monde parfait. Et, a l'opposé de cela le plan d’existence des Hoetiens, qui étaient persuadés que la guerre et la "loi du plus fort" rendraient leurs créations parfaites. Alors est apparût l'oeuvre des Aubécliens : L'Homme. Plus tard, jaloux de cette réussite, les Hoetiens fîrent apparaître les Reptiliens,Les Géants, les Orcs, les Elfes, les Khadjiits et enfin, les Dragons. Cela ne prit pas longtemps avant que la guerre entre ces races sois déclarée, suivant les traces de leurs créateurs... C'était la naissance du troisième plan d'existence : Celui des mortels.... Alors, sous laquelle de ces races naîtrez vous ? Serez vous un simple explorateur ou vous dirigerez vous vers la voie de la gloire ? Elswing est un projets de MMORPG sur Minecraft, mêlant RP et Faction. Nous avons pour objectif de faire de Elswing un monde a part entière, possédant son histoire (ce court prologue que vous avez lu n'est qu'une entrée en la matière, bien plus d'histoires ont déjà été écrites en histoire de fond), ses croyances, ses peuples, ses endroits mémorables et ses mœurs qui lui seront propre. C'est un projet déjà en cour depuis septembre 2017, il est donc déjà bien avancé ! Et je viens aujourd'hui vous le présenter avec un court prologue et quelques photos, prises sur le serveur. Vous remarquerez aussi, pour les connaisseurs, que nous nous sommes amusés, le staff et moi-même, a dissimuler plusieurs références culturelles dans le Lore de Elswing, a vous de toutes les trouvers ;) J'espère que ce projet vous intéresse, si c'est le cas je vous invite a vous rendre sur notre site : http://elswingrp.tk ou plusieurs informations supplémentaires sont présentes et ou vous pourrez suivre l'avancement du serveur, et, quand le jour viendra, le jour de l'ouverture ! PS: Nous avons également un discord ou vous pourrez discuter avec nous et suivre plus en détails l'avancement du serveur (nous posterons des infos et des spoils régulièrement) : https://discord.gg/uvUPMYU Enjoy ! :) -L'équipe de Elswing
  25. Un projet à venir

    Bonjour, aujourd'hui je ne vais pas vraiment présenter un projet mais plutot introduire. J'ai hésité avant d'en parler, mais je pense que je peux. Je vois déjà des gens venir : "Encore un serveur paytowin qui va pas durer et qui est comme les autres". NON ! Je pense a un projet comme ça depuis un moment et je suis pour l'instant qu'au tout début et en face d'aprentissage, il sera peut-être fini dans 2 ans, ou mais je ne lâche rien. Déjà le but de mon projet est qu'il soit vraiment fait maison à fond. Il va d'abord commencé sous un launcher moddée, avec un hub. Je pense qu'ensuite il adoptera de nouveau jeu inédit ! Et vraiment ce que je rêve le plus, quand mon projet aura commencé à monter un peu, ou bien quand j'aurais fini et je serais maitriser parfaitement les langages nécessaires, j'apprendrais le C++ pour pouvoir convertir mon serveur en jeu 3D. Réaliste. J'essayerais d'en apprendre sur le ragdoll que j'ai entendu parler sur un sujet IC ( malgré que j'y n'y suis pas ). Bon y a quand même beaucoup de blabla. Actuellement je maitrise pas mal le HTML/CSS, et je suis entrain de réaliser la maquette web que j'intégrerai par la suite. ( Toutes les pages ). Puis j'apprendrais un langage back-end. Je développerais vraiment pleins de choses inédites, et je m'investirais vraiment ! Je suis comme je vous l'ai dit entrain de réaliser les maquettes web, j'aimerais vous faire part de quelque screen, et j'ai aussi déjà le nom du serveur qui sera surement à son début "Ravenia" voir "Ravenia Network" Un projet inédit ! Bon je vais vous laisser sur les screens ( ce n'est que le début ). Je sais que sa a l'air d'un serveur basique mais je vous conjure que il sera vraiment différent des autres ! Et je pense que sa prendra du temps de travail ! Le logo represente le nom du serveur avec des ailes qui representent des anges car la maquette du serveur est l'ange, c'est pour sa qu'on a appeler sa ravenia ( ravenia = R Haven ia ) The Haven. Je suis aussi actuellement accompagné de quelque un dans mon projet, qui me donne énormement d'idées et gérera la communauté. Nous sommes pour l'instant nous 2 les fondateurs de ce projet. PS : Je sais que c'est comme même bizzare, mais je n'ai pas envie que quelqun dev pour moi ce projet, ou qu'il design pour moi j'ai envie de tout faire et tous apprendre tout seul ! Je sais c'est bizzarre mais je prend sa comme un challenge ! Au cours de mon aventure j'apprendrais pleins de langages ! Note : Ce screen du site, sera mit a jour régulierement
×