在某平台被检测到作弊后,玩家英雄模型会变为红色,并且发送聊天消息提示“作弊者”字样。
目测是通过地图脚本来实现的作弊检测,此类检测依靠jass函数进行作弊检测,只要找到检测逻辑就可惜轻松过检测。
本文的主要目的并不是帮助玩家作弊,而是分析检测作弊的原理。
那么先对 某平台的地图进行分析,发现大量lua脚本,解包以后,搜索“作弊”关键字没有结果,随便打开一个脚本 原来部分字符串都被编码过了。
字符串以16进制的形式写在脚本里。把“作弊”的UTF8编码加上 \x 就能搜索到了。
定位到该脚本内,明显发现脚本被混淆过。
变量名一塌糊涂,缩进也是,不过从字里行间还是能看出一些线索
1
2
3
4
5
6
7
8
9
|
local function __0x6398__(__0x0142__)
if
__0x0142__.__0x4346__>=99 then
if
__0x1757__(1,100)<=20 then
__0x0142__.__0x4348__=
true
else
__0x0142__.__0x4348__=
false
end
end
end
|
这个函数对一个变量进行了判断,如果变量值大于99 那么随机生成一个在[1,100]之间的数 如果这个数小于20 设置一个标志位。
这个函数一看就明白作者的意图了,检测到作弊不一定报告,而是有一定几率,增加外挂作者的工作量。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
|
local function __0x6392__(__0x0422__)
local __0x0608__=0
local __0x6393__=
false
local __0x6394__=89
if
__0x0422__.__0x6387__>0 then
__0x6393__=
true
end
if
__0x0422__.__0x6388__>0 then
__0x6393__=
true
end
if
__0x0422__.__0x6389__>0 then
__0x0608__=__0x0608__+99
__0x6394__=99
end
if
__0x0422__.__0x6386__>30 then
local __0x6395__=0.7
local __0x6396__=__0x0422__.__0x6385__/__0x0422__.__0x6386__/__0x6395__*100
__0x0608__=__0x0608__+__0x6396__
if
__0x6396__>=100 then
__0x6393__=
true
end
end
if
__0x0422__.__0x6390__>0 then
__0x0608__=math.max(__0x0608__,50)
local __0x6397__=10
__0x0608__=__0x0608__+__0x0422__.__0x6390__*__0x6397__
end
if
__0x6393__ then
__0x0608__=100
else
__0x0608__=math.min(__0x0608__,__0x6394__)
end
return
math.
floor
(__0x0608__)
end
|
这个函数检测了一大堆变量 用来设置 __0x0608__ 这个值 ,经过分析,这个值其实就是判断一个玩家是作弊玩家的可信度 confidence。
当confidence >= 99 即确认这个玩家正在作弊。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
for
_,__0x0108__ in ipairs(__0x6408__[__0x4332__])
do
__0x0142__:__0x0825__(__0x0108__)
local __0x6412__=__0x0015__.__0x3327__(__0x2541__.selection())
__0x0636__.info(
'__0x6412__'
,__0x6412__)
__0x0636__.info(
'__0x0108__'
,__0x0108__)
__0x0636__.info(
'__0x0543__'
,__0x0543__)
if
__0x6412__==__0x0108__ then
__0x1933__.__0x6385__=__0x1933__.__0x6385__+1
__0x0636__.info(
'__0x1933__.__0x6385__'
,__0x1933__.__0x6385__)
if
__0x6412__==__0x0543__ then
__0x1933__.__0x6387__=__0x1933__.__0x6387__+1
__0x0636__.info(
'__0x1933__.__0x6387__'
,__0x1933__.__0x6387__)
end
end
__0x1933__.__0x6386__=__0x1933__.__0x6386__+1
__0x0636__.info(
'__0x1933__.__0x6386__'
,__0x1933__.__0x6386__)
end
|
把元素一个一个取出来 作为参数传给一个函数 然后通过jass api 获取玩家当前选择的单位
根据条件 调整参数,__0x6385__ __0x6387__ __0x6386__可以看出 如果一切正常 __0x6386__ 应该+1
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
|
local __0x6413__=__0x0053__.__0x0142__[13]:__0x1314__((string.
char
(101,50,49,76)),__0x0040__.__0x0525__[(string.
char
(233,128,137,228,186,186,229,140,186,229,159,159))]:__0x0146__())
__0x0142__:__0x0825__(__0x6413__)
local __0x6414__=__0x0015__.__0x3327__(__0x2541__.selection())
__0x0636__.info(
'__0x2541__.selection()'
,__0x2541__.selection())
__0x0636__.info(
'__0x6413__'
,__0x6413__)
__0x0636__.info(
'__0x6414__'
,__0x6414__)
if
__0x6414__~=__0x6413__ then
__0x1933__.__0x6389__=__0x1933__.__0x6389__+1
__0x0636__.info(
'__0x1933__.__0x6389__'
,__0x1933__.__0x6389__)
end
__0x6413__:__0x0120__(string.
char
(233,154,144,232,186,171))
__0x0142__:__0x0825__(__0x6413__)
local __0x6415__=__0x0015__.__0x3327__(__0x2541__.selection())
__0x0636__.info(
'__0x6415__'
,__0x6415__)
__0x6413__:__0x0081__()
if
__0x6415__==__0x6413__ then
__0x1933__.__0x6388__=__0x1933__.__0x6388__+1
__0x0636__.info(
'__0x1933__.__0x6388__'
,__0x1933__.__0x6388__)
end
|
同样的手法 不过经过后期的分析,__0x6414__ __0x6413__ 为table __0x6415__ 正常应为nil
如果按照老方法patch SelectUnit 或者以其他方式拦截 驱使玩家选中单位的操作 都会在这里被检测到
1
2
3
4
5
6
7
|
local __0x6422__=nil
for
__0x0239__=0,3
do
for
__0x0249__=0,2
do
local __0x6423__,__0x1397__=__0x2541__.button(__0x0239__,__0x0249__)
if
__0x1397__ then
__0x6422__=
true
end
|
刚开始这里确实没看出来作者的意图 不过 那两个循环仔细观察就能看出来猫腻
一共4*3次循环 不就是war3右下方的动作栏嘛
加上button的提示 那么这应该就是检测是否能看见某个单位的 技能 或者 可用的动作
如果作弊者开启了显示技能这个作弊选项的话 就会被检测到
实际上 即使作弊者没开显示技能 只要他能看见视野外的 “模型” 这个函数同样能检测出来。
这就是目前某平台全部的检测手段。
多亏了lua引擎的日志系统 对地图脚本进行更改 就可以得到更多更详尽的数据
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
|
[info]: __0x6412__ nil
[info]: __0x0108__ table: 3AEA3E98
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 1
[info]: __0x6412__ nil
[info]: __0x0108__ table: 3AEA5440
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 2
[info]: __0x6412__ nil
[info]: __0x0108__ table: 3AEA6A20
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 3
[info]: __0x6412__ nil
[info]: __0x0108__ table: 3AEA7EE8
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 4
[info]: __0x6412__ nil
[info]: __0x0108__ table: 48A0AA38
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 5
[info]: __0x6412__ nil
[info]: __0x0108__ table: 3AEA89A0
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 6
[info]: __0x6412__ nil
[info]: __0x0108__ table: 3B803CC0
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 7
[info]: __0x6412__ nil
[info]: __0x0108__ table: 436A3638
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 8
[info]: __0x6412__ nil
[info]: __0x0108__ table: 3B8082F8
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 9
[info]: __0x6412__ nil
[info]: __0x0108__ table: 3B809130
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 10
[info]: __0x6412__ nil
[info]: __0x0108__ table: 3ABD4208
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 11
[info]: __0x6412__ nil
[info]: __0x0108__ table: 43DFBE98
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 12
[info]: __0x6412__ nil
[info]: __0x0108__ table: 43E825D8
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 13
[info]: __0x6412__ nil
[info]: __0x0108__ table: 3B8DD778
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 14
[info]: __0x6412__ nil
[info]: __0x0108__ table: 3B8DA8E0
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 15
[info]: __0x6412__ nil
[info]: __0x0108__ table: 3BEC0490
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 16
[info]: __0x6412__ nil
[info]: __0x0108__ table: 436A7618
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 17
[info]: __0x6412__ nil
[info]: __0x0108__ table: 436A2598
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 18
[info]: __0x6412__ nil
[info]: __0x0108__ table: 3BEC28E0
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 19
[info]: __0x6412__ nil
[info]: __0x0108__ table: 3BEC3948
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 20
[info]: __0x6412__ nil
[info]: __0x0108__ table: 4D23BD18
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 21
[info]: __0x6412__ nil
[info]: __0x0108__ table: 4D23DB80
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 22
[info]: __0x6412__ nil
[info]: __0x0108__ table: 3BEC4EF0
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 23
[info]: __0x6412__ nil
[info]: __0x0108__ table: 4D2390B0
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 24
[info]: __0x6412__ nil
[info]: __0x0108__ table: 4D23A9A0
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 25
[info]: __0x6412__ nil
[info]: __0x0108__ table: 4D237398
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 26
[info]: __0x6412__ nil
[info]: __0x0108__ table: 3BEC6070
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 27
[info]: __0x6412__ nil
[info]: __0x0108__ table: 4387A790
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 28
[info]: __0x6412__ nil
[info]: __0x0108__ table: 441E5088
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 29
[info]: __0x6412__ nil
[info]: __0x0108__ table: 3BEE1EE0
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 30
[info]: __0x6412__ nil
[info]: __0x0108__ table: 3BEDEE18
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 31
[info]: __0x6412__ nil
[info]: __0x0108__ table: 3BEFAD18
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 32
[info]: __0x6412__ nil
[info]: __0x0108__ table: 3BEEC2D0
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 33
[info]: __0x6412__ nil
[info]: __0x0108__ table: 3BEED808
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 34
[info]: __0x6412__ nil
[info]: __0x0108__ table: 3BEEE480
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 35
[info]: __0x6412__ nil
[info]: __0x0108__ table: 3B74C2E8
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 36
[info]: __0x6412__ nil
[info]: __0x0108__ table: 3B74D740
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 37
[info]: __0x6412__ nil
[info]: __0x0108__ table: 3B74E1F8
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 38
[info]: __0x6412__ nil
[info]: __0x0108__ table: 3B74F768
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 39
[info]: __0x6412__ nil
[info]: __0x0108__ table: 3B751598
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 40
[info]: __0x6412__ nil
[info]: __0x0108__ table: 3B752670
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 41
[info]: __0x6412__ nil
[info]: __0x0108__ table: 3B7533C8
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 42
[info]: __0x6412__ nil
[info]: __0x0108__ table: 3B754200
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 43
[info]: __0x6412__ nil
[info]: __0x0108__ table: 3B7552D8
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 44
[info]: __0x6412__ nil
[info]: __0x0108__ table: 3B7566F8
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 45
[info]: __0x6412__ nil
[info]: __0x0108__ table: 3B757B18
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 46
[info]: __0x6412__ nil
[info]: __0x0108__ table: 3B758C60
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 47
[info]: __0x6412__ nil
[info]: __0x0108__ table: 3B759948
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 48
[info]: __0x6412__ nil
[info]: __0x0108__ table: 437CC630
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 49
[info]: __0x6412__ nil
[info]: __0x0108__ table: 437CB440
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 50
[info]: __0x6412__ nil
[info]: __0x0108__ table: 437CA918
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 51
[info]: __0x6412__ nil
[info]: __0x0108__ table: 437CA100
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 52
[info]: __0x6412__ nil
[info]: __0x0108__ table: 437C9610
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 53
[info]: __0x6412__ nil
[info]: __0x0108__ table: 437D9600
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 54
[info]: __0x6412__ nil
[info]: __0x0108__ table: 4375DEA8
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 55
[info]: __0x6412__ nil
[info]: __0x0108__ table: 3B75A908
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 56
[info]: __0x6412__ nil
[info]: __0x0108__ table: 3B74B280
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 57
[info]: __0x6412__ nil
[info]: __0x0108__ table: 3B75BEC8
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 58
[info]: __0x6412__ nil
[info]: __0x0108__ table: 3B75D898
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 59
[info]: __0x6412__ nil
[info]: __0x0108__ table: 3B75EE78
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 60
[info]: __0x6412__ nil
[info]: __0x0108__ table: 3B75F9A0
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 61
[info]: __0x6412__ nil
[info]: __0x0108__ table: 3B760730
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 62
[info]: __0x6412__ nil
[info]: __0x0108__ table: 3B761728
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 63
[info]: __0x6412__ nil
[info]: __0x0108__ table: 48907A78
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 64
[info]: __0x6412__ nil
[info]: __0x0108__ table: 48908DF0
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 65
[info]: __0x6412__ nil
[info]: __0x0108__ table: 3B762B10
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 66
[info]: __0x6412__ nil
[info]: __0x0108__ table: 489042B0
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 67
[info]: __0x6412__ nil
[info]: __0x0108__ table: 441D2518
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 68
[info]: __0x6412__ nil
[info]: __0x0108__ table: 3B763FA0
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 69
[info]: __0x6412__ nil
[info]: __0x0108__ table: 4351E140
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 70
[info]: __0x6412__ nil
[info]: __0x0108__ table: 3B765388
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 71
[info]: __0x6412__ nil
[info]: __0x0108__ table: 3B7668F8
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 72
[info]: __0x6412__ nil
[info]: __0x0108__ table: 3B767420
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 73
[info]: __0x6412__ nil
[info]: __0x0108__ table: 43FC4F00
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 74
[info]: __0x6412__ nil
[info]: __0x0108__ table: 43FCFE38
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 75
[info]: __0x6412__ nil
[info]: __0x0108__ table: 43FC69E8
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 76
[info]: __0x6412__ nil
[info]: __0x0108__ table: 4936E4E8
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 77
[info]: __0x6412__ nil
[info]: __0x0108__ table: 3B767D88
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 78
[info]: __0x6412__ nil
[info]: __0x0108__ table: 4D242BC8
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 79
[info]: __0x6412__ nil
[info]: __0x0108__ table: 4D2466D8
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 80
[info]: __0x6412__ nil
[info]: __0x0108__ table: 4937B560
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 81
[info]: __0x6412__ nil
[info]: __0x0108__ table: 4D245600
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 82
[info]: __0x6412__ nil
[info]: __0x0108__ table: 4D2441A8
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 83
[info]: __0x6412__ nil
[info]: __0x0108__ table: 4D241070
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 84
[info]: __0x6412__ nil
[info]: __0x0108__ table: 3B769838
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 85
[info]: __0x6412__ nil
[info]: __0x0108__ table: 3BF2A5B0
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 86
[info]: __0x6412__ nil
[info]: __0x0108__ table: 3BF2BC38
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 87
[info]: __0x6412__ nil
[info]: __0x0108__ table: 40957D10
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 88
[info]: __0x6412__ nil
[info]: __0x0108__ table: 43FCDBA8
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 89
[info]: __0x6412__ nil
[info]: __0x0108__ table: 43FCADF0
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 90
[info]: __0x6412__ nil
[info]: __0x0108__ table: 40961320
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 91
[info]: __0x6412__ nil
[info]: __0x0108__ table: 4095A1D0
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 92
[info]: __0x6412__ nil
[info]: __0x0108__ table: 43FCBFA8
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 93
[info]: __0x6412__ nil
[info]: __0x0108__ table: 43FC9228
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 94
[info]: __0x6412__ nil
[info]: __0x0108__ table: 43FC7E08
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 95
[info]: __0x6412__ nil
[info]: __0x0108__ table: 3BEBC8A0
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 96
[info]: __0x6412__ nil
[info]: __0x0108__ table: 3BEBBD40
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 97
[info]: __0x6412__ nil
[info]: __0x0108__ table: 3B89B140
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 98
[info]: __0x6412__ nil
[info]: __0x0108__ table: 3BF1E2C8
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 99
[info]: __0x6412__ nil
[info]: __0x0108__ table: 48B47188
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 100
[info]: __0x6412__ nil
[info]: __0x0108__ table: 3BF20C58
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 101
[info]: __0x6412__ nil
[info]: __0x0108__ table: 3BF223C0
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 102
[info]: __0x6412__ nil
[info]: __0x0108__ table: 43E35AE8
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 103
[info]: __0x6412__ nil
[info]: __0x0108__ table: 438867F0
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 104
[info]: __0x6412__ nil
[info]: __0x0108__ table: 432D1180
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 105
[info]: __0x6412__ nil
[info]: __0x0108__ table: 43884100
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 106
[info]: __0x6412__ nil
[info]: __0x0108__ table: 438817E0
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 107
[info]: __0x6412__ nil
[info]: __0x0108__ table: 432C78D0
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 108
[info]: __0x6412__ nil
[info]: __0x0108__ table: 432C46B8
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 109
[info]: __0x6412__ nil
[info]: __0x0108__ table: 44004598
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 110
[info]: __0x6412__ nil
[info]: __0x0108__ table: 440019A0
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 111
[info]: __0x6412__ nil
[info]: __0x0108__ table: 43FFD2F8
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 112
[info]: __0x6412__ nil
[info]: __0x0108__ table: 432CB568
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 113
[info]: __0x6412__ nil
[info]: __0x0108__ table: 432C9150
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 114
[info]: __0x6412__ nil
[info]: __0x0108__ table: 432CC1E0
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 115
[info]: __0x6412__ nil
[info]: __0x0108__ table: 3BF44620
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 116
[info]: __0x6412__ nil
[info]: __0x0108__ table: 3BF44D20
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 117
[info]: __0x6412__ nil
[info]: __0x0108__ table: 3BF5F2F8
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 118
[info]: __0x6412__ nil
[info]: __0x0108__ table: 4875B390
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 119
[info]: __0x6412__ nil
[info]: __0x0108__ table: 48BB1D58
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 120
[info]: __0x6412__ nil
[info]: __0x0108__ table: 40B108C8
[info]: __0x0543__ table: 40B108C8
[info]: __0x1933__.__0x6386__ 121
[info]: __0x6413__ table: 40A371B0
[info]: __0x6414__ table: 40A371B0
[info]: __0x6415__ nil
|
上面的日志是另外添加上的,可以看到检测方法 __0x6410__ 已经被完全bypass
与作弊有关的值均没有被设置 __0x6386__ 为没有检测到作弊行为时设置的值
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
|
[info]: ---------------------------玩家编号--------------------------- 1
[info]: -----------------------------[检测作弊]-----------------------------
[info]: 0
[info]: -----------------------------[检测作弊]-----------------------------
[info]: ---------------------------玩家编号--------------------------- 2
[info]: -----------------------------[检测作弊]-----------------------------
[info]: __0x0422__.__0x6386__ 114
[info]: 0.0
[info]: -----------------------------[检测作弊]-----------------------------
[info]: ---------------------------玩家编号--------------------------- 3
[info]: -----------------------------[检测作弊]-----------------------------
[info]: __0x0422__.__0x6386__ 114
[info]: 0.0
[info]: -----------------------------[检测作弊]-----------------------------
[info]: ---------------------------玩家编号--------------------------- 4
[info]: -----------------------------[检测作弊]-----------------------------
[info]: __0x0422__.__0x6386__ 114
[info]: __0x0422__.__0x6390__ 16
[info]: 89
[info]: -----------------------------[检测作弊]-----------------------------
[info]: ---------------------------玩家编号--------------------------- 5
[info]: -----------------------------[检测作弊]-----------------------------
[info]: __0x0422__.__0x6386__ 114
[info]: 0.0
[info]: -----------------------------[检测作弊]-----------------------------
[info]: ---------------------------玩家编号--------------------------- 6
[info]: -----------------------------[检测作弊]-----------------------------
[info]: __0x0422__.__0x6386__ 114
[info]: 0.0
[info]: -----------------------------[检测作弊]-----------------------------
[info]: ---------------------------玩家编号--------------------------- 7
[info]: -----------------------------[检测作弊]-----------------------------
[info]: 0
[info]: -----------------------------[检测作弊]-----------------------------
[info]: ---------------------------玩家编号--------------------------- 8
[info]: -----------------------------[检测作弊]-----------------------------
[info]: __0x0422__.__0x6386__ 121
[info]: 0.0
[info]: -----------------------------[检测作弊]-----------------------------
[info]: ---------------------------玩家编号--------------------------- 9
[info]: -----------------------------[检测作弊]-----------------------------
[info]: __0x0422__.__0x6386__ 121
[info]: 0.0
[info]: -----------------------------[检测作弊]-----------------------------
[info]: ---------------------------玩家编号--------------------------- 10
[info]: -----------------------------[检测作弊]-----------------------------
[info]: __0x0422__.__0x6386__ 121
[info]: 0.0
[info]: -----------------------------[检测作弊]-----------------------------
[info]: ---------------------------玩家编号--------------------------- 11
[info]: -----------------------------[检测作弊]-----------------------------
[info]: __0x0422__.__0x6386__ 121
[info]: 0.0
[info]: -----------------------------[检测作弊]-----------------------------
[info]: ---------------------------玩家编号--------------------------- 12
[info]: -----------------------------[检测作弊]-----------------------------
[info]: __0x0422__.__0x6386__ 121
[info]: 0.0
[info]: -----------------------------[检测作弊]-----------------------------
|
上面截取的一段日志也是来自于同一场游戏,可以看到已经有玩家的confidence 达到了89
根据该玩家的被设置的标志位
他应该开启了作弊,并且没有bypass技能检测。
根据一段时间的观察 检测函数一般会在游戏开始后 10、15、20、25 分钟之中 随机选择两个时间进行检测。这局游戏时间较短,他很侥幸的躲过了一劫。
至于过检测的方法,绝对不止一种。
为了维护游戏的公平性,暂时不能公布。
也许以后吧