『逆向实践』破解某塔防游戏
前言
相信很多人在打单机游戏或网页游戏(非大型网络游戏)的时候总是有那么一点控制欲,想要修改游戏内容满足自己的那个小欲望。但是,技术是门槛,在之前,我和大家还得等别人破解完后来使用,还要为是否有病毒而担惊受怕。
今天,站长首次手动破解了一个网页小游戏,希望和大家分享可以共同提高逆向方面技术。
今天我们破解的是这个玩意:一个纯 js 塔防游戏。
游戏设计得很好,但是初始参数有点苛刻:
形参 | 实参 |
---|---|
生命 | 100 |
金币 | 500 |
属实有些太少了,于是:
这只是众多版本中的一个版本,版本号 version 应该是
1.0 beta 2
。该网站游戏破解版会在文末给出(链接 + 源码)
源码除了下面参数中英对照表有提到的可以改,其他地方尽量不要乱改,容易因为出错导致工程建设前功尽弃。
相信大家还是对破解过程感兴趣,所以:
破解
扒站(逆向)
我们首先使用 360 或其他国内浏览器(亲测国外浏览器有乱码现象)打开原站。右键游戏内容-检查(相当于点了 F12 ),发现游戏主体是一个名为
td-pkg-zh-min.js
的文件。
使用
Ctrl + S
快捷键保存全站文件。
整理一下目录,把 html 文件改名为
index.html
,新建一个
data
(数据)文件夹,分类里面的 js、css 文件(分别创建相应文件夹,把相应后缀名文件放进去。另外扒站时搞下了几个 txt、php 文件,但是没什么用,删了),再打开
index.html
,修改整理里面所有关于路径的内容。这方面的内容建议使用一些专业的扒站工具,可以自动处理资源文件。
删除
index.html
文件中影响打开速度的不必要的 script (包括但不仅限于百度统计代码)并修改一些文字,再把底部友情链接内容删除。
打开
td-pkg-zh-min.js
文件,哇,这个开发者我是真的服了,所有代码往一行里塞。
修改参数
打开整理好后的
data/js/td-pkg-zh-min.js
。
修改玩家初始参数
我编辑器用的是 notepad 2 ,使用
Crtl+F
快捷键调出查找功能,搜索关键词
config
,
往下找到第十个目标,在这个类似字典的东西中找到我们的目标
money
和
life
项,后面的数值就可以随便改了:
修改武器参数
修改这些东西完后怎么能少修改武器参数呢?武器牛逼才能 满足我们对无敌的渴望:
查找关键字
damage
(伤害),找到一个储存武器初始数据的字典
i
:
这里时参数名的中英对照表:
English | Chinese |
---|---|
wall | 路障 |
cannon | 炮台 |
LMG | 轻机枪 |
HMG | 重机枪 |
laser_gun | 激光炮 |
damage | 伤害 |
range | 射程 |
max_range | 最大射程 |
speed | 射速 |
bullet_speed | 子弹速度 |
life | 生命值(对武器无效) |
shield | 防御力(对武器无效) |
cost | 价格 |
difficulty | 难度 |
max_monsters_per_wave | 每波怪物最大数量 |
money | 金币 |
score | 积分 |
life | 生命值 |
根据参数名修改相关参数,你离发布自己的作品就更进一步啦!
保留可玩性
本站在破解游戏难度和开放性的同时,也为保留游戏可玩性做了一定修整,目前游戏部分参数如下:
形参 | 实参 |
---|---|
武器伤害 | x10 |
武器价格 | /10 |
生命值 | 99999 |
金币 | infinity(9×10^1000) |
每波最多怪物数 | 1000 |
射速、子弹速度 | 大部分 x10 |
其他更高级玩法,以及运用老六战术、各种兵法太变态的就靠各位自己摸索了。
做为站长上线的第一个游戏类网站,希望大家能够多多支持,更需要不断维护,请 Bug 发现者主动向站长提供发现的 Bug 和你的人头,然后:
version 2.0 更新日志:
解决了一些 Bug 和发现 Bug 的人。
玩法
发布
此游戏不推荐用手机玩,如果你的手机没有足够优秀的配件的支持,那么你会体验 FPS 小于 10 的痛苦。(本人手机4 GB 运行,其他配件未知,运行 FPS 平均为 7~8 )
源码:

共有 0 条评论