Comment modifier les chiffres MPH en KM d'un véhicule dans "Police Quest 1 VGA".

Des soucis pour hacker votre jeu ? C'est ici qu'il faut exposer votre problème.
Avatar de l’utilisateur
hrvg
Maître en Flood
Messages : 260
Inscription : 09 sept. 2009, 05:04
Localisation : Nancy

Comment modifier les chiffres MPH en KM d'un véhicule dans "Police Quest 1 VGA".

Message non lu par hrvg » 25 oct. 2018, 15:12

Bonjour,
Voilà mon problème avec le jeu "Police Quest 1 VGA" sur PC.
Quand on conduit une voiture, c'est en milles (MPH). Quand on clique sur l'accélérateur, c'est par tranche de "5" : 0, 5, 10, 15,... 60 et 65. J'aimerais écrire par tranche de "10" : 0, 10, 20, 30,... 120 et 130. Ca correspond à la vitesse en km/h (environ). Mais, je ne sais pas comment on fait et si c'est possible.

J'ai trouvé le fichier où se trouve "%d<bh:00>MPH". Je pense que "%d" sert à indiquer les chiffres, mais je n'ai pas trouvé les chiffres. Comment je peux trouver ces chiffres, s'il vous plaît ?

PS :
Quand j'ai ceci : %s
C'est une lettre ou un (des) mot. Mais, c'est plus simple à trouver. C'est un peu plus difficile pour une lettre.

Avatar de l’utilisateur
rid
Dieu Suprême du flood
Messages : 2023
Inscription : 04 janv. 2005, 22:17
Contact :

Re: Comment modifier les chiffres MPH en KM d'un véhicule dans "Police Quest 1 VGA".

Message non lu par rid » 25 oct. 2018, 21:08

En C, quand on veut écrire une chaîne de caractères avec des arguments, on utilise le symbole % suivi d'une lettre. Comme tu l'as deviné, la lettre indique le type de l'argument à insérer dans la chaîne.

Ainsi:
%d --> insertion d'un nombre entier
%s --> insertion d'une chaîne de caractères (une lettre ou un mot)

Du coup, je pense qu'au moment d'afficher la vitesse, le programme (le jeu) va appeler le formatteur "%d<bh:00>MPH" avec l'argument à la bonne valeur (0, 5, 10, 15, etc).
À vue de pif, cet argument est une valeur en RAM qui est initialisée à 0 et à laquelle le programme va ajouter successivement 5 (d'où les 0, 5, 10, 15, ...).
Par conséquent, il faudrait que tu repère où dans le code, cette addition est réalisée, et remplacer le 5 qui est ajouté par 10.

Je ne sais pas si je suis très clair...

Avatar de l’utilisateur
RyleFury
Maître en Flood
Messages : 385
Inscription : 16 janv. 2012, 12:48
Contact :

Re: Comment modifier les chiffres MPH en KM d'un véhicule dans "Police Quest 1 VGA".

Message non lu par RyleFury » 25 oct. 2018, 22:06

Oui, c'est très classique, souvent la fonction "sprintf" qui est la plus courante est utilisée pour insérer un texte avec des arguments comme le mentionne rid, on le voit très souvent dans les jeux aussi. le %s est tout simplement remplacé par une chaîne de caractères et le %d par un nombre dans le texte. Le remplacement du %d par les nombres est défini directement dans le code, donc il faut savoir se débrouiller avec l'ASM (ici x86) et un débuggeur comme IDA Pro pour trouver, sinon c'est même pas la peine d'espérer trouver.

Avatar de l’utilisateur
hrvg
Maître en Flood
Messages : 260
Inscription : 09 sept. 2009, 05:04
Localisation : Nancy

Re: Comment modifier les chiffres MPH en KM d'un véhicule dans "Police Quest 1 VGA".

Message non lu par hrvg » 25 oct. 2018, 22:07

Bonsoir Rid,
Je te remercie pour ta réponse.
Oui, je pense que j'ai compris ce que tu m'expliques.
Mais, il y a toujours un mais (je plaisante).
En gros, il y a trois fichiers : MSG pour les textes, HEP a peu de texte et SCR a les pointeurs du fichier HEP. J'ai cherché dans les deux fichiers (HEP et SCR) que je suppose où se trouve mon problème. C'est généralement le cas (voire à 100 %). Il y avait un seul chiffre 5 dans le fichier HEP que j'ai modifié. Ca n'a rien donné. Pour le fichier SCR, il y a trop de 5 pour les tester tous. Je pensais trouver +5 écrit dans les fichiers HEP ou SCR. Je sais, c'est une réflexion simpliste, mais je ne connais rien en informatique. Comment je peux trouver dans le code le +5, merci ? Quand je dis + 5, c'est un code qui veut dire + 5 au programme et non voir dans le fichier + 5.

Avatar de l’utilisateur
hrvg
Maître en Flood
Messages : 260
Inscription : 09 sept. 2009, 05:04
Localisation : Nancy

Re: Comment modifier les chiffres MPH en KM d'un véhicule dans "Police Quest 1 VGA".

Message non lu par hrvg » 25 oct. 2018, 22:44

Bonsoir RyleFury,
Je te remercie pour ta réponse.
J'ai essayé avec le débugueur de Dosbox, mais je ne sais pas comment ça fonctionne.
Alors, c'est impossible. Je vais laisser MPH. Mais, je vais télécharger IDA Pro pour voir.

Avatar de l’utilisateur
rid
Dieu Suprême du flood
Messages : 2023
Inscription : 04 janv. 2005, 22:17
Contact :

Re: Comment modifier les chiffres MPH en KM d'un véhicule dans "Police Quest 1 VGA".

Message non lu par rid » 26 oct. 2018, 10:00

Je ne pense pas que tu trouves la valeur 5 dans les fichiers relatifs au texte de ton jeu.
Il s'agit véritablement de trouver dans le moteur du jeu, l'endroit où ils vont calculer la vitesse de ton bolide. Il s'agit donc de trouver une routine qui est appelée dans le passage en question, et ensuite de situer le moment où l'augmentation de la valeur de la vitesse est réalisée.
Peut-être qu'en recherchant les instructions ASM x86 d'addition directement avec un éditeur hexadecimal, tu aurais peut-être du bol.
J'ai vite fait rechercher, apparemment ça ressemblerait aux instructions: add <registre>,05h (où 05h signifie 5 en hexadécimal).

Du coup, faudrait que tu recherches dans l'hexadécimal toutes les occurences de

Code : Tout sélectionner

add ax,05h // (addition sur 16 bits)
ou

Code : Tout sélectionner

add eax,05h //(addition sur 32 bits).
.

Soit (j'ai utilisé ce site:

Code : Tout sélectionner

  66 83 c0 05
ou

Code : Tout sélectionner

  83 c0 05
Et tu remplaces le 05 par 0A.

Que quelqu'un me corrige si je me plante.

Avatar de l’utilisateur
hrvg
Maître en Flood
Messages : 260
Inscription : 09 sept. 2009, 05:04
Localisation : Nancy

Re: Comment modifier les chiffres MPH en KM d'un véhicule dans "Police Quest 1 VGA".

Message non lu par hrvg » 26 oct. 2018, 14:18

add ax,05h // Rien trouvé

add eax,05h // Rien trouvé

66 83 c0 05 // Rien trouvé

83 c0 05 // j'ai trouvé 4 emplacements dans le fichier "resource.000". J'ai modifié chaque emplacement et c'est toujours par 5.

Je n'ai rien trouvé dans les autres fichiers. Je pense que ce fichier "resource.000" contient tous les fichiers qu'on peut extraire pour la traduction.
J'ai télécharger "dnSpy", mais je n'arrive pas à lancer le jeu. Et asmeditor, mais il n'y a pas la fonfion "chercher".

PS :
J'ai aussi télécharger "IDA Pro", la version gratuite, mais il ne fonctionne pas. Il me dit "l'essai a expiré".
Dernière édition par hrvg le 26 oct. 2018, 14:29, édité 1 fois.

Avatar de l’utilisateur
rid
Dieu Suprême du flood
Messages : 2023
Inscription : 04 janv. 2005, 22:17
Contact :

Re: Comment modifier les chiffres MPH en KM d'un véhicule dans "Police Quest 1 VGA".

Message non lu par rid » 26 oct. 2018, 14:27

Arf, ben s'arrêtent là mes conseils alors :/

Avatar de l’utilisateur
hrvg
Maître en Flood
Messages : 260
Inscription : 09 sept. 2009, 05:04
Localisation : Nancy

Re: Comment modifier les chiffres MPH en KM d'un véhicule dans "Police Quest 1 VGA".

Message non lu par hrvg » 26 oct. 2018, 14:31

Je te remercie Rid pour ton aide.

Avatar de l’utilisateur
RyleFury
Maître en Flood
Messages : 385
Inscription : 16 janv. 2012, 12:48
Contact :

Re: Comment modifier les chiffres MPH en KM d'un véhicule dans "Police Quest 1 VGA".

Message non lu par RyleFury » 26 oct. 2018, 15:02

Ça aurait pu marcher mais bon on sait jamais vraiment comment les développeurs codent et comment les compilateurs réagissent :p
Si j'ai un moment de libre je t'aiderai avec le débuggeur.

Avatar de l’utilisateur
hrvg
Maître en Flood
Messages : 260
Inscription : 09 sept. 2009, 05:04
Localisation : Nancy

Re: Comment modifier les chiffres MPH en KM d'un véhicule dans "Police Quest 1 VGA".

Message non lu par hrvg » 26 oct. 2018, 15:20

Merci, RyleFury.

Avatar de l’utilisateur
hrvg
Maître en Flood
Messages : 260
Inscription : 09 sept. 2009, 05:04
Localisation : Nancy

Re: Comment modifier les chiffres MPH en KM d'un véhicule dans "Police Quest 1 VGA".

Message non lu par hrvg » 26 oct. 2018, 18:55

J'ai une question. Le 83 c0 05 que j'ai trouvé dans le jeu que je traduis. Je ne le trouve pas dans le fichier original (resource.000). C'est peut-être à cause des fichiers traduits que j'ai insérés dans le jeu. Dans ce jeu et pour les pointeurs, j'inverse les valeurs. Par exemple, si j'ai un début de texte à 3a25, le pointeur sera 253a. Est-ce pareil ici pour 83 c0 05 ? J'ai cherché 05 c0 83, mais rien.

Avatar de l’utilisateur
rid
Dieu Suprême du flood
Messages : 2023
Inscription : 04 janv. 2005, 22:17
Contact :

Re: Comment modifier les chiffres MPH en KM d'un véhicule dans "Police Quest 1 VGA".

Message non lu par rid » 26 oct. 2018, 20:53

Non car ce que je t'ai demandé de chercher, c'est une instruction, par une adresse :)

Avatar de l’utilisateur
hrvg
Maître en Flood
Messages : 260
Inscription : 09 sept. 2009, 05:04
Localisation : Nancy

Re: Comment modifier les chiffres MPH en KM d'un véhicule dans "Police Quest 1 VGA".

Message non lu par hrvg » 29 oct. 2018, 18:49

Je vais encore poser une question idiote, désolé. J'ai vérifié l'instruction "83c005" dans tous les fichiers, même ceux que j'ai extraits (environ 350) au cas où, mais je n'ai rien trouvé. Il peut y avoir une autre instruction ? Par exemple, le contraire : Le chiffre du départ est 65 et on déduit par 5. Quand on monte dans la voiture, on démarre toujours à 5 milles, jamais à 0 sauf si on s'arrête.

Avatar de l’utilisateur
RyleFury
Maître en Flood
Messages : 385
Inscription : 16 janv. 2012, 12:48
Contact :

Re: Comment modifier les chiffres MPH en KM d'un véhicule dans "Police Quest 1 VGA".

Message non lu par RyleFury » 29 oct. 2018, 19:51

Il peut y avoir plein d'instructions pour ça, c'est le problème, ça dépend de la logique employée par les développeurs. Aussi, ça m'étonnerait qu'il faille modifier qu'une seule instruction. Etant un très vieux jeu, ça m'a l'air d'être un bordel monstre à débugger sous Windows par contre :/ J'essaierai des trucs mais je promets rien...

Avatar de l’utilisateur
hrvg
Maître en Flood
Messages : 260
Inscription : 09 sept. 2009, 05:04
Localisation : Nancy

Re: Comment modifier les chiffres MPH en KM d'un véhicule dans "Police Quest 1 VGA".

Message non lu par hrvg » 29 oct. 2018, 21:15

Je te remercie RyleFury pour ton aide. Et je confirme (pour moi), ce jeu est ... Je ne dirai pas, car je n'aime critiquer les créateurs de jeux, surtout à mon niveau. Mais, c'est le premier jeu Sierra qui me pose autant de problèmes. J'aimerais que le jeu soit bien fait. Sinon, si tu ne trouves pas, car moi je ne suis pas capable de le faire. Je changerai tous les messages sur les compteurs et j'écrirai, selon le contexte ce genre de phrase : "Cette fenêtre t'indique la vitesse, mais tu n'as pas su régler le compteur. Tu as mis la vitesse en mille avec le km.". Il y en a trois et cette fenêtre. Je sais que ce n'est pas terrible. Je te remercie pour ta patience.

Avatar de l’utilisateur
hrvg
Maître en Flood
Messages : 260
Inscription : 09 sept. 2009, 05:04
Localisation : Nancy

Re: Comment modifier les chiffres MPH en KM d'un véhicule dans "Police Quest 1 VGA".

Message non lu par hrvg » 01 nov. 2018, 14:34

Bonjour,
Mon problème a été résolu. Je vous remercie pour votre aide.

Avatar de l’utilisateur
RyleFury
Maître en Flood
Messages : 385
Inscription : 16 janv. 2012, 12:48
Contact :

Re: Comment modifier les chiffres MPH en KM d'un véhicule dans "Police Quest 1 VGA".

Message non lu par RyleFury » 01 nov. 2018, 16:36

Ah désolé, j'ai pas eu le temps de m'y mettre. Au final t'as réussi à convertir les MPH en KMH?

Avatar de l’utilisateur
hrvg
Maître en Flood
Messages : 260
Inscription : 09 sept. 2009, 05:04
Localisation : Nancy

Re: Comment modifier les chiffres MPH en KM d'un véhicule dans "Police Quest 1 VGA".

Message non lu par hrvg » 01 nov. 2018, 17:30

Ce n'est pas grave et je te remercie pour ton aide.
Ce n'est pas moi, mais Kawa du forum de SCIScompanion. :) Je ne sais pas comment il a fait. Il m'a envoyé les deux fichiers modifiés : "500.scr et HEP.500.
Je suis nul en informatique. :lol:

smkkool
Nouveau Floodeur
Messages : 18
Inscription : 08 juil. 2018, 19:02

Re: Comment modifier les chiffres MPH en KM d'un véhicule dans "Police Quest 1 VGA".

Message non lu par smkkool » 02 nov. 2018, 05:10

pas compliqué de savoir : tu prends un comparateur de fichier hexa , tu prends celui sans la modif et celui avec la modif , il te colorie les octet différents dans les 2 fichiers

Avatar de l’utilisateur
hrvg
Maître en Flood
Messages : 260
Inscription : 09 sept. 2009, 05:04
Localisation : Nancy

Re: Comment modifier les chiffres MPH en KM d'un véhicule dans "Police Quest 1 VGA".

Message non lu par hrvg » 02 nov. 2018, 09:56

@ smkkool,
Je viens de regarder avec UltraEdit. Il y en a plein !

Répondre