关于WOW美服wow用什么插件插件使用问题。

[MOP5.4.1][MOP小玩意儿][来自美服的研究结果]解决5.4.1更新后插件被禁用问题
5.4.1新版本出来,暴雪改动了API,而且是未公布的改动结果(不是那个移除XX查询功能,叫你使用另外一个功能来顶替的)而是一个安全函数C_StorePublic.IsDisabledByParentalControls()被添加到UpdateMicroButtons()函数里所以当游戏帧数超过30的时候,UpdateMicroButtons() 里的 OnShow 和 OnHide 两个事件,如果被任何插件调用,就会对产生C_StorePublic.IsDisabledByParentalControls污染其结果导致IsDisabledByParentalControls()报错出现各种需要禁用插件XX的错误框,就算不报错,他也会提示你,有XX企图使用受保护功能,需要关闭XX,来重载并启用暴雪UI有兴趣可以到美服论坛参与研究讨论[url=http://us.battle.net/wow/en/forum/topic/]http://us.battle.net/wow/en/forum/topic/[/url][url=http://us.battle.net/wow/en/forum/topic/]http://us.battle.net/wow/en/forum/topic/[/url][b]听说5.4.2这个问题可能会得到缓解,因为5.4.2暴雪做了游戏商城很多新函数,所以有可能会把这个问题解决[/b]PS:不过很多整合插件作者使用的是下面修复方法再配合针对IsDisabledByParentalControls()报错框禁用代码进行组合式修复(国外作者的单一类型插件仅仅使用修复方法而已)[b]请尝试把所有插件更新最新版本(推荐到curse wowinterface wowace更新),如果最新版本(有些最新版本是5.4.1之前的)还是无法解决你的问题,再使用下面的临时解决办法或修复方法[/b][collapse=临时解决办法,但我不太推荐使用]在美服论坛收集的临时解决办法:[b]第一种临时解决办法[/b][quote][b]在任意的LUA后面加入这个[/b][code=lua] C_StorePublic.IsDisabledByParentalControls = function () return false end [/code][b]或者使用该宏[/b][code]/run C_StorePublic.IsDisabledByParentalControls = function () return false end [/code][b]这个原理是强制把这个安全函数关掉[/b]这个指向性的定义可以让你报错插件继续使用,但这个方法可能会导致无法换天赋和雕文无法换天赋和雕文,可以尝试使用[url=http://bbs.ngacn.cc/read.php?tid=5913859]!NoTaint[/url]解决PS:不是百分百一定能解决无法换天赋和雕文这个问题,不过我个人还是推荐使用第二种+修复方法,虽然修复方法有点高深,不适合小白使用。。。[/quote][b]第二种临时解决办法[/b][quote][b]在任意的LUA后面加入这个[/b][code=lua] UIParent:HookScript(&OnEvent&, function(s, e, a1, a2) if e:find(&ACTION_FORBIDDEN&) and ((a1 or &&)..(a2 or &&)):find(&IsDisabledByParentalControls&) then StaticPopup_Hide(e) end) [/code][b]或者使用该宏[/b][code]/run UIParent:HookScript(&OnEvent&, function(s, e, a1, a2) if e:find(&ACTION_FORBIDDEN&) and ((a1 or &&)..(a2 or &&)):find(&IsDisabledByParentalControls&) then StaticPopup_Hide(e) end) [/code]这个方法可以隐藏插件报错跳出来的错误框,不会影响换天赋,但可能会影响报错插件的使用[/quote][/collapse][b]这是国外目前使用的修复方法[/b]组合式修复其实就是[code=lua]setfenv(对应框架_OnShow, setmetatable({UpdateMicroButtons=function() end }, { __index = _G})) [/code][code=lua]setfenv(对应框架_OnHide, setmetatable({UpdateMicroButtons=function() end }, { __index = _G})) [/code]建议:使用整合插件,还外加配合针对IsDisabledByParentalControls()报错框进行隐藏[code=lua] UIParent:HookScript(&OnEvent&, function(s, e, a1, a2) if e:find(&ACTION_FORBIDDEN&) and ((a1 or &&)..(a2 or &&)):find(&IsDisabledByParentalControls&) then StaticPopup_Hide(e) end) [/code][collapse=这个已经没什么必要看了,如果还需借鉴,可以打开来看]下面可以直接拿走美服那位[@Rotule]给出解决办法[del]这个是给会写插件的人看的[/del][quote][b]世界地图框架[/b][code=lua]setfenv(WorldMapFrame_OnShow, setmetatable({UpdateMicroButtons=function() end }, { __index = _G})) [/code][b]宠物框架[/b][code=lua]setfenv(PetJournalParent_OnShow, setmetatable({UpdateMicroButtons=function()& &if (PetJournalParent and PetJournalParent:IsShown()) then& && &CompanionsMicroButton:Enable();& && &CompanionsMicroButton:SetButtonState(&PUSHED&, 1);& &endend }, { __index = _G})) [/code][b]成就框架[/b][code=lua]setfenv(AchievementFrame_OnShow, setmetatable({UpdateMicroButtons=function()& &if (AchievementFrame and AchievementFrame:IsShown()) then& && &AchievementMicroButton:SetButtonState(&PUSHED&, 1);& &endend }, { __index = _G})) [/code][/quote]美服那位[@Omegal][del]MVP—技术支持,碉堡了[/del]给出解决办法[del]这个同样也是给会写插件的人看的[/del][quote][b]好友框架[/b][code=lua]setfenv(FriendsFrame_OnShow, setmetatable({ UpdateMicroButtons = function() end }, { __index = _G }))[/code][b]这个跟第二种临时解决办法有点类似[/b][code=lua]local cantUseStore = C_StorePublic.IsDisabledByParentalControls()function UpdateMicroButtons()...... elseif ( cantUseStore ) then StoreMicroButton.disabledTooltip = BLIZZARD_STORE_ERROR_PARENTAL_CO***OLS; StoreMicroButton:Disable(); else StoreMicroButton.disabledTooltip = StoreMicroButton:Enable(); endend[/code][/quote]
针对一些其他框架报错的修复[quote][b]天赋框架[/b][del]不好意思,少弄了两个括号,感谢[@cnzyan]指出[/del][code=lua]setfenv(PlayerTalentFrame_OnShow, setmetatable({UpdateMicroButtons = function() end}, {__index = _G}))[/code][/quote][/collapse]最后,贴上我目前使用修复方法吧(提取自fishui后修改的)[code=lua]-- 5.4.1, fix IsDisabledByParentalControls taintlocal fixFrame = CreateFrame(&Frame&, UIParent, nil)fixFrame:RegisterEvent(&ADDON_LOADED&)fixFrame:SetScript(&OnEvent&, FixFrame_OnEvent)setfenv(FriendsFrame_OnShow, setmetatable({ UpdateMicroButtons = function() end }, { __index = _G }))setfenv(WorldMapFrame_OnShow, setmetatable({UpdateMicroButtons = function() end}, {__index = _G}))setfenv(PlayerTalentFrame_OnShow, setmetatable({UpdateMicroButtons = function() end}, {__index = _G}))function FixFrame_OnEvent(this, event, arg1)& &if event == &ADDON_LOADED& then& && && && &if (arg1 == &Blizzard_PetJournal&) then& && && &setfenv(PetJournalParent_OnShow, setmetatable({UpdateMicroButtons=function()& && && && &if (PetJournalParent and PetJournalParent:IsShown()) then& && && && && &CompanionsMicroButton:Enable();& && && && && &CompanionsMicroButton:SetButtonState(&PUSHED&, 1);& && && && &end& && && &end }, { __index = _G}))& && &elseif (arg1 == &Blizzard_AchievementUI&) then& && && && && &setfenv(AchievementFrame_OnShow, setmetatable({ UpdateMicroButtons = function() & && && && &if (AchievementFrame and AchievementFrame:IsShown()) then & && && && && &AchievementMicroButton:SetButtonState(&PUSHED&, 1); & && && && &end & && && &end }, { __index = _G}))& && &end& &endendUIParent:HookScript(&OnEvent&, function(s, e, a1, a2) if e:find(&ACTION_FORBIDDEN&) and ((a1 or &&)..(a2 or &&)):find(&IsDisabledByParentalControls&) then StaticPopup_Hide(e) end)[/code]
会改插件的还是改插件的好。。。这样一棒子打死总觉得别扭
[quote]这个方法有一个缺点:会导致换天赋不能 不过可以使用[!NoTaint]解决[/quote]貌似notaint 不能保证解决.
我就是其中一个. 本来用notaint 好好的, 只有几个其他插件5.41后报错, 用了这行文字, 都不让我洗掉天赋技能.
/script C_StorePublic.IsDisabledByParentalControls = function() end
[code]UIParent:HookScript(&OnEvent&, function(s, e, a1, a2) if e:find(&ACTION_FORBIDDEN&) and ((a1 or &&)..(a2 or &&)):find(&IsDisabledByParentalControls&) then StaticPopup_Hide(e) end)[/code]这行代码的作用是去掉错误提示框吗?
[b]Reply to [pid=53704,1]Reply[/pid] Post by 上帝也生病 ( 11:40)[/b]仅仅只是隐藏那个错误框跳出来的禁用影响暴雪UI的XX而已,不影响换天赋但可能导致报错插件还是无法使用第一个是通过指向性的定义过去,可以正常使用报错插件,但是会出现其他问题,比如:无法换天赋
[b]Reply to [pid=53704,1]Reply[/pid] Post by mgcheng ( 00:01)[/b]可以使用第二个,第二个是隐藏禁用UI的错误框,不影响换天赋,但是可能会影响报错插件使用
[b]Reply to [pid=53704,1]Reply[/pid] Post by y1236ao ( 11:56)[/b]我出这个报错后使用完全正常,就是一开大地图就出这个框框很烦
顺便问下第一行代码的原理是啥?
哪个插件出问题了换新版本去,这样总会出新问题
[quote][pid=53704,1]Reply[/pid] [b]Post by y1236ao ( 12:05):[/b]可以使用第二个,第二个是隐藏禁用UI的错误框,不影响换天赋,但是可能会影响报错插件使用[/quote]谢谢及时回复,晚上试一下第二个 ,嗯嗯。。friendsmenuxp 不能用真的有点麻烦,右键英雄榜,真的没有别的插件了吗?顺便问下~~
[b]Reply to [pid=53704,1]Reply[/pid] Post by talius ( 13:44)[/b]你去看下美服论坛和cuse插件下面的评论就知道了,有些插件作者都不知道咋回事,也报错,找不到解决办法
[b]Reply to [pid=53704,1]Reply[/pid] Post by mgcheng ( 14:31)[/b]试下这个,从其他的插件包扣出来的
楼主,你更新的那两段可以直接复制起作用吗
[b]Reply to [pid=53704,1]Reply[/pid] Post by zhylovesyz ( 13:43)[/b]建议不要两个一起使用,虽然他们目的是一样的,但是现实方法是完全不同的如果是单纯报错,但是插件还能正常使用,请使用第二个如果插件不仅报错,而且还不能使用,就用第一个
期待大大用[@Omegal] 提供的方法根治问题
[quote][pid=53704,1]Reply[/pid] [b]Post by y1236ao ( 13:49):[/b]建议不要两个一起使用,虽然他们目的是一样的,但是现实方法是完全不同的如果是单纯报错,但是插件还能正常使用,请使用第二个如果插件不仅报错,而且还不能使用,就用第一个[/quote]嗯,现在报错但是可以使用,直接复制那个第二个美国友人的代码在随便一个lua文件就可以了吧
[@Rotule]给出的代码不能直接复制使用吗
貌似根据楼主的方法,可以解决。感谢
[b]Reply to [pid=53704,1]Reply[/pid] Post by zhylovesyz ( 16:40)[/b]下面两个国外友人的解决方案,相当于notiant那样的(给写插件看他们是通过何种手段解决这个问题,当然直接插入有没有效果,我没去实验)一般情况只用使用国外友人上面那两种方案
[quote][pid=53704,1]Reply[/pid] [b]Post by 焚天翅膀 ( 20:52):[/b]貌似根据楼主的方法,可以解决。感谢[/quote]你用的哪个代码啊魔兽世界 美服的插件能不能在国服用?_百度知道后使用快捷导航没有帐号?
查看: 8091|回复: 9
新人欢迎积分1 阅读权限50积分2241精华2UID2967670帖子金钱7172 威望1
Lv.5, 积分 2241, 距离下一级还需 259 积分
UID2967670帖子威望1 多玩草810 草
最近发现玩美服的玩家不知道如何输入中文,直接下载美服客户端输入中文时看到的候选项全是??。我在这里做个简单的教程希望可以帮助大家解决输入中文的问题。
要在玩外服输入中文有2种方法:1让外服客户端支持中文显示(这个方法同时也可以用于更改字体);2 用中文魔兽客户端登陆外服服务器.
先从第一种说起,这种方法是让外文客户端支持中文显示(任务说明,物品,技能依然为外文)。上图~
1.首先在魔兽客户端目录下建立文件夹Fonts(大小要正确!)
00:41:02 上传
2.下载.ttf格式的中文字体库,(只能是.ttf),复制四份分别改名为ARIALN,MORPHEUS,SKURRI,FRIZQT__(大小写要注意)
00:45:10 上传
3.重启魔兽就好咧。
这4个文件对应不同的游戏内文本,比如战斗信息,任务说明和聊天对话框。如果想在不同的界面下显示不同字体,可以自行百度这些文件对应何种文本。还需要注意一点这样改后因为大部分中文字体不支持东欧字符(那种字母上面还带撇捺符号的)会导致整句话不能正常显示,可以去网上搜索多国字体。或者直接下载这个多国字体
第二种方法是将下载的外服客户端直接改为中文客户端(任务说明,物品,技能为中文),这种更改并不需要重新下载整个游戏客户端,而是游戏客户端会自动选择需要下载的字体和一些补丁(河蟹)。
1.打开游戏目录下wtf文件夹
2.用记事本打开config文件
3.将里面的SET textLocale &enUS& 改为 SET textLocale &zhCN&,保存退出就ok。如果觉得简体中文看的不习惯,可以改成&zhTW&为繁体。
如果通过以上方法还是无法正常显示中文,可以检查下自己的操作系统是不是英文的,如果是可以尝试更改系统的 system locale为中国。
本帖最后由 人形手办 于
13:44 编辑
新人欢迎积分1 阅读权限80积分15369精华1UID帖子金钱18163 威望0
Lv.8, 积分 15369, 距离下一级还需 4631 积分
UID帖子威望0 多玩草530 草
先顶下,再看
新人欢迎积分1 阅读权限80积分15369精华1UID帖子金钱18163 威望0
Lv.8, 积分 15369, 距离下一级还需 4631 积分
UID帖子威望0 多玩草530 草
回复可见可耻
新人欢迎积分1 阅读权限80积分15369精华1UID帖子金钱18163 威望0
Lv.8, 积分 15369, 距离下一级还需 4631 积分
UID帖子威望0 多玩草530 草
你漏了一条不上:
如果你的操作系统是英文windows,必须把system locale改成中文
:理论上要吧,毕竟这事关non-unix程序的默认语言。&
&不管哪种方法都需要改system locale么?&
一般说来,一个UFO降落以后,里面走出来个火星人我很惊奇,但是假如走出来个合肥人,我就惊奇的无以复加了。
德拉诺的德莱尼见到人类暗夜,固然惊奇,不过毕竟是外星人嘛,但是见到外星来的德莱尼,怎么还这么淡定?恩,应该这样:
维纶:大胆影月妖孽,竟敢假扮成我的族人!
Paladative:官人,奴家是如假包换的小蹄子啊
新人欢迎积分0 阅读权限30积分103精华0UID帖子金钱111 威望0
Lv.3, 积分 103, 距离下一级还需 147 积分
UID帖子威望0 多玩草0 草
大撒旦撒旦撒
新人欢迎积分1 阅读权限30积分63精华0UID帖子金钱283 威望0
Lv.3, 积分 63, 距离下一级还需 187 积分
UID帖子威望0 多玩草0 草
AFK多年,6.0回归,第一件事就是美化!
新人欢迎积分0 阅读权限1积分1精华0UID帖子金钱61 威望0
Lv.0, 积分 1, 距离下一级还需 4 积分
UID帖子威望0 多玩草0 草
一直想知道显示不全的哪些都是什么字体 只有东欧的嘛?
&好像是。。。都是斯拉夫语系的吧&
新人欢迎积分0 阅读权限10积分7精华0UID帖子金钱4 威望0
Lv.1, 积分 7, 距离下一级还需 8 积分
UID帖子威望0 多玩草0 草
字体还好 其他不行啊
新人欢迎积分0 阅读权限10积分10精华0UID帖子金钱6 威望0
Lv.1, 积分 10, 距离下一级还需 5 积分
UID帖子威望0 多玩草0 草
支持一下啊
新人欢迎积分0 阅读权限40积分515精华0UID帖子金钱785 威望0
Lv.4, 积分 515, 距离下一级还需 485 积分
UID帖子威望0 多玩草0 草
我是欧服客户端 把config文件字体改成中文后登入不了服务器了 显示客户端所显示的字体无法进入服务器& &这有办法解决么?
:好吧 那我自己研究下吧 谢谢了&
&我不清楚欧服下载客户端,不过你如果直接下的是西班牙版的,你改回enEU是不对的。西班牙的是esES,然后欧服英文版的是enGB,也不是enUS。&
&如果是西语服务器,我想textlocal也不是简单的enEU吧?西语服务器我真心没研究过。希望你在改config之前有备份这个文件。&
:不是 是西语服务器 之后我试着改回英语看看行不行
而且改完config后 进入游戏的画面和原版的不一样 让我有点感觉这被锁定到国服的样子&
&真心没碰到过。我玩的是美服,欧服你玩的是英文服务器么?还是其他语种服务器。如果改config不行那估计就没办法了。&
需要金钱:1100
Powered by
手机盒子客户端点击或扫描下载魔兽世界美服,用什么插件好?习惯了多玩,大脚也可以,可以用?_百度知道美服魔兽世界用什么插件,要中文插件_百度知道

参考资料

 

随机推荐