Skip to content

Commit b0da34b

Browse files
LocalIdentityLocalIdentity
andauthored
Add new 0.5 Minions (#2084)
* Azmerian Swarm * Azmerian Wolf * Wild Protector * Wardbound --------- Co-authored-by: LocalIdentity <localidentity2@gmail.com>
1 parent a8b37d9 commit b0da34b

10 files changed

Lines changed: 647 additions & 8 deletions

File tree

src/Classes/ConfigTab.lua

Lines changed: 11 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -443,11 +443,18 @@ local ConfigTabClass = newClass("ConfigTab", "UndoHandler", "ControlHost", "Cont
443443
end
444444
if varData.ifFlag then
445445
t_insert(shownFuncs, listOrSingleIfOption(varData.ifFlag, function(ifOption)
446-
local skillModList = self.build.calcsTab.mainEnv.player.mainSkill.skillModList
447-
-- only checking flags of skill in main env. rework may be required
448-
local skillFlags = self.build.calcsTab.mainEnv.player.mainSkill.activeEffect.statSet.skillFlags
446+
local mainEnv = self.build.calcsTab.mainEnv
447+
local skillModList = mainEnv.player.mainSkill.skillModList
448+
local skillFlags = mainEnv.player.mainSkill.activeEffect.statSet.skillFlags
449449
-- Check both the skill mods for flags and flags that are set via calcPerform
450-
return skillFlags[ifOption] or skillModList:Flag(nil, ifOption)
450+
if skillFlags[ifOption] or skillModList:Flag(nil, ifOption) then
451+
return true
452+
end
453+
if mainEnv.minion then
454+
skillModList = mainEnv.minion.mainSkill.skillModList
455+
skillFlags = mainEnv.minion.mainSkill.activeEffect.statSet.skillFlags
456+
return skillFlags[ifOption] or skillModList:Flag(nil, ifOption)
457+
end
451458
end))
452459
end
453460
if varData.ifMod then

src/Data/Minions.lua

Lines changed: 171 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1063,3 +1063,174 @@ minions["MistRaven"] = {
10631063
-- set_skill_can_be_active_blocked_from_all_directions [set_skill_can_be_active_blocked_from_all_directions = 1]
10641064
},
10651065
}
1066+
1067+
minions["AzmerianSwarm"] = {
1068+
name = "[DNT] Azmerian Wisp Swarm",
1069+
monsterTags = { "beast", "Unarmed_onhit_audio", "very_fast_movement", },
1070+
life = 0.7,
1071+
baseDamageIgnoresAttackSpeed = true,
1072+
fireResist = 0,
1073+
coldResist = 0,
1074+
lightningResist = 0,
1075+
chaosResist = 0,
1076+
damage = 0.84,
1077+
damageSpread = 0.3,
1078+
attackTime = 1,
1079+
attackRange = 1,
1080+
accuracy = 1,
1081+
weaponType1 = "None",
1082+
weaponType2 = "None",
1083+
limit = "AzmerianSwarmLimit",
1084+
baseMovementSpeed = 60,
1085+
spectreReservation = 50,
1086+
companionReservation = 30,
1087+
monsterCategory = "Beast",
1088+
spawnLocation = {
1089+
},
1090+
skillList = {
1091+
"AzmerianSwarmAttack",
1092+
},
1093+
modList = {
1094+
-- set_item_drop_slots [set_item_drop_slots = 0]
1095+
-- set_action_attack_or_cast_time_uses_animation_length [set_action_attack_or_cast_time_uses_animation_length = 0]
1096+
mod("CurseImmune", "FLAG", 1, 0, 0), -- immune_to_curses [immune_to_curses = 1]
1097+
-- immune_to_auras_from_other_entities [immune_to_auras_from_other_entities = 1]
1098+
-- set_item_drop_slots [set_item_drop_slots = 0]
1099+
-- mana_regeneration_rate_per_minute_% [mana_regeneration_rate_per_minute_% = 100]
1100+
-- base_maximum_mana [base_maximum_mana = 100000]
1101+
-- set_monster_no_drops_or_experience [set_monster_no_drops_or_experience = 1]
1102+
-- set_monster_do_not_fracture [set_monster_do_not_fracture = 1]
1103+
mod("FrenzyChargesMax", "OVERRIDE", 0, 0, 0), -- set_max_frenzy_charges [set_max_frenzy_charges = 0]
1104+
mod("EnduranceChargesMax", "OVERRIDE", 0, 0, 0), -- set_max_endurance_charges [set_max_endurance_charges = 0]
1105+
mod("PowerChargesMax", "OVERRIDE", 0, 0, 0), -- set_max_power_charges [set_max_power_charges = 0]
1106+
mod("HiddenMonster", "FLAG", 1, 0, 0), -- is_hidden_monster [is_hidden_monster = 1]
1107+
mod("Condition:CannotBeDamaged", "FLAG", 1, 0, 0), -- base_cannot_be_damaged [base_cannot_be_damaged = 1]
1108+
mod("StunImmune", "FLAG", 1, 0, 0), -- base_cannot_be_stunned [base_cannot_be_stunned = 1]
1109+
mod("KnockbackImmune", "FLAG", 1, 0, 0), -- cannot_be_knocked_back [cannot_be_knocked_back = 1]
1110+
mod("FreezeImmune", "FLAG", 1, 0, 0), -- base_cannot_be_frozen [base_cannot_be_frozen = 1]
1111+
mod("Life", "OVERRIDE", 1, 0, 0), -- base_maximum_life_is_one [base_maximum_life_is_one = 1]
1112+
},
1113+
}
1114+
1115+
minions["AzmerianWolf"] = {
1116+
name = "Azmerian Wolf",
1117+
monsterTags = { "1HSword_onhit_audio", "beast", "mammal_beast", "medium_movement", "not_int", "not_str", "red_blood", },
1118+
life = 2.7,
1119+
baseDamageIgnoresAttackSpeed = true,
1120+
evasion = 0.3,
1121+
fireResist = 0,
1122+
coldResist = 0,
1123+
lightningResist = 0,
1124+
chaosResist = 0,
1125+
damage = 2.43,
1126+
damageSpread = 0.2,
1127+
attackTime = 1,
1128+
attackRange = 18,
1129+
accuracy = 1,
1130+
weaponType1 = "None",
1131+
weaponType2 = "None",
1132+
baseMovementSpeed = 36,
1133+
spectreReservation = 105,
1134+
companionReservation = 49.2,
1135+
monsterCategory = "Beast",
1136+
spawnLocation = {
1137+
},
1138+
skillList = {
1139+
"MeleeAtAnimationSpeedWolfPackleader",
1140+
"WolfPackleaderDashAttack",
1141+
"WolfPackleaderLungeBite",
1142+
"GTPackleaderGreatHuntDash",
1143+
"TBPackleaderGreatHuntDash",
1144+
"GAPackleaderGreatHuntDash",
1145+
"GreatHuntPackleaderMinion",
1146+
"EGPackleaderPrimalInspiration",
1147+
},
1148+
modList = {
1149+
-- MonsterNoDropsOrExperience [monster_no_drops_or_experience = 1]
1150+
-- set_item_drop_slots [set_item_drop_slots = 0]
1151+
-- set_action_attack_or_cast_time_uses_animation_length [set_action_attack_or_cast_time_uses_animation_length = 0]
1152+
mod("StunDuration", "OVERRIDE", 2, 0, 0), -- set_base_heavy_stun_duration_ms [set_base_heavy_stun_duration_ms = 2000]
1153+
-- has_quadruped_head_control_while_turning [has_quadruped_head_control_while_turning = 1]
1154+
-- quadruped_head_turn_duration_ms [quadruped_head_turn_duration_ms = 200]
1155+
},
1156+
}
1157+
1158+
minions["BearCompanion"] = {
1159+
name = "Wild Bear Spirit",
1160+
monsterTags = { "beast", "Claw_onhit_audio", "mammal_beast", "medium_movement", "not_dex", "not_int", "red_blood", },
1161+
life = 1.5,
1162+
baseDamageIgnoresAttackSpeed = true,
1163+
armour = 1,
1164+
fireResist = 0,
1165+
coldResist = 0,
1166+
lightningResist = 0,
1167+
chaosResist = 0,
1168+
damage = 4.5,
1169+
damageSpread = 0.2,
1170+
attackTime = 0.8,
1171+
attackRange = 20,
1172+
accuracy = 1,
1173+
baseMovementSpeed = 37,
1174+
spectreReservation = 67,
1175+
companionReservation = 36.6,
1176+
monsterCategory = "Beast",
1177+
spawnLocation = {
1178+
},
1179+
skillList = {
1180+
"CompanionBearMaul",
1181+
"CompanionBearSlam",
1182+
"CompanionBearWarcry",
1183+
"CompanionBearLeap",
1184+
"CompanionBearLeapImpact",
1185+
"CompanionBearLeapImpact2",
1186+
},
1187+
modList = {
1188+
-- MonsterNoDropsOrExperience [monster_no_drops_or_experience = 1]
1189+
-- MonsterIgnoreActorScaleFromStats [ignore_actor_scale_from_stats = 1]
1190+
-- set_item_drop_slots [set_item_drop_slots = 0]
1191+
-- set_action_attack_or_cast_time_uses_animation_length [set_action_attack_or_cast_time_uses_animation_length = 0]
1192+
-- is_bear_companion [is_bear_companion = 1]
1193+
-- no_blood_on_death [no_blood_on_death = 1]
1194+
-- override_turn_duration_ms [override_turn_duration_ms = 600]
1195+
-- has_quadruped_head_control_while_turning [has_quadruped_head_control_while_turning = 1]
1196+
-- quadruped_head_turn_duration_ms [quadruped_head_turn_duration_ms = 200]
1197+
-- base_presence_radius [base_presence_radius = 40]
1198+
mod("DamageTaken", "INC", -50, 0, 0), -- set_base_damage_taken_+% [set_base_damage_taken_+% = -50]
1199+
},
1200+
}
1201+
1202+
minions["Wardbound"] = {
1203+
name = "Wardbound Caster",
1204+
monsterTags = { "fast_movement", "humanoid", "not_str", "red_blood", "Unarmed_onhit_audio", },
1205+
life = 1,
1206+
baseDamageIgnoresAttackSpeed = true,
1207+
energyShield = 0.15,
1208+
evasion = 0.25,
1209+
fireResist = 0,
1210+
coldResist = 0,
1211+
lightningResist = 0,
1212+
chaosResist = 0,
1213+
damage = 1,
1214+
damageSpread = 0.2,
1215+
attackTime = 1,
1216+
attackRange = 14,
1217+
accuracy = 1,
1218+
limit = "WardboundLimit",
1219+
baseMovementSpeed = 41,
1220+
spectreReservation = 50,
1221+
companionReservation = 30,
1222+
monsterCategory = "Humanoid",
1223+
spawnLocation = {
1224+
},
1225+
skillList = {
1226+
"GSWardboundMinionBlast",
1227+
},
1228+
modList = {
1229+
-- set_item_drop_slots [set_item_drop_slots = 0]
1230+
-- set_action_attack_or_cast_time_uses_animation_length [set_action_attack_or_cast_time_uses_animation_length = 0]
1231+
-- set_item_drop_slots [set_item_drop_slots = 0]
1232+
-- set_monster_no_drops_or_experience [set_monster_no_drops_or_experience = 1]
1233+
-- set_monster_do_not_fracture [set_monster_do_not_fracture = 1]
1234+
-- set_minion_cannot_be_directed [set_minion_cannot_be_directed = 1]
1235+
},
1236+
}

src/Data/SkillStatMap.lua

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2509,6 +2509,13 @@ return {
25092509
["companions_are_gigantic"] = {
25102510
mod("MinionModifier", "LIST", { mod = flag("Gigantic") }),
25112511
},
2512+
["minion_damage_+%_final_per_different_elemental_ailment_on_target"] = {
2513+
mod("MinionModifier", "LIST", { mod = mod("Damage", "MORE", nil, 0, 0, { type = "ActorCondition", actor = "enemy", var = "Electrocuted" }) }),
2514+
mod("MinionModifier", "LIST", { mod = mod("Damage", "MORE", nil, 0, 0, { type = "ActorCondition", actor = "enemy", var = "Frozen" }) }),
2515+
mod("MinionModifier", "LIST", { mod = mod("Damage", "MORE", nil, 0, 0, { type = "ActorCondition", actor = "enemy", var = "Chilled" }) }),
2516+
mod("MinionModifier", "LIST", { mod = mod("Damage", "MORE", nil, 0, 0, { type = "ActorCondition", actor = "enemy", var = "Ignited" }) }),
2517+
mod("MinionModifier", "LIST", { mod = mod("Damage", "MORE", nil, 0, 0, { type = "ActorCondition", actor = "enemy", var = "Shocked" }) }),
2518+
},
25122519
["base_number_of_zombies_allowed"] = {
25132520
mod("ActiveZombieLimit", "BASE", nil),
25142521
},
@@ -2557,6 +2564,12 @@ return {
25572564
["maximum_corpse_beetles_allowed"] = {
25582565
mod("BeetleLimit", "BASE", nil),
25592566
},
2567+
["max_azmerian_swarms"] = {
2568+
mod("AzmerianSwarmLimit", "BASE", nil),
2569+
},
2570+
["base_number_of_wardbound_minions_allowed"] = {
2571+
mod("WardboundLimit", "BASE", nil),
2572+
},
25602573
["active_skill_minion_damage_+%_final"] = {
25612574
mod("MinionModifier", "LIST", { mod = mod("Damage", "MORE", nil) }),
25622575
},
@@ -2882,6 +2895,9 @@ return {
28822895
["apply_X_incision_on_hit"] = {
28832896
flag("Condition:CanInflictIncision", { type = "GlobalEffect", effectType = "Buff", effectName = "Incision" }),
28842897
},
2898+
["%_chance_to_apply_hounded_by_wisps_on_hit"] = {
2899+
flag("Condition:CanInflictFaerieFire", { type = "GlobalEffect", effectType = "Buff", effectName = "FaerieFire" }),
2900+
},
28852901
["armour_break_physical_damage_%_dealt_as_armour_break"] = {
28862902
flag("Condition:CanArmourBreak", { type = "GlobalEffect", effectType = "Buff", effectName = "ArmourBreak" }),
28872903
},
@@ -2972,6 +2988,9 @@ return {
29722988
mod("DamageTaken", "MORE", nil),
29732989
value = -100,
29742990
},
2991+
["set_base_damage_taken_+%"] = {
2992+
mod("DamageTaken", "INC", nil),
2993+
},
29752994
--
29762995
-- Gem Levels / quality
29772996
--

0 commit comments

Comments
 (0)