[Suggestion] CE's readmem function
RE: CE's readmem function Posted on: 05/04/2015 12:55pm
Quote Post

how to updated a submitted script? 
It is blank.
I guess I've to paste the script again to overwrite previous one?

---

a quick check for currently allowed syntax:


has to include [ENABLE]/[DISABLE] pairs
[ENABLE]
aobscan(label_name, 12 34 ?? ) // comment - aob has to be 2-numbers, eg '1' is not good, has to be '01'

label_name: // direct address eg. 401000: is not good, label_name has to be defined before
db 56 78     // only db type, dd not good yet , string and type conversion (eg. (float)100 ) not good
[DISABLE]


It seems it is case-insensitive for command and label.

ce aa script aobscan is batch scan in 1 pass but only return 1 result per aob,
not sure it is the same as KH script.




No +karma or thanks post please,
we shall exchange appreciation via telepathy ;)
 

RE: CE's readmem function Posted on: 05/04/2015 8:35pm
Quote Post
TIM the Enchanter
Level: 1
ADR Info

Try again man.  This was more or less an alpha release. :P





Everything's coming up KongHack!

"When you know nothing matters, the universe is yours" ~Rick Sanchez

RE: CE's readmem function Posted on: 05/04/2015 8:44pm
Quote Post
Never let a computer tell me shit.

basically i based it off of your caravaneer cheat table.

scripts are case insensitive

current functions are:
aobscan
readmem

memory addresses eg: "_scanAddress+e:"
must match the following regex
^(?<param1>(?:(?<param1a>[a-zA-Z_]\w*)\s*(?:\+\s*(?<param1b>[a-fA-F0-9]+))?)|[a-fA-F0-9]+)\s*\:
addresses like 970987faeff: should be fine. i may need to check the logic on the validator

ive not bothered myself with modules yet. eg: isaac-ng.exe+3f:

I never even considered any thing other than DB
do you actually use DW, DD, DQ, DT, DDQ, and DO?



 




I use this AoB tool to make all the AoBs I post. Try the online version if you dont feel like downloading it.
"Obviously, windows are central to Windows. They are so important that they named the operating system after them. But what is a window?"

RE: CE's readmem function Posted on: 05/04/2015 11:52pm
Quote Post
The Laziest Man on KongHack
kolonelkadat Posted on: 05/04/2015 4:44pm

basically i based it off of your caravaneer cheat table.

scripts are case insensitive

current functions are:
aobscan
readmem

memory addresses eg: "_scanAddress+e:"
must match the following regex
^(?<param1>(?:(?<param1a>[a-zA-Z_]\w*)\s*(?:\+\s*(?<param1b>[a-fA-F0-9]+))?)|[a-fA-F0-9]+)\s*\:
addresses like 970987faeff: should be fine. i may need to check the logic on the validator

ive not bothered myself with modules yet. eg: isaac-ng.exe+3f:

I never even considered any thing other than DB
do you actually use DW, DD, DQ, DT, DDQ, and DO?



that regex hurts my brain.

also, ive never used anything than DB. DW sounds like it would be the most useful after DB, and its super situational.




RE: CE's readmem function Posted on: 05/05/2015 10:14pm
Quote Post

(off topic) anyone know how to make ce auto assembly repeatly scan and replace the aob until no more scan result found (i need this for unity game) thank you :D

ps. this is what i'm using right now, which is really slow as hell (30 sec. ~ 1 min. total time and it make my cheat engine hang a bit) and want to know the proper method http://i.imgur.com/SbQMwbU.png

RE: CE's readmem function Posted on: 05/06/2015 3:42am
Quote Post
gravebella2 Posted on: 05/05/2015 6:14pm

(off topic) anyone know how to make ce auto assembly repeatly scan and replace the aob until no more scan result found (i need this for unity game) thank you :D

ps. this is what i'm using right now, which is really slow as hell (30 sec. ~ 1 min. total time and it make my cheat engine hang a bit) and want to know the proper method http://i.imgur.com/SbQMwbU.png



You may try simulate auto-assembler (aa) with lua.

Here a framework:

{$lua}
function run(enable,skip)-- has to be global function
  if skip==true then return end  -- skip when syntaxcheck, ie. when pressing script window 'OK' to save the script.
  local ok,script = true,''
  if enable==true then -- simulate [ENABLE] section
    print('enable')
    
    if ok then -- scan #1
        local aob = AOBScan('12 34 56 78 ff ff','-X') -- lua aobscan can set protection flag
        if aob~= nil then
          for i=0,aob.Count-1 do
            script = script .. string.format([[
            %s+02:
            db 00 00

            %s+08:
            db 00 00

            ]],aob[i],aob[i]) -- put more to match %s if need
          end
          aob.Destroy() -- clean up
        else
          ok = false -- stop further execution for no scan result
        end
    end -- scan #1
    
    if ok then -- scan #2
        local aob = AOBScan('12 34 56 78 ff ff','-X) -- lua aobscan can set protection flag
        if aob~= nil then
          for i=0,aob.Count-1 do
            script = script .. string.format([[
            %s+02:
            db 00 00
            ]],aob[i]) -- put more to match %s if need
          end
          aob.Destroy() -- clean up
        else
          ok = false -- stop further execution for no scan result
        end
    end -- scan #2
    
    -- etc.
    
  else     -- simulate [DISABLE] section
    print('disable')
    return true ---   RETURN HERE since no script need to execute
  end

-- actually execute the aa script
  ok = ok and script:len()>0 and autoAssemble(script) -- return true only everything 'ok' ;)
-- signal error by assert if script failed  
  return assert(ok)
end
{$asm}

[ENABLE]
{$lua}
return run(true,syntaxcheck)  -- luacall won't work 
{$asm}
[DISABLE]
{$lua}
return run(false,syntaxcheck)
{$asm}


If the original aa is more complicated, eg. involve a few more scan and using readmem etc., the lua may has to changed respectively



================

not really offtopic,
KH script need not follow exactly CE AA Script.
May be KH script include some variant of aobscan,
eg. AOBScanOne to only return 1st match,
while AOBScanMany to apply the script for each result?
But it may have problem if more than 2 AOBScanMany in one script,
since it is undefined to interact with respective results,

if result1 = {1,2,3},result2={a,b,c}

eg. should result1 pair up with nearest result2,
script(1,a)
script(2,b)
script(3,c)

or should result1 cross-product with result2?
script(1,a),script(2,a),script(3,a)
script(1,b),script(2,b),script(3,b)
script(1,c),script(2,c),script(3,c)

Or, just only allow one AOBScanMany in one script.

 




No +karma or thanks post please,
we shall exchange appreciation via telepathy ;)
 

RE: CE's readmem function Posted on: 05/06/2015 5:11am
Quote Post
Never let a computer tell me shit.

my friend, let us please make a new post dedicated to aobscan where we can discuss it without completely derailing this thread.

this thread is about readmem




I use this AoB tool to make all the AoBs I post. Try the online version if you dont feel like downloading it.
"Obviously, windows are central to Windows. They are so important that they named the operating system after them. But what is a window?"

RE: CE's readmem function Posted on: 05/06/2015 7:07am
Quote Post
kolonelkadat Posted on: 05/06/2015 1:11am

my friend, let us please make a new post dedicated to aobscan where we can discuss it without completely derailing this thread.

this thread is about readmem



oh, sry.

btw, sry again I check if KH script actually work on KHUT only by now, but KH script cheat doesn't show on my KHUT cheat list.
If it is because for testing that limit to a certain group, please check if the script work or not? Thanks.
game brave tales/ cheat: disoreintation
https://konghack.com/game/display/72000-brave_tales/#info-links
It is a flash game, but like unity, somehow it has another exact copy of *.swf in memory
It should match 4 results , 2 for each copy. 
The main aob to be search is '08 02 1b ?? ff ff 05 ?? ?? ff ?? ?? ff ?? ?? ff ?? ?? ff ?? ?? ff ?? ?? ff 27 48'
Please check,eg. with CE, if all 4 aob results changed when cheat applied.
Thank you~




No +karma or thanks post please,
we shall exchange appreciation via telepathy ;)
 

RE: CE's readmem function Posted on: 05/06/2015 7:38am
Quote Post
Never let a computer tell me shit.

aobscan only returns 1 result
so no.
the trainer and the server arent linked up yet
khscript will start with the next traiener version
I will release the next trainer version between 12 hours from now and whenever, like at some point, maybe.




I use this AoB tool to make all the AoBs I post. Try the online version if you dont feel like downloading it.
"Obviously, windows are central to Windows. They are so important that they named the operating system after them. But what is a window?"