
Trews27
Members-
Posts
20 -
Joined
-
Last visited
Content Type
Profiles
Forums
Downloads
Gallery
Everything posted by Trews27
-
Please describe what to do next.
-
I didn't understand you right away. I can find and change the values with this script. When moving between locations, the values are reset and need to be found again, during this time I can be killed). That's why I wanted to automate the process so as not to lose precious seconds. Field_Offset_Finder_V4.lua
-
Here is another field and class. But with this search method the result is the same. class AtmosphereFrames.FogFrame public System.Single End; // 0x38
-
All the values I found were in the anonymous area. Yes, I tried, the result is the same. The whole search takes 1-2 seconds, it seems the script does not search anything at all.
-
Yes, the game is definitely 64-bit.
-
The result is the same. The script is executed, no errors, no values found.
-
Hi. I already know how to do this, but there was a problem with one game. With Feild offset finder everything is found and easily changed, but the script does not find anything. Class: ActorCameraController. Fields: public struct ActorCameraController.State Outside; // 0x60. function metaDataOffsets(). I tried to write the field name in different ways, nothing helps. Maybe there is a way to search without the field name? function metaDataOffsets() startAddressDat = 0 endAddressDat = 0 local rangesDat = gg.getRangesList("global-metadata.dat") for i, v in ipairs(rangesDat) do if v.state == "O" then startAddressDat = v.start endAddressDat = rangesDat[i]["end"] break end end end metaDataOffsets() function stringNames() Class_ActorCameraController = "h004163746f7243616d657261436f6e74726f6c6c657200" end stringNames() function searchString(className) gg.clearResults() gg.searchNumber(className, gg.TYPE_BYTE, nil, nil, startAddressDat, endAddressDat) gg.searchPointer(0) local a = gg.getResults(5) for i, v in ipairs(a) do v.address = v.address - classOffset end gg.loadResults(a) end function isProcess64Bit() local regions = gg.getRangesList() local lastAddress = regions[#regions]["end"] return (lastAddress >> 32) ~= 0 end function validISA() instructionSetArchitecture = 0 if isProcess64Bit() == true then instructionSetArchitecture = 64 else instructionSetArchitecture = 32 end return instructionSetArchitecture end validISA() function instructionsOffset() if instructionSetArchitecture == 32 then hexConvert = 0xFFFFFFFF dataType = 4 classOffset = 0x8 else dataType = 32 classOffset = 0x10 end end instructionsOffset() function offset_actorCameraController() if instructionSetArchitecture == 32 then else offset_Outside = 0x60 end end offset_actorCameraController() function ActorCameraController() gg.clearResults() searchString(Class_ActorCameraController) gg.searchPointer(0) local instances_ActorCameraController = gg.getResults(gg.getResultsCount()) gg.clearResults() local ActorCameraController_Outside = {} for i, v in ipairs(instances_ActorCameraController) do ActorCameraController_Outside[i] = {address = v.address + offset_Outside, flags = gg.TYPE_FLOAT} end gg.loadResults(ActorCameraController_Outside) end
-
-
This is not an answer to the question. Your answer didn’t help at all, I knew that without you.
-
Скрипт завершен: Ошибка скрипта: luaj.o: /storage/emulated/0/gg.lua/yfgdfhju.lua:104 ` gg.editAll('0', gg.TYPE_FLOAT)` You must call gg.getResults before calling gg.editAll. (field 'editAll') level = 1, const = 21, proto = 0, upval = 1, vars = 12, code = 72 CALL v4..v6 ; PC 70 CODE 0180411D OP 29 A 4 B 3 C 1 Bx 1537 sBx -129534 stack traceback: /storage/emulated/0/gg.lua/yfgdfhju.lua:104 in function 'WeaponBalanceComponent' /storage/emulated/0/gg.lua/yfgdfhju.lua:106 in main chunk [Java]: in ? at android.ext.Script$editAll.b(src:3704) at android.ext.Script$ApiFunction.a_(src:1393) at luaj.lib.VarArgFunction.a(src:62) at luaj.LuaClosure.a(src:535) at luaj.LuaClosure.l(src:160) at luaj.LuaClosure.a(src:533) at luaj.LuaClosure.l(src:160) at android.ext.Script.d(src:6056) at android.ext.Script$ScriptThread.run(src:5785)
-
If I understand correctly, there are several ways to change this. I tried to do it myself, but it didn't work out well. Help please.
-
Reloading the weapon I need takes 11 seconds. for i, v in ipairs(filter) do if (v.value <= 12) and (v.value >= 11) then sortedFields[#sortedFields + 1] = {address = v.address, flags = gg.TYPE_FLOAT} Finds 2 values that are needed. Works as it should. Is it possible to add value changes to the script after filtering ?
-
Works. Super. You are the best. This is what I wanted. As far as I understand, this method can be applied to other games? If it's not difficult. Can you show an example of this script, only with subsequent filtering of values and changing them ?
-
Thanks for your answer. Any manipulation ends with this error luaj.o: /storage/emulated/0/jjjjjjjjjjjjj.lua:101 ` gg.searchNumber(compareWeaponsToAssembly[1].address, dataType) -- perform pointer search on class pointer to get it's inst...` attempt to index ? (a nil value) with key 'address' (field '1') level = 1, const = 38, proto = 0, upval = 1, vars = 9, code = 128 GETTABLE v1 v1 "address" ; PC 75 CODE 00C3C047 OP 7 A 1 B 1 C 271 Bx 783 sBx -130288 stack traceback: /storage/emulated/0/jjjjjjjjjjjjj.lua:101 in function 'weaponsSettings' /storage/emulated/0/jjjjjjjjjjjjj.lua:112 in main chunk [Java]: in ? at luaj.LuaValue.f(src:989) at luaj.LuaValue.c(src:2864) at luaj.LuaValue.i(src:2767) at luaj.LuaValue.w(src:1094) at luaj.LuaClosure.a(src:363) at luaj.LuaClosure.l(src:160) at luaj.LuaClosure.a(src:533) at luaj.LuaClosure.l(src:160) at android.ext.Script.d(src:6056) at android.ext.Script$ScriptThread.run(src:5785)
-
Hello. I'm new to this and don't understand much. I have a class name (WeaponBalaceComponent) and a field offset (0x48), an anonymous region. With the help of field offset search scripts, everything is found and changed, but it takes a lot of time. How to write a Lua script using this data for Game Guardian. Can you show an example? This will help me a lot in the future. I am ready to provide any data. Игра Armor Attack. Dump.cs
-
Hello. I know that in android games there are two types of protection: external and internal. Everything is clear with external protection. I can play any game with GameGuardian running, but as soon as I start searching, the game closes. Is there a way to bypass or disable the internal protection that detects finding and changing values using GameGuardian ?!