前言

Jass是魔兽争霸3中比较重要的一个部分,下面资料通过逆向分析Jass执行脚本期间的一些逻辑和函数

环境

游戏版本:126

分析

Jass脚本执行入口,一般都是由固定函数或者特定类型函数(code),事件触发,定时器触发。

固定函数只有<init>,<config>,<main>所有地图都会有着3个固定函数

0284E9D0    6A FF           push -1
0284E9D2    68 A8E8C102     push Game.02C1E8A8
0284E9D7    64:A1 00000000  mov eax,dword ptr fs:[0]
0284E9DD    50              push eax
0284E9DE    81EC 88000000   sub esp,88
0284E9E4    53              push ebx
0284E9E5    55              push ebp
0284E9E6    56              push esi
0284E9E7    57              push edi
0284E9E8    A1 40E1E902     mov eax,dword ptr ds:[2E9E140]
0284E9ED    33C4            xor eax,esp
0284E9EF    50              push eax
0284E9F0    8D8424 9C000000 lea eax,dword ptr ss:[esp+9C]
0284E9F7    64:A3 00000000  mov dword ptr fs:[0],eax
0284E9FD    8BF1            mov esi,ecx                                编码执行指针
02

War3脚本引擎(Jass)执行函数分析相关推荐

  1. ie php脚本引擎,使用php重新实现PHP脚本引擎内置函数

    使用php重新实现PHP脚本引擎内置函数 // 实在无聊,突发奇想,想把PHP里面部分已经提供封装好的函数重新使用PHP实现一遍, // 于是便有了下面的代码主要实现了PHP中部分字符串处理函数,同时 ...

  2. java rhino 运行 js_java 脚本引擎Rhino执行js代码和文件

    测试js脚本引擎 public class helloworld { public static void main(String[] args) throws Exception { //获得脚本引 ...

  3. C#发现之旅第十四讲 基于动态编译的VB.NET脚本引擎

    本章说明 在前面章节中,笔者使用了反射和动态编译技术实现了快速ORM框架,在本章中笔者将继续使用这些技术来实现一个VB.NET的脚本引擎,使得人们在开发中能实现类似MS Office那样实现VBA宏的 ...

  4. java fel_Java表达式引擎fel/groovy/expression4j/java脚本引擎的性能对比【原创】

    又是性能对比,最近跟性能较上劲了. 产品中需要用到数学表达式,表达式不复杂,但是对性能要求比较高.选用了一些常用的表达式引擎计算方案,包含:java脚本引擎(javax/script).groovy脚 ...

  5. (原)War3 脚本分析5-基础脚本资源

    众所周知War3编辑器非常强大,这种强大不仅是因为其拥有诸如地形编辑器.开关编辑器.声音编辑器.物体编辑器.战役编辑器.AI编辑器.物体管理器.输入管理器等非常全面且易于使用的功能,更为重要的是在其基 ...

  6. Nmap源码分析(脚本引擎)

    Nmap提供了强大的脚本引擎(NSE),以支持通过Lua编程来扩展Nmap的功能.目前脚本库已经包含300多个常用的Lua脚本,辅助完成Nmap的主机发现.端口扫描.服务侦测.操作系统侦测四个基本功能 ...

  7. 在windows程序中嵌入Lua脚本引擎--建立一个简易的“云命令”执行的系统

    在<在windows程序中嵌入Lua脚本引擎--使用VS IDE编译Luajit脚本引擎>开始处,我提到某公司被指责使用"云命令"暗杀一些软件.本文将讲述如何去模拟一个 ...

  8. 【Java脚本引擎】脚本引擎执行JavaScript代码

    应用场景 公司有30员工,每个人工资计算方式不同.现在需要计算工资. 传统的方法:一个接口,30个实现类. 使用脚本引擎:编写一个xml文件,每人一个计算公式,使用的时候可以把公式加载到程序中,启动时 ...

  9. Java动态性(3) - 脚本引擎执行javascript代码

    1.脚本引擎执行JavaScript代码 脚本引擎介绍 使得Java应用程序可以通过一套固定的接口与各种脚本引擎交互,从而达到在Java平台上调用各种脚本语言的目的 Java脚本API是连通Java平 ...

最新文章

  1. vscode 新建php模板,使用VSCode快速创建vue文件模版的方法介绍
  2. OpenAI解散机器人团队,曾试图造AGI机器人,创始人:最好的决定
  3. 判断接收的数据中是否有中文
  4. 2018阿里云云数据库RDS核心能力演进
  5. table control 光标定位控制
  6. 熬夜所带来的伤害,远比我们想象的更可怕
  7. leetcode22. 括号生成(回溯)
  8. 餐馆的故事-浅析职责链模式
  9. 微信小程序中实现瀑布流布局和无限加载
  10. 单片机广告灯实验总结_温州很强的ly51s单片机程序开发公司
  11. 多云时代-着眼布局开源技术之多云数据管理
  12. Json转换成excel 离线版
  13. TO-220与TO-220F的区别 封装
  14. OSS文件存储方案-阿里云
  15. 基于C++的菜鸟驿站
  16. eXosip订阅问题分析
  17. c++实现串口功能之termios.h头文件研读<一>
  18. jQuery插件开发标准写法
  19. 苹果开发者账号和证书那些事
  20. React前端性能提升长列表优化解决方案

热门文章

  1. Google Chrome及ChromeDriver版本参照表, 附带下载地址
  2. 十年踪迹:巧用 currentColor 属性来实现自定义 checkbox 样式
  3. 浅谈数据标注怎么干?
  4. 怎么找回回收站清空的文件?终于解决了
  5. 湖南附中模拟day1 金坷垃
  6. 生产签名进行 Base64 编码
  7. LLMs之InstructGPT:《Training language models to follow instructions with human feedback》翻译与解读
  8. 01程序设计与C语言
  9. 一键导入excel到数据库的最佳实践
  10. 电脑上如何实现微信双开或者多开