IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C++ Discussion :

[Game Modding] Comment créer un extracteur de fichiers ?


Sujet :

C++

  1. #1
    Nouveau Candidat au Club
    Homme Profil pro
    Inscrit en
    Décembre 2013
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Décembre 2013
    Messages : 3
    Points : 0
    Points
    0
    Par défaut [Game Modding] Comment créer un extracteur de fichiers ?
    Bonjour à tous

    Je suis nouveau sur ce forum qui a l'air très dynamique

    Le sujet de mon topic comme cité dans le titre est "Comment créer un extracteur de fichiers".

    Je m'explique,

    je suis moddeur de jeux vidéo et il y a des archives et fichiers que je souhaiterais extraire puis remballer pour effectuer des modifications.

    Seulement, les formats de ces derniers sont propres au jeu et donc j'aurais besoin d'apprendre à créer un petit programme semblable aux exemples ci-dessous pour les extraire, puis les remballer.

    Pour le modding des 3 premiers Resident Evil, il y a BIOFAT qui a été créé par MarkGrass:


    Pour le modding d'autres jeux, il y a UNMASS qui a été créé par Mirex:


    Ces deux programmes ont été développés en C++.

    Je rêve d'en développer un, j'ai la patience et la motivation.

    Si quelqu'un peux m'aider, sa serait vraiment génial

    Merci à tous d'avoir pris le temps de lire mon message.

    Bonne soirée.

  2. #2
    Expert confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2012
    Messages
    1 711
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2012
    Messages : 1 711
    Points : 4 442
    Points
    4 442
    Par défaut
    Hello,

    La principale difficulté est de comprendre le format de fichier utilisé par le jeu.
    Si rien n'existe pour éditer ces fichiers, tu devras le faire toi même.

    Il faut fouiller dans l'exe du jeu (ou de l'éditeur de map si il y en a un de dispo) pour trouver comment son lus ces fichiers, comprendre l'algo utilisé et le recoder.

    Une piste si tu fouilles dans l'exe c'est de regarder les utilisations des primitives de lecture de fichier comme OpenFile / CreateFile (venant de kernel32) sur Windows.

  3. #3
    Expert éminent sénior
    Avatar de koala01
    Homme Profil pro
    aucun
    Inscrit en
    Octobre 2004
    Messages
    11 632
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : Belgique

    Informations professionnelles :
    Activité : aucun

    Informations forums :
    Inscription : Octobre 2004
    Messages : 11 632
    Points : 30 714
    Points
    30 714
    Par défaut
    Salut,

    La première chose à faire, c'est d'essayer de se renseigner sur les spécifications du fichier que tu veux extraire.

    On peut à peu près trouver de tout en terme de sauvegarde : des fichiers textes qui donnent certaines données dans un ordre bien particulier, avec, pourquoi pas, des informations comme "point" ou "edge" suivies des informations qui permettent de définir le point ou l'arrête, des fichiers au format binaire, dont il s'agira de retrouver la structure, voir même des archives composées de fichier xml, j'en passe et peut être de meilleures.

    Il faut donc prendre conscience que, pour chaque type de fichier particulier, les données seront très vraisemblablement identiques (dans le sens où un point reste un point, une arrête reste une arrête, une texture reste une texture), mais la manière dont ces données seront représentées dans le fichier dépendra du type de fichier dont elle est issue.

    Pour certains formats, tu pourras "assez facilement" trouver les spécification (une recherche <format recherché> file format auprès de ton moteur favori te donnera une réponse), pour d'autres, ce sera peut être plus compliqué

    Une fois que tu as trouvé les spécifications du format recherché, "YAPUKA" les suivre pour être en mesure de les charger et / ou de les enregistrer .

  4. #4
    Nouveau Candidat au Club
    Homme Profil pro
    Inscrit en
    Décembre 2013
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Décembre 2013
    Messages : 3
    Points : 0
    Points
    0
    Par défaut
    Merci à vous deux pour vos réponses .

    >koala01

    De quel logiciel j'ai besoin dans un premier temps pour analyser les fichiers dont je souhaite extraire les données et les remballer?

    Pour créer un programme permettant d'extraire et remballer les fichiers,
    ça doit être Microsoft Visual C++ 2010 Express, si je ne me trompe pas pour le C++.

    Merci

  5. #5
    Expert éminent sénior
    Avatar de koala01
    Homme Profil pro
    aucun
    Inscrit en
    Octobre 2004
    Messages
    11 632
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : Belgique

    Informations professionnelles :
    Activité : aucun

    Informations forums :
    Inscription : Octobre 2004
    Messages : 11 632
    Points : 30 714
    Points
    30 714
    Par défaut
    Citation Envoyé par TBartoli Voir le message
    Merci à vous deux pour vos réponses .

    >koala01

    De quel logiciel j'ai besoin dans un premier temps pour analyser les fichiers dont je souhaite extraire les données et les remballer?
    D'un compilateur et d'un éditeur de texte "brut", sans plus.

    Un EDI (Environnement de Développement Intégré) est souvent utile pour automatiser la compilation et rendre la gestion du projet plus facile, mais n'est malgré tout pas "obligatoire".

    Un éditeur hexadécimal peut également te venir en aide pour les formats binaires, mais, fais attention au fait que le reverse ingeeniering est une méthode qui frise parfois l'illégalité
    Pour créer un programme permettant d'extraire et remballer les fichiers,
    ça doit être Microsoft Visual C++ 2010 Express, si je ne me trompe pas pour le C++.
    C'est un des EDI qui existe parmi tant d'autres.

    Il n'est pas mauvais en soi, mais le reproche qu'on peut lui faire est de venir avec un compilateur qui ne supporte pas encore entièrement la nouvelle norme (hé oui, C++ a subit une évolution majeure en 2011 avec l'arrivée d'une nouvelle norme affectueusement appelée C++11) et de n'être en mesure de compiler des exécutables qui ne seront utilisables que sous windows.

    Mais ce n'est -- très loin s'en faut -- ni le seul EDI ni le seul compilateur qui soit à ta disposition.

    Parmi ceux que j'affectionne particulièrement, on peut citer, comme compilateur:
    • clang et LLVM qui fonctionne particulièrement bien et qui est portable (en plus, il a été un des premiers compilateur à implémenter complètement la nouvelle norme
    • mingw et mingw-w64, qui sont des portages de Gcc (le compilateur utilisé sous linux) pour windows
    • D'autres compilateurs plus ou moins propriétaires, gratuits ou non, fournis par différentes firmes comme celui fourni par intel ou celui fourni par codeGears (anciennement borland)
    • Cette liste ne veut pas être exhaustive

    Parmi les EDI, on peut citer:
    • CodeBlocks, qui est en développement actif, gratuit et portable (et qui peut même s'adapter à de nombreux compilateurs)
    • qtcretor qui est gratuit, portable et en développement actif, qui bien que venant avec le framework Qt (un excellent framework qui fournit, entre autres, une bibliothèque permettant de créer des interfaces graphiques), permet également de gérer des projets qui n'utilisent pas Qt
    • eclipse et son plugin CDT auquel je reproche juste d'être écrit en java (je trouve dommage d'être obligé d'avoir java pour pouvoir programmer en C++ )
    • la liste n'est pas exhaustive
    J'ai bien sur limité les listes à ceux que je connais pour les avoir déjà utilisé et à ceux qui sont accessibles gratuitement tout en restant dans la légalité. Mais comme la licence "pro" de certains outils se paye décidément très (trop ) cher, je présumes que tu ne m'en voudras pas

    Profites peut être de la gratuité des outils cités (dont visual studio express) pour les essayer, les aimer ou les détester, avant de choisir celui qui "te convient", car, quand on a le choix, un EDI doit être comme une paire de pantoufles : confortable et dans lequel on se sent à son aise

    Sinon, tu peux parfaitement utiliser un compilateur (ca, tu en auras d'office besoin) comme mingw ou clang, un éditeur de texte "brut" qui permette de préférence la coloration syntaxique (je pense par exemple à notepad++, mais il y en a d'autres ) et un système d'automatisation de la compilation, comme CMake, par exemple (je limite ici le choix à ce qui est disponible sous windows ).

    Cela permet de garder quelque chose de "relativement léger" (comparativement à VisualStudio express), mais oblige les gens mettre un peu plus les "mains dans le cambouis".

    Encore une fois, quand on a le choix, autant prendre la peine de choisir ce qui nous convient le mieux

  6. #6
    Nouveau Candidat au Club
    Homme Profil pro
    Inscrit en
    Décembre 2013
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Décembre 2013
    Messages : 3
    Points : 0
    Points
    0
    Par défaut
    Merci à toi koala01 pour ces informations .

    Pour l'éditeur de texte, j'ai NotePad++.
    Pour l'éditeur hexadécimal, j'ai Hex Workshop.
    Pour les analyses dynamiques, j'ai Cheat Engine.
    Pour les analyses statiques, j'ai IDA Pro, mais il faut connaître le langage Assembleur.

    Et pour l'EDI parmi ceux que tu as cité, je pense prendre QT Creator,
    vu que c'est un tout en un et il a une excellente interface graphique, du coup si je ne me trompe pas, je dois coder : Créer les scriptes et les associer directement aux boutons de l'interface et terminer par la compilation ?

    Merci à toi.

Discussions similaires

  1. Réponses: 0
    Dernier message: 06/02/2009, 23h08
  2. [.xls] Comment créer ce type de fichier sans avoir Excel ?
    Par fredppp dans le forum Framework .NET
    Réponses: 1
    Dernier message: 05/09/2008, 13h29
  3. Comment créer des répertoires et fichiers.
    Par killysui dans le forum ASP.NET
    Réponses: 4
    Dernier message: 11/06/2008, 20h54
  4. Comment créer un raccourci de fichier avec VB6
    Par Najdar dans le forum VB 6 et antérieur
    Réponses: 8
    Dernier message: 20/11/2007, 20h27
  5. Réponses: 5
    Dernier message: 01/03/2006, 12h14

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo