【参赛经验分享】[腾讯内部赛道破解大师]俄罗斯方块难?直接破解最简单!

前言:后面有事没时间打比赛怎么办?那当然是把游戏破解了啊。安全人,安全魂,安全人偏不走寻常路~

直接找漏洞,burp抓包加源码一把嗦,发现了边界控制的问题。

直接上视频

黑客是怎么玩俄罗斯方块的!_哔哩哔哩_bilibili

漏洞原理

修复漏洞的代码改动

贴上漏洞修复的改动图。

可以看到,改动之前新建方块之后可以没有操作,那么执行连续的NN操作时,前面的方块因为没有操作,所以它就会在屏幕外面不动。

因此,可以通过连续的N做到选择方块的效果。

漏洞利用

因为自己玩俄罗斯方块比较菜,除了I和O型方块都没法完美的消除,所以我们这里利用漏洞只选择I或者O方块。

首先利用js生成方块序列

let { a, M, C, v } = {
	a: 27073, // 乘子
	M: 32749, // 模数
	C: 17713, // 增量
	v: 12358, // 随机数种子
};
function step() {
	return v = ((v * a + C) % M);
}
let tbl = [0, 0, 1, 1, 1, 2, 2, 2, 3, 3, 3, 3, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6];
let pname = "IJLTOSZ";
let res = "";
for (let i = 0; i < 10000; i++) {
	let rnd = step();
	res += pname[tbl[rnd % 29]];
}
console.log(res);

然后我们就可以找出I方块出现的位置,但是这里遇到一个问题,因为懒得去思考,所以直接放弃I方块,改用O方块。

O方块很好叠加,只要按照一行一行摞起来就行,直接编写脚本处理。

/*
* 提示:该行代码过长,系统自动注释不进行高亮。一键复制会移除系统注释 
* tetris_str = "ZIOSJZSIZLSSZZIZZLOJSOJJSZSLSZZIZZSLZOZSZOZZOJOZLLOIZJZSSSTSOIZOZLZZOZJZZOZOSSZZSZOTJTIZSSZJTSJTIZZLOJSZSOISZJSITZOLSZZTSTZTSTJOZOOLSTTOLZTZIOZOTZOTZTTSTZZLTZLOOOSJTSOTTTOSLTZLSLTSZJIZZZTTZOOTZZJTOZSOZTIJJTSSSJITTTSLISTLZZLZZJJZTJJTZTZTOJLZZOZJZOSSSJISJTLSLJSTIZTTLTTTTSIZZZOJTJZOSITSOJOTTLSOSZZTZZIZZIIJOJZOIZZZSTOZOOJTTSZZZJSITITZSTLZOLIJLOSTZOJOOOILTLOOZJZOOZTSTTISSSJTTIZSJOOLTOSITIZZJILSSJOOIITSSOZJOLTTIOJSJTLOSZSSTZSOTTSJZIJZZZTILSZZZZZOZSTZZSZLZTSSTOSSSIZSTJSLJTZSTZOLSOSSJZSLSLJSSZTTOZTZSOOTLZZSOTSZTZOLOZLZSSSZZSZTZSSZOSTSSJLIZLSZZTJLSJSZTTITZOJOZOOJOZSZJJSJZSOZZJZOZSSZSOZZLZZOSTSOSSSZSIOTTSTZTOJZSOSLSZOZJSOOISJOOJLOZLZLSZJLTSJJTOSLTZZJTZOTSZZSIZZJZSZOTZOLSOTTSSSSSJTTZOZTZJTSLJOJSLZOZTOOITJOZIJSZJOZSSSLTTTZSSZZSSOZSOSJLTOLLTOLZSIOTOZOSZZLZZOSJSLOJTZTOSSOZIZZZTLSJSIJOLOSOJZOJLZOZZJZISSSISSTISOIJZOLSSTOOOLOLZTJTSJSLTZSSISTSTTZTOLZSSZLOOSJTLTJSSTTZSZZZOZLLLOSSSTSZSTZTZILTIZZSSOZJTTIJSSLOZZSZZTSJOOZSSTTLSSZOIZLOSOLTTJZSZZZOTSJSSLILTTSZZZSTOTOOSZJZIZZISTSZTLOOIZLSTTZLJOISLSSZZILSLIOLZOLSZLSJILTZOTSZSOTJLZILOZOISTZZSZOILJSLZTJZSSOSITISSSOOJZSZOSTOZOZJSZOOOZSLLLSJTSISISIOOJLZSZOOZZJSZSOZSZLTZZZIZJZZLLSTSOOSOOZLZJLSTJSTSZSSOTJSOISOLSTTLSSLOSLOOLJSOTIISLLZSISSSOJTIOTLSZZJTIZJSOSZZSTOSLZTLTZLZOZLSOLZJILSJJSZSLITOSTZTTSZIOOOOJISZTOSZZOLLJOTJOTTOLLTZZSSILIOSZIJZZTZIZOJZJZZSZZSISILJZIOTOJOSTOZOJLZOOZSOZSLISOZTZLZTIZSTITTSOSJJTJLIZOZZSLLSZZSZJZZOSLOLJOOLOTSZOTJTZZSTOZSZZSTZOZSOISSLJTTJZJLTTJSZZSSLILLSTSLSIZSZOZJJTSSOTLIZSOOSTZLZLSZLTLOOOTSOJJZJSOTTZLTSOLZOSZOSLJZSIOTOSZJTSIJZSLZTOOOZZZLOSLTSTOZOOIOJTTSJSTTSTLOZISTZZJSOJTOZZZTTOIOSTLTTOZSZSSJLZTZOZZTZSOSOOZOJSZZOJLSTSSTOITZTJZSLLILSTTLSZTOIOOSZSTOLLLOZJLTTTITZOZJISSSSIZTZZTIJSZSZZZZSSZTJZTTTTOILJSTZJOLZOOJZZSOZOOIOLZLZTSOJISJLISZSJJSOSSLLOOJTSZTOOOSZTTZJLTISOTZZTLTJLOZLOOTSZTSIZZZOSISSSLIJJZTOOLZZSSZSZOOSSSTOZLZOZZZZSZLSOOZSOOZIZLZTSLSLTLOZOOZTLIJIOZZJSSZTOJZIOZZLTSSJITLLJOJTSJJLZSOSTZZLZOOOOISSOJIJOLIIIZOLOLOZSTLZTOZLSLOZIOSZSIOZTTJTJZOLOZZTLOZLTLSSLZSILTZZITZJZLZZZSSOTOOSLIIZTZSSSLSOITJZZSJSSSOLLOTSIOSSZZOTJZSTITZTZTOTTJISIZOZLTTJLLOLSZOISZLZSJJZLSZOOZZSSLOOZJZSSSOOTSZZSZSIZSTSOTJIOSJLZOZTLSOTLSJOLLTOSLSJSJSLSZTOSOLTIOSLJZZZJLLJOLSTOOSZZLIOLSZJSSSOSSSTOZZSLZTZZZSZSJJLOSSJTITLOJZZLZJOZLLOJOZSLZSTZJSIZSOSITOJZZZJZTILZTOIZZISIOLZZLTSSZSJOSZZZIZSLSOTTIZOOZOJSSIILJSJIITSSIJLZOSSTZJISZZZSLJSJSTZLZSOTSZOLOZTLIZOOZLLSOOOTZJOTTOOSZOOJOSSJOSSZSSTJSZISOOSZILLZSIIJOTZTOSTOZLZLSZOZTOOZOZLOSIZSOOZOLZSSZTOSTTOLZOTSLOJLSOJTJJOZZTSZZZZZTSJZZJOOOZZTTTSOSSSZTOOTILSLTTZSLZOOJZOTLSZTZJTTSILZTSOSSZZSOZZZZSJISSLISLLJOZZOLLTSTTZZOSIOJSZJOZOZTJZJZSTSSOTOJSZZSIOOSTLOZSJZLSOSSSOOLSZJOOZLOOOTSSJSTOZTTTLZOLSSJTSIOZZJOIJLOIZSZJJZLITOSLLLZJZZOITTTSOZTZSLZSSOLZLJZZOTZITSOJJZSLSJZZZZTTZZZTOLSSIZTTJSTOTISSSZJZOZOJSTZTZZZZOITLJTSTZSIZJJLOLSJOLZOSZOZOSLLZOTZISSSTTSZOZSTLLJTOZSZZOSISSOSZZSSSZTJOZLLOZOSOSZSSOSZTSJSITJTZLOLSOOZSOLOIZIIZJTOLSJTSJOOZSJZZZZSTZZLTOTTSSISOZZOTTZSJLOZZZJSZSLISTSZTZSZZZTSISTTLZJJJZLILJSLZSZSLJZJJOLTZTZSTTSOJJJZOLIZTTTJZTTZJZTLISOTSSSZLSJLLSSOTJSZZOTTOOJSIIOSLTLZTSSJOZOOZSOOZTOLZTLSLLLOSOJZOSJIIZOSZOTOZJOITSSTLOTLTLSSOSZLTIOSLZSTSZLJIITIZZSSZSSSSSSSOZOSJSOSSZTLZJJOJLISSOLZSZSTSIITSJTSLOZZLSJLZLJSOZOLJZTSLJSIZTLSIZIOLTSOZOJJLZLSSTSSTOTOZZTJLSTZZZZZLZTTTSZOSOTOJZSZZTSILLTZOZSOOSOISOSZSOOOZSZTZZZSTSTIZTJSZZTOITOSJOLZSLSLTZJSZOSZOIOOZZSTTJSJSZLZLLZSZZTZOZZZOLSTOZSZSZISTSSZSZZTIZOOTZOIOSIOJZOSZIJSLOLOJZJJOJOZZLLZOSZJSZLSJSZISZLSOOSSZILSLIZIOISJILZJSTJOSZLZOISJTOZJLSZOLJOOLSOSTSOOOIIOOILZJISZOZSJJSSSZSZSOZZZLTSZOZJTZSZIIZOTTSLTTSOTILOLOIOSJSLJLSJOZSSOZSOLZIIITLTTSIISOIZJSZLIOOLJTJTZOSISJLZTJSOOOSSLZOZLZOLSLJZIZZSSOOTOZOZSTJOLSJTSZLJSZOSLSSIZSTISTSZJSOSLLSITJLJOLOZTOTSOSTTSISSIIITTSTJOSISSLLZSOTOTOIITTSZSOSJZLOLLZZZIIZZISTSSOISZZSZJOTLLSOSIOLSOZZSTZOLZTIZTIOSZZZTZOZSJJTLOSISZSZTSOZZOSOITISSSZTJTJJSSOZSSSTZTIOZTLZSZOZJTOOOLSIOZZSSSOIOSJTSJOSSOZOSOJTZIZSSLTOTSTOJSJSZZSSIZJSOTZTZJOZZSJSSLSIZZJJOZZSJZLZSJOOIOZZLZZTJTZOLITSSZSLZOTOISJZZSLSSZJZIZOTZOOSSOSSTOSTSLJSJLSOSOTZTTZTZTZSJLLIJSZLOZLIJZZLJZOLJLTSLISSZOJSISZSZZOTSLJLSSSOISSOIJIZSZTLZOSTLTSTSLZTZJTSOTOZLOSSIOSTJZJSIIZSSJJLLOSSZJJSSOZJOOJTOZTIJOOLZOZZSLSZZSSLOSTZSOJOSOTOSZSZSZSOOSSJTZOZZLJZLLOOLLOZJZITSSJZTOJSITSZTSJJZLSTOIOOSSZZSIOLZTSIOLSSZIOJTOLLLLZSSJTOLOZZTZSISZZTSZOZZSISTOTTOOTOTZOIZZSZJSLOITIOZSSIZJSLOLZZJJJSSZJJSZSJSTIZJTJJJZZZLOTZOZJTTZOLIJJZLZSJITOZZSJZZISOJISOSZOSTJLJSOOOZZLTZTJZZJSLOTZZOILTZLOJOSIIZSOSJLTLOSSTIZSLZLJTTLSISZZOOOTOJZOTSSJZZJSLOSSSLOTIZIIZZTTSLOSZJOSOZTITZSTZSZZISITLTOLJZOOITZTLOJSOSZISSSSTOOTSOZSISSSSZSOIOSTTLLLSJOZLZOJTSJJOSSILZLZSJJOTZTILOSSOOTSSZOLSLZIOLZJOZZOILZJZSLIZOLTTZJTOSIOILOZSTJLJZZIZTZZSLISIZZLSOOOJLLTZZZZZZSJLIZSTZZOOLOZSOSSTIZLTSJZSSSLSTZOIOTLZOJJZTLSOSJOZLSSOTLTZSJOSJLSZLSTOOOJOTIOTOSZJZIOSJZZZZJSZSJOSOZOSSSSJJLJJZITTSTZOOSJLSTLSSISZSZTOTOOJOZSOTJLSTTOZZOZZTOTSSSTOLOTZSSZZJTJLSJSSOTSSSZOZJSLTOOZTZZILTOZTSSLSIOSJZLOZZSISTTIJTTOSISOJSTTTOTOJJIOJSSOOTZOOOOZZLZSSSZOZLSOZZZZJJLIZOZSZTZZISJIOSLSOOSJSTOIZTOZOZOLILZOZOZOZTISTZZJTLSZZOLSSZOOTOLOZTLJITZJTZOSZOZISLZIZLJSZIOZTOSSZZZOOTLSIOTSLTJOSOJSOJZOTJOJZZTTZLSTISZIJITILLOSZOZLTOSZJSSZSSTZOOZOTSZSSLZISSSSZIOZZTTSSJJOZLSISSOOSLTSISZTOJZLSITZOTZSZSIOLIOIZSTSZJTZZJOJSTTSSLJSOOZLLZTSLZTLZJZZJLOLZZOJZSSZZZOZZSZJLZSSJTZSSSOLIZTZSILZOSOISZSLZJSLOJZSTSIZZOJOSIZOJJZTTZOOLTITZLLIZLTOOJZZLZZOZSZLSLSOOZJZSZTZIIJSZSOLJLTSTZOTIOZTSLZOTZLOZZTSTTLZSTSTSJIZSSIJSZZZZOSISOSSOTOLSSJTTIZLIOOJZTZOISOZTLSTOZOZZLZIJTLOZSZSSLJZTTJSSOSOZJSIZZZJSZTLJSOLLJTSIOSTZSTTTLOLOZIOTSSZZOOZSOOLSSSOOLSOSTJZOOTOOZSZSITTZZZTTSTSZIZOZJOSSJLOSTIJLOSZTSOZOZSTLSSSIJOIISSLTOSTJJSZZSSOZJSZOSLSLSSTZLSTJOTZLSSSZLTJJOZOZLSLISLTJIOTOZLSSZZIILSZLOSLOOOIJZIOSJZSIZLSSZZIZZLOJSOJJSZSLSZZIZZSLZOZSZOZZOJOZLLOIZJZSSSTSOIZOZLZZOZJZZOZOSSZZSZOTJTIZSSZJTSJTIZZLOJSZSOISZJSITZOLSZZTSTZTSTJOZOOLSTTOLZTZIOZOTZOTZTTSTZZLTZLOOOSJTSOTTTOSLTZLSLTSZJIZZZTTZOOTZZJTOZSOZTIJJTSSSJITTTSLISTLZZLZZJJZTJJTZTZTOJLZZOZJZOSSSJISJTLSLJSTIZTTLTTTTSIZZZOJTJZOSITSOJOTTLSOSZZTZZIZZIIJOJZOIZZZSTOZOOJTTSZZZJSITITZSTLZOLIJLOSTZOJOOOILTLOOZJZOOZTSTTISSSJTTIZSJOOLTOSITIZZJILSSJOOIITSSOZJOLTTIOJSJTLOSZSSTZSOTTSJZIJZZZTILSZZZZZOZSTZZSZLZTSSTOSSSIZSTJSLJTZSTZOLSOSSJZSLSLJSSZTTOZTZSOOTLZZSOTSZTZOLOZLZSSSZZSZTZSSZOSTSSJLIZLSZZTJLSJSZTTITZOJOZOOJOZSZJJSJZSOZZJZOZSSZSOZZLZZOSTSOSSSZSIOTTSTZTOJZSOSLSZOZJSOOISJOOJLOZLZLSZJLTSJJTOSLTZZJTZOTSZZSIZZJZSZOTZOLSOTTSSSSSJTTZOZTZJTSLJOJSLZOZTOOITJOZIJSZJOZSSSLTTTZSSZZSSOZSOSJLTOLLTOLZSIOTOZOSZZLZZOSJSLOJTZTOSSOZIZZZTLSJSIJOLOSOJZOJLZOZZJZISSSISSTISOIJZOLSSTOOOLOLZTJTSJSLTZSSISTSTTZTOLZSSZLOOSJTLTJSSTTZSZZZOZLLLOSSSTSZSTZTZILTIZZSSOZJTTIJSSLOZZSZZTSJOOZSSTTLSSZOIZLOSOLTTJZSZZZOTSJSSLILTTSZZZSTOTOOSZJZIZZISTSZTLOOIZLSTTZLJOISLSSZZILSLIOLZOLSZLSJILTZOTSZSOTJLZILOZOISTZZSZOILJSLZTJZSSOSITISSSOOJZSZOSTOZOZJSZOOOZSLLLSJTSISISIOOJLZSZOOZZJSZSOZSZLTZZZIZJZZLLSTSOOSOOZLZJLSTJSTSZSSOTJSOISOLSTTLSSLOSLOOLJSOTIISLLZSISSSOJTIOTLSZZJTIZJSOSZZSTOSLZTLTZLZOZLSOLZJILSJJSZSLITOSTZTTSZIOOOOJISZTOSZZOLLJOTJOTTOLLTZZSSILIOSZIJZZTZIZOJZJZZSZZSISILJZIOTOJOSTOZOJLZOOZSOZSLISOZTZLZTIZSTITTSOSJJTJLIZOZZSLLSZZSZJZZOSLOLJOOLOTSZOTJTZZSTOZSZZSTZOZSOISSLJTTJZJLTTJSZZSSLILLSTSLSIZSZOZJJTSSOTLIZSOOSTZLZLSZLTLOOOTSOJJZJSOTTZLTSOLZOSZOSLJZSIOTOSZJTSIJZSLZTOOOZZZLOSLTSTOZOOIOJTTSJSTTSTLOZISTZZJSOJTOZZZTTOIOSTLTTOZSZSSJLZTZOZZTZSOSOOZOJSZZOJLSTSSTOITZTJZSLLILSTTLSZTOIOOSZSTOLLLOZJLTTTITZOZJISSSSIZTZZTIJSZSZZZZSSZTJZTTTTOILJSTZJOLZOOJZZSOZOOIOLZLZTSOJISJLISZSJJSOSSLLOOJTSZTOOOSZTTZJLTISOTZZTLTJLOZLOOTSZTSIZZZOSISSSLIJJZTOOLZZSSZSZOOSSSTOZLZOZZZZSZLSOOZSOOZIZLZTSLSLTLOZOOZTLIJIOZZJSSZTOJZIOZZLTSSJITLLJOJTSJJLZSOSTZZLZOOOOISSOJIJOLIIIZOLOLOZSTLZTOZLSLOZIOSZSIOZTTJTJZOLOZZTLOZLTLSSLZSILTZZITZJZLZZZSSOTOOSLIIZTZSSSLSOITJZZSJSSSOLLOTSIOSSZZOTJZSTITZTZTOTTJISIZOZLTTJLLOLSZOISZLZSJJZLSZOOZZSSLOOZJZSSSOOTSZZSZSIZSTSOTJIOSJLZOZTLSOTLSJOLLTOSLSJSJSLSZTOSOLTIOSLJZZZJLLJOLSTOOSZZLIOLSZJSSSOSSSTOZZSLZTZZZSZSJJLOSSJTITLOJZZLZJOZLLOJOZSLZSTZJSIZSOSITOJZZZJZTILZTOIZZISIOLZZLTSSZSJOSZZZIZSLSOTTIZOOZOJSSIILJSJIITSSIJLZOSSTZJISZZZSLJSJSTZLZSOTSZOLOZTLIZOOZLLSOOOTZJOTTOOSZOOJOSSJOSSZSSTJSZISOOSZILLZSIIJOTZTOSTOZLZLSZOZTOOZOZLOSIZSOOZOLZSSZTOSTTOLZOTSLOJLSOJTJJOZZTSZZZZZTSJZZJOOOZZTTTSOSSSZTOOTILSLTTZSLZOOJZOTLSZTZJTTSILZTSOSSZZSOZZZZSJISSLISLLJOZZOLLTSTTZZOSIOJSZJOZOZTJZJZSTSSOTOJSZZSIOOSTLOZSJZLSOSSSOOLSZJOOZLOOOTSSJSTOZTTTLZOLSSJTSIOZZJOIJLOIZSZJJZLITOSLLLZJZZOITTTSOZTZSLZSSOLZLJZZOTZITSOJJZSLSJZZZZTTZZZTOLSSIZTTJSTOTISSSZJZOZOJSTZTZZZZOITLJTSTZSIZJJLOLSJOLZOSZOZOSLLZOTZISSSTTSZOZSTLLJTOZSZZOSISSOSZZSSSZTJOZLLOZOSOSZSSOSZTSJSITJTZLOLSOOZSOLOIZIIZJTOLSJTSJOOZSJZZZZSTZZLTOTTSSISOZZOTTZSJLOZZZJSZSLISTSZTZSZZZTSISTTLZJJJZLILJSLZSZSLJZJJOLTZTZSTTSOJJJZOLIZTTTJZTTZJZTLISOTSSSZLSJLLSSOTJSZZOTTOOJSIIOSLTLZTSSJOZOOZSOOZTOLZTLSLLLOSOJZOSJIIZOSZOTOZJOITSSTLOTLTLSSOSZLTIOSLZSTSZLJIITIZZSSZSSSSSSSOZOSJSOSSZTLZJJOJLISSOLZSZSTSIITSJTSLOZZLSJLZLJSOZOLJZTSLJSIZTLSIZIOLTSOZOJJLZLSSTSSTOTOZZTJLSTZZZZZLZTTTSZOSOTOJZSZZTSILLTZOZSOOSOISOSZSOOOZSZTZZZSTSTIZTJSZZTOITOSJOLZSLSLTZJSZOSZOIOOZZSTTJSJSZLZLLZSZZTZOZZZOLSTOZSZSZISTSSZSZZTIZOOTZOIOSIOJZOSZIJSLOLOJZJJOJOZZLLZOSZJSZLSJSZISZLSOOSSZILSLIZIOISJILZJSTJOSZLZOISJTOZJLSZOLJOOLSOSTSOOOIIOOILZJISZOZSJJSSSZSZSOZZZLTSZOZJTZSZIIZOTTSLTTSOTILOLOIOSJSLJLSJOZSSOZSOLZIIITLTTSIISOIZJSZLIOOLJTJTZOSISJLZTJSOOOSSLZOZLZOLSLJZIZZSSOOTOZOZSTJOLSJTSZLJSZOSLSSIZSTISTSZJSOSLLSITJLJOLOZTOTSOSTTSISSIIITTSTJOSISSLLZSOTOTOIITTSZSOSJZLOLLZZZIIZZISTSSOISZZSZJOTLLSOSIOLSOZZSTZOLZTIZTIOSZZZTZOZSJJTLOSISZSZTSOZZOSOITISSSZTJTJJSSOZSSSTZTIOZTLZSZOZJTOOOLSIOZZSSSOIOSJTSJOSSOZOSOJTZIZSSLTOTSTOJSJSZZSSIZJSOTZTZJOZZSJSSLSIZZJJOZZSJZLZSJOOIOZZLZZTJTZOLITSSZSLZOTOISJZZSLSSZJZIZOTZOOSSOSSTOSTSLJSJLSOSOTZTTZTZTZSJLLIJSZLOZLIJZZLJZOLJLTSLISSZOJSISZSZZOTSLJLSSSOISSOIJIZSZTLZOSTLTSTSLZTZJTSOTOZLOSSIOSTJZJSIIZSSJJLLOSSZJJSSOZJOOJTOZTIJOOLZOZZSLSZZSSLOSTZSOJOSOTOSZSZSZSOOSSJTZOZZLJZLLOOLLOZJZITSSJZTOJSITSZTSJJZLSTOIOOSSZZSIOLZTSIOLSSZIOJTOLLLLZSSJTOLOZZTZSISZZTSZOZZSISTOTTOOTOTZOIZZSZJSLOITIOZSSIZJSLOLZZJJJSSZJJSZSJSTIZJTJJJZZZLOTZOZJTTZOLIJJZLZSJITOZZSJZZISOJISOSZOSTJLJSOOOZZLTZTJZZJSLOTZZOILTZLOJOSIIZSOSJLTLOSSTIZSLZLJTTLSISZZOOOTOJZOTSSJZZJSLOSSSLOTIZIIZZTTSLOSZJOSOZTITZSTZSZZISITLTOLJZOOITZTLOJSOSZISSSSTOOTSOZSISSSSZSOIOSTTLLLSJOZLZOJTSJJOSSILZLZSJJOTZTILOSSOOTSSZOLSLZIOLZJOZZOILZJZSLIZOLTTZJTOSIOILOZSTJLJZZIZTZZSLISIZZLSOOOJLLTZZZZZZSJLIZSTZZOOLOZSOSSTIZLTSJZSSSLSTZOIOTLZOJJZ"
*/

tetris_list = list(tetris_str)

console_str = "game.pause();game.playRecord('" 
# 长条方块,长条横竖不可控,弃用
# for i in tetris_list:
#     I_num = 0
#     if i == "I":
#         if I_num == 0:
#             console_str += "N,C1,D19,L4,"
#             I_num += 1
#         else:
#             console_str += "N,D19,R4,"
#             I_num = 0
#     elif i == "O":
#         console_str += "N,D19,"
#     else:
#         console_str += "N,"


# 横行叠法
# O_num = 0
# for i in tetris_list:
#     if i == "O":
#         if O_num == 0:
#             console_str += "N,D19,"
#             O_num += 1
#         elif O_num == 1:
#             console_str += "N,L4,D19,"
#             O_num += 1
#         elif O_num == 2:
#             console_str += "N,L2,D19,"
#             O_num += 1
#         elif O_num == 3:
#             console_str += "N,R4,D19,"
#             O_num += 1
#         elif O_num == 4:
#             console_str += "N,R2,D19,"
#             O_num = 0
#     else:
#         console_str += "N,"


# 叠8行法 分数74784
# O_num = 0
# for i in tetris_list:
#     if i == "O":
#         if O_num < 8:
#             console_str += "N,L4,D19,"
#             O_num += 1
#             continue
#         elif O_num < 16:
#             console_str += "N,L2,D19,"
#             O_num += 1
#             continue
#         elif O_num < 24:
#             console_str += "N,D19,"
#             O_num += 1
#             continue
#         elif O_num < 32:
#             console_str += "N,R2,D19,"
#             O_num += 1
#             continue
#         elif O_num < 40:
#             console_str += "N,R4,D19,"
#             O_num +=1
#             continue
#         elif O_num == 40:
#             O_num = 0
#             console_str += "N,L4,D19,"
#             O_num += 1
#     else:
#         console_str += "N,"


##   测试4列8层法 分数113100
O_num = 0
for i in tetris_list:
    if i == "O":
        x = O_num % 4
        y = O_num / 4
        if y < 7:
            if x == 0:
                console_str += "N,L4,D19,"
                O_num += 1
            elif x == 1:
                console_str += "N,L2,D19,"
                O_num += 1
            elif x == 2:
                console_str += "N,D19,"
                O_num += 1      
            elif x == 3:
                console_str += "N,R2,D19,"
                O_num += 1
        elif y == 7:
                #最右边界
                console_str += "N,R4,D19,"
                O_num += 1
                O_num -= 5
    else:
        console_str += "N,"



console_str = console_str[:-1]
console_str +=  "'.split(','));"

print(console_str)

这里首先按照注释中的”横行叠法“一行一行叠,最后得分19,740。

然后根据规则优化,先放3行再消除,参考注释的“叠8行法”,然后一行一行消除,分数74784。

继续优化,先叠满4列8层,消除1层时再叠1层,参考“测试4列8层法”,最后分数113100

然后就在我准备继续优化,把剩下的方块也用上的时候,主办方直接企业微信call了我,告诉我这是游戏的漏洞,并且修复了漏洞~

不过结果是直接给我算作“破解大师”了,工卡带和文化衫到手!

本站文章资源均来源自网络,除非特别声明,否则均不代表站方观点,并仅供查阅,不作为任何参考依据!
如有侵权请及时跟我们联系,本站将及时删除!
如遇版权问题,请查看 本站版权声明
THE END
分享
二维码
海报
【参赛经验分享】[腾讯内部赛道破解大师]俄罗斯方块难?直接破解最简单!
前言:后面有事没时间打比赛怎么办?那当然是把游戏破解了啊。安全人,安全魂,安全人偏不走寻常路~
<<上一篇
下一篇>>