Difference between revisions of "Mono:Lua"
Jump to navigation
Jump to search
(Created page with '<!-- Mono:Lua --> Category:Mono Category:Help Category:Lua {{DISPLAYTITLE:Mono - Lua Functions}} {{NeedWork}} == Main Methods == * [[Mono:Lua:LaunchMonoDataCollector…') |
m (Reverted edits by This content is not available (Talk) to last revision by TheyCallMeTim13) |
||
(5 intermediate revisions by 2 users not shown) | |||
Line 8: | Line 8: | ||
== Main Methods == | == Main Methods == | ||
* [[Mono:Lua:LaunchMonoDataCollector|LaunchMonoDataCollector]]: Injects the ''MonoDataCollector'' dll and returns 0 for failure, or the ''monoBase'' returned from the CMD_INITMONO command on the mono pipe. | * [[Mono:Lua:LaunchMonoDataCollector|LaunchMonoDataCollector]]: Injects the ''MonoDataCollector'' dll and returns 0 for failure, or the ''monoBase'' returned from the CMD_INITMONO command on the mono pipe. | ||
+ | |||
* [[Mono:Lua:monoTypeToVarType|monoTypeToVarType]]: Returns the Cheat Engine type (vtString, vtByte, vtWorkd, vtDword, vtSingle, vtDouble, vtPointer) for the given mono type. | * [[Mono:Lua:monoTypeToVarType|monoTypeToVarType]]: Returns the Cheat Engine type (vtString, vtByte, vtWorkd, vtDword, vtSingle, vtDouble, vtPointer) for the given mono type. | ||
− | + | ||
+ | === Domains === | ||
* [[Mono:Lua:mono_enumDomains|mono_enumDomains]]: Returns a table of domains addresses for each domain in the game. | * [[Mono:Lua:mono_enumDomains|mono_enumDomains]]: Returns a table of domains addresses for each domain in the game. | ||
* [[Mono:Lua:mono_setCurrentDomain|mono_setCurrentDomain]]: Sets the domain the ''MonoDataCollector'' will use. | * [[Mono:Lua:mono_setCurrentDomain|mono_setCurrentDomain]]: Sets the domain the ''MonoDataCollector'' will use. | ||
+ | |||
+ | === Assemblies === | ||
* [[Mono:Lua:mono_enumAssemblies|mono_enumAssemblies]]: Returns table of assembly Ids for each assembly in the current domain from the ''MonoDataCollector''. | * [[Mono:Lua:mono_enumAssemblies|mono_enumAssemblies]]: Returns table of assembly Ids for each assembly in the current domain from the ''MonoDataCollector''. | ||
+ | |||
* [[Mono:Lua:mono_getImageFromAssembly|mono_getImageFromAssembly]]: Returns the image Id for the passed assembly. | * [[Mono:Lua:mono_getImageFromAssembly|mono_getImageFromAssembly]]: Returns the image Id for the passed assembly. | ||
* [[Mono:Lua:mono_image_get_name|mono_image_get_name]]: Returns the name of the assembly with the given image Id. | * [[Mono:Lua:mono_image_get_name|mono_image_get_name]]: Returns the name of the assembly with the given image Id. | ||
* [[Mono:Lua:mono_image_enumClasses|mono_image_enumClasses]]: Returns a table of class Ids for then classes in the given assembly image. | * [[Mono:Lua:mono_image_enumClasses|mono_image_enumClasses]]: Returns a table of class Ids for then classes in the given assembly image. | ||
+ | |||
+ | === Classes === | ||
+ | * [[Mono:Lua:mono_object_getClass|mono_object_getClass]]: Returns classId, className of the class at the given address in memory. | ||
+ | * [[Mono:Lua:mono_image_findClass|mono_image_findClass]]: Returns the class Id of the given class name and namespace in an image. | ||
+ | * [[Mono:Lua:mono_findClass|mono_findClass]]: Returns the class Id of the given class name and namespace | ||
* [[Mono:Lua:mono_class_getName|mono_class_getName]]: Returns the class name as a string. | * [[Mono:Lua:mono_class_getName|mono_class_getName]]: Returns the class name as a string. | ||
− | * [[Mono:Lua:mono_class_getNamespace]]: Returns the namespace of the given class as a string. | + | * [[Mono:Lua:mono_class_getNamespace|mono_class_getNamespace]]: Returns the namespace of the given class as a string. |
* [[Mono:Lua:mono_class_getParent|mono_class_getParent]]: Returns the class Id of the parent class for the given class. | * [[Mono:Lua:mono_class_getParent|mono_class_getParent]]: Returns the class Id of the parent class for the given class. | ||
* [[Mono:Lua:mono_class_getStaticFieldAddress|mono_class_getStaticFieldAddress]]: Returns the base address for a special area that stores static addresses for a given class. | * [[Mono:Lua:mono_class_getStaticFieldAddress|mono_class_getStaticFieldAddress]]: Returns the base address for a special area that stores static addresses for a given class. | ||
* [[Mono:Lua:mono_class_enumFields|mono_class_enumFields]]: Returns a table of field objects for fields in the given class. | * [[Mono:Lua:mono_class_enumFields|mono_class_enumFields]]: Returns a table of field objects for fields in the given class. | ||
* [[Mono:Lua:mono_class_enumMethods|mono_class_enumMethods]]: Returns a table of method objects for the methods in the given class. | * [[Mono:Lua:mono_class_enumMethods|mono_class_enumMethods]]: Returns a table of method objects for the methods in the given class. | ||
+ | * [[Mono:Lua:mono_class_findMethod|mono_class_findMethod]]: Returns the method Id of the given method name in the given class. | ||
+ | |||
+ | === JIT === | ||
* [[Mono:Lua:mono_getJitInfo|mono_getJitInfo]]: Returns a table with the properties given the address of code in memory. | * [[Mono:Lua:mono_getJitInfo|mono_getJitInfo]]: Returns a table with the properties given the address of code in memory. | ||
− | * [[Mono:Lua: | + | * [[Mono:Lua:mono_compile_method|mono_compile_method]]: JITs a method if it isn't compiled yet. |
− | * [[Mono:Lua: | + | * [[Mono:Lua:mono_free_method|mono_free_method]]: Frees the method (memory), only if profiler isn't being used, and only works on dynamic methods. |
+ | |||
+ | === Methods === | ||
* [[Mono:Lua:mono_class_findMethod|mono_class_findMethod]]: Returns the method Id of the given method name in the given class. | * [[Mono:Lua:mono_class_findMethod|mono_class_findMethod]]: Returns the method Id of the given method name in the given class. | ||
* [[Mono:Lua:mono_findMethod|mono_findMethod]]: Returns the method Id of the given method name in the given class name in the namespace. | * [[Mono:Lua:mono_findMethod|mono_findMethod]]: Returns the method Id of the given method name in the given class name in the namespace. | ||
Line 32: | Line 47: | ||
* [[Mono:Lua:mono_method_disassemble|mono_method_disassemble]]: ?? Returns a string - ''?? the IL code ??''. ?? | * [[Mono:Lua:mono_method_disassemble|mono_method_disassemble]]: ?? Returns a string - ''?? the IL code ??''. ?? | ||
* [[Mono:Lua:mono_method_getClass|mono_method_getClass]]: Returns the class Id a method belongs in. | * [[Mono:Lua:mono_method_getClass|mono_method_getClass]]: Returns the class Id a method belongs in. | ||
− | + | ||
− | |||
* [[Mono:Lua:mono_methodheader_getILCode|mono_methodheader_getILCode]]: Returns ''address'', ''size''. | * [[Mono:Lua:mono_methodheader_getILCode|mono_methodheader_getILCode]]: Returns ''address'', ''size''. | ||
* [[Mono:Lua:mono_getILCodeFromMethod|mono_getILCodeFromMethod]]: Combination of [[Mono:Lua:mono_method_getHeader|mono_method_getHeader]] and [[Mono:Lua:mono_methodheader_getILCode|mono_methodheader_getILCode]]. | * [[Mono:Lua:mono_getILCodeFromMethod|mono_getILCodeFromMethod]]: Combination of [[Mono:Lua:mono_method_getHeader|mono_method_getHeader]] and [[Mono:Lua:mono_methodheader_getILCode|mono_methodheader_getILCode]]. | ||
+ | |||
+ | ==== Invoke ==== | ||
+ | * [[Mono:Lua:mono_invoke_method|mono_invoke_method]]: Invokes a method with the given arguments. | ||
+ | |||
+ | === Misc. === | ||
* [[Mono:Lua:mono_iamge_rva_map|mono_iamge_rva_map]]: ?? Not sure what this is. ?? | * [[Mono:Lua:mono_iamge_rva_map|mono_iamge_rva_map]]: ?? Not sure what this is. ?? | ||
* [[Mono:Lua:mono_loadAssemblyFromFile|mono_loadAssemblyFromFile]]: Loads a ''C#'' assembly in the target process. | * [[Mono:Lua:mono_loadAssemblyFromFile|mono_loadAssemblyFromFile]]: Loads a ''C#'' assembly in the target process. | ||
− | |||
== Cheat Engine Hooks == | == Cheat Engine Hooks == | ||
* [[Mono:Lua:mono_initialize|mono_initialize]]: Sets up hooks, calls old open process hook if there was one, and calls ''syncrhonize("mono_OpenProcessMT")''. | * [[Mono:Lua:mono_initialize|mono_initialize]]: Sets up hooks, calls old open process hook if there was one, and calls ''syncrhonize("mono_OpenProcessMT")''. | ||
+ | |||
* [[Mono:Lua:mono_OpenProcessMT|mono_OpenProcessMT]]: If timer (t) parameter is not nil; destroys timer then enumerates modules looking for 'mono.dll', and adds the mono menu item to Cheat Engine main form. | * [[Mono:Lua:mono_OpenProcessMT|mono_OpenProcessMT]]: If timer (t) parameter is not nil; destroys timer then enumerates modules looking for 'mono.dll', and adds the mono menu item to Cheat Engine main form. | ||
* [[Mono:Lua:mono_OpenProcess|mono_OpenProcess]]: | * [[Mono:Lua:mono_OpenProcess|mono_OpenProcess]]: | ||
+ | |||
* [[Mono:Lua:mono_structureDissectOverrideCallback|mono_structureDissectOverrideCallback]]: Called by CE when a structure is being dissected to fill in the values if we know the structure. | * [[Mono:Lua:mono_structureDissectOverrideCallback|mono_structureDissectOverrideCallback]]: Called by CE when a structure is being dissected to fill in the values if we know the structure. | ||
* [[Mono:Lua:mono_structureNameLookupCallback|mono_structureNameLookupCallback]]: Called by CE when creating a new structure in the structure dissector. | * [[Mono:Lua:mono_structureNameLookupCallback|mono_structureNameLookupCallback]]: Called by CE when creating a new structure in the structure dissector. |
Latest revision as of 19:07, 18 March 2019
This entry needs a lot of work. Please contribute if you can. Check this page to see if there are some suggestions for adding to Mono:Lua. |
Contents
Main Methods[edit]
- LaunchMonoDataCollector: Injects the MonoDataCollector dll and returns 0 for failure, or the monoBase returned from the CMD_INITMONO command on the mono pipe.
- monoTypeToVarType: Returns the Cheat Engine type (vtString, vtByte, vtWorkd, vtDword, vtSingle, vtDouble, vtPointer) for the given mono type.
Domains[edit]
- mono_enumDomains: Returns a table of domains addresses for each domain in the game.
- mono_setCurrentDomain: Sets the domain the MonoDataCollector will use.
Assemblies[edit]
- mono_enumAssemblies: Returns table of assembly Ids for each assembly in the current domain from the MonoDataCollector.
- mono_getImageFromAssembly: Returns the image Id for the passed assembly.
- mono_image_get_name: Returns the name of the assembly with the given image Id.
- mono_image_enumClasses: Returns a table of class Ids for then classes in the given assembly image.
Classes[edit]
- mono_object_getClass: Returns classId, className of the class at the given address in memory.
- mono_image_findClass: Returns the class Id of the given class name and namespace in an image.
- mono_findClass: Returns the class Id of the given class name and namespace
- mono_class_getName: Returns the class name as a string.
- mono_class_getNamespace: Returns the namespace of the given class as a string.
- mono_class_getParent: Returns the class Id of the parent class for the given class.
- mono_class_getStaticFieldAddress: Returns the base address for a special area that stores static addresses for a given class.
- mono_class_enumFields: Returns a table of field objects for fields in the given class.
- mono_class_enumMethods: Returns a table of method objects for the methods in the given class.
- mono_class_findMethod: Returns the method Id of the given method name in the given class.
JIT[edit]
- mono_getJitInfo: Returns a table with the properties given the address of code in memory.
- mono_compile_method: JITs a method if it isn't compiled yet.
- mono_free_method: Frees the method (memory), only if profiler isn't being used, and only works on dynamic methods.
Methods[edit]
- mono_class_findMethod: Returns the method Id of the given method name in the given class.
- mono_findMethod: Returns the method Id of the given method name in the given class name in the namespace.
- mono_method_getName: Returns the name of a method given the method id.
- mono_method_getHeader: ?? Returns a header Id. ??
- mono_method_getSignature: ?? Returns result, parameternames, returntype. ??
- mono_method_disassemble: ?? Returns a string - ?? the IL code ??. ??
- mono_method_getClass: Returns the class Id a method belongs in.
- mono_methodheader_getILCode: Returns address, size.
- mono_getILCodeFromMethod: Combination of mono_method_getHeader and mono_methodheader_getILCode.
Invoke[edit]
- mono_invoke_method: Invokes a method with the given arguments.
Misc.[edit]
- mono_iamge_rva_map: ?? Not sure what this is. ??
- mono_loadAssemblyFromFile: Loads a C# assembly in the target process.
Cheat Engine Hooks[edit]
- mono_initialize: Sets up hooks, calls old open process hook if there was one, and calls syncrhonize("mono_OpenProcessMT").
- mono_OpenProcessMT: If timer (t) parameter is not nil; destroys timer then enumerates modules looking for 'mono.dll', and adds the mono menu item to Cheat Engine main form.
- mono_OpenProcess:
- mono_structureDissectOverrideCallback: Called by CE when a structure is being dissected to fill in the values if we know the structure.
- mono_structureNameLookupCallback: Called by CE when creating a new structure in the structure dissector.
- mono_symbolLookupCallback: Called by CE when it is trying to find the address to go with a symbol.
- mono_addressLookupCallback: Called by CE in the disassembly window to show a symbol name for the address.
Mono Dissector Methods[edit]
- monoform_killform:
- monoform_miShowILDisassemblyClick:
- monoform_miRejitClick:
- monoform_miGetILCodeClick:
- monoform_EnumImages:
- monoform_EnumClasses:
- monoform_EnumFields:
- monoform_EnumMethods:
- mono_TVExpanding:
- mono_TVCollapsing:
- monoform_FindDialogFind:
- monoform_miFindClick:
- monoform_miExpandAllClick:
- monoform_miSaveClick:
- mono_dissect:
- miMonoActivateClick:
- miMonoDissectClick: