Lua:autoAssemble

From Cheat Engine
Jump to navigation Jump to search

function autoAssemble(AutoAssemblerScript, TargetSelf OPTIONAL, DisableInfo OPTIONAL) : nil,errorstring - boolean, table

function autoAssemble(AutoAssemblerScript, DisableInfo OPTIONAL) : nil,errorstring - boolean, table

runs the auto assembler with the given text. Returns true on success, with as secondary a table you can use when disabling (if TargetSelf is set it will assemble into Cheat Engine itself). If DisableInfo is provided the [Disable] section will be handled.

Tip: Use '[[ ]]' or '[==[ ]==]' quotes for multiline script.

Function Parameters[edit]

Parameter Type Description
AutoAssemblerScript string The script to run with Cheat Engine's auto assembler
TargetSelf boolean If set it will assemble into Cheat Engine itself
DisableInfo boolean If provided the [Disable] section will be handled
Parameter Type Description
AutoAssemblerScript string The script to run with Cheat Engine's auto assembler
DisableInfo boolean If provided the [Disable] section will be handled


Examples[edit]

  autoAssemble("{$lua}\n print('Printed Form Auto Assembler Script!')")


  local scriptStr = [[
    alloc(memExample)
    label(returnHere)

    memExample:
      mov eax,123
      jmp returnHere
     
    00400500:
      jmp memExample
      returnHere:
 ]]

  if autoAssemble(scriptStr) then
    print('The auto assembler script was successful.')
  else
    print('There was an error with the auto assembler script.')
  end


  local scriptStr = [==[
    alloc(memExample)
    label(returnHere)
     
    memExample:
      mov eax,123
      jmp returnHere
     
    00400500:
      jmp memExample
      returnHere:
  ]==]
  ---- Enable script
  local enabledOk, disableInfo = autoAssemble(scriptStr)
  if enabledOk then
    print('The auto assembler script was enabled successfully.')
  else
    print('There was an error enabling the auto assembler script.')
  end
  ---- Disable script
  local disabledOk = autoAssemble(scriptStr, disableInfo)
  if disabledOk then
    disableInfo = nil
    print('The auto assembler script was disabled successfully.')
  else
    print('There was an error disabling the auto assembler script.')
  end


  local scriptStr = [[
    alloc(memExample2)
    memExample2:
      dd (float)364.12458729
      dd (float)12.65594753
      dd (float)50.75331054
      dd 0
      // player base
      dq 0
      // map base
      dq 0
  ]]
 
  if not autoAssemble(scriptStr, true) then
    return 1, 'There was an error with the auto assembler script.'
  end

See also[edit]

Related Functions[edit]