魔兽争霸联机修改金钱和木头原理(可局域网多人修改不掉线)

写给感兴趣的码农(如果只想使用此工具,请直接跳过这部分):

此文章所有测试都是在1.24E版本进行!!!

其实局域网修改资源之所以会掉线,排除网络和游戏崩溃的因素,就是因为玩家之间的资源数据不同步导致的。只要确保修改之后玩家之间的资源数据同步,就不会出现掉线的情况。我们有两种方法修改:①定时修改资源;②HOOK修改资源的函数。明显前者不太显现实,买东西快一点就容易掉线了,只能选后者了。

经过调试分析发现一个极其关键的CALL,地址是6F473C50(6F000000是game.dll的首地址,这个值视环境而定,也就是说这个CALL的地址为game.dll+473C50,一下所有6F开头的都是以这个dll首地址作为段地址)。不仅仅是金钱木头人口的变动甚至是创建和销毁单位也会调用这个CALL。此处我们要的只是HOOK这里的对金钱木头改变的调用而已,毕竟其他那些变态的功能已经有前人写出来了,没必要重复造轮子。(当然有兴趣的可以自己去分析一下)

只要在mov edx,dword ptr ss:[esp+0x4]之前判断一下edx的值看调用这个CALL的目的是不是要修改金钱木头,如果是就把edx改成我们要的值,不是就按原来的处理就行。

附上我修改后的指令(亲戚小孩急着要玩等得不耐烦了,又因为后面的空闲空间不是连续的,用了好多jmp,写的好挫。。。)

6F473C5E  ^\EB E5           jmp Xgame.6F473C45                       ; 开始

6F87EFA2    8B15 FCEF876F   mov edx,dword ptr ds:[0x6F87EFFC]        ; 写入资源,先要把我们要改成的值写入0x6F87EFFC这个地址

6F87EFA8  ^ E9 B54CBFFF     jmp game.6F473C62                        ; 跳回去

---------------------------------

//

6F473C45    83FA 02         cmp edx,0x2                              ; 1金钱

6F473C48    0F84 54B34000   je game.6F87EFA2

6F473C4E    EB 22           jmp Xgame.6F473C72

//

6F473C72    83FA 03         cmp edx,0x3                              ; 1木头

6F473C75    0F84 27B34000   je game.6F87EFA2

6F473C7B    E9 04010000     jmp game.6F473D84

//

6F473D84    83FA 2A         cmp edx,0x2A                             ; 2J

6F473D87    0F84 15B24000   je game.6F87EFA2

6F473D8D    EB 06           jmp Xgame.6F473D95

//

6F473D95    83FA 2B         cmp edx,0x2B                             ; 2M

6F473D98    0F84 04B24000   je game.6F87EFA2

6F473D9E    EB 61           jmp Xgame.6F473E01

//

6F473E01    83FA 52         cmp edx,0x52                             ; 3J

6F473E04    0F84 98B14000   je game.6F87EFA2

6F473E0A    E9 F5000000     jmp game.6F473F04

//

6F473F04    83FA 53         cmp edx,0x53                             ; 3M

6F473F07    0F84 95B04000   je game.6F87EFA2

6F473F0D    EB 53           jmp Xgame.6F473F62

//

6F473F62    83FA 7A         cmp edx,0x7A                             ; 4J

6F473F65    0F84 37B04000   je game.6F87EFA2

6F473F6B    EB 55           jmp Xgame.6F473FC2

//

6F473FC2    83FA 7B         cmp edx,0x7B                             ; 4M

6F473FC5    0F84 D7AF4000   je game.6F87EFA2

6F473FCB    E9 91AA4000     jmp game.6F87EA61

//

6F87EA61    81FA A2000000   cmp edx,0xA2                             ; 5J

6F87EA67    0F84 35050000   je game.6F87EFA2

6F87EA6D    EB 02           jmp Xgame.6F87EA71

//

6F87EA71    81FA A3000000   cmp edx,0xA3                             ; 5M

6F87EA77    0F84 25050000   je game.6F87EFA2

6F87EA7D    EB 02           jmp Xgame.6F87EA81

//

6F87EA81    81FA CA000000   cmp edx,0xCA                             ; 6J

6F87EA87    0F84 15050000   je game.6F87EFA2

6F87EA8D    EB 02           jmp Xgame.6F87EA91

//

6F87EA91    81FA CB000000   cmp edx,0xCB                             ; 6M

6F87EA97    0F84 05050000   je game.6F87EFA2

6F87EA9D    EB 02           jmp Xgame.6F87EAA1

//

6F87EAA1    81FA F2000000   cmp edx,0xF2                             ; 7J

6F87EAA7    0F84 F5040000   je game.6F87EFA2

6F87EAAD    EB 02           jmp Xgame.6F87EAB1

//

6F87EAB1    81FA F3000000   cmp edx,0xF3                             ; 7M

6F87EAB7    0F84 E5040000   je game.6F87EFA2

6F87EABD    EB 52           jmp Xgame.6F87EB11

//

6F87EB11    81FA 1A010000   cmp edx,0x11A                            ; 8J

6F87EB17    0F84 85040000   je game.6F87EFA2

6F87EB1D    EB 52           jmp Xgame.6F87EB71

//

6F87EB71    81FA 1B010000   cmp edx,0x11B                            ; 8M

6F87EB77    0F84 25040000   je game.6F87EFA2

6F87EB7D    EB 55           jmp Xgame.6F87EBD4

6F87EBD4   /E9 C8000000     jmp game.6F87ECA1                        ; 转

6F87ECA1    81FA 42010000   cmp edx,0x142                            ; 9J

6F87ECA7    0F84 F5020000   je game.6F87EFA2

6F87ECAD    EB 52           jmp Xgame.6F87ED01

6F87ED01    81FA 43010000   cmp edx,0x143                            ; 9M

6F87ED07    0F84 95020000   je game.6F87EFA2

6F87ED0D    EB 0B           jmp Xgame.6F87ED1A

6F87ED1A   /EB 75           jmp Xgame.6F87ED91                       ; 转

//

6F87ED91    81FA 6A010000   cmp edx,0x16A                            ; 10J

6F87ED97    0F84 05020000   je game.6F87EFA2

6F87ED9D    EB 52           jmp Xgame.6F87EDF1

6F87EDF1    81FA 6B010000   cmp edx,0x16B                            ; 10M

6F87EDF7    0F84 A5010000   je game.6F87EFA2

6F87EDFD    EB 52           jmp Xgame.6F87EE51

6F87EE51    81FA 92010000   cmp edx,0x192                            ; 11J

6F87EE57    0F84 45010000   je game.6F87EFA2

6F87EE5D    EB 52           jmp Xgame.6F87EEB1

6F87EEB1    81FA 93010000   cmp edx,0x193                            ; 11M

6F87EEB7    0F84 E5000000   je game.6F87EFA2

6F87EEBD    EB 52           jmp Xgame.6F87EF11

6F87EF11    81FA BA010000   cmp edx,0x1BA                            ; 12J

6F87EF17    0F84 85000000   je game.6F87EFA2

6F87EF1D    EB 0B           jmp Xgame.6F87EF2A

6F87EF2A   /E9 8B000000     jmp game.6F87EFBA                        ; 转

6F87EFBA    81FA BB010000   cmp edx,0x1BB                            ; 12M

6F87EFC0  ^ 74 E0           je Xgame.6F87EFA2

6F87EFC2    8B5424 04       mov edx,dword ptr ss:[esp+0x4]           ; 原指令

6F87EFC6  ^ E9 974CBFFF     jmp game.6F473C62                        ; 跳回去

使用方法:

下载地址: http://download.csdn.net/detail/faithdongdong/8432083 (杀软会报毒,用几年前的入门作改的,懒得弄免杀,不放心的就不要下了)

输入所有玩家代号(通常是楼层数)以空格隔开,然后填好更改数目锁定即可。(注意:所有玩家都要运行此工具,并且所有玩家的这两项设置必须一样!!!)

PS.难得玩一次魔兽,还是和亲戚小孩玩,任务赚钱什么的太浪费时间,不开挂怎么行?

时间: 2024-08-13 01:37:39

魔兽争霸联机修改金钱和木头原理(可局域网多人修改不掉线)的相关文章

SVN 多人修改,如何管理 关于版本的问题

SVN 多人修改,如何管理 关于版本的问题 从问题描述可以看出,这是采用配置管理工具(代码版本控制工具)初期比较典型的问题,要解决此问题需要做以下调整: 采用成熟的主干-分支代码管理方法: 需要指定专职或兼职的人员来负责代码规划和管理,包括分支的创建和合并,通常称为配置管理员(CMO): 先简单介绍一下主干-分支代码管理方法: 代码库中创建三个目录:trunk.branches和tags,分别存放稳定代码.开发代码和用于生产环境的可发布代码: Branches中可以有多个分支,可以按人员.用途或

大数据学习的思维原理(机器懂人原理篇)

我们在上一篇文章中给大家介绍了很多大数据学习的思维原理,对于这些思维原理都是需要大家掌握的,在这篇文章中我们给大家讲解一下机器懂人原理,希望这篇文章能够给大家带来帮助. 首先我们给大家说说什么是机器懂人原理,机器懂人原理就是由人懂机器转变为机器更懂人.这里说的不是让人更懂机器,而是让机器更懂人,或者说是能够在使用者很笨的情况下,仍然可以使用机器.甚至不是让人懂环境,而是让我们的环境来懂我们,环境来适应人,某种程度上自然环境不能这样讲,但是在数字化环境中已经是这样的一个趋势,就是我们所在的生活世界

Istio调用链埋点原理剖析—是否真的“零修改”分享实录(上)

本文整理自华为Cloud BU技术专家在K8S技术社上 关于Istio调用链的分享. 前言 大家好,我是idouba,来自华为Cloud BU,当前在做Istio服务网格在华为云容器服务的产品化工作.今天跟大家分享的主题是Istio调用链相关内容.通过剖析Istio的架构机制与Istio中调用链的工作原理来解答一个大家经常问道的一个问题:Istio是否像其官方文档中宣传的一样,对业务代码完全的无侵入,无需用做任何修改就可以完成所有的治理能力,包括调用链的埋点? 关于这个问题,可以提前透漏下,答案

Openvswitch原理与代码分析(8): 修改Openvswitch代码添加自定义action

有时候我们需要自定义一些自己的action,根据包头里面的信息,做一些自己的操作. ? 例如添加一个action名为handle_example ? 第一.修改ofp-actions.c文件 ? 首先在ofp-actions.c里面添加Openflow各个版本的这个action static const struct ofpact_map * get_ofpact_map(enum ofp_version version) { ????/* OpenFlow 1.0 actions. */ ??

Adaboost 算法的原理与推导——转载及修改完善

<Adaboost算法的原理与推导>一文为他人所写,原文链接: http://blog.csdn.net/v_july_v/article/details/40718799 另外此文大部分是摘录李航的<统计学笔记>一书,原书下载链接:http://vdisk.weibo.com/s/z4UjMcqGpoNTw?from=page_100505_profile&wvr=6 在根据文中推导是发现有计算错误以及省略的步骤,在下文将会进行说明. ------------------

网络监听原理(局域网数据窃听)

在网络中,当信息进行传播的时候,可以利用工具,将网络接口设置在监听的模式,便可将网络中正在传播的信息截获或者捕获到,从而进行攻击.网络监听在网络中的任何一个位置模式下都可实施进行.而黑客一般都是利用网络监听来截取用户口令.比如当有人占领了一台主机之后,那么他要再想将战果扩大到这个主机所在的整个局域网话,监听往往是他们选择的捷径.很多时候我在各类安全论坛上看到一些初学的爱好者,在他们认为如果占领了某主机之后那么想进入它的内部网应该是很简单的.其实非也,进入了某主机再想转入它的内部网络里的其它机器也

软件测试典型问题记录-修改窗口页面存在两个页签,修改后在某个页签点确定,另一页签内容未修改

容易忽视的问题记录 修改页面大概如下: 问题:修改完成后,在页签1,点击确定,修改无误: 在页签2,点击确定,页签1中的内容未做修改.

如何修改MONGODB字段的数组,不用整个字段修改

很好的一点就是,数据库不需要先建立,在连接后,如果进行插入数据操作,系统可以自己创建,我们假设一个post集合,里面是一些博客文章组成的文档.下面先插入几篇文章做实验. 1 >>> import datetime 2 >>> post1 = {"title":"I Love Python", 3 "slug":"i-love-python", 4 "author":&qu

SQL SERVER 修改数据库名称(包括 db.mdf 名称的修改)

折腾SQL SERVER 2012,弄了一个上午修改数据库名,主要是需要修改db.mdf 和db_log.ldf的名字,总算解决了.在这里记下,以后再要修改了就别忘了. 假设原来数据库名为db,附加数据库为db.mdf和db_log.ldf. 需要改成dbt,及dbt.mdf和dbt_log.ldf. 步骤: 1.首先把原来的数据库进行备份(选择数据库->右键->任务->备份),备份出db.bak文件. 2.右键->任务->还原->数据库,跳出“还原数据库”窗口. 3.