法师PVE进阶:如何用SIMC模拟来比较饰品的价值
2014-12-25 12:15:29 作者:lu2006530337 来源:NGA 浏览次数:0
摘要:PVE进阶:授人以鱼不如授人以渔——如何用SIMC模拟来比较饰品的价值。
3.制作饰品比较算法
现在,你的角色上两个饰品槽都是空的了,我们要做的就是把要比较的几个饰品一个萝卜一个坑地放进去然后跑运算比较他们的差异,然后找到最好的组合。
那么,我们来制作比较用的饰品列表,这时Python就派上用场了。
这是代码:
Code (c):
from itertools import combinations
# The base profile that denotes the name, other pieces of gear, spec, etc.
# You can also use your own character: source_profile = "armory=us,aerie-peak,komma"
source_profile = "Mage_Frost_T17H.simc"
# List of trinkets and how they will be displayed in the profile name
trinket_list = [ ("blackiron_micro_crucible,id=113984,bonus_id=567", "M-Crucible"),
("blackiron_micro_crucible,id=113984,bonus_id=566", "HC-Crucible"),
("quiescent_runestone,id=113859,bonus_id=567", "M-Runestone"),
("quiescent_runestone,id=113859,bonus_id=566", "HC-Runestone"),
("goren_soul_repository,id=119194,bonus_id=567", "M-Repository"),
("goren_soul_repository,id=119194,bonus_id=566", "HC-Repository"),
("darmacs_unstable_talisman,id=113948,bonus_id=567", "M-talisman"),
("darmacs_unstable_talisman,id=113948,bonus_id=566", "HC-talisman"),
("sandmans_pouch,id=112320,bonus_id=527", "DMFTrinketStage3"),
("copelands_clarity,id=118878", "CClarity"),
("shards_of_nothing,id=113835,bonus_id=567", "M-Shards"),
("shards_of_nothing,id=113835,bonus_id=566", "HC-Shards"),
("everburning_candle,id=118880", "EverburningCandle") ]
profile = source_profile + " "
profile += "default_actions=1 "
profile += " ".join( " ".join([ "copy=" + combo[0][1] + "_" + combo[1][1],
"trinket1=" + combo[0][0],
"trinket2=" + combo[1][0] ])
for combo in combinations(trinket_list, 2)
if combo[0][0].partition(",")[2] != combo[1][0].partition(",")[2] )
print(profile)
代码里,source_profile等号后面请改成上面保存的那个ooxx.simc,trinket_list等号后面的内容就是你要比较的饰品列表,这里列了一些,其他的物品ID和英文名称从Wowhead里查,请参照例子的语法自行修改
传送门:[http://www.wowhead.com/items=4.-4]。
请注意,列表长短和模拟循环次数直接影响计算时间长短,像例子给出这个列表我的i7笔记本七线程也跑了近5个小时。
把这段代码保存到engine下的一个新文本文档里,然后把名字改成ooxx.py
接下来,打开你的cmd.exe,输入python trinkets.py > trinket_comparison.simc,然后就会生成一个trinket_comparison.simc的文件
这个文件内容大致是这样 ...
Code (c):
angrybirds.simc
default_actions=1
copy=M-Crucible_HC-Crucible
trinket1=blackiron_micro_crucible,id=113984,bonus_id=567
trinket2=blackiron_micro_crucible,id=113984,bonus_id=566
copy=M-Crucible_M-Runestone
trinket1=blackiron_micro_crucible,id=113984,bonus_id=567
trinket2=quiescent_runestone,id=113859,bonus_id=567
copy=M-Crucible_HC-Runestone
trinket1=blackiron_micro_crucible,id=113984,bonus_id=567
trinket2=quiescent_runestone,id=113859,bonus_id=566
copy=M-Crucible_M-Repository
trinket1=blackiron_micro_crucible,id=113984,bonus_id=567
trinket2=goren_soul_repository,id=119194,bonus_id=567
copy=M-Crucible_HC-Repository
trinket1=blackiron_micro_crucible,id=113984,bonus_id=567
trinket2=goren_soul_repository,id=119194,bonus_id=566
copy=M-Crucible_M-talisman
trinket1=blackiron_micro_crucible,id=113984,bonus_id=567
trinket2=darmacs_unstable_talisman,id=113948,bonus_id=567
copy=M-Crucible_HC-talisman
trinket1=blackiron_micro_crucible,id=113984,bonus_id=567
trinket2=darmacs_unstable_talisman,id=113948,bonus_id=566
copy=M-Crucible_DMFTrinketStage3
trinket1=blackiron_micro_crucible,id=113984,bonus_id=567
trinket2=sandmans_pouch,id=112320,bonus_id=527
copy=M-Crucible_CClarity
trinket1=blackiron_micro_crucible,id=113984,bonus_id=567
trinket2=copelands_clarity,id=118878
copy=M-Crucible_M-Shards
trinket1=blackiron_micro_crucible,id=113984,bonus_id=567
trinket2=shards_of_nothing,id=113835,bonus_id=567
copy=M-Crucible_HC-Shards
trinket1=blackiron_micro_crucible,id=113984,bonus_id=567
trinket2=shards_of_nothing,id=113835,bonus_id=566
copy=M-Crucible_EverburningCandle
trinket1=blackiron_micro_crucible,id=113984,bonus_id=567
trinket2=everburning_candle,id=118880
copy=HC-Crucible_M-Runestone
trinket1=blackiron_micro_crucible,id=113984,bonus_id=566
trinket2=quiescent_runestone,id=113859,bonus_id=567
copy=HC-Crucible_HC-Runestone
trinket1=blackiron_micro_crucible,id=113984,bonus_id=566
trinket2=quiescent_runestone,id=113859,bonus_id=566
copy=HC-Crucible_M-Repository
trinket1=blackiron_micro_crucible,id=113984,bonus_id=566
trinket2=goren_soul_repository,id=119194,bonus_id=567
copy=HC-Crucible_HC-Repository
trinket1=blackiron_micro_crucible,id=113984,bonus_id=566
trinket2=goren_soul_repository,id=119194,bonus_id=566
copy=HC-Crucible_M-talisman
trinket1=blackiron_micro_crucible,id=113984,bonus_id=566
trinket2=darmacs_unstable_talisman,id=113948,bonus_id=567
copy=HC-Crucible_HC-talisman
trinket1=blackiron_micro_crucible,id=113984,bonus_id=566
trinket2=darmacs_unstable_talisman,id=113948,bonus_id=566
copy=HC-Crucible_DMFTrinketStage3
trinket1=blackiron_micro_crucible,id=113984,bonus_id=566
trinket2=sandmans_pouch,id=112320,bonus_id=527
copy=HC-Crucible_CClarity
trinket1=blackiron_micro_crucible,id=113984,bonus_id=566
trinket2=copelands_clarity,id=118878
copy=HC-Crucible_M-Shards
trinket1=blackiron_micro_crucible,id=113984,bonus_id=566
trinket2=shards_of_nothing,id=113835,bonus_id=567
copy=HC-Crucible_HC-Shards
trinket1=blackiron_micro_crucible,id=113984,bonus_id=566
trinket2=shards_of_nothing,id=113835,bonus_id=566
copy=HC-Crucible_EverburningCandle
trinket1=blackiron_micro_crucible,id=113984,bonus_id=566
trinket2=everburning_candle,id=118880
copy=M-Runestone_HC-Runestone
trinket1=quiescent_runestone,id=113859,bonus_id=567
trinket2=quiescent_runestone,id=113859,bonus_id=566
copy=M-Runestone_M-Repository
trinket1=quiescent_runestone,id=113859,bonus_id=567
trinket2=goren_soul_repository,id=119194,bonus_id=567
copy=M-Runestone_HC-Repository
trinket1=quiescent_runestone,id=113859,bonus_id=567
trinket2=goren_soul_repository,id=119194,bonus_id=566
copy=M-Runestone_M-talisman
trinket1=quiescent_runestone,id=113859,bonus_id=567
trinket2=darmacs_unstable_talisman,id=113948,bonus_id=567
copy=M-Runestone_HC-talisman
trinket1=quiescent_runestone,id=113859,bonus_id=567
trinket2=darmacs_unstable_talisman,id=113948,bonus_id=566
copy=M-Runestone_DMFTrinketStage3
trinket1=quiescent_runestone,id=113859,bonus_id=567
trinket2=sandmans_pouch,id=112320,bonus_id=527
copy=M-Runestone_CClarity
trinket1=quiescent_runestone,id=113859,bonus_id=567
trinket2=copelands_clarity,id=118878
copy=M-Runestone_M-Shards
trinket1=quiescent_runestone,id=113859,bonus_id=567
trinket2=shards_of_nothing,id=113835,bonus_id=567
copy=M-Runestone_HC-Shards
trinket1=quiescent_runestone,id=113859,bonus_id=567
trinket2=shards_of_nothing,id=113835,bonus_id=566
copy=M-Runestone_EverburningCandle
trinket1=quiescent_runestone,id=113859,bonus_id=567
trinket2=everburning_candle,id=118880
copy=HC-Runestone_M-Repository
trinket1=quiescent_runestone,id=113859,bonus_id=566
trinket2=goren_soul_repository,id=119194,bonus_id=567
copy=HC-Runestone_HC-Repository
trinket1=quiescent_runestone,id=113859,bonus_id=566
trinket2=goren_soul_repository,id=119194,bonus_id=566
copy=HC-Runestone_M-talisman
trinket1=quiescent_runestone,id=113859,bonus_id=566
trinket2=darmacs_unstable_talisman,id=113948,bonus_id=567
copy=HC-Runestone_HC-talisman
trinket1=quiescent_runestone,id=113859,bonus_id=566
trinket2=darmacs_unstable_talisman,id=113948,bonus_id=566
copy=HC-Runestone_DMFTrinketStage3
trinket1=quiescent_runestone,id=113859,bonus_id=566
trinket2=sandmans_pouch,id=112320,bonus_id=527
copy=HC-Runestone_CClarity
trinket1=quiescent_runestone,id=113859,bonus_id=566
trinket2=copelands_clarity,id=118878
copy=HC-Runestone_M-Shards
trinket1=quiescent_runestone,id=113859,bonus_id=566
trinket2=shards_of_nothing,id=113835,bonus_id=567
copy=HC-Runestone_HC-Shards
trinket1=quiescent_runestone,id=113859,bonus_id=566
trinket2=shards_of_nothing,id=113835,bonus_id=566
copy=HC-Runestone_EverburningCandle
trinket1=quiescent_runestone,id=113859,bonus_id=566
trinket2=everburning_candle,id=118880
copy=M-Repository_HC-Repository
trinket1=goren_soul_repository,id=119194,bonus_id=567
trinket2=goren_soul_repository,id=119194,bonus_id=566
copy=M-Repository_M-talisman
trinket1=goren_soul_repository,id=119194,bonus_id=567
trinket2=darmacs_unstable_talisman,id=113948,bonus_id=567
copy=M-Repository_HC-talisman
trinket1=goren_soul_repository,id=119194,bonus_id=567
trinket2=darmacs_unstable_talisman,id=113948,bonus_id=566
copy=M-Repository_DMFTrinketStage3
trinket1=goren_soul_repository,id=119194,bonus_id=567
trinket2=sandmans_pouch,id=112320,bonus_id=527
copy=M-Repository_CClarity
trinket1=goren_soul_repository,id=119194,bonus_id=567
trinket2=copelands_clarity,id=118878
copy=M-Repository_M-Shards
trinket1=goren_soul_repository,id=119194,bonus_id=567
trinket2=shards_of_nothing,id=113835,bonus_id=567
copy=M-Repository_HC-Shards
trinket1=goren_soul_repository,id=119194,bonus_id=567
trinket2=shards_of_nothing,id=113835,bonus_id=566
copy=M-Repository_EverburningCandle
trinket1=goren_soul_repository,id=119194,bonus_id=567
trinket2=everburning_candle,id=118880
copy=HC-Repository_M-talisman
trinket1=goren_soul_repository,id=119194,bonus_id=566
trinket2=darmacs_unstable_talisman,id=113948,bonus_id=567
copy=HC-Repository_HC-talisman
trinket1=goren_soul_repository,id=119194,bonus_id=566
trinket2=darmacs_unstable_talisman,id=113948,bonus_id=566
copy=HC-Repository_DMFTrinketStage3
trinket1=goren_soul_repository,id=119194,bonus_id=566
trinket2=sandmans_pouch,id=112320,bonus_id=527
copy=HC-Repository_CClarity
trinket1=goren_soul_repository,id=119194,bonus_id=566
trinket2=copelands_clarity,id=118878
copy=HC-Repository_M-Shards
trinket1=goren_soul_repository,id=119194,bonus_id=566
trinket2=shards_of_nothing,id=113835,bonus_id=567
copy=HC-Repository_HC-Shards
trinket1=goren_soul_repository,id=119194,bonus_id=566
trinket2=shards_of_nothing,id=113835,bonus_id=566
copy=HC-Repository_EverburningCandle
trinket1=goren_soul_repository,id=119194,bonus_id=566
trinket2=everburning_candle,id=118880
copy=M-talisman_HC-talisman
trinket1=darmacs_unstable_talisman,id=113948,bonus_id=567
trinket2=darmacs_unstable_talisman,id=113948,bonus_id=566
copy=M-talisman_DMFTrinketStage3
trinket1=darmacs_unstable_talisman,id=113948,bonus_id=567
trinket2=sandmans_pouch,id=112320,bonus_id=527
copy=M-talisman_CClarity
trinket1=darmacs_unstable_talisman,id=113948,bonus_id=567
trinket2=copelands_clarity,id=118878
copy=M-talisman_M-Shards
trinket1=darmacs_unstable_talisman,id=113948,bonus_id=567
trinket2=shards_of_nothing,id=113835,bonus_id=567
copy=M-talisman_HC-Shards
trinket1=darmacs_unstable_talisman,id=113948,bonus_id=567
trinket2=shards_of_nothing,id=113835,bonus_id=566
copy=M-talisman_EverburningCandle
trinket1=darmacs_unstable_talisman,id=113948,bonus_id=567
trinket2=everburning_candle,id=118880
copy=HC-talisman_DMFTrinketStage3
trinket1=darmacs_unstable_talisman,id=113948,bonus_id=566
trinket2=sandmans_pouch,id=112320,bonus_id=527
copy=HC-talisman_CClarity
trinket1=darmacs_unstable_talisman,id=113948,bonus_id=566
trinket2=copelands_clarity,id=118878
copy=HC-talisman_M-Shards
trinket1=darmacs_unstable_talisman,id=113948,bonus_id=566
trinket2=shards_of_nothing,id=113835,bonus_id=567
copy=HC-talisman_HC-Shards
trinket1=darmacs_unstable_talisman,id=113948,bonus_id=566
trinket2=shards_of_nothing,id=113835,bonus_id=566
copy=HC-talisman_EverburningCandle
trinket1=darmacs_unstable_talisman,id=113948,bonus_id=566
trinket2=everburning_candle,id=118880
copy=DMFTrinketStage3_CClarity
trinket1=sandmans_pouch,id=112320,bonus_id=527
trinket2=copelands_clarity,id=118878
copy=DMFTrinketStage3_M-Shards
trinket1=sandmans_pouch,id=112320,bonus_id=527
trinket2=shards_of_nothing,id=113835,bonus_id=567
copy=DMFTrinketStage3_HC-Shards
trinket1=sandmans_pouch,id=112320,bonus_id=527
trinket2=shards_of_nothing,id=113835,bonus_id=566
copy=DMFTrinketStage3_EverburningCandle
trinket1=sandmans_pouch,id=112320,bonus_id=527
trinket2=everburning_candle,id=118880
copy=CClarity_M-Shards
trinket1=copelands_clarity,id=118878
trinket2=shards_of_nothing,id=113835,bonus_id=567
copy=CClarity_HC-Shards
trinket1=copelands_clarity,id=118878
trinket2=shards_of_nothing,id=113835,bonus_id=566
copy=CClarity_EverburningCandle
trinket1=copelands_clarity,id=118878
trinket2=everburning_candle,id=118880
copy=M-Shards_HC-Shards
trinket1=shards_of_nothing,id=113835,bonus_id=567
trinket2=shards_of_nothing,id=113835,bonus_id=566
copy=M-Shards_EverburningCandle
trinket1=shards_of_nothing,id=113835,bonus_id=567
trinket2=everburning_candle,id=118880
copy=HC-Shards_EverburningCandle
trinket1=shards_of_nothing,id=113835,bonus_id=566
trinket2=everburning_candle,id=118880
4.开动你的机器吧!
把这个*.simc拖到simc.exe上,让他跑吧!
时间一般来说都会很长,完事之后去找到你的ooxx.html就能找到你的饰品比较表了
相关报道: