war3_jass基本 - 1

发布时间 2023-04-25 17:01:44作者: Yofoo

版本1.27.0.52240

  1. war3地图相关工具
    Ladik's MPQ Editor version 3.6.0.868 (Unicode Build)

  2. 地图加密,导致MPQEditor打开显示只读
    a.如果地图的list文件完整, 可以用MPQEditor新建, 复制这个文件
    b.如果地图的list文件不全, 修复文件头
    MPQ20
    4D 50 51 1A 56 78 4F 50
    4D 50 51 1A 20 00 00 00

  3. jass语法检查可以用JassShopPro
    其中包含几个基础的jass文件, 需要从patch.mpq中提取
    实际检查调用 pjass.exe, 参数如: pjass.exe common.j Blizzard.j war3map.j

  4. war3map.w3u为单位定义
    ulum 为价格
    usma 为数量

  5. game.dll 修改
    包含功能暂停次数修改, 保存游戏次数限制修改, 地图40M大小限制修改
    FileName = ..\Game.dll
    PathList\0000\Descrip = PauseCountAdd
    PathList\0000\NewHex = 909090
    PathList\0000\Offset = 0030CCE5;
    PathList\0000\OldHex = FF46385F5BB8010000005E8BE55DC20400
    PathList\0000\Path = 1
    PathList\0001\Descrip = SaveGameFlag
    PathList\0001\NewHex = 8B703C
    PathList\0001\Offset = 0030ECD6;
    PathList\0001\OldHex = 89703C5F5E5DC20400CC56
    PathList\0001\Path = 1
    PathList\0002\Descrip = map-8M
    PathList\0002\NewHex = 3D00000040
    PathList\0002\Offset = 0084E930;0085EDB6;00871A66;
    PathList\0002\OldHex = 3D00008000
    PathList\0002\Path = 1
    PathList\Count = 3

  6. 注入选择
    用工具监视, 发现以下模块
    G:\Games\WarcraftIII_12x\AUDIOSES.DLL
    G:\Games\WarcraftIII_12x\bcrypt.dll
    G:\Games\WarcraftIII_12x\CRYPTSP.dll
    G:\Games\WarcraftIII_12x\d3d12.dll
    G:\Games\WarcraftIII_12x\d3d8thk.dll
    G:\Games\WarcraftIII_12x\d3d9.dll
    G:\Games\WarcraftIII_12x\GLU32.dll
    G:\Games\WarcraftIII_12x\GPAPI.dll
    G:\Games\WarcraftIII_12x\mswsock.dll
    G:\Games\WarcraftIII_12x\ncrypt.dll
    G:\Games\WarcraftIII_12x\ntmarta.dll
    G:\Games\WarcraftIII_12x\nvd3dum.dll
    G:\Games\WarcraftIII_12x\OPENGL32.dll
    G:\Games\WarcraftIII_12x\profapi.dll
    G:\Games\WarcraftIII_12x\S3BASE.DLL
    G:\Games\WarcraftIII_12x\SafeIE.dll
    G:\Games\WarcraftIII_12x\USERENV.dll
    G:\Games\WarcraftIII_12x\VERSION.dll
    G:\Games\WarcraftIII_12x\VORT_DLS.DLL
    G:\Games\WarcraftIII_12x\WSOCK32.dll
    我选择 profapi.dll, 只要导出一些空函数, 可以直接注入