| View previous topic :: View next topic | 
	
	
		| Author | Message | 
	
		| tdr2012 Cheater
 
 ![]() Reputation: 0 
 Joined: 02 Nov 2014
 Posts: 26
 
 
 | 
			
				|  Posted: Sat Dec 12, 2015 11:42 am    Post subject: Grouped AA script not activating when one aob fails |   |  
				| 
 |  
				| I am having trouble getting multiple Aobscans within a single auto assemble script to activate. At first, I was trying to activate the checkbox of the AA entry within the Cheat table, then I encountered a long delay (while it tries to find 5 aob patterns). 
 However, after waiting for it to finish (and for me to get control back to the Cheat Engine user interface), the checkbox remained unchecked, as if it failed or something.
 
 I proceeded to try activating the 5 aobscans as separate scripts, and they were quickly found, except for the 3rd aobscan. I found that aobscan #3 had incorrect bytes it was looking for and a fix to that allowed it to find the address that the aob pattern matches.
 
 
 Instead of individually checking which aobscan has an error, is there a way that the AA script with combined aobscan operations can still activate, even if one aobscan pattern cannot be found? Like, some sort of error catching? I would like the rest of the aobscans to activate and not be disabled just because one aobscan failed.
 
 Is this possible to do?
 |  | 
	
		| Back to top |  | 
	
		|  | 
	
		| Zanzer I post too much
 
 ![]() Reputation: 126 
 Joined: 09 Jun 2013
 Posts: 3278
 
 
 | 
			
				|  Posted: Sat Dec 12, 2015 12:42 pm    Post subject: |   |  
				| 
 |  
				| Use Lua to execute the AA or simply create a Header entry and put the separated AOBs under it. The Header has an option to activate all child scripts under it.
 |  | 
	
		| Back to top |  | 
	
		|  | 
	
		| Dark Byte Site Admin
 
  Reputation: 470 
 Joined: 09 May 2003
 Posts: 25807
 Location: The netherlands
 
 | 
			
				|  Posted: Sat Dec 12, 2015 12:48 pm    Post subject: |   |  
				| 
 |  
				| even if i made it so aobscan failing would  not be a critical error,  code that references that aob label would still end up being a critical error _________________
 
 Do not ask me about online cheats. I don't know any and wont help finding them.
 Like my help? Join me on Patreon so i can keep helping
 |  | 
	
		| Back to top |  | 
	
		|  | 
	
		| tdr2012 Cheater
 
 ![]() Reputation: 0 
 Joined: 02 Nov 2014
 Posts: 26
 
 
 | 
			
				|  Posted: Sat Dec 12, 2015 1:02 pm    Post subject: |   |  
				| 
 |  
				|  	  | Zanzer wrote: |  	  | Use Lua to execute the AA or simply create a Header entry and put the separated AOBs under it. The Header has an option to activate all child scripts under it.
 | 
 So, I put all of the aobs under a header entry and set it to activate all children scripts under it. However, I noticed that it now takes longer to find the same aob patterns separated vs. together in one script. Is this because the aobscan function has to open up and close memory each time the aobscan is called?
 |  | 
	
		| Back to top |  | 
	
		|  | 
	
		| ++METHOS I post too much
 
 ![]() Reputation: 92 
 Joined: 29 Oct 2010
 Posts: 4197
 
 
 | 
			
				|  Posted: Sat Dec 12, 2015 1:41 pm    Post subject: |   |  
				| 
 |  
				| Have you tried using aobscanmodule? |  | 
	
		| Back to top |  | 
	
		|  | 
	
		| panraven Grandmaster Cheater
 
 ![]() Reputation: 62 
 Joined: 01 Oct 2008
 Posts: 958
 
 
 | 
			
				|  Posted: Sat Dec 12, 2015 1:57 pm    Post subject: |   |  
				| 
 |  
				|  	  | tdr2012 wrote: |  	  |  	  | Zanzer wrote: |  	  | Use Lua to execute the AA or simply create a Header entry and put the separated AOBs under it. The Header has an option to activate all child scripts under it.
 | 
 So, I put all of the aobs under a header entry and set it to activate all children scripts under it. However, I noticed that it now takes longer to find the same aob patterns separated vs. together in one script. Is this because the aobscan function has to open up and close memory each time the aobscan is called?
 | 
 
 Yes, AOBScan's aob pattern in same AA Script is grouped, so that only one pass memory is needed, since AA AOBScan return only 1 result, the scan stop as soon as each aob pattern is found once.
 
 btw, to check which aob in the same AA script cause 'not found', may be some lua function capturing the 'aob' pattern in the AA script and scan and report how many match for each pattern can be made.
 
 ADDED:
 This a script to help found outdated AOB in AA script of memory record.
 The script can be save to disk, if save to autorun directory of ce dir, it will load automatically.
 Right-click on Memory Record panel for the menu command.
 bye~
 
 
 
 
	
		
	 
		| Description: | 
			
				| save the mraobtest.lua in table file menu into autorun directory for auto load. |  |  Download
 |  
		| Filename: | 01_testaobpattern0.CT |  
		| Filesize: | 4.76 KB |  
		| Downloaded: | 735 Time(s) |  
 _________________
 
 - Retarded. 
 Last edited by panraven on Sun Dec 13, 2015 2:11 pm; edited 1 time in total
 |  | 
	
		| Back to top |  | 
	
		|  | 
	
		| tdr2012 Cheater
 
 ![]() Reputation: 0 
 Joined: 02 Nov 2014
 Posts: 26
 
 
 | 
			
				|  Posted: Sat Dec 12, 2015 2:49 pm    Post subject: |   |  
				| 
 |  
				|  	  | ++METHOS wrote: |  	  | Have you tried using aobscanmodule? | 
 I just gave this a try and it didn't give me the result I was looking for. The addresses I am finding exist outside of the module's memory space (I think this is right). It works when I try to search bytes within the modules memory space, though.
 
 It looks like Aobscan is the only one that can do this, if I read the documentation right.
 
 Edit: if it doesn't say "Modulename" or "Modulename+Offset", then that means an address isnt within the module for aobscanmodule to find it?
 |  | 
	
		| Back to top |  | 
	
		|  | 
	
		| ParkourPenguin I post too much
 
  Reputation: 152 
 Joined: 06 Jul 2014
 Posts: 4706
 
 
 | 
			
				|  Posted: Sat Dec 12, 2015 5:37 pm    Post subject: |   |  
				| 
 |  
				|  	  | tdr2012 wrote: |  	  | Edit: if it doesn't say "Modulename" or "Modulename+Offset", then that means an address isnt within the module for aobscanmodule to find it? | 
 Open up the Lua console window (Ctrl + Alt + Shift + L), and paste this in:
 print(getNameFromAddress(0x00400000))
 
 ... where 00400000 is the address you're trying to look up. If it prints out something like herpderp.exe+10, then it's in the module herpderp.exe. If it just prints out the address again (e.g. 00400000), then it's not in a module.
 _________________
 
 I don't know where I'm going, but I'll figure it out when I get there. |  | 
	
		| Back to top |  | 
	
		|  | 
	
		| ++METHOS I post too much
 
 ![]() Reputation: 92 
 Joined: 29 Oct 2010
 Posts: 4197
 
 
 | 
			
				|  Posted: Sat Dec 12, 2015 8:21 pm    Post subject: |   |  
				| 
 |  
				| -Did you specify the module address in your script? Even if the data is being stored in a different module, you should be able to specify which module+offset it is. If you can't get the module address, then I believe you will need to use aobscan. Perhaps someone can verify this. Aobscanmodule should expedite script activation considerably, however. 	  | tdr2012 wrote: |  	  | Edit: if it doesn't say "Modulename" or "Modulename+Offset", then that means an address isnt within the module for aobscanmodule to find it? | 
 |  | 
	
		| Back to top |  | 
	
		|  | 
	
		| tdr2012 Cheater
 
 ![]() Reputation: 0 
 Joined: 02 Nov 2014
 Posts: 26
 
 
 | 
			
				|  Posted: Sun Dec 13, 2015 10:12 am    Post subject: |   |  
				| 
 |  
				|  	  | ++METHOS wrote: |  	  | -Did you specify the module address in your script? Even if the data is being stored in a different module, you should be able to specify which module+offset it is. If you can't get the module address, then I believe you will need to use aobscan. Perhaps someone can verify this. Aobscanmodule should expedite script activation considerably, however. 	  | tdr2012 wrote: |  	  | Edit: if it doesn't say "Modulename" or "Modulename+Offset", then that means an address isnt within the module for aobscanmodule to find it? | 
 | 
 Yes, I was actually hoping I could use Aobscanmodule, because that only scans the memory of the process that's open; much better than reading entire memory.
 But, using the method that ParkourPenguin suggested, I tried to get the Name from an address that has the value I want to edit. This is the result I got back:
 
  	  | Code: |  	  | print(getNameFromAddress(0x00C7C1D8)) 
 00C7C1D8
 
 
 | 
 So, it seems that the address that has the value I want to edit, isn't tied to a module, like module+offset. I guess this means I can't use Aobscanmodule to find the address, then.
 
 But, I never knew you could use Lua for aobscans as well; I may just end up going that route. I thought aobscans were only for AA scripts, but I'm glad I learned something new.
 |  | 
	
		| Back to top |  | 
	
		|  | 
	
		|  |