Para el instant recruit:
Puedes probar lo siguiente. Mientras estás "creando" una unidad, empieza una busqueda en ALL con Unknow initial value. Cuando haya terminado busca "Changed value", vuelve a crear una unidad y mientras esté creándose busca de nuevo "Changed Value". Repite éstos pasos y con un poco de suerte podrás encontrar la dirección, a partir de ahí generas un AA script y listo.
No va a ser tarea fácil, ya que no sabemos si la variable va aumentando o disminuyendo a medida que creas una unidad, por eso debes usar "Changed Value" en lugar de "Increase o Decrease".
Para el dinero:
Primero de todo saca la dirección de memoria donde se almacena el dinero (eso me imagino que ya lo hiciste), mira la dirección y comprueba si es el resultado de [edi+eax*8+04], me explico siguiendo tu ejemplo:
002F0868 - D9 5C C7 04 - fstp dword ptr [edi+eax*8+04] <<
EAX=00000000
EBX=00000001
ECX=13907170
EDX=00000001
ESI=16407000
EDI=13907170
ESP=0119D6E4
EBP=0119D6F8
EIP=002F086C
Eso se traduce en: 13907170 + 0*8 + 04 = D434E6. Deberías comprobar si la dirección de memoria es el resultado de esa operación, de ser así simplemente genera un AA script y añade la siguiente línea:
fstp dword ptr [edi+eax*8+04]
mov [edi+eax*8+04],186A0
______________________
por cierto, el resto de script's de esa Table son tuyos? De ser así felicidades, buen trabajo
Puedes probar lo siguiente. Mientras estás "creando" una unidad, empieza una busqueda en ALL con Unknow initial value. Cuando haya terminado busca "Changed value", vuelve a crear una unidad y mientras esté creándose busca de nuevo "Changed Value". Repite éstos pasos y con un poco de suerte podrás encontrar la dirección, a partir de ahí generas un AA script y listo.
No va a ser tarea fácil, ya que no sabemos si la variable va aumentando o disminuyendo a medida que creas una unidad, por eso debes usar "Changed Value" en lugar de "Increase o Decrease".
Para el dinero:
Primero de todo saca la dirección de memoria donde se almacena el dinero (eso me imagino que ya lo hiciste), mira la dirección y comprueba si es el resultado de [edi+eax*8+04], me explico siguiendo tu ejemplo:
002F0868 - D9 5C C7 04 - fstp dword ptr [edi+eax*8+04] <<
EAX=00000000
EBX=00000001
ECX=13907170
EDX=00000001
ESI=16407000
EDI=13907170
ESP=0119D6E4
EBP=0119D6F8
EIP=002F086C
Eso se traduce en: 13907170 + 0*8 + 04 = D434E6. Deberías comprobar si la dirección de memoria es el resultado de esa operación, de ser así simplemente genera un AA script y añade la siguiente línea:
fstp dword ptr [edi+eax*8+04]
mov [edi+eax*8+04],186A0
______________________
por cierto, el resto de script's de esa Table son tuyos? De ser así felicidades, buen trabajo