二 CheatEngine怎么提取地图数据

1.我们先用模拟器打开原版游戏。

 2.选择 CONSTRUCTION 模式,按攻击种一排草

 3 打开 工具->查看器->内存查看器,往下滑一个页面,到这里,就能看到有几排2

 4 打开Cheat Engine,点击这个

扫描二维码关注公众号,回复: 11174654 查看本文章

 5 内存查看器 + Cheat Engine 查找地图的地址,先把坦克开到左上角。

 点攻击把草换成别的,你会发现内存查看器中的某块数值改变了

 

 盯住这个数,开始找地址。

按照下图设置好Cheat Engine ,首次扫描。

 改变左上角,在内存查看工具中看改后的数(12)

 改成12,新的扫描,结果就是这样了,把第一个双击保存

 右击,打开浏览相关内存区域。

 这样就找到了,但这是左上角的,并不是第一块

 地图真正的第一个地址是我们找到这个,左移两列,上移一行,到达下图

 然后就很清晰能看出,边界时11,草是22(半透明),水是12,铁是10,墙是0F,冰是21(冰特效是会滑)。他们一整块都是由4个小块拼成的。

整个地图是24行,32列。

 6找到地图后,我们怎么保存呢直接复制没有换行,倒是还有别的办法。

用QQ截图截下来,选中这一块,点击文字识别

 

还是发现不是很准确,手动改几个数。  各路英雄好汉如果有什么好的办法欢迎留言,感激不尽

 

 然后用Cpp给他加上空格,这样使用起来舒服一点吧。

#include <iostream> 
using namespace std; 
int main(){ 
    freopen("in.txt", "r", stdin);
    freopen("out.txt", "w", stdout); 
    string s;
    while( getline(cin,s) ){
        int len = s.size();
        for(int i = 0; i < len; i++){
            cout<<s[i];
            if(i%2 && i!=0) cout<<' '; 
        }
        cout<<endl;
    }
    fclose(stdin);
    fclose(stdout); 
    return 0;
}

好了自建地图可以用了

猜你喜欢

转载自www.cnblogs.com/SunChuangYu/p/12821820.html