调试某游戏副本中的加亮提示信息思路

对于经常玩游戏的人比较容易知道,在副本里面,当进行到某个步骤或者当队员站位触发某个情景时,游戏界面中央会出现字体提示字符,可能是BOSS跟你的对话也有可能是游戏给你的下一步提示。让我们分析下,这个情景到底是本地触发还是服务器触发?


假设是本地触发,那么问题来了,是不是我可以利用漏洞来告诉服务器我副本直接步骤做完了呢,这里补充下,每到一个步骤告诉服务器是必然的,因为服务器有必要控制副本的奖励。处于游戏安全性考虑,本地触发这个太不可控,风险太大。还个问题,就是触发不一致的问题,譬如,A队员站到了点上,B队员也站到了点上,但由于网络延迟的原因A队员本地并没有发现B站到点上,B没有网络延迟的原因发现A队员已经站到了点上,那么造成的后果是,A队员会无法触发副本下一步骤,而B队员实际已经触发副本下一步骤,那么副本奖励A队员是不是得不到了呢,很傻是不是!~


那么就是服务器触发,服务器根据什么来触发呢,根据经验可以得到,是依据你队友的站位或者某个步骤的发包,我只要保证你坐标移动是正常的(如果一个坐标移动到下一个坐标的间隔时间片正常,那么就是正常),那么站位发包就不会有问题。譬如,副本里面要求四个队员站到固定的点上,然后触发下一个关卡。当队员都站到固定的点上的时候,服务器得到了所有队员的坐标信息,发现满足条件了,好,给每个队员发个反馈包,告诉你们下个场景触发了,你们该干嘛就干嘛。反馈包是什么?就是我们的主题加亮提示信息嘛。


那已经确认了这东西是服务器回包得到的,那么又有问题了,如何定位是哪个回包呢,这里比较坑的是,副本我们没机会重复去测试,有个办法,就是找类似实现效果的场景去测试,那就是聊天,当聊天时,说话的字会浮现在你的头顶上,与加亮提示信息不一样的只是显示位置和内容不一样而已。聊天包相对来说好找很多,定位到聊天包,跟踪聊天内容的访问,可以最终定位到内容显示用到的API,再根据API过滤到不相干的调用函数,最终确认到加亮提示包只是时间问题了。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/499621.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

RC4算法实现

1、密钥流:RC4算法的关键是根据明文和密钥生成相应的密钥流,密钥流的长度和明文的长度是对应的,也就是说明文的长度是500字节,那么密钥流也是500字节。当然,加密生成的密文也是500字节,因为密文第i字节明文…

模拟网页行为之实践四

这篇谈下c如何hook网页中的JS函数,即网页可以执行我们修改的JS函数。 相应的步骤可分为: 1.找到需要修改函数的时机。 2.得到需要修改函数的com对象。 3.将我们新的com对象替换修改函数。 第一步,找到需要修改函数的时机,在谈…

SHA-256算法实现

SHA-256 算法输入报文的最大长度不超过2^64 bit,输入按512-bit 分组进行处理,产生 的输出是一个256-bit 的报文摘要。该算法处理包括以下几步: STEP1:附加填充比特。对报文进行填充使报文长度与448 模512 同余(长度…

RSA算法演绎

RSA是第一个也是使用的最广发的公钥加密算法,在1978年由R.Rivest、AdiShamir和Adleman三人发明,并以他们的名字命名。RSA算法的安全性基于大数因子分解的困难性,下面介绍一下它的基本原理: 1、生成公钥和私钥 (1) 选取两个大素数…

分数的乘法逆元和负数的取模运算

1.乘法逆元 A.定义 如果ax≡1 (mod p),且gcd(a,p)1(a与p互质),则称a关于模p的乘法逆元为x。 既然有ax≡1 (mod p),那么有ax - py 1,x是a关于模p的乘法逆元。 B.分数的乘法逆元 对于实数域,一个数的乘法逆元就是其倒数…

ecc算法入门介绍

一、从平行线谈起。 平行线,永不相交。没有人怀疑把:)不过到了近代这个结论遭到了质疑。平行线会不会在很远很远的地方相交了?事实上没有人见到过。所以“平行线,永不相交”只是假设(大家想想初中学习的平行…

Intel Hex概述

什么是Intel Hex文件 Intel HEX文件时遵循Intel HEX文件格式的ASCII文本文件。在Intel HEX文件的每一行都包含了 一个HEX记录。这些记录是由一些代表机器语言代码和常量的16进制数据组成的。Intel HEX文件常用来传输要存储在ROM 或者 EPROM中的程序和数据。大部分的EPROM编程器…

AndroidStudio+ideasmali动态调试smali汇编

0x00 前言 之前对于app反编译的smali汇编语言都是静态分析为主,加上一点ida6.6的动态调试,但是ida的调试smali真的像鸡肋一样,各种不爽,遇到混淆过的java代码就欲哭无泪了。后来知道IDEA用一款插件也可以实现smali的动态调试&a…

使用IDA Pro动态调试SO文件

(1)在IDA的安装路径中找到android_server文件。 (2)将android_server拷贝到手机的/data/local/tmp目录下面。 (3) 将手机插上电脑,打开命令提示符, 先输入”adb shell”,然后输入”…

c#调用c++dll接口及回调函数

在合作开发时,C#时常需要调用CDLL,当传递参数时时常遇到问题,尤其是传递和返回字符串是,现总结一下,分享给大家:VC中主要字符串类型为:LPSTR,LPCSTR, LPCTSTR, string, CString, LPCWSTR, LPWST…

机器学习或深度学习的数据读取工作(大数据处理)

机器学习或深度学习的数据读取工作(大数据处理)主要是.split和re.findall和glob.glob运用。 读取文件的路径(为了获得文件内容)和提取文件路径中感兴趣的东西(标签) 1,“glob.glob”用于读取文件路径 2,“.…

windows平台下的反调试技术

在调试一些病毒程序的时候,可能会碰到一些反调试技术,也就是说,被调试的程序可以检测到自己是否被调试器附加了,如果探知自己正在被调试,肯定是有人试图反汇编啦之类的方法破解自己。为了了解如何破解反调试技术&#…

SQLite加解密

0x00 SQLite概述 SQLite是一个轻量级、跨平台的,开源的数据库引擎,它在读写效率,消耗总量、延迟时间和整体简单性上具有的优越性,使其成为移动平台数据库的最佳解决方案。 然而免费版的SQLite有一个致命缺点:不支持加…

android和linux操作系统的区别

Android是由Google为移动设备开发的开源操作系统。Android软件的原始开发商Android公司是由Google,Inc.于2005年购买的。它是基于Linux 2.6内核开发的。Linux操作系统于1991年由Linus Torvalds作为台式计算机的开源操作系统开发。Linux操作系统是作为MINIX操作系统开…

Android系统架构图

一、Aplications(应用层) 应用是用Java语言编写的云新在虚拟机上的程序。 二、Application Framework(应用框架层) 这一层是编写Google发布的核心应用时所使用的API框架,开发人员可以使用这些框架来开发自己的应用。 V…

SHA1算法实现及详解

1 SHA1算法简介 安全哈希算法(Secure Hash Algorithm)主要适用于数字签名标准(Digital Signature Standard DSS)里面定义的数字签名算法(Digital Signature Algorithm DSA)。对于长度小于2^64位的消息&…

CRC32算法实现

CRC32 检错能力极强,开销小,易于用编码器及检测电路实现。从其检错能力来看,它所不能发现的错误的几率仅为0.0047%以下。从性能上和开销上考虑,均远远优于奇偶校验及算术和校验等方式。因而,在数据存储和数据通讯领域&…

AES算法重点详解和实现

可以看到,在原始数据长度为16的整数倍时,假如原始数据长度等于16*n,则使用NoPadding时加密后数据长度等于16*n,其它情况下加密数据长度等于16*(n1)。在不足16的整数倍的情况下,假如原始数据长度等于16*nm[其中m小于16]…

protobuf流的反解析Message

0x01 protobuf的基本概念 protobuf通过定义".proto"文件来描述数据的结构。.proto文件中用"Message"所表示所需要序列化的数据的格式。Message由field组成,Field类似JAVA或者C中成员变量,通常一个field的定义包含修饰符、类型、名称…

勒索病毒傀儡进程脱壳

样本是:wallet勒索病毒 环境:虚拟机VMWARE win7 32位 工具:OD,winhex 初次拿到样本,先用火绒剑工具监控下病毒样本的流程,可以看到有一个自创建进程的行为。 我们等找到OEP后,在CreateProcessA下…