jesusjackct
Member
- May 3, 2020
- 191
- 301
- 81
SOme old saves don't work anymore, but I can reopen them by deleting the cache, I think
Can you send it to me, or were you only offering it to them?There is no seperation... The game you see on the screenshots is no longer available due to copyright things...
But if you want i can provide you the almost last version of the old game (v0.1155).
Fortunatly i kept the old one.
For anyone using Cheat Engine: The values are 4 byte done by taking the value, adding 0.75, and then multiplying by 8
e.g. 300 HP translates to 300.75*8 which is 2406
you open the cheat engine
pick a process
right click on the value type bar and choose "define new custom type auto assembler"
insert this code:
alloc(TypeName,256)
alloc(ByteSize,4)
alloc(ConvertRoutine,1024)
alloc(ConvertBackRoutine,1024)
TypeName:
db 'Flash *8 type',0
ByteSize:
dd 4
//The convert routine should hold a routine that converts the data to an nteger (in eax)
//function declared as: stdcall int ConvertRoutine(unsigned char *input);
//Note: Keep in mind that this routine can be called by multiple threads at the same time.
ConvertRoutine:
[32-bit]
push ebp
mov ebp,esp
push ecx
mov ecx,[ebp+8]
[/32-bit]
//at this point ecx contains the address where the bytes are stored
//put the bytes into the eax register
mov eax,[ecx] //second fun fact, addressing with 32-bit registers doesn't work in 64-bit, it becomes a 64-bit automatically (most of the time)
shr eax,3 //shift right by 3 bits (divide by 8)
//and now exit the routine
[64-bit]
ret
[/64-bit]
[32-bit]
pop ecx
pop ebp
ret 4
[/32-bit]
//The convert back routine should hold a routine that converts the given integer back to a row of bytes (e.g when the user wats to write a new value)
//function declared as: stdcall void ConvertBackRoutine(int i, unsigned char *output);
ConvertBackRoutine:
[32-bit]
push ebp
mov ebp,esp
push edx //save the registers
push ecx
mov edx,[ebp+0c]
mov ecx,[ebp+08]
[/32-bit]
//at this point edx contains the address to write the value to
//and ecx contains the value
push eax
push edx
mov edx,[edx] //edx now contains the original value
and edx,7 //only save the first 3 bits
mov eax,ecx //eax gets the user input value
shl eax,3 //shift left by 3 bits (multiply by 8)
or eax,edx //add the bits of the original value
pop edx
mov [edx],eax //write the new value into the old value
pop eax
[64-bit]
//everything is back to what it was, so exit
ret
[/64-bit]
[32-bit]
//cleanup first
pop ecx
pop edx
pop ebp
ret 8
[/32-bit]
then you search it like normal
Maybe try to pointer scan the value and restart the games multiples times keeping the same adresses and values 'till you have less than 10 pointers and change 1 of them or change them all at the same time ?Cheat Engine with the value + 0.75 * 8 does not seem to work anymore. This code also does not work. I followed the guide posted by both applesauce and Yuusuke Akatsuki but to no avail. Is there a change to the new version? Thanks.
EDIT : It works on the HP and EXP, but when I change the value of the money, it does not seem to budge. Is there some kind of anti cheat protection for money?
not if its Notendo. they have some self proclaimed "protectors" and their own legal staff slapping you around until you run out of money. the latter takes somewhat slower turns. there are actually however some people who might send you some forged C&D order and well feel free to check with Notendos legal staff if it's from them. you're in a pickle even if it's a fake, because then you have their attention and, see above.Wait, the game got hit with copyright infringement? Aren't parodies under the domain of fair use?