С выходом обновления 9.2 в игру были добавлены
новые задания для соратников, а, следовательно, VenturePlan, не будет рассчитывать их как надо, если не добавить их новые способности в таблицу аддона. Вот перечень этих способностей. :cut:Полная работоспособность не гарантирована так как необходимо проверять.
Добавить следующие строки в файл
vs-spells.lua в папке аддона:
-- 9.2
[350] = {type="nuke", target="cleave", damageATK=25},
[351] = {type="nuke", target=1, damageATK=75, firstTurn=4},
--[352] = {type="aura", target=4, modDamageTakenATK=-30, duration=2}, -- atk ???
[353] = {type="aura", target=1, duration=0, modDamageDealt=-20},
[354] = {type="nuke", target="enemy-front", firstTurn=5, damageATK=400},
[355] = {type="aura", target=1, duration=0, modDamageDealt=-25},
[356] = {type="nuke", target=1, damageATK=200},
[357] = {type="aura", target=0, duration=0, modDamageDealt=-50},
[358] = {type="nuke", target="enemy-front", firstTurn=5, damageATK=400},
[359] = {type="aura", target=1, duration=3, noFirstTick=false, damageATK=50}, -- ??
[360] = {type="nuke", target="enemy-front", damageATK=50},
[361] = {type="nuke", target="enemy-front", damageATK=75},
[362] = {type="nuke", target=1, damageATK=120},
[363] = {type="aura", target="friend-front-soft", duration=1, modDamageDealt=10}, --???
[364] = {type="taunt", target="all-enemies", duration=2},
[365] = {type="aura", target=0, duration=1, modDamageTaken=50},
[366] = {type="nuke", target="enemy-front", damageATK=50},
[367] = {type="nuke", target="cone", damageATK=75},
[368] = {type="nuke", target=1, damageATK=60},
[369] = {type="nuke", target="all-enemies", duration=2, damageATK=100}, -- ??
[370] = {type="aura", target="all-enemies", duration=2, modDamageDealt=-75},
[371] = {type="aura", target=1, duration=3, damageATK=100}, -- ??
[372] = {type="nuke", target=1, damageATK=150},
[373] = {type="nuke", target=1, damageATK=100, selfhealATK=100},
[374] = {type="nuke", target=1, damageATK=100, selfhealATK=40},
[375] = {type="aura", target="all-enemies", duration=2, modDamageDealt=-20},
Так же в аддоне есть механизм для определения вида автоатаки: 11 – ближняя и 15 – дальняя. Автоатаки определяются по роли 1 – ближний бой, 5 – танк это 11, а 2,3,4 это 15, но есть исключения и их нужно прописать. Для "рабов" определяем по первому заклинанию, а для "вражин" по идентификатору миссии и положению на доске.
Поскольку понять код аддона довольно сложно, мне пришлось немного переделать этот механизм. Вот сам код. Его нужно вставить в файл
vs.lua вместо функции VS:GetAutoAttack целиком:
local M, R = 11, 15;
local enemies = {
-- [boardIndex] = {[missionId]=R (range spell id)}
[05] = { [2172]=M,[2176]=M,[2196]=M,[2207]=M,[2209]=M,[2202]=M,[2214]=M,[2312]=M,[2304]=M },
[06] = { [2304]=M,[2305]=M,[2311]=M,[2314]=M,[2315]=M,[2316]=M,[2317]=M,[2260]=M,[2209]=M,[2213]=M,[2176]=M,[2196]=M,[2207]=M,[2169]=M },
[07] = { [2169]=M,[2172]=M,[2176]=M,[2196]=M,[2209]=M,[2207]=M,[2260]=M,[2305]=M,[2304]=M },
[08] = { [2305]=M,[2304]=M,[2214]=M,[2207]=M,[2209]=M,[2196]=M,[2176]=M,[2172]=M },
[09] = { [2204]=M,[2208]=M,[2239]=M,[2212]=M,[2252]=M,[2293]=M,[2298]=M,[2313]=M,[2259]=M,[2301]=M,[2307]=M,[2304]=M,[2303]=M },
[10] = { [2304]=M,[2307]=M,[2303]=M,[2298]=M,[2252]=M,[2239]=M,[2243]=M,[2212]=M,[2201]=M,[2238]=M,[2241]=M,[2205]=M,[2169]=M },
[11] = { [2169]=M,[2172]=M,[2209]=M,[2208]=M,[2205]=M,[2214]=M,[2224]=M,[2239]=M,[2259]=M,[2303]=M,[2287]=M,[2279]=M,[2252]=M,[2307]=M,[2304]=M },
[12] = { [2304]=M,[2307]=M,[2298]=M,[2293]=M,[2303]=M,[2313]=M,[2252]=M,[2212]=M,[2239]=M,[2215]=M,[2204]=M,[2208]=M },
};
-- [FirstSpellID] = R (range spell id)
local followers = { [14]=M, [45]=M, [85]=M, [194]=M, [303]=M, [306]=M, [309]=M, [314]=M, [325]=M };
function VS:GetAutoAttack(role, boardIndex, missionId, firstSpell)
local attackSpellId = (role == 1 or role == 5) and M or R;
if (boardIndex or 0) > 4 and missionId then
attackSpellId = enemies[boardIndex] and enemies[boardIndex][missionId] or attackSpellId;
elseif firstSpell then
attackSpellId = followers[firstSpell] or attackSpellId;
end
return attackSpellId;
end
Таким образом мы игнорируем ранее используемую таблицу overrideAA и вместо нее используем свои 2 для союзников и врагов раздельно.
Я не особо подробно все расписал, поэтому если что обсуждаем в комментариях.
Скачать обновленную версию можно
здесь.