[TRA] Trainer pour Age Of Empires 3

Ici vous pouvez demander de l'aide ou des conseils pour la création de Trainers. Vous programmez ? Vous avez des questions ? Vous connaissez un langage PHP, HTML, C, C++, Visual Basic etc... et vous souhaitez en faire profiter tout le monde c'est ici aussi? Vos questions et réponses sur le graphismes sur l'utilisation de logiciels 2D et 3D (comme Photoshop, Painter, 3DSMAX, Ligthwave, Flash etc...)

Moderators: Shub, Administrateurs - Adjoint, Modérateur, Administrateur, Global Moderator

Post Reply
User avatar
hoaxor
1er Class
1er Class
Posts: 9
Joined: 09 Oct 2005 - 21:34:12

[TRA] Trainer pour Age Of Empires 3

Post by hoaxor »

Slt a tous,

Eh oui je suis en train de m'atteler a la fabrication d'un trainer pour Age of Empires 3 Full version US.

Je me heurte a un gros pb, je cherche a trouver l'adresse ou est stockée la valeur de l'OR.

J'ai fait des recherches sur Tsearch avec comme processus l'exe age3.exe
j'ai tout essayé, valeur fixe, flottante, valeur inconnues avec increase/decrease / not changed etc... mais au final je finis toujours par le meme résultat : .... 0 :(

Comment est-ce possible ? je precise que le jeu est en pause quand je bascule les recherches sur Tsearch.

Y'a t-il une methode alternative ? La je seche completement :(
a croire que ces valeurs sont codées :blink:

Merci d'avance a tous
Dark fantasy
Global Moderator
Global Moderator
Posts: 1068
Joined: 23 Oct 2002 - 21:08:20
Contact:

[TRA] Trainer pour Age Of Empires 3

Post by Dark fantasy »

Tu devrais trouver quelque chose, je vois pas trop d'où pourrait venir le problème, tu as vérifié la taille des variables en mémoire?
Image
Daяќfantasy
--==§§==-- TRAINERS CITY --==§§==--
User avatar
hoaxor
1er Class
1er Class
Posts: 9
Joined: 09 Oct 2005 - 21:34:12

[TRA] Trainer pour Age Of Empires 3

Post by hoaxor »

Comment verifier la taille des variables en memoire ?
Par defaut je laisse en 4 bytes est-ce bon ? (je fais des recherches sur l'OR valeurs comprises entre 0 et 1500 or pendant mes tests).
Last edited by hoaxor on 09 Oct 2005 - 21:54:54, edited 1 time in total.
User avatar
hoaxor
1er Class
1er Class
Posts: 9
Joined: 09 Oct 2005 - 21:34:12

[TRA] Trainer pour Age Of Empires 3

Post by hoaxor »

La technique suivante devrait etre imparable non ?

- unknown value
- has increased
-has increased
- not changed
- increased
etc....
Dark fantasy
Global Moderator
Global Moderator
Posts: 1068
Joined: 23 Oct 2002 - 21:08:20
Contact:

[TRA] Trainer pour Age Of Empires 3

Post by Dark fantasy »

Je ne connais pas ton jeu mais connais-tu la valeur maximale de l'or ?
entre
  • 0 <= n <= 2^8-1 c'est un byte (1octet)
  • 0 <= n <= 2^16-1 c'est un word (2octets)
  • 0 <= n <= 2^32-1 c'est un dword (4octets)
( je te laisse le soin de convertir les puissances avec une calculette j'ai un peu la flemme de faire des maths :arf: )
Image
Daяќfantasy
--==§§==-- TRAINERS CITY --==§§==--
User avatar
hoaxor
1er Class
1er Class
Posts: 9
Joined: 09 Oct 2005 - 21:34:12

[TRA] Trainer pour Age Of Empires 3

Post by hoaxor »

Oula, en fait je precise que je suis encore novice dans ce monde. :lol:

Precisement en debut de partie je commence avec 0 de GOLD.
Le compteur monte doucement quand je mets les villageois a la pioche.
La valeur maximale de l'or m'est inconnue, je n'ai jamais atteint la limite.

Mais que la recherche effectuée soit faite sur 4 bytes par defaut ne doit pas poser de pb ? si ? (Concretement, je fais mes recherches sur 4byte entre 0 et 9999 gold je ne sais pas si j'ai raison )


peut tu me donner un exemple concret de tes formules j'ai oublié tout ca depuis longtemps :arf: :rolleyes:

En tout cas merci bcp pour ton aide, si j'arrive a faire ce trainer, ca sera une exclu TrainerCity ;)
Last edited by hoaxor on 10 Oct 2005 - 09:29:05, edited 1 time in total.
Dark fantasy
Global Moderator
Global Moderator
Posts: 1068
Joined: 23 Oct 2002 - 21:08:20
Contact:

[TRA] Trainer pour Age Of Empires 3

Post by Dark fantasy »

Mais que la recherche effectuée soit faite sur 4 bytes par defaut ne doit pas poser de pb ? si ? (Concretement, je fais mes recherches sur 4byte entre 0 et 9999 gold je ne sais pas si j'ai raison )
Alors alors :P déjà tu peux exclure le 1byte car la valeur maxi est de 255, 2bytes c'est 65525 et 4bytes c'est environ 4 . 10^9. En d'autre mot essai 2bytes mais je t'assure rien. :)

Maintenant que j'y pense, le taux d'or peut être négatif ou pas ?
Last edited by Dark fantasy on 10 Oct 2005 - 10:23:55, edited 1 time in total.
Image
Daяќfantasy
--==§§==-- TRAINERS CITY --==§§==--
User avatar
hoaxor
1er Class
1er Class
Posts: 9
Joined: 09 Oct 2005 - 21:34:12

[TRA] Trainer pour Age Of Empires 3

Post by hoaxor »

Eh bien le taux d'or ne peut etre negatif, 0 est la valeur minimum.

Je me demande vraiment comment est calculé le taux d'or dans ce jeu :(
(J'aurais pu prendre comme reference le bois ou la nourriture qui est géree pareil que l'or).

J'ai essayé de modifier une autre valeur, dans le marché tu peux acheter un pack de 100 bois a un tarif initial de 125 pices d'or.
des ke tu l'achete le pack suivant passe a 126 Pieces d'or, etc...
Quand tu revends de la ressource comme precedemment dans le marché (bois ou bouffe) ca decremente 125 pieces par lot de 100, 123,122 etc...

Or meme manip je me suis dit voyons si on peut modifier une valeur reellement statique...eh bien non toujours rien :(

Les valeurs seraient-elles vraiment gérées par l'executable du jeu ou par une DLL cachée :blink:
Je dis peut etre une connerie :P
Dark fantasy
Global Moderator
Global Moderator
Posts: 1068
Joined: 23 Oct 2002 - 21:08:20
Contact:

[TRA] Trainer pour Age Of Empires 3

Post by Dark fantasy »

Pour les DLL cachées non ça n'marchent pas comme ça, y'a peu de change pour que le jeu planque, à l'abris des trainers, ses variables, de toute façon les DLL sont mappés dans le block mémoire du process donc ça devrait pas être ça. Tu peux essayer de rechercher d'autres valeurs comme le bois, ou la nourriture, puis effectuer une différence pour calculer la position de l'or (mais c'est pas sûr que ça marche, les jeux sont tellement programmés de manière différente). :)
Image
Daяќfantasy
--==§§==-- TRAINERS CITY --==§§==--
User avatar
hoaxor
1er Class
1er Class
Posts: 9
Joined: 09 Oct 2005 - 21:34:12

[TRA] Trainer pour Age Of Empires 3

Post by hoaxor »

j'ai recupéré un trainer pour la version démo, dans le readme a la fin dans les Credits le gars indique:

PizzaPan -> (Help With the Silly XOR Encryption)

Le jeu serait encrypté d'apres ce que j'ai pu chercher et toutes les valeurs seraient codées (peut etre pour eviter le cheat online :unsure: )

Regarde ce lien:

XOR Encryption
Last edited by hoaxor on 10 Oct 2005 - 11:47:33, edited 1 time in total.
Magicking
Lieutenant
Lieutenant
Posts: 432
Joined: 14 Oct 2002 - 12:18:46
Location: Le Kremlin-Bicêtre
Contact:

[TRA] Trainer pour Age Of Empires 3

Post by Magicking »

Ce n'est pas obligé que le jeu stoque les valeurs d'en une variable.
Il peut par exemple: stoquer dans chaque Camp de minage(l'endroit ou les mineurs rapportent l'or ou l'endroit dans lequel les fonds sont créés) puis n'affichent que la somme du tout(Civilisation 3).
Y'a plein de manière d'empeché que cette valeur soit trouvé...
Last edited by Magicking on 10 Oct 2005 - 11:54:12, edited 1 time in total.
Dark fantasy
Global Moderator
Global Moderator
Posts: 1068
Joined: 23 Oct 2002 - 21:08:20
Contact:

[TRA] Trainer pour Age Of Empires 3

Post by Dark fantasy »

Y'a plein de manière d'empeché que cette valeur soit trouvé...
Tu pourrais préciser, parce qu'à part masquer les variables j'avoue que j'vois pas trop ce que tu veux dire ?
Image
Daяќfantasy
--==§§==-- TRAINERS CITY --==§§==--
User avatar
hoaxor
1er Class
1er Class
Posts: 9
Joined: 09 Oct 2005 - 21:34:12

[TRA] Trainer pour Age Of Empires 3

Post by hoaxor »

Ouais ... je sens que c'est mission impossible pour moi :(
Magicking
Lieutenant
Lieutenant
Posts: 432
Joined: 14 Oct 2002 - 12:18:46
Location: Le Kremlin-Bicêtre
Contact:

[TRA] Trainer pour Age Of Empires 3

Post by Magicking »

Code: Select all

#include <stdio.h>

int main(void)
{
 int valeur_a_trouver, valeur_tmp, * valeur_a_afficher;
 valeur_a_trouver = 100;
 valeur_a_afficher = &valeur_a_trouver;
 while(getchar()=='\n'){
  printf("Valeur: %d\n",*valeur_a_afficher);
  if(valeur_a_afficher==&valeur_a_trouver){
   valeur_tmp=valeur_a_trouver-1;
   valeur_a_trouver++;
   valeur_a_afficher=&valeur_tmp;
  }else{
   valeur_a_trouver=valeur_tmp-1;
   valeur_tmp++;
   valeur_a_afficher=&valeur_a_trouver;
  }
 }
 return 0;
}
Un exemple parmis d'autre la valeur change d'emplacement dans la mémoire.
Last edited by Magicking on 10 Oct 2005 - 20:06:07, edited 1 time in total.
Dark fantasy
Global Moderator
Global Moderator
Posts: 1068
Joined: 23 Oct 2002 - 21:08:20
Contact:

[TRA] Trainer pour Age Of Empires 3

Post by Dark fantasy »

Arf tu pourrais pas utiliser la convention hongroise, c'est illisible :D
Déplacer des valeurs en mémoire c'est assez risqué, surtout qu'en général les jeux sont en C++ donc les valeurs sont encapsulées, c'est moins flexible et couteux en CPU.
Concernant le XOR c'est un cryptage à clée privée assez utilisé(quand on n'a pas peur ou pas le temps :D) et très simple d'utilisation, appliqué au variable numérique(j'ai jamais vu mais pourquoi pas): tu devrais trouver avec une comparaison strict (qui change tout court), mais en général le XOR c'est pour du code ou des strings, enfin pour moi. :D
Bref c'est pas évident, essai de modifier un peu des valeurs au pif et voir comment réagit le jeu (en priant pour que ça ne crash pas :)). Bon courage
Image
Daяќfantasy
--==§§==-- TRAINERS CITY --==§§==--
Post Reply