• 特训99小游戏


    网上下载的小游戏,试试看能不能让飞机自己躲子弹

    看pe结构是一个固定基址不是变址这样就不用算偏移了

    先是更具屏幕显示字符串找到打印函数

    的位置

     一步步向上看他的逻辑处理 堆栈返回地址  猜测用了bitblt 函数

     找到关键判断

     接着找子弹的地址 关键跳上面一个函数就是判断是否在子弹范围  里面肯定有子弹和飞机的x,y 坐标

     发现他对 子弹坐标就行了加密  x,y 左移6位 减4  00409010 就是子弹地址  x,y 大小4位 int  00409010+4 是y坐标

     x<320 y<240

     找到飞机地址

     飞机高宽都是 16  

    具体就是

    40A554  飞机y轴
    40A558  飞机x轴
    40a540   子弹数量 i
    00409010 子弹地址  ((arr+16*i)>>6)-4
    00402fee 无敌  0f改e9 无敌

    00402FEE 0F 84 F8 03 00 00 原先  

    00402FEE  E9 F9 03 00 00 90 改后 无敌

    
    
    int main()
    {
        //找class 类名返回窗口句柄
        HWND hGameClass = FindWindow("wcTKKN", NULL);
        DWORD dwPID;
        RECT rc;
        GetClientRect(hGameClass, &rc);
        int nWidht = rc.right - rc.left;
        int nHeight = rc.bottom - rc.top;
    
        //返回进程号
        GetWindowThreadProcessId(hGameClass, &dwPID);
        //返回进程句柄
        HANDLE hGame = OpenProcess(PROCESS_ALL_ACCESS, false, dwPID);
            //读地址数据
        SIZE_T dwBytes;
        char szBuff[2];
        //读多少个字节
        //ReadProcessMemory(hGame, (LPVOID)0x00403616, szBuff, 1, &dwBytes);
        while (true)
        {
            int x = rand() % 300;
            int y = rand() % 220;
    
            if (x>256)
            {
                szBuff[1] =0x01;
            }
            szBuff[0] = (char)x;
            //更改飞机x坐标
            WriteProcessMemory(hGame, (LPVOID)0x0040A558, szBuff, sizeof(szBuff), &dwBytes);
            szBuff[0] = (char)x;
            szBuff[1] = 0x00;
            //更改飞机y坐标
            WriteProcessMemory(hGame, (LPVOID)0x0040A554, szBuff, sizeof(szBuff), &dwBytes);
            //创建矩形  范围
            Sleep(300);
        }
    
        CloseHandle(hGame);
        system("pause");
    }

    后面就是把 320x240 范围的点 都去 从0 枚举304 0-224  找每一个点附近去匹配矩阵中是否有点 没有就跳过去 躲避子弹 比较简单的逻辑就不写了 大概就是这样

     

    从此山高路远,纵马扬鞭。愿往后旅途,三冬暖,春不寒,天黑有灯,下雨有伞。此生尽兴,不负勇往。
  • 相关阅读:
    子查询
    视频工作工具链
    视频拆帧与组帧
    二叉树
    回溯法
    windows配置编译器
    C++工厂模式
    C++单例模式
    HTML学习记录
    C++代码规范
  • 原文地址:https://www.cnblogs.com/feizianquan/p/15126070.html
Copyright © 2020-2023  润新知