| 
			
				|  | Cheat Engine The Official Site of Cheat Engine
 
 
 |  
 
	
		| View previous topic :: View next topic |  
		| Author | Message |  
		| NuclearThroneHelp Guest
 
 
 
 
 
 
 | 
			
				|  Posted: Mon Dec 18, 2017 12:06 pm    Post subject: assembler sytax for code injection |   |  
				| 
 |  
				| Hey, 
 I've been trying to make a small cheat table for a game called Nuclear Throne, apparently in the game there are multiple different types of damage and i managed to pinpoint all of them and made "infinite hp" scripts for all, only problem is, one of them gives infinite hp to enemies as well. I did the usual struct dissection and found a 4-bit value consistently same among players and different on enemies (players all 5, enemies all 0)
 
 my problem is the syntax of the code to use to distinguish the player from the enemy and give infinite hp to player only. i did experiment for a long time, hopefully someone experienced can help me properly use cmp function
 
 This is the original code :
 
 label(code)
 label(return)
 
 newmem:
 
 code:
 movsd [ebx],xmm1
 jmp nuclearthrone.exe+1C2CD4
 jmp return
 
 HP4:
 jmp newmem
 nop
 return:
 registersymbol(HP4)
 
 
 
 
 
 [ebx] is address of HP, i found address of differentiating  type is [ebx+1C], where 5 is player and 0 is enemy. can someone help me code the syntax.
 
 
 
 also, what i normally do is:
 
 label(code)
 label(return)
 
 newmem:
 
 code:
 nop
 nop
 nop
 nop
 jmp nuclearthrone.exe+1C2CD4
 jmp return
 
 HP4:
 jmp newmem
 nop
 return:
 registersymbol(HP4)
 
 
 
 this nullifies the code but gives enemy infinite hp
 |  |  
		| Back to top |  |  
		|  |  
		| OldCheatEngineUser Whateven rank
 
  Reputation: 20 
 Joined: 01 Feb 2016
 Posts: 1586
 
 
 | 
			
				|  Posted: Mon Dec 18, 2017 2:02 pm    Post subject: |   |  
				| 
 |  
				|  	  | Guest wrote: |  	  | I did the usual struct dissection and found a 4-bit value consistently same among players and different on enemies (players all 5, enemies all 0) | 
 you meant 4-byte value? if so then:
 
 
  	  | Code: |  	  | label(code) label(return)
 
 newmem:
 cmp byte ptr [ebx+1C],05
 jz nuclearthrone.exe+1C2CD4
 
 code:
 movsd [ebx],xmm1
 jmp nuclearthrone.exe+1C2CD4
 jmp return
 
 HP4:
 jmp newmem
 nop
 return:
 registersymbol(HP4)
 | 
 _________________
 
 About Me;
I Use CE Since Version 1.X, And Still Learning How To Use It Well!
 Jul 26, 2020
 
  	  | STN wrote: |  	  | i am a sweetheart. | 
 |  |  
		| Back to top |  |  
		|  |  
		|  |  
  
	| 
 
 | You can post new topics in this forum You can reply to topics in this forum
 You cannot edit your posts in this forum
 You cannot delete your posts in this forum
 You cannot vote in polls in this forum
 You cannot attach files in this forum
 You can download files in this forum
 
 |  |