How to use Python to automatically modify WoW toc file version

魔兽世界(World of Warcraft)每次版本升级以后,在没有新版插件出来的时候,通常都需要手工修改插件目录中的toc文件,将其中的版本号修改为当前版本,否则在插件界面会显示“版本错误”而无法正常加载。如果有数十个插件,而又要一个一个手工修改的话,是很大的体力活。之前在Windows下的时候,会有人专门写一些程序,只为自动修改这些插件的版本号。 那么在Mac OS X下,如何修改呢?今天将台服的魔兽世界客户端从之前的4.2升级到4.3,于是顺手写了一段Python脚本,并没有什么灵活的设置,只是将插件目录下的所有toc文件遍历一遍,将其中的“Interface: 40200”字样替换成“Interface: 40300”,仅此而已。 1. 新建update_toc.py文件,用任意文本编辑器打开 2. 将以下内容复制到该文件中,保存 [code language=”python”]import tempfile import shutil import os import fnmatch #rootdir表示AddOns目录的绝对路径,可以根据不同的安装位置自行修改 rootdir=’/Applications/World of Warcraft/Interface/AddOns’ for root, dirs, files in os.walk(rootdir): for file in files: if fnmatch.fnmatch(file, ‘*.toc’): fullpath = os.path.join(root, file) #创建临时文件 fh, abs_path = tempfile.mkstemp() new_file = open(abs_path,’w’) old_file = open(fullpath) for line…

How to Set Power Auras Multiple Conditions in WoW

Power Auras插件是WoW中非常实用的插件,用自定义的图像自定义的方式,根据不同的触发条件在屏幕上显示提示信息,以醒目的方式提醒玩家做相应的操作。 先看一篇简单的POWA插件使用指南。 在中文版的任何文章中,都没有提到如何设定复合条件,比如对于术士来说,如果想设定“敌方目标存在献祭效果,并且自己的焚烧可用”情况下,提示使用焚烧技能。这一需求是因为焚烧雕文的出现,焚烧并不会吞蚀献祭的效果,而献祭的时长又长于焚烧的CD时间,因此在长期的战斗过程中,往往一次献祭之后可以多次焚烧,那么必须要有一个醒目的提示来让玩家及时使用焚烧。 1. 首先设置献祭的提示,设置敌方目标身上存在献祭的情况下,触发该特效。然后将此特效置为禁用(Shift+鼠标左键点击图标)。在鼠标提示上可以看到[7]的字样,这是该特效的ID,记住。 2. 再设置焚烧的提示,设置自己焚烧技能CD的时候,触发该特效。然后,就是最重要的部分,在“精确匹配名称”后面的输入框内,输入献祭特效的ID,在本例中就是7。这部分表示只有在特效7和自身条件同时满足的情况下,特效才会触发。这里可以写多个特效ID,也就是允许无限多的复合条件。 3. 如果再设置一个献祭在敌方目标身上不存在则触发的特效,就可以在战斗中实现下面的效果。 当献祭在对方目标身上不存在的时候,特效提示补献祭。 当献祭在对方目标身上存在,并且自己焚烧CD的时候,特效提示补焚烧。 不需要再紧盯着面板和技能条,享受POWA带来的战斗新感觉吧。

WoW TW Upgraded to Version 3.3

台服魔兽世界今天更新到3.3版本-王者的陨落,仅仅比美服晚2天。 为那些还在国服坚守的兄弟们默哀。