| Negasth How do I cheat?
 
 ![]() Reputation: 0 
 Joined: 15 Jun 2025
 Posts: 1
 
 
 | 
			
				|  Posted: Mon Jun 16, 2025 10:12 am    Post subject: call a function with a Vector3 parameter |   |  
				| 
 |  
				| I experienced a crash while using Cheat Engine version 7.6, but it worked fine with version 7.5. This is my script. 
  	  | Code: |  	  | local getPositionId = mono_findMethod('UnityEngine', 'Transform', 'get_position') local getTransformId = mono_findMethod('UnityEngine', 'Component', 'get_transform')
 local setPositionId = mono_findMethod('UnityEngine', 'Transform', 'set_position')
 
 local ValDirector = mono_findClass('', 'ValuableDirector')
 local ValDirectorInsAddr = mono_class_getStaticFieldAddress(mono_enumDomains()[1], ValDirector)
 local ValList = ReadQword(ReadQword(ValDirectorInsAddr)+0x118)
 local Items = ReadQword(ValList+0x10)
 local size = ReadInteger(ValList+0x18)
 
 local ControllerId = mono_findClass('', 'PlayerController')
 local instanceAddr = mono_class_getStaticFieldAddress(mono_enumDomains()[1], ControllerId)
 local positionPrevious = ReadQword(instanceAddr)+0x1c0
 
 --printf("pre%x",positionPrevious)
 --local testParam = {{type=12,value=positionPrevious}}
 local params = mono_method_get_parameters(setPositionId)
 local i
 local args_t={}
 for i=1, #params.parameters do
 args_t[i] = {}
 args_t[i].type = vtPointer
 args_t[i].value = positionPrevious
 end
 for i = 1, size do
 ValObject = ReadQword(Items + 0x18 + i*0x8)
 local transformIns = mono_invoke_method('UnityEngine', getTransformId, ValObject,{})
 if transformIns == 0 then
 goto continue
 end
 --local re = mono_invoke_method('UnityEngine', getPositionId, transformIns,{})
 local r = mono_invoke_method('UnityEngine', setPositionId, transformIns,args_t)
 --printf("%x %f %f %f",transformIns,re.x,re.y,re.z)
 --printf("%f %f %f",re.x,re.y,re.z)
 ::continue::
 end
 | 
 |  |