SHOW:
|
|
- or go back to the newest paste.
| 1 | - | -- Script generated by GameGuardian 101.1 |
| 1 | + | -- script creator: Nok1a (before under the name Platonic/Mr.Dragon Star) |
| 2 | - | -- Lua help: http://gameguardian.net/help/ |
| 2 | + | -- Tutorial on how to use: https://youtu.be/OylUtyEwGVA |
| 3 | -- Use whatever you like in the script in case needed | |
| 4 | - | local scriptName = [=====[👑 PRO ปั้ม BY เซียน ➡️ 1 เมษา 2025]=====] |
| 4 | + | -- value = Time.timeScale |
| 5 | - | local scriptVersion = '1.0.0' |
| 5 | + | |
| 6 | - | local scriptAuthor = 'User' |
| 6 | + | local hexConvert = 0x0 |
| 7 | local dataType = 0x0 | |
| 8 | - | -- วันหมดอายุ |
| 8 | + | local cdOffsetSmall = 0x0 |
| 9 | - | local expirationDate = os.time({year=2025, month=1, day=1}) -- วันที่หมดอายุ: 31 มีนาคม 2025
|
| 9 | + | local cdOffsetBig = 0x0 |
| 10 | - | local currentDate = os.time() |
| 10 | + | local cbOffsetSmall = 0x0 |
| 11 | local anonSpeedOffsetSmall = 0x0 | |
| 12 | - | -- เช็ควันหมดอายุ |
| 12 | + | local anonSpeedOffsetBig = 0x0 |
| 13 | - | if currentDate > expirationDate then |
| 13 | + | local anonGroupSearchOffset = 0x0 |
| 14 | - | gg.alert("🙏วันใช้งานหมด🙏 กรุณาติดต่อ🧑✈️ FB เซียน ประวีน")
|
| 14 | + | |
| 15 | function isProcess64Bit() | |
| 16 | -- Function -> by CmP: https://gameguardian.net/forum/topic/36604-how-to-get-instruction-set-architecture-on-emulator-virtual-memory-addresses/?do=findComment&comment=135506 | |
| 17 | local regions = gg.getRangesList() | |
| 18 | - | -- init |
| 18 | + | local lastAddress = regions[#regions]["end"] |
| 19 | - | gg.require('101.1', 16142)
|
| 19 | + | return (lastAddress >> 32) ~= 0 |
| 20 | - | gg.toast(scriptName..' v'..scriptVersion..' by '..scriptAuthor) |
| 20 | + | |
| 21 | ||
| 22 | - | -- Function to perform the main action |
| 22 | + | function noselect() |
| 23 | - | function mainAction() |
| 23 | + | gg.toast("You not select anything")
|
| 24 | end | |
| 25 | - | gg.searchNumber("h0100000012CA9A3BFF", gg.TYPE_BYTE, false, gg.SIGN_EQUAL, 0, -1, 0)
|
| 25 | + | |
| 26 | function cb_nothingFound() | |
| 27 | - | local results = gg.getResults(100) |
| 27 | + | if gg.getResultsCount() == 0 then |
| 28 | - | for i, v in ipairs(results) do |
| 28 | + | gg.alert("Search not found, Use Fuzzy or Xa")
|
| 29 | - | if v.flags == gg.TYPE_BYTE then |
| 29 | + | start() |
| 30 | - | v.value = "h3300000012CA9A3BFF" |
| 30 | + | end |
| 31 | - | v.freeze = true |
| 31 | + | |
| 32 | - | end |
| 32 | + | |
| 33 | ||
| 34 | - | gg.addListItems(results) |
| 34 | + | local ISA = isProcess64Bit() |
| 35 | - | gg.processResume() |
| 35 | + | local resultsCount = gg.getResultsCount() |
| 36 | - | gg.toast("👑 RUN ออโต้กันแบน BY เซียน")
|
| 36 | + | gg.clearResults() |
| 37 | ||
| 38 | function instructions() | |
| 39 | - | -- Menu function (ไม่ต้องวนลูป) |
| 39 | + | if ISA == false then -- if true then 32 bit else 64 bit |
| 40 | - | local options = {
|
| 40 | + | hexConvert = 0x100000000 |
| 41 | - | "💵 เด้งแพค ปั้มยุทธ์ BY เซียน", |
| 41 | + | dataType = 4 |
| 42 | - | "🔴 +6 100%", |
| 42 | + | cdOffsetSmall = 0xC |
| 43 | - | "🚪 Exit" |
| 43 | + | cdOffsetBig = 0xB58 |
| 44 | - | } |
| 44 | + | cbOffsetSmall = 0x1C |
| 45 | anonSpeedOffsetSmall = 0xE4 | |
| 46 | - | local choice = gg.choice(options, nil, scriptName) |
| 46 | + | anonSpeedOffsetBig = 0xEC |
| 47 | - | if choice == 1 then |
| 47 | + | anonGroupSearchOffset = 0x30 |
| 48 | - | mainAction() |
| 48 | + | else |
| 49 | - | elseif choice == 2 then |
| 49 | + | hexConvert = 0x0 |
| 50 | - | gg.alert("📣 กำลังอัพเดต เกมพึ่งอัพเดตไป ครับหัวหน้าใจเยสๆๆนะครับ")
|
| 50 | + | dataType = 32 |
| 51 | - | end |
| 51 | + | cdOffsetSmall = 0x18 |
| 52 | cdOffsetBig = 0x16B0 | |
| 53 | cbOffsetSmall = 0x38 | |
| 54 | cbOffsetBig = 0x48 | |
| 55 | anonSpeedOffsetSmall = 0xF4 | |
| 56 | anonSpeedOffsetBig = 0xFC | |
| 57 | anonGroupSearchOffset = 0x44 | |
| 58 | end | |
| 59 | end | |
| 60 | function unityVersion() | |
| 61 | gg.searchNumber(":Expected version: ", gg.TYPE_BYTE, gg.setRanges(16384))
| |
| 62 | if gg.getResultsCount() == 0 then | |
| 63 | gg.alert("This game is not made with Unity, fuzzy will be automatically activated!")
| |
| 64 | gg.alert("Make sure your game is open, don't hide it on the background!")
| |
| 65 | randomized() | |
| 66 | os.exit() | |
| 67 | else | |
| 68 | local count = gg.getResultsCount() | |
| 69 | local results = gg.getResults(count) | |
| 70 | values = {}
| |
| 71 | for i = 18, count, 18 do | |
| 72 | local resultAddress = results[i].address | |
| 73 | for j = 1, 7 do | |
| 74 | values[#values + 1] = {address = resultAddress + j, flags = gg.TYPE_BYTE}
| |
| 75 | end | |
| 76 | values = gg.getValues(values) | |
| 77 | end | |
| 78 | ||
| 79 | local str = '' | |
| 80 | for i, v in ipairs(values) do | |
| 81 | str = str .. string.char(v.value & 0xFF) | |
| 82 | end | |
| 83 | gg.clearResults() | |
| 84 | if values[1].value <= 0x35 and values[2].value == 0x2E and values[3].value <= 0x35 then -- unity versions 5.5 or below | |
| 85 | gg.alert("Unity version "..str..",This version is to old. Use Speedhack through Cb or Fuzzy")
| |
| 86 | anonGroupSearchOffset = 0x3C | |
| 87 | cbOffsetSmall = 0x24 | |
| 88 | anonSpeedOffsetSmall = 0xBC | |
| 89 | end | |
| 90 | gg.clearResults() | |
| 91 | end | |
| 92 | end | |
| 93 | ||
| 94 | function finalSpeedResult() | |
| 95 | resultsCount = gg.getResultsCount() | |
| 96 | local values = gg.getResults(resultsCount) | |
| 97 | local results = {}
| |
| 98 | local speed = {}
| |
| 99 | for b = 1, #values do | |
| 100 | local loop = 0x0 | |
| 101 | for i = 1, 70 do | |
| 102 | results[#results + 1] = {address = values[b].address + loop, flags = gg.TYPE_FLOAT}
| |
| 103 | loop = loop + 4 | |
| 104 | end | |
| 105 | end | |
| 106 | results = gg.getValues(results) | |
| 107 | for i, v in ipairs(results) do | |
| 108 | if v.value == 1 then | |
| 109 | speed[#speed +1] = {address = v.address, flags = v.flags, name = "Speed"}
| |
| 110 | break | |
| 111 | end | |
| 112 | end | |
| 113 | ||
| 114 | if #speed ~= 0 then | |
| 115 | gg.toast("Time.timeScale found")
| |
| 116 | gg.addListItems(speed) | |
| 117 | gg.clearResults() | |
| 118 | os.exit() | |
| 119 | end | |
| 120 | end | |
| 121 | ||
| 122 | function startxa() | |
| 123 | gg.clearResults() | |
| 124 | gg.setRanges(gg.REGION_CODE_APP) | |
| 125 | gg.searchNumber("h 6A 6F 79 73 74 69 63 6B 20 31 36 20 62 75 74 74 6F 6E 20 31 39")
| |
| 126 | if gg.getResultsCount() == 0 then | |
| 127 | gg.alert("Search not found, try Speedhack Cb or Fuzzy")
| |
| 128 | start() | |
| 129 | else | |
| 130 | local a = gg.getResults(1) | |
| 131 | gg.clearResults() | |
| 132 | gg.setRanges(gg.REGION_C_DATA | gg.REGION_OTHER) | |
| 133 | gg.searchNumber(a[1].address, dataType) | |
| 134 | resultsCount = gg.getResultsCount() | |
| 135 | a = gg.getResults(1) | |
| 136 | gg.clearResults() | |
| 137 | gg.setRanges(gg.REGION_ANONYMOUS | gg.REGION_C_ALLOC | gg.REGION_OTHER) | |
| 138 | gg.searchNumber(a[1].address + cdOffsetSmall, dataType) | |
| 139 | if gg.getResultsCount() ~= 1 then | |
| 140 | gg.clearResults() | |
| 141 | gg.setRanges(gg.REGION_ANONYMOUS | gg.REGION_C_ALLOC | gg.REGION_OTHER) | |
| 142 | gg.searchNumber(a[1].address - cdOffsetBig, dataType) | |
| 143 | end | |
| 144 | finalSpeedResult() | |
| 145 | end | |
| 146 | end | |
| 147 | ||
| 148 | function filterCb() | |
| 149 | local b = {}
| |
| 150 | gg.clearResults() | |
| 151 | gg.setRanges(gg.REGION_ANONYMOUS | gg.REGION_C_ALLOC | gg.REGION_OTHER) | |
| 152 | gg.searchNumber("h 00 00 80 3F CD CC 4C 3E 00 00 00 41 00 00 C8 42 00 00 B4 43 0A D7 23 3C CD CC 4C 3E 00 00 40 3F 00 00 00")
| |
| 153 | if gg.getResultsCount() == 0 then | |
| 154 | gg.searchNumber("-9.81000041962", gg.TYPE_FLOAT)
| |
| 155 | cb_nothingFound() | |
| 156 | resultsCount = gg.getResultsCount() | |
| 157 | local t = gg.getResults(resultsCount) | |
| 158 | for i, v in ipairs(t) do | |
| 159 | v.address = v.address + 0xC | |
| 160 | end | |
| 161 | gg.loadResults(t) | |
| 162 | gg.refineNumber("1", gg.TYPE_FLOAT)
| |
| 163 | cb_nothingFound() | |
| 164 | resultsCount = gg.getResultsCount() | |
| 165 | b = gg.getResults(resultsCount) | |
| 166 | elseif gg.getResultsCount() ~= 0 then | |
| 167 | gg.refineNumber("h 00 00 80 3F", gg.TYPE_FLOAT)
| |
| 168 | cb_nothingFound() | |
| 169 | resultsCount = gg.getResultsCount() | |
| 170 | local a = gg.getResults(resultsCount) | |
| 171 | for i, v in ipairs(a) do | |
| 172 | v.flags = gg.TYPE_FLOAT | |
| 173 | end | |
| 174 | b = gg.getValues(a) | |
| 175 | end | |
| 176 | return b | |
| 177 | end | |
| 178 | function startcb() | |
| 179 | local fakeSpeedPointers = {}
| |
| 180 | local b = filterCb() | |
| 181 | for i, v in ipairs(b) do | |
| 182 | if v.value == 1 then | |
| 183 | fakeSpeedPointers[#fakeSpeedPointers + 1] = {address = v.address - anonGroupSearchOffset, flags = gg.TYPE_FLOAT}
| |
| 184 | fakeSpeedPointers[#fakeSpeedPointers + 1] = {address = v.address - 0x48, flags = gg.TYPE_FLOAT}
| |
| 185 | fakeSpeedPointers[#fakeSpeedPointers + 1] = {address = v.address - 0x44, flags = gg.TYPE_FLOAT}
| |
| 186 | end | |
| 187 | end | |
| 188 | gg.setRanges(gg.REGION_C_BSS | gg.REGION_OTHER | gg.REGION_ANONYMOUS | gg.REGION_C_ALLOC) | |
| 189 | gg.loadResults(fakeSpeedPointers) | |
| 190 | gg.searchPointer(0) | |
| 191 | resultsCount = gg.getResultsCount() | |
| 192 | local offsetStart = gg.getResults(resultsCount) | |
| 193 | for i, v in ipairs(offsetStart) do | |
| 194 | v.address = v.address - cbOffsetSmall | |
| 195 | end | |
| 196 | local valu = gg.getValues(offsetStart) | |
| 197 | for i, v in ipairs(valu) do | |
| 198 | if ISA == false then | |
| 199 | v.address = v.value&0xFFFFFFFF | |
| 200 | else | |
| 201 | v.address = v.value | |
| 202 | end | |
| 203 | end | |
| 204 | gg.loadResults(valu) | |
| 205 | finalSpeedResult() | |
| 206 | end | |
| 207 | ||
| 208 | ||
| 209 | function randomized() | |
| 210 | gg.clearResults() | |
| 211 | gg.setRanges(gg.REGION_ANONYMOUS | gg.REGION_C_ALLOC | gg.REGION_OTHER) | |
| 212 | gg.searchFuzzy('0', gg.TYPE_FLOAT, gg.SIGN_FUZZY_GREATER)
| |
| 213 | for i = 1 , 50 do | |
| 214 | gg.searchFuzzy('0', gg.TYPE_FLOAT, gg.SIGN_FUZZY_GREATER)
| |
| 215 | gg.refineNumber('0.01~6', gg.TYPE_FLOAT)
| |
| 216 | gg.sleep(50) | |
| 217 | end | |
| 218 | resultsCount = gg.getResultsCount() | |
| 219 | secondResults = gg.getResults(resultsCount) | |
| 220 | local addTables = {}
| |
| 221 | local speed = {}
| |
| 222 | for i = 1, #secondResults do | |
| 223 | local loops = 0x0 | |
| 224 | for b = 1, 200 do | |
| 225 | addTables[#addTables + 1] = {address = secondResults[i].address + loops, flags = gg.TYPE_FLOAT}
| |
| 226 | addTables[#addTables + 1] = {address = secondResults[i].address - loops, flags = gg.TYPE_FLOAT}
| |
| 227 | loops = loops + 0x4 | |
| 228 | end | |
| 229 | end | |
| 230 | addTables = gg.getValues(addTables) | |
| 231 | for i, v in ipairs (addTables) do | |
| 232 | if v.value == 1 then | |
| 233 | speed[#speed +1] = {address = v.address, flags = v.flags, name = "Speed"}
| |
| 234 | end | |
| 235 | end | |
| 236 | if #speed ~= 3 then | |
| 237 | gg.toast("Possible speed values found(not guaranteed)")
| |
| 238 | gg.addListItems(speed) | |
| 239 | gg.clearResults() | |
| 240 | else | |
| 241 | gg.toast("Nothing found with Fuzzy, shuttind down script")
| |
| 242 | end | |
| 243 | os.exit() | |
| 244 | end | |
| 245 | ||
| 246 | local functLoop = true | |
| 247 | function start() | |
| 248 | if functLoop == true then | |
| 249 | instructions() | |
| 250 | unityVersion() | |
| 251 | functLoop = false | |
| 252 | end | |
| 253 | menu = gg.multiChoice({"Fuzzy","Speedhack through Xa","Speedhack through Cb"},nil,"for fuzzy game must be open, don't hide it on the background")
| |
| 254 | if menu == nil then | |
| 255 | noselect() | |
| 256 | else | |
| 257 | if menu[1] then | |
| 258 | gg.alert("Make sure your game is open, don't hide it on the background!")
| |
| 259 | randomized() | |
| 260 | end | |
| 261 | if menu[2] then | |
| 262 | startxa() | |
| 263 | end | |
| 264 | if menu[3] then | |
| 265 | startcb() | |
| 266 | end | |
| 267 | end | |
| 268 | end | |
| 269 | ||
| 270 | ||
| 271 | while (true) do | |
| 272 | if gg.isVisible() then | |
| 273 | gg.setVisible(false) | |
| 274 | start() | |
| 275 | end | |
| 276 | gg.sleep(100) | |
| 277 | end | |
| 278 |