平民程序 - linghuye's blog

天下风云出我辈,一入江湖岁月催。皇图霸业谈笑中,不胜人生一场醉。提剑跨骑挥鬼雨,白骨如山鸟惊飞。尘事如潮人如水,只笑江湖几人回。

随笔 - 221, 文章 - 0, 评论 - 680, 引用 - 0
数据加载中……

星际争霸2 Beta客户端资源分析

星际争霸2 Beta测试开始了,下载下来,没有帐号玩不了,于是开始琢磨客户端资源.

又看到熟悉的MPQ打包文件,很顺利地打开Battle.net\Battle.net.MPQ.
里面是战网的界面资源,界面用的是Scaleform的gfx格式文件,在SWF目录下,显然StarCraft2采用了Scaleform的界面解决方案.接着用2.2版本的ScaleformSDK尝试打开,报告格式不兼容,失败.
配合Scaleform使用的是png格式的图像文件.
简体中文版的汉化文字已经做好了,在Battle.net.MPQ\i18n\zhCN\String\*.xml里面.

Mods目录下是主要的资源文件,除了MPQ出现了*.SC2Assets/*.SC2Data/*.SC2Locale文件.
其中*.SC2Locale是文本文件,直接用记事本打开.
*.SC2Assets/*.SC2Data用UltraEdit打开后,发现还是MPQ文件,于是直接加个.mpq后缀就用MyWarCraftStudio打开看到里面的内容了.
Core.SC2Mod\Base.SC2Data里有个Shaders目录,大量的.fx文件,嘿嘿,FX Shader! 比较眼熟的有HDR/DeferredLight/VSSkinning/VSShadow/PSShadow/PSSSAO/PSParallax/PSPostProcess等.嗯,那OpenGL也是用这些shader吗?
Core.SC2Mod\Base.SC2Data]\UI里是游戏界面,用的Flash文件,
有一些*.galaxy文件,不知道做什么用的.

Mods\Liberty.SC2Mod\base.SC2Assets是最大的打包文件,打开后发现大量的*.m3格式文件,这就是星际2的模型文件了.纹理这次直接使用的DDS文件,直接看.
另外还有一种与m3共存的m3h格式的文件,是xml格式的文本文件,记录了那些可以灵活配置的模型数据,比如Socket绑点.

Mods\Liberty.SC2Mod\Base.SC2Data里的GameData目录是游戏逻辑相关大量配置文件.

Support/Version目录下是一些dll,看出星际2用VS2005开发的,用fmod音效底层,icudt42.dll/icuin42.dll/icuuc42.dll不知道是什么库.baselineCache.bin有几十兆,好像是预编译好的shader文件.

打开SC2.exe文件,找到几个hkpXXX,那就是使用了Havok物理引擎了.

看来只要把m3和m3h格式搞清楚,再用里面的Fx Shader一渲染就差不多了.

posted on 2010-02-22 22:35 linghuye 阅读(6106) 评论(11)  编辑 收藏 引用 所属分类: MyWarCraftStudio3D图形学研究

评论

# re: 星际争霸2 Beta客户端资源分析  回复  更多评论   

,icudt42.dll/icuin42.dll/icuuc42.dll 是 (ICU - International Components for Unicode)
2010-02-23 17:01 | herb

# re: 星际争霸2 Beta客户端资源分析[未登录]  回复  更多评论   

@herb
受教了,还真没用过ICU,查了下是开源的.
2010-02-23 18:25 | linghuye

# re: 星际争霸2 Beta客户端资源分析  回复  更多评论   

很爽, 都是比较喜欢的东西, 我也down个去
2010-02-24 13:40 | xoyojank

# re: 星际争霸2 Beta客户端资源分析  回复  更多评论   

m3h是xml啊
2010-02-24 20:20 | xoyojank

# re: 星际争霸2 Beta客户端资源分析[未登录]  回复  更多评论   

@xoyojank
果然是xml,之前没打开看,里面记录的是可以些需要灵活配置的模型数据,如绑点attachment.
2010-02-24 22:48 | linghuye

# re: 星际争霸2 Beta客户端资源分析  回复  更多评论   

galaxy文件应该就是脚本语言。暴雪以前说过,星际2支持一种全新的脚本语言,名字叫galaxy。比魔兽3的JASS好多了。
2010-03-05 10:43 | fcc

# re: 星际争霸2 Beta客户端资源分析  回复  更多评论   

这次魔兽世界 大灾变的 alpha已经开始测试了

用你的PackCraft.dll 打不开新的mpq 这个是因为暴雪修改了格式了吗??
2010-05-07 14:59 | 瓦格雷

# re: 星际争霸2 Beta客户端资源分析  回复  更多评论   

强力支持~~~最好破解了,国内开服务器玩~~
2010-06-12 15:44 | ac adapter for laptop

# re: 星际争霸2 Beta客户端资源分析  回复  更多评论   

牛人.哈哈.
2012-06-13 09:29 | [虫子]
只有注册用户登录后才能发表评论。