找回密码
 点一下
查看: 3445|回复: 14

一个关于W3A的问题(不懂得咋简述 直接看内容吧...)

[复制链接]
发表于 2008-6-11 00:20:01 | 显示全部楼层 |阅读模式
  1. Frozen Throne expansion pack format of "war3map.w3u / w3t / w3b / w3d / w3a / w3h / w3q" : The object data files :
  2. 的这个[int: level/variation (this integer is only used
  3. These are the files that store the changes you make in the object editor.
  4. They all have one format in common. They have an initial int and then there are 2 tables
  5. Both look the same. The first table is the original table (Standard Objects by Blizzard).
  6. The second table contains the user created objects (Custom units / items / abilities …)
  7. Header:
  8. int: File Version = (usually 1)
  9. x bytes: Original objects table*
  10. y bytes: Custom objects table*
  11. Data:
  12. *Table definition:
  13. int: number n of objects on this table, if 0 on the original table, then skip the default object table. This is the number of following units. Even if we don't have any changes on original table, this value must be there.
  14. n times a object definition structure*.
  15. *Object definition structure:
  16. char[4]: original object ID (see table at the bottom where you can get the object IDs*)
  17. char[4]: new object ID. (if it is on original table, this is 0, since it isn't used)
  18. int: number m of modifications for this object
  19. m times a modification structure*
  20. *Modification structure:
  21. char[4] modification ID (see the table at the bottom where you can get the mod IDs*)
  22. int: variable type* t
  23. [int: level/variation (this integer is only used by some object files depending on the object type, for example the units file doesn’t use this additional integer, but the ability file does, see the table at the bottom to see which object files use this int*) in the ability and upgrade file this is the level of the ability/upgrade, in the doodads file this is the variation, set to 0 if the object doesn't have more than one level/variation]
  24. [int: data pointer (again this int is only used by those object files that also use the level/variation int, see table*) in reality this is only used in the ability file for values that are originally stored in one of the Data columns in AbilityData.slk, this int tells the game to which of those columns the value resolves (0 = A, 1 = B, 2 = C, 3 = D, 4 = F, 5 = G, 6 = H), for example if the change applies to the column DataA3 the level int will be set to 3 and the data pointer to 0]
  25. int, float or string: value of the modification depending on the variable type specified by t
  26. int: end of modification structure (this is either 0, or equal to the original object ID or equal to the new object ID of the current object, when reading files you can use this to check if the format is correct, when writing a file
复制代码

(这个英文版原文
http://bbs.uuu9.com/viewthread.php?tid=929622&extra=page%3D1
某瞳翻译的 不过他漏了这段...
http://www.islga.org/bbs/read.php?tid=13920
------------
这里
char[4] modification ID (see the table at the bottom where you can get the mod IDs*)
int: variable type* t
[int: level/variation (...

怎么知道这个是level/variation还是
int, float or string: value of the modification depending on the variable type specified by t
发表于 2008-6-11 02:07:35 | 显示全部楼层
[int: level/variation (this integer is only used by some object files depending on the object type, for example the units file doesn’t use this additional integer, but the ability file does, see the table at the bottom to see which object files use this int*) in the ability and upgrade file this is the level of the ability/upgrade, in the doodads file this is the variation, set to 0 if the object doesn't have more than one level/variation]
[int: data pointer (again this int is only used by those object files that also use the level/variation int, see table*) in reality this is only used in the ability file for values that are originally stored in one of the Data columns in AbilityData.slk, this int tells the game to which of those columns the value resolves (0 = A, 1 = B, 2 = C, 3 = D, 4 = F, 5 = G, 6 = H), for example if the change applies to the column DataA3 the level int will be set to 3 and the data pointer to 0]

该两项在w3a w3d w3q里才有,而在w3u w3t w3b w3h里不存在

[int: level/variation] 等级/样式,w3a w3q里表示等级,w3d里表示样式
[int: data pointer] 仅用于Ability的Data项(0 = A, 1 = B, 2 = C, 3 = D, 4 = F, 5 = G, 6 = H)
(DataA DataB......)
回复

使用道具 举报

发表于 2008-6-11 02:08:43 | 显示全部楼层
英文看不懂的说~`   [s:186]
回复

使用道具 举报

 楼主| 发表于 2008-6-11 07:54:12 | 显示全部楼层
引用第1楼Red_Wolf于2008-06-11 02:07发表的  :
[int: level/variation (this integer is only used by some object files depending on the object type, for example the units file doesn’t use this additional integer, but the ability file does, see the table at the bottom to see which object files use this int*) in the ability and upgrade file this is the level of the ability/upgrade, in the doodads file this is the variation, set to 0 if the object doesn't have more than one level/variation]
[int: data pointer (again this int is only used by those object files that also use the level/variation int, see table*) in reality this is only used in the ability file for values that are originally stored in one of the Data columns in AbilityData.slk, this int tells the game to which of those columns the value resolves (0 = A, 1 = B, 2 = C, 3 = D, 4 = F, 5 = G, 6 = H), for example if the change applies to the column DataA3 the level int will be set to 3 and the data pointer to 0]

该两项在w3a w3d w3q里才有,而在w3u w3t w3b w3h里不存在

.......
意思就是说
W3A W3D里面一定有这个结构了?
话说我一直以为w3a里面也不一定有这个东西
回复

使用道具 举报

发表于 2008-6-11 08:52:33 | 显示全部楼层
回复

使用道具 举报

发表于 2008-6-11 17:27:52 | 显示全部楼层
引用第3楼hke于2008-06-11 07:54发表的  :

意思就是说
W3A W3D里面一定有这个结构了?
话说我一直以为w3a里面也不一定有这个东西

是的,用不到的话就是0
回复

使用道具 举报

发表于 2008-6-11 18:11:49 | 显示全部楼层
看来HKE的下步目标是做W3A,W3U之类的修改器了

老狼还是很活跃嘛,签名是怎么回事?

过段时间偶有空就接着做加强WE了,正想找人合作加些强大的功能,老狼和HKE有兴趣么?至少目前准备把我的JASS调试工具整合进去,并且加入新JAPI:断点函数,方便调试模式在希望的语句上暂停........
回复

使用道具 举报

发表于 2008-6-11 19:22:23 | 显示全部楼层
做这种修改器很麻烦吧,有没人愿意较一下
回复

使用道具 举报

 楼主| 发表于 2008-6-11 20:21:19 | 显示全部楼层
引用第6楼rahxephon于2008-06-11 18:11发表的  :
看来HKE的下步目标是做W3A,W3U之类的修改器了

老狼还是很活跃嘛,签名是怎么回事?

过段时间偶有空就接着做加强WE了,正想找人合作加些强大的功能,老狼和HKE有兴趣么?至少目前准备把我的JASS调试工具整合进去,并且加入新JAPI:断点函数,方便调试模式在希望的语句上暂停........
有兴趣是有兴趣
可是最近事情还没忙完捏
那个调试的貌似我看见你已经实现过了额...
回复

使用道具 举报

发表于 2008-6-12 00:00:23 | 显示全部楼层
太强大了。
回复

使用道具 举报

发表于 2008-6-12 00:05:46 | 显示全部楼层
引用第6楼rahxephon于2008-06-11 18:11发表的  :
看来HKE的下步目标是做W3A,W3U之类的修改器了

老狼还是很活跃嘛,签名是怎么回事?

过段时间偶有空就接着做加强WE了,正想找人合作加些强大的功能,老狼和HKE有兴趣么?至少目前准备把我的JASS调试工具整合进去,并且加入新JAPI:断点函数,方便调试模式在希望的语句上暂停........

就是写的那样了~~
回复

使用道具 举报

发表于 2008-6-12 00:51:02 | 显示全部楼层
话说偶也对WE失去兴趣很久了,不过临近毕业还是想做点东西做纪念的说
回复

使用道具 举报

 楼主| 发表于 2008-6-12 11:22:01 | 显示全部楼层
引用第11楼rahxephon于2008-06-12 00:51发表的  :
话说偶也对WE失去兴趣很久了,不过临近毕业还是想做点东西做纪念的说
话说我印象中你不是工作了么
[s:166]
还是搞SC2吧..
回复

使用道具 举报

发表于 2008-6-13 10:08:11 | 显示全部楼层
恩,偶还没毕业呢,等毕业后就不一定能搞SC2了
回复

使用道具 举报

 楼主| 发表于 2008-6-13 10:51:32 | 显示全部楼层
引用第13楼rahxephon于2008-06-13 10:08发表的  :
恩,偶还没毕业呢,等毕业后就不一定能搞SC2了
时间总是有的嘛...
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 点一下

本版积分规则

Archiver|移动端|小黑屋|地精研究院

GMT+8, 2024-11-22 00:53 , Processed in 0.057298 second(s), 18 queries .

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表