[WIP]Gestionnaire Minecraft Communautaire

  • Auteur de la discussion Auteur de la discussion peyo56
  • Date de début Date de début

peyo56

Ingénieur en mécaniques minecraftiennes
24 Mai 2011
168
22
13
INTRODUCTION :
Bonjour, je suis actuellement en train de créer un outils en python pour gérer Minecraft.

Je l'appelle le "GMC : Gestionnaire Minecraft Communautaire" ou "MCM : Minecraft Communal Manager" en anglais.

L'idée principale est qu'il soit capable de télécharger et d'installer du contenu, de créer, démarrer, dupliquer des versions séparées de mineraft ( client et serveur ) ( les dossier .minecraft étant séparé il n'y aurait pas de problème de compatibilité de mods ) et aussi de gérer ce contenu en fonction des serveurs.
Avec cet outil, je pense qu'au final vous n'aurez pas besoin d'installer préalablement d'autres programmes que python, java, les pilotes graphiques ( pour minecraft ) et les bibliotheques necessaires. L'installateur dudit logiciel installerait bien sur python, java et les bibliotheques si nécessaire. Et pourra être utilisé ( les versions de minecraft avec ) hors du dossier %appdata% et si vous souhaitez sur une clé usb.

Pour télécharger quoi que ce soit, MCM gere des fichiers ( fichiers mcm ) écrit et mis a jour par les auteurs des contenus, pouvant etre posté sur des serveur http ( ou pastebin vu que ce sont des fichiers ecrit en texte clair ), contenant des instructions permettant le téléchargement, l'instalation, des informations sur les contenus incompatibles, requis ou fixant une incompatibilité. Cela fait que cet outil est totalement independant de serveur centralisé, vous pouvez vous même mettre en ligne votre propre contenu.

La raison pour laquelle je développe ce logiciel est que très souvent je publie des images de ce que je fait au sein de certaines communautés, des lors certains remarquent certains points et me demande comment je fait cela, puis j'en vient a leur passer mon pack de mods et texturepack ... puis vient les fatidiques mises a jours ... celles qui font que l'on passe jour et nuit a voir si tel mod est à jour, à vérifier la compatibilité des mods, a les configurer ... a mettre a jour son texture pack.
Et puis qu'a coté on me demande de mettre en place un serveur avec tel plugins, tels mods, pour une simple aventure sur un serveur qui va durer 2h, et qu'il faut configurer les ports ... ou louer un serveur ...

Je trouve cela très ennuyeux a la longue, donc j'ai entreprit depuis un an la création de cet outil, cela est passé par l'apprentissage de python, par l'apprentissage de techniques en java, par le codage d’éléments simples et complexe a la fois ( comme le système de détection et de gestion automatique des fichiers conteneurs ). Et au jour d'aujourd'hui, je demande de l'aide de la part de développeurs.

L'OBTENIR / TÉLÉCHARGEMENT :
Pour l'instant il ne fonctionne que partiellement sur Linux et ne fonctionne pour ainsi dire absolument pas sur Windows, pour le cas de Mac, et bien j'en sait rien.

Le logiciel est pour l'instant à un stade de développement alpha, mais sachez qu'à la sortie de la version stable, il devra fonctionner sur les 4 principaux systèmes d'exploitation, a savoir Windows, Linux, Mac et Solaris.

Je ne le met ici principalement que pour les developeurs, ou ceux qui veulent aider. Ca n'est absolument pas a un stade utilisable.
Pour l'instant je suis le seul développeur sur ce projet et afin de permettre un meilleur suivit de l'évolution de MCM j'utilise GIT, Alors si vous souhaitez l'obtenir, installez GIT et faite cette commande :
git clone http://git.pds.no-ip.fr/.mcm/

Le fichier .head fournis des informations sur l'utilisation du logiciel.

DÉVELOPPEURS :
Je souhaiterait respecter ce modèle de dépôt GIT, Donc si vous souhaitez soumettre des changement je vous recommande de créer un dépôt GIT public, cela me permettrait de regarder et de soumettre ces changements, cela permettrait aussi de faire différents miroir et ainsi, si je devient désintéressé par le projet, cela serait idiot qu'il finisse aux oubliettes.

Pour ceux qui ont déjà crées des outils similaires ou ayant une fonctionnalité cité plus bas, je leur propose que l'on puisse s'associer afin de faire un outil meilleur. Pour l'instant vu que je suis l'unique développeur, on peut dire que c'est mon programme, mais par la suite, cela sera le programme a nous tous.

Enfin je souhaiterait que tout ceux qui spammerait le code et ceux qui voudrait s’amuser a y mettre du code malicieux passe leur chemin. Sachant que je vérifierait le code soumis moi même et que si je ne sait pas a quoi cela sert, il sera refusé. AU pire cela ne fera que ralentir le developement du logiciel et vous empechera de faire de nouvelle contributions.

NOUVEAUTÉS :
7/11/2012 :
Je travaille actuelement sur le systeme de recuperation de contenu par internet ainsi que celui d'envoit sur minecraft.net ( pour les skins ), dropbox.​
23/08/2012 :
Je travaille actuellement sur les classes d’installation. Pour cela j'ai besoin qu'elles puisse automatiquement naviguer récursivement dans des archives quelque soit leur type (zip, rar ...), lire leur contenu et écrire ce contenu dans d'autres archives ouvertes récursivement.​
Quand cela sera fait, il sera possible d'installer ( copier ) tout contenu a tout endroit.​

GIT LOG :
22/08/2012 : ypetremann
Ajout du module Type​
21/08/2012 : ypetremann
Ajout de quelques morceuax de codes utile a l’installation.​
30/06/2012 : ypetremann
Ajout des fichiers initiaux​
FONCTIONNALITÉS :
MCM :
IDÉES :​
  • pas besoin d’éditeur texte externe, pourrait le gérer.
  • pas besoin de navigateur internet externe, pourrait le gérer.
  • pas besoin d'outils d'archivage externe, pourrait le gérer.
  • pas besoin d’installateur de contenus externe, pourrait le gérer.
  • pas besoin de gestionnaire de fichiers externe, pourrait le gérer.
  • pas besoin de console/terminal, pourrait le gérer.
  • introduction du mcm:// correspondant au dossier de mcm
  • introduction du version:// correspondant au dossier de la version en cours
Connexion:
FONCTIONEL :​
  • Connexion à minecraft.net.
  • Détection si minecraft.net est inactif et reporte son statut.
IDÉES :​
  • Lire et écrire les informations de connexion sur le disque dur afin de se connecter.
  • Lire et écrire les informations de connexion dans les fichiers lastlogin comme le launcher d'origine
Installation :
EN COURS :​
  • Mises à jours automatiques ( demande et test de compatibilités inclus )
  • Installations d'anciennes versions de minecraft ( de l'alpha jusqu’au dernières snapshots ) et du contenu dépendant de celles-ci.
  • Téléchargement automatique du contenu (mods, texture packs ...).
  • Installation intéligente automatique du contenu (mods, texture packs ...) ( Il pourait installer les mods dans le minecraft.jar ou dans le dossier mod, pourrait installer des texture packs, sound packs, bibliotheques, fichiers de configurations aditionnels, mondes).
  • Détection des systèmes d'exploitations, le contenu est installé différemment en fonction de celui-ci, l’accès aux dossiers utilisent / comme séparateur y compris sur Windows ( / est changé en \ par des fonctions appelées pour tout accès aux fichiers sur Windows )
  • Pourra installer en passant au travers d'archives imbriquées pour les rajouter, les supprimer, ou les obtenir.
  • Pourra lire les instruction d'installation a partir d'un fichier install.mcm se trouvant à la racine de l'archive. Sinon utilisera celles du fichier ayant demandé le téléchargement
IDÉES :​
  • Gestionnaire de dépendance.
  • Gestions avancées de plugins bukkit.
  • Installation manuelle ( dans le cas ou aucune instruction n'est disponible, un gestionnaire de fichier et d'archives sera intégré, ne faisant donc aucune différence dans les manipulation, quelque soit le système )
  • Enregistrement de l'installation manuelle ( Au lieu d’écrire des fichiers de configuration "sales" mais pas si "sales" pour y mettre les instructions d'installation de vos contenus ou de contenus n'ayant aucune instructions, Vous aurez la possibilité de mettre MCM en mode d'enregistrement, ainsi vous faites l'installation manuellement avec les outils intégrés, puis MCM se chargera de faire le fichier mcm lui même pour vous)
  • Navigateur internet intelligent pour les opération semi-manuelles sur internet ( Une fonction spéciale qui lui permettra de vous indiquer ce qu'il faudrait que vous fassiez ou si vous vous écarter du but de la manœuvre - généralement un téléchargement - puis fait automatiquement le reste - souvent ce sera de faire le téléchargement en plaçant le fichier a la bonne place )
Client :
FONCTIONEL :​
  • Démarrer minecraft
  • Démarrer minecraft en mode de démonstration
EN COURS :​
  • Création de différent dossiers pouvant accueillir chacun un dossier .minecraft différent ( bugs possible avec Mac et Windows )
  • Démarrer minecraft à partir de ces dossiers ( bugs possible avec Mac et Windows, avec certains mods ( un bug majeur en rapport avec ForgeModLoader a déjà été fixé ) )
Serveurs :
EN COURS :​
  • Démarrer le serveur minecraft
  • Création de différent dossiers dans les dossier de chaque version pouvant accueillir chacun un serveur minecraft différent, les deux principaux seront .minecraft-server ( vanilla ) et .bukkit-server ( bukkit ).
  • Démarrer le serveur a partir de ces dossiers.
IDÉES :​
  • Démarrer plusieurs serveurs en même temps.
  • Ouverture des ports pour les serveur minecraft grace a l'UPNP
  • Gérer des serveurs a distance a l'aide de plugins voir de mcm lui-même installé a distance.
Outils :
IDÉES :​
  • Démarrer et integrer Minecraft Codder Pack
  • Démarrer et integrer MCNostalgia
  • Démarrer et integrer MCEdit
Texture Packs :
IDÉES :​
  • Un constructeur de texture pack intégré ( permettrait d'avoir un aperçu des textures, de mixer deux textures packs entre eux en choisissant les textures de l'un ou de l'autre.
  • Ouverture des textures dans votre éditeur d'image préféré.
  • Extraction d'un texture pack vierge en fonction de votre minecraft.
  • Prévisualisation de tout les blocks sans démarrer le jeu.
Skins :
IDÉES :​
  • Apercu des skins en temps réel. ( possibilité de mettre steve dans la position souhaité, avec le fond d’écran souhaité, puis de sauvegarder l'image rendue).
  • Télécharger des skins et packs de skins ( a partir d'un site internet, d'un compte )
  • Voir le skin de vos amis a l'aide des deux dernieres fonctionalité.
  • Ouverture des skins dans votre éditeur d'image préféré.
  • Envoyer votre skin sur minecraft.net
Mcm servers :
IDÉES :​
  • Possibilité de publier des skins, mods, texture packs
  • Possibilité de publier des informations sur les serveurs minecraft ( mods requis, adresse du serveur, adresse du mumble, adresse internet ...)
  • MCM inclura un mode launcher, que les créateurs de serveurs pourront modifier facilement afin d'avoir sa propre présentation.
  • Installation automatique des contenus en fonction du serveur minecraft.
  • Changement automatique des skins en fonction du serveur minecraft
  • Vote, commentaires et envoi de rapport de bugs pour les contenus a leurs auteurs.
  • Système qui permettra de certifier que des informations sur des contenus ne sont pas dangereux pour l'utilisateur.
LIENS :
chaine twitch
main.png

mockup-1.svg

mockup-2.svg

mockup-3.svg





FAQ :
C'est nul, ça marche pas, c'est pourris.
Le logiciel est disponible pour les développeurs, il n'est pas fonctionnel pour l'instant.
Toutefois ce que vous dites est de l'ordre de l'insulte envers des personnes souhaitant vous offrir de l'aide.
Pas d'images pas de clics
Regarder dans la catégorie LIENS, et puis où voulez-vous bien cliquer ?
C'est un virus
Je vous demande alors de regarder le code source, ou de le faire examiner par un expert, afin de poster ici les raisons exactes qui vous font penser cela et de poster par la même ocasion ce qui pourrait eviter qu'il ne soit prit pour un virus encore une fois.

Lors de la creation du meme post sur minecraftforums.com le premier post fut "pas d'image, pas de clicks", que pouvait-je montrer au juste ? minecraft démarrant dans un autre dossier, qui aurrait dit que c'etait vrai ?
Le second fut "C'est un virus", l'ayant passé au scan et posté le code source sur le sujet lui-même, je lui ai demandé d'examiner encore une fois et d'expliquer :
  • qu'est est le resultat de l'antivirus : nom et type du virus ...
  • qu'est ce qui peut être fait pour eviter de donner un caractere de virus au programme
La troisieme fut "Mais c'est con, il suffit de creer un fichier bat, faire redefinir le dossier %appdata% et demarrer minecraft"
Que fait on alors des autres systemes d'exploitation ?
Que fait on des autres fonctionnalitées ?

Je suis sur linux, mais cela ne fonctionne pas
Le logiciel n'est pas fonctionnel pour l'instant. il est disponible ici pour les developeurs avent tout.
Si vous ne savez pas programmer, veuillez consigner ici les raisons des problemes.
Si vous savez programmer, alors n'est ce pas pour aider a resoudre ce type de probleme que vous avez pris une copie du logiciel ?


LICENSE :

 
Il est maintenant capable d'installer du contenu en fonction des fichiers d'installation.
 
Peyo il faudrait que je te parle ajoute moi skype : Qroyer