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

2021-09-26 13:20:12 浏览数 (1)

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

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

直接上视频

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

漏洞原理

修复漏洞的代码改动修复漏洞的代码改动

贴上漏洞修复的改动图。

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

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

漏洞利用

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

首先利用js生成方块序列

代码语言:javascript复制
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方块很好叠加,只要按照一行一行摞起来就行,直接编写脚本处理。

代码语言:python代码运行次数:0复制
/*
* 提示:该行代码过长,系统自动注释不进行高亮。一键复制会移除系统注释 
* 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了我,告诉我这是游戏的漏洞,并且修复了漏洞~

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

0 人点赞