【发布时间】:2012-08-26 12:01:57
【问题描述】:
我一直在寻找有关魔兽世界插件 API 的第一手信息。有几个很好的 wiki,但它们的参考链接只指向内部。暴雪肯定有一些关于这个主题的信息。
真的可以从逆向工程和论坛中收集到他们所有的信息吗?这让我难以置信。
【问题讨论】:
标签: lua add-on world-of-warcraft lua-api
我一直在寻找有关魔兽世界插件 API 的第一手信息。有几个很好的 wiki,但它们的参考链接只指向内部。暴雪肯定有一些关于这个主题的信息。
真的可以从逆向工程和论坛中收集到他们所有的信息吗?这让我难以置信。
【问题讨论】:
标签: lua add-on world-of-warcraft lua-api
不一定都是从检查或反复试验中收集到的。有些是随机提供的,来自“来源”论坛中的“提醒”帖子,例如暴雪员工。它们通常对此非常好,尽管几乎总是以“只是为您减轻痛苦的必需品”之类的方式提供。
这是一个例子: http://blue.mmo-champion.com/topic/233590-mop-changes/
关注“蓝色”帖子有很长的路要走,而且这种情况已经持续了很长时间。如果您查看类似这样的内容(旧的 3.1.0 最终用户补丁说明)http://us.battle.net/wow/en/game/patch-notes/3-1-0,然后扫描到底部附近将有一个注释和 API 更改链接,因此很容易收集他们对此的意图,并且他们打算在那里提供一些关于 API 更改的“非官方”支持,同时不会给实际的产品自述文件带来负担。
一般来说,我会说由于材料的非常开放的性质,UI 的来源,很少被隐藏,大部分都是不言而喻的,所以它几乎没有资格作为逆向工程。一旦您了解 Lua 与 WoW UI 和支持 API 的一般设计之间的关系,就容易多了。
至于关于“为什么”的隐含问题,“难以置信”部分。据我估计,他们认为在没有“官方”支持的情况下完全支持和不浪费周期试图记录大量不断变化的可用设施之间取得了最佳平衡。我认为他们相信它可以制作出更好的产品,具有定制的能力,因此它符合他们的利益,但是从许多角度都充满了问题甚至法律问题,以明确“官方”或试图保持连贯的文档。
对于下面的“git hub”问题,这里是上下文中的“蓝色”帖子,可以通过单击之前提供的 mmo-champion 链接上的“blizz”链接图标找到:http://us.battle.net/wow/en/forum/topic/6413172918#1 我正在尝试举一个有细节的蓝色帖子的例子,但我不小心给了一个用于 Web API 而不是游戏 API 的帖子。但是原理是一样的,并且为社区提供了更多暴雪的开发支持。
所以基本上那个特定的帖子是指 Web API 的变化,而 Git 的评论与游戏 UI 自定义和宏的事情无关。游戏 UI 自定义和宏没有隐藏或官方的文档源。主要是因为它对任何人都不存在。 :)
【讨论】:
是的,所有信息都是从源头收集的。
【讨论】:
暴雪目前不发布 API 信息,AFAIK。
http://www.wowpedia.org/Portal:Interface_customization 可能是您最好的资源。
【讨论】:
有多种方法可以发现导出到 Lua 环境中的可调用 C 函数的名称。
但是是的。一个非常简单的方法是枚举源中写入的所有全局变量,然后枚举在 WoW 运行时暴露的全局变量 - 并获取差异,也许将结果限制为“函数”类型的全局变量
暴雪曾经有一段时间非正式地记录其 API,但一直“不受支持”
还有其他方法可以发现 API - 但它们涉及的操作可能违反 TOS。
【讨论】:
现在有一个 website 包含用于 wow 插件的 API。这对我帮助很大。
【讨论】: