Skip to content
Snippets Groups Projects
Commit 0fb141e6 authored by dg's avatar dg
Browse files

Changed the drop system to a two steps system: First the game chooses the...

Changed the drop system to a two steps system: First the game chooses the quality of the item (unique, double greater, greater, ...) and then the actual object is selected. Quality chance varies by levels and by drop source (bosses obviously drop better stuff).


git-svn-id: http://svn.net-core.org/repos/t-engine4@2954 51575b47-30f0-44d4-a5cc-537603b46e54
parent f59ba90e
No related branches found
No related tags found
No related merge requests found
Showing
with 164 additions and 97 deletions
......@@ -373,9 +373,9 @@ function _M:finishEntity(level, type, e, ego_filter)
local try = ego_filter.tries[i]
local etype = (i == 1 and e.ego_first_type and e.ego_first_type) or rng.tableIndex(e.egos_chance, picked_etype)
-- forceprint("EGO TRY", i, ":", etype, echance, try)
if not etype then break end
local echance = etype and try[etype]
forceprint("EGO TRY", i, ":", etype, echance, try)
pick_ego(self, level, e, egos_list, type, picked_etype, etype, try)
end
......
......@@ -1120,7 +1120,7 @@ function _M:die(src)
o.no_drop = true
-- Drop a random artifact instead
local ro = game.zone:makeEntity(game.level, "object", {unique=true, not_properties={"lore"}}, nil, true)
local ro = game.zone:makeEntity(game.level, "object", {no_tome_drops=true, unique=true, not_properties={"lore"}}, nil, true)
if ro then game.zone:addEntity(game.level, ro, "object", self.x, self.y) end
end
......
......@@ -191,7 +191,7 @@ function _M:generateRandart(add, base, lev)
game.level.level = lev
-- Get a base object
base = base or game.zone:makeEntity(game.level, "object", {ego_filter={keep_egos=true, ego_chance=-1000}, special=function(e)
base = base or game.zone:makeEntity(game.level, "object", {no_tome_drops=true, ego_filter={keep_egos=true, ego_chance=-1000}, special=function(e)
return (not e.unique and e.randart_able) and (not e.material_level or e.material_level >= 2) and true or false
end}, nil, true)
if not base then game.level.level = oldlev return end
......@@ -595,56 +595,118 @@ end
-- Loot filters
--------------------------------------------------------------
local default_drops = function(zone, level)
if zone.default_drops then return zone.default_drops end
local lev = util.bound(math.ceil(zone:level_adjust_level(level, "object") / 10), 1, 5)
return ({
local drop_tables = {
normal = {
[1] = {
uniques = 0.5,
double_greater = 2,
greater_normal = 4,
greater = 12,
double_ego = 25,
ego = 45,
basic = 35,
double_ego = 20,
ego = 35,
basic = 20,
money = 7000,
},
[2] = {
uniques = 0.7,
double_greater = 6,
greater_normal = 10,
greater = 20,
double_ego = 45,
ego = 45,
basic = 35,
double_ego = 35,
ego = 20,
basic = 15,
money = 8,
},
[3] = {
uniques = 1,
double_greater = 15,
greater_normal = 20,
greater = 30,
double_ego = 30,
ego = 20,
basic = 25,
double_greater = 10,
greater_normal = 15,
greater = 35,
double_ego = 25,
ego = 15,
basic = 10,
money = 8.5,
},
[4] = {
uniques = 1.1,
double_greater = 19,
greater_normal = 25,
greater = 30,
double_ego = 25,
ego = 15,
basic = 15,
double_greater = 15,
greater_normal = 35,
greater = 25,
double_ego = 20,
ego = 5,
basic = 5,
money = 8,
},
[5] = {
uniques = 1.2,
double_greater = 25,
greater_normal = 20,
greater = 24,
double_ego = 15,
ego = 10,
double_greater = 35,
greater_normal = 30,
greater = 20,
double_ego = 10,
ego = 5,
basic = 5,
money = 8,
},
},
boss = {
[1] = {
uniques = 3,
double_greater = 10,
greater_normal = 15,
greater = 25,
double_ego = 45,
ego = 0,
basic = 0,
money = 4,
},
[2] = {
uniques = 4,
double_greater = 20,
greater_normal = 18,
greater = 25,
double_ego = 35,
ego = 0,
basic = 0,
money = 4,
},
[3] = {
uniques = 5,
double_greater = 30,
greater_normal = 22,
greater = 25,
double_ego = 25,
ego = 0,
basic = 0,
money = 4,
},
[4] = {
uniques = 6,
double_greater = 40,
greater_normal = 30,
greater = 25,
double_ego = 20,
ego = 0,
basic = 0,
money = 4,
},
})[lev]
[5] = {
uniques = 7,
double_greater = 50,
greater_normal = 30,
greater = 25,
double_ego = 10,
ego = 0,
basic = 0,
money = 4,
},
},
}
local default_drops = function(zone, level, what)
if zone.default_drops then return zone.default_drops end
local lev = util.bound(math.ceil(zone:level_adjust_level(level, "object") / 10), 1, 5)
print("[TOME ENTITY FILTER] making default loot table for", what, lev)
return drop_tables[what][lev]
end
function _M:defaultEntityFilter(zone, level, type)
......@@ -652,27 +714,27 @@ function _M:defaultEntityFilter(zone, level, type)
-- By default we dont apply special filters, but we always provide one so that entityFilter is called
return {
tome = default_drops(zone, level),
tome = default_drops(zone, level, "normal"),
}
end
function _M:entityFilterAlter(zone, level, type, filter)
if type ~= "object" then return end
if not filter.tome then filter.tome = default_drops(zone, level) end
if not filter.tome and not filter.special and not filter.unique and not filter.ego_chance and not filter.ego_filter and not filter.no_tome_drops then filter.tome = default_drops(zone, level, filter.tome_drops or "normal") end
if filter.tome then
local t = (filter.tome == true) and default_drops(zone, level) or filter.tome
local t = (filter.tome == true) and default_drops(zone, level, "normal") or filter.tome
filter.tome = nil
local u, dg, ge, g, de, e, total =
t.uniques,
t.uniques + t.double_greater,
t.uniques + t.double_greater + t.greater_normal,
t.uniques + t.double_greater + t.greater_normal + t.greater,
t.uniques + t.double_greater + t.greater_normal + t.greater + t.double_ego,
t.uniques + t.double_greater + t.greater_normal + t.greater + t.double_ego + t.ego,
t.uniques + t.double_greater + t.greater_normal + t.greater + t.double_ego + t.ego + t.basic
local u = t.uniques or 0
local dg = u + (t.double_greater or 0)
local ge = dg + (t.greater_normal or 0)
local g = ge + (t.greater or 0)
local de = g + (t.double_ego or 0)
local e = de + (t.ego or 0)
local m = e + (t.money or 0)
local total = m + (t.basic or 0)
local r = rng.float(0, total)
if r < u then
......@@ -695,7 +757,7 @@ function _M:entityFilterAlter(zone, level, type, filter)
print("[TOME ENTITY FILTER] selected Greater", r, g)
filter.not_properties = filter.not_properties or {}
filter.not_properties[#filter.not_properties+1] = "unique"
filter.ego_chance={tries = { ego_chance=100, properties={"greater_ego"} } }
filter.ego_chance={tries = { {ego_chance=100, properties={"greater_ego"}} } }
elseif r < de then
print("[TOME ENTITY FILTER] selected Double Ego", r, de)
......@@ -707,7 +769,12 @@ function _M:entityFilterAlter(zone, level, type, filter)
print("[TOME ENTITY FILTER] selected Ego", r, e)
filter.not_properties = filter.not_properties or {}
filter.not_properties[#filter.not_properties+1] = "unique"
filter.ego_chance={tries = { ego_chance=100, not_properties={"greater_ego"} } }
filter.ego_chance={tries = { {ego_chance=100, not_properties={"greater_ego"}} } }
elseif r < m then
print("[TOME ENTITY FILTER] selected Money", r, m)
filter.special = function(e) return e.type == "money" or e.type == "gem" end
else
print("[TOME ENTITY FILTER] selected basic", r, total)
filter.not_properties = filter.not_properties or {}
......
......@@ -33,9 +33,9 @@ defineTile('P', "FLOOR", nil, mod.class.NPC.new{
resolvers.drops{chance=20, nb=1, {} },
resolvers.equip{
{type="weapon", subtype="dagger", autoreq=true, ego_change=50},
{type="weapon", subtype="dagger", autoreq=true, ego_change=50},
{type="armor", subtype="light", autoreq=true}
{type="weapon", subtype="dagger", autoreq=true, force_drop=true, tome_drops="boss"},
{type="weapon", subtype="dagger", autoreq=true, force_drop=true, tome_drops="boss"},
{type="armor", subtype="light", autoreq=true, force_drop=true, tome_drops="boss"}
},
resolvers.drops{chance=100, nb=2, {type="money"} },
......
......@@ -48,10 +48,10 @@ newEntity{ define_as = "GREATER_MUMMY_LORD",
body = { INVEN = 10, MAINHAND=1, OFFHAND=1, BODY=1, HEAD=1, },
equipment = resolvers.equip{
{type="weapon", subtype="longsword", defined="LONGSWORD_WINTERTIDE", random_art_replace={chance=75}, autoreq=true},
{type="armor", subtype="shield", ego_chance=100, autoreq=true},
{type="armor", subtype="mummy", ego_chance=100, autoreq=true},
{type="armor", subtype="shield", force_drop=true, tome_drops="boss", autoreq=true},
{type="armor", subtype="mummy", force_drop=true, tome_drops="boss", autoreq=true},
},
drops = resolvers.drops{chance=100, nb=4, {ego_chance=100} },
resolvers.drops{chance=100, nb=4, {tome_drops="boss"} },
resolvers.talents{
[Talents.T_SHIELD_PUMMEL]=5,
......@@ -101,7 +101,7 @@ newEntity{ base = "BASE_NPC_MUMMY",
[Talents.T_MANATHRUST]=3,
},
resolvers.inscriptions(1, "rune"),
drops = resolvers.drops{chance=70, nb=1, {type="money"}, {} },
resolvers.drops{chance=70, nb=1, {tome={money=1}} },
}
newEntity{ base = "BASE_NPC_MUMMY",
......@@ -116,7 +116,7 @@ newEntity{ base = "BASE_NPC_MUMMY",
infravision = 20,
resolvers.equip{
{type="armor", subtype="mummy", ego_chance=100, autoreq=true},
{type="armor", subtype="mummy", force_drop=true, autoreq=true},
},
autolevel = "caster",
resolvers.talents{
......
......@@ -42,7 +42,7 @@ newEntity{ define_as = "UNGOLE", base = "BASE_NPC_SPIDER",
combat = { dam=resolvers.rngavg(40,58), atk=16, apr=9, damtype=DamageType.NATURE, dammod={str=0.8} },
body = { INVEN = 10, MAINHAND=1, OFFHAND=1, BODY=1 },
resolvers.drops{chance=100, nb=5, {ego_chance=100} },
resolvers.drops{chance=100, nb=5, {tome_drops="boss"} },
resolvers.drops{chance=100, nb=1, {type="wand", subtype="wand", defined="ROD_SPYDRIC_POISON"} },
resolvers.drops{chance=100, nb=1, {unique=true} },
......
......@@ -127,7 +127,7 @@ newEntity{ name = "arcane blade",
combat = { dam=resolvers.rngavg(6,12), atk=3, apr=6, physspeed=2 },
body = { INVEN = 10, MAINHAND=1, OFFHAND=1, BODY=1, QUIVER=1 },
resolvers.drops{chance=100, nb=1, {type="weapon", ego_chance=100}},
resolvers.drops{chance=100, nb=1, {type="weapon", tome_drops="boss"}},
resolvers.drops{chance=100, nb=2, {type="money"} },
resolvers.inscriptions(1, "shielding rune"),
stun_immune = 0.4,
......
......@@ -84,7 +84,7 @@ newEntity{ name = "golden crystal",
level_range = {1, 99},
exp_worth = 2,
rank = 3,
resolvers.drops{chance=100, nb=1, {type="jewelry", ego_chance=100}},
resolvers.drops{chance=100, nb=1, {type="jewelry", tome_drops="boss"}},
max_life = resolvers.rngavg(12,34),
resists = { [DamageType.LIGHT] = 100 },
resolvers.talents{
......@@ -109,8 +109,8 @@ newEntity{ name = "master alchemist",
max_life = 120,
resolvers.inscriptions(3, {}),
equipment = resolvers.equip{
{type="weapon", subtype="staff", ego_chance=100, autoreq=true},
{type="armor", subtype="cloth", ego_chance=100, autoreq=true},
{type="weapon", subtype="staff", force_drop=true, tome_drops="boss", autoreq=true},
{type="armor", subtype="cloth", force_drop=true, tome_drops="boss", autoreq=true},
},
resolvers.drops{chance=100, nb=1, {type="wand", ego_chance=100}},
autolevel = "dexmage",
......@@ -219,7 +219,7 @@ newEntity{ name = "gladiator",
{type="armor", subtype="shield", autoreq=true},
{type="armor", subtype="heavy", autoreq=true},
},
resolvers.drops{chance=100, nb=1, {type="weapon", ego_chance=100}},
resolvers.drops{chance=100, nb=1, {type="weapon", force_drop=true, tome_drops="boss"}},
combat_def = 4,
resolvers.talents{
[Talents.T_SHIELD_PUMMEL]=2,
......@@ -474,8 +474,8 @@ newEntity{ name = "Valfren Loren",
resolvers.inscriptions(3, {}),
resolvers.equip{
{type="weapon", subtype="battleaxe", autoreq=true, ego_chance=100},
{type="armor", subtype="massive", autoreq=true, ego_chance=100}
{type="weapon", subtype="battleaxe", autoreq=true, force_drop=true, tome_drops="boss"},
{type="armor", subtype="massive", autoreq=true, force_drop=true, tome_drops="boss"}
},
resolvers.talents{
[Talents.T_GLOOM] = 5,
......@@ -518,9 +518,9 @@ newEntity{ name = "Rej Arkatis",
resolvers.inscriptions(4, {"manasurge rune", "movement infusion", "regeneration infusion", "fire beam rune"}),
resolvers.equip{
{type="weapon", subtype="dagger", autoreq=true, ego_chance=100},
{type="weapon", subtype="dagger", autoreq=true, ego_chance=100},
{type="armor", subtype="cloak", autoreq=true, ego_chance=100},
{type="weapon", subtype="dagger", autoreq=true, force_drop=true, tome_drops="boss"},
{type="weapon", subtype="dagger", autoreq=true, force_drop=true, tome_drops="boss"},
{type="armor", subtype="cloak", autoreq=true, force_drop=true, tome_drops="boss"},
},
autolevel = "rogue",
combat_def = 2,
......@@ -979,7 +979,7 @@ newEntity{ name = "anorithil",
{type="armor", subtype="cloth", ego_chance=30, autoreq=true},
},
autolevel = "caster", ai_tactic = resolvers.tactic("ranged"),
resolvers.drops{chance=50, nb=1, {type="weapon", subtype="staff", ego_chance=100}},
resolvers.drops{chance=50, nb=1, {type="weapon", subtype="staff", force_drop=true, tome_drops="boss"}},
combat_def = 4,
resolvers.talents{
[Talents.T_CIRCLE_OF_SHIFTING_SHADOWS]=2,
......@@ -1008,7 +1008,7 @@ newEntity{ name = "sun paladin",
{type="armor", subtype="massive", autoreq=true},
{type="armor", subtype="shield", ego_chance=30, autoreq=true},
},
resolvers.drops{chance=50, nb=1, {type="weapon", subtype="staff", ego_chance=100}},
resolvers.drops{chance=50, nb=1, {type="weapon", subtype="staff", force_drop=true, tome_drops="boss"}},
combat_def = 4,
autolevel = "warriormage", ai_tactic = resolvers.tactic("tank"),
resolvers.talents{
......@@ -1043,7 +1043,7 @@ newEntity{ name = "star crusader",
{type="armor", subtype="massive", autoreq=true},
{type="armor", subtype="shield", ego_chance=50, autoreq=true},
},
resolvers.drops{chance=50, nb=1, {type="weapon", subtype="staff", ego_chance=100}},
resolvers.drops{chance=50, nb=1, {type="weapon", subtype="staff", force_drop=true, tome_drops="boss"}},
combat_def = 4,
autolevel = "warriormage", ai_tactic = resolvers.tactic("melee"),
resolvers.talents{
......
......@@ -83,7 +83,7 @@ This specimen looks like it was hastily assembled and is not really complete yet
resolvers.talents{ [Talents.T_BONE_ARMOUR]=3, [Talents.T_THROW_BONES]=1, [Talents.T_STUN]=1, },
resolvers.sustains_at_birth(),
resolvers.drops{chance=100, nb=3, {ego_chance=100} },
resolvers.drops{chance=100, nb=3, {tome_drops="boss"} },
resolvers.drops{chance=100, nb=1, {defined="WINTERTIDE_PHIAL", random_art_replace={chance=75}} },
ai = "tactical", ai_state = { talent_in=3, ai_move="move_astar", },
......
......@@ -178,10 +178,10 @@ newEntity{
body = { INVEN = 10, MAINHAND=1, OFFHAND=1, BODY=1 },
resolvers.equip{
{type="weapon", subtype="staff", ego_chance=100, autoreq=true},
{type="armor", subtype="cloth", ego_chance=100, autoreq=true},
{type="weapon", subtype="staff", force_drop=true, tome_drops="boss", autoreq=true},
{type="armor", subtype="cloth", force_drop=true, tome_drops="boss", autoreq=true},
},
resolvers.drops{chance=100, nb=10, {ego_chance=100} },
resolvers.drops{chance=100, nb=10, {tome_drops="boss"} },
resolvers.talents{
[Talents.T_FLAME]=5,
......@@ -234,10 +234,10 @@ newEntity{
body = { INVEN = 10, MAINHAND=1, OFFHAND=1, BODY=1 },
resolvers.equip{
{type="weapon", subtype="staff", ego_chance=100, autoreq=true},
{type="armor", subtype="cloth", ego_chance=100, autoreq=true},
{type="weapon", subtype="staff", force_drop=true, tome_drops="boss", autoreq=true},
{type="armor", subtype="cloth", force_drop=true, tome_drops="boss", autoreq=true},
},
resolvers.drops{chance=100, nb=10, {ego_chance=100} },
resolvers.drops{chance=100, nb=10, {tome_drops="boss"} },
resolvers.talents{
[Talents.T_FLAME]=5,
......@@ -285,7 +285,7 @@ This one looks even nastier and looks toward you with what seems to be disdain.
{type="jewelry", subtype="amulet", defined="FIERY_CHOKER", random_art_replace={chance=75}},
},
resolvers.drops{chance=20, nb=1, {defined="JEWELER_TOME"} },
resolvers.drops{chance=100, nb=5, {ego_chance=100} },
resolvers.drops{chance=100, nb=5, {tome_drops="boss"} },
resolvers.talents{
[Talents.T_FLAME]=4,
......
......@@ -52,7 +52,7 @@ newEntity{ base="BASE_NPC_MAJOR_DEMON", define_as = "KRYL_FEIJAN",
combat = { dam=resolvers.mbonus(86, 20), atk=50, apr=30, dammod={str=1.1} },
resolvers.drops{chance=100, nb=5, {ego_chance=100} },
resolvers.drops{chance=100, nb=5, {tome_drops="boss"} },
resolvers.talents{
[Talents.T_DARKFIRE]=4,
......
......@@ -51,7 +51,7 @@ newEntity{ define_as = "RANTHA_THE_WORM",
body = { INVEN = 10, MAINHAND=1, OFFHAND=1, BODY=1 },
resolvers.drops{chance=100, nb=1, {defined="FROST_TREADS", random_art_replace={chance=75}}, },
resolvers.drops{chance=100, nb=3, {ego_chance=100} },
resolvers.drops{chance=100, nb=3, {tome_drops="boss"} },
resolvers.drops{chance=100, nb=10, {type="money"} },
resolvers.talents{
......@@ -106,12 +106,12 @@ newEntity{ base="BASE_NPC_ORC_GRUSHNAK", define_as = "MASSOK",
resists = { [DamageType.COLD] = 100 },
resolvers.equip{
{type="weapon", subtype="battleaxe", ego_change=100, autoreq=true},
{type="armor", subtype="massive", ego_chance=100, autoreq=true},
{type="weapon", subtype="battleaxe", force_drop=true, tome_drops="boss", autoreq=true},
{type="armor", subtype="massive", force_drop=true, tome_drops="boss", autoreq=true},
{type="armor", subtype="head", defined="DRAGON_SKULL", random_art_replace={chance=75}, autoreq=true},
{type="armor", subtype="feet", ego_chance=100, autoreq=true},
{type="armor", subtype="feet", force_drop=true, tome_drops="boss", autoreq=true},
},
resolvers.drops{chance=100, nb=5, {ego_chance=100} },
resolvers.drops{chance=100, nb=5, {tome_drops="boss"} },
resolvers.talents{
[Talents.T_WEAPON_COMBAT]=7,
......
......@@ -53,8 +53,7 @@ return {
},
object = {
class = "engine.generator.object.Random",
nb_object = {60, 90},
filters = { {} }
nb_object = {6, 9},
},
trap = {
class = "engine.generator.trap.Random",
......
......@@ -43,7 +43,7 @@ newEntity{ base="BASE_NPC_CORRUPTED_HORROR", define_as = "THE_MOUTH",
body = { INVEN = 10, MAINHAND=1, OFFHAND=1, BODY=1 },
resolvers.drops{chance=100, nb=1, {defined="TOOTH_MOUTH", random_art_replace={chance=35}} },
resolvers.drops{chance=100, nb=3, {ego_chance=100} },
resolvers.drops{chance=100, nb=3, {tome_drops="boss"} },
resolvers.talents{
[Talents.T_CALL_OF_AMAKTHEL]=1,
......
......@@ -49,7 +49,7 @@ newEntity{ define_as = "DRAEBOR",
resists = { [DamageType.FIRE] = 50, [DamageType.DARKNESS] = 50, },
body = { INVEN = 10, MAINHAND=1, OFFHAND=1, BODY=1 },
resolvers.drops{chance=100, nb=4, {ego_chance=100} },
resolvers.drops{chance=100, nb=4, {tome_drops="boss"} },
resolvers.drops{chance=100, nb=1, {defined="BOOTS_OF_PHASING"} },
summon = {
......
......@@ -43,10 +43,11 @@ newEntity{ base="BASE_NPC_ORC", define_as = "UKRUK",
see_invisible = 38,
resolvers.equip{
{type="weapon", subtype="longsword", ego_chance=100, autoreq=true},
{type="armor", subtype="shield", ego_chance=100, autoreq=true},
{type="weapon", subtype="longsword", force_drop=true, tome_drops="boss", autoreq=true},
{type="armor", subtype="shield", force_drop=true, tome_drops="boss", autoreq=true},
},
resolvers.drop_randart{},
resolvers.drops{chance=100, nb=3, {tome_drops="boss"} },
resolvers.talents{
[Talents.T_WEAPONS_MASTERY]=10, [Talents.T_ASSAULT]=5, [Talents.T_OVERPOWER]=5, [Talents.T_RUSH]=5,
......
......@@ -50,11 +50,11 @@ newEntity{ define_as = "THE_MASTER",
body = { INVEN = 10, MAINHAND=1, OFFHAND=1, BODY=1, NECK=1, },
equipment = resolvers.equip{
{type="weapon", subtype="greatsword", ego_chance=100, autoreq=true},
{type="armor", subtype="heavy", ego_chance=50, autoreq=true},
{type="weapon", subtype="greatsword", force_drop=true, tome_drops="boss", autoreq=true},
{type="armor", subtype="heavy", force_drop=true, tome_drops="boss", autoreq=true},
{type="jewelry", subtype="amulet", defined="AMULET_DREAD", random_art_replace={chance=75}, autoreq=true},
},
resolvers.drops{chance=100, nb=5, {ego_chance=100} },
resolvers.drops{chance=100, nb=5, {tome_drops="boss"} },
resolvers.drops{chance=100, nb=1, {type="weapon", subtype="staff", defined="STAFF_ABSORPTION"} },
summon = {
......@@ -127,10 +127,10 @@ newEntity{ define_as = "PALE_DRAKE",
body = { INVEN = 10, MAINHAND=1, OFFHAND=1, BODY=1, NECK=1, },
equipment = resolvers.equip{
{type="weapon", subtype="staff", ego_chance=100, autoreq=true},
{type="armor", subtype="cloth", ego_chance=50, autoreq=true},
{type="weapon", subtype="staff", force_drop=true, tome_drops="boss", autoreq=true},
{type="armor", subtype="cloth", force_drop=true, tome_drops="boss", autoreq=true},
},
resolvers.drops{chance=100, nb=5, {ego_chance=100} },
resolvers.drops{chance=100, nb=5, {tome_drops="boss"} },
resolvers.drops{chance=100, nb=1, {defined="RUNED_SKULL", random_art_replace={chance=75}} },
summon = {
......
......@@ -48,7 +48,7 @@ newEntity{ define_as = "SUN_PALADIN_GUREN",
ai = "dumb_talented_simple", ai_state = { talent_in=2, ai_move="move_astar", },
body = { INVEN = 10, MAINHAND=1, OFFHAND=1, BODY=1 },
resolvers.drops{chance=100, nb=3, {ego_chance=100} },
resolvers.drops{chance=100, nb=3, {tome_drops="boss"} },
resolvers.equip{
{type="weapon", subtype="mace", autoreq=true},
......
......@@ -51,8 +51,8 @@ newEntity{ define_as = "UKLLMSWWIK",
body = { INVEN = 10, MAINHAND=1, OFFHAND=1, BODY=1 },
resolvers.drops{chance=100, nb=1, {defined="TRIDENT_TIDES", random_art_replace={chance=50}, autoreq=true} },
resolvers.drops{chance=100, nb=5, {ego_chance=100} },
resolvers.drops{chance=100, nb=10, {type="money"} },
resolvers.drops{chance=100, nb=5, {tome_drops="boss"} },
resolvers.drops{chance=100, nb=10, {tome={money=1}} },
resolvers.talents{
[Talents.T_WEAPON_COMBAT]=5,
......
......@@ -50,11 +50,11 @@ newEntity{ base="BASE_NPC_ORC_GORBAT", define_as = "GORBAT",
body = { INVEN = 10, MAINHAND=1, OFFHAND=1, BODY=1, HEAD=1 },
resolvers.equip{
{type="weapon", subtype="greatmaul", ego_change=100, autoreq=true},
{type="weapon", subtype="greatmaul", force_drop=true, tome_drops="boss", autoreq=true},
{type="armor", subtype="light", defined="CHROMATIC_HARNESS", random_art_replace={chance=75}, autoreq=true},
},
resolvers.drops{chance=100, nb=1, {defined="ORB_DRAGON"} },
resolvers.drops{chance=100, nb=5, {ego_chance=100} },
resolvers.drops{chance=100, nb=5, {tome_drops="boss"} },
resolvers.drops{chance=100, nb=1, {defined="NOTE_LORE"} },
talent_cd_reduction={[Talents.T_ICE_BREATH]=3, [Talents.T_FIRE_BREATH]=3, [Talents.T_SAND_BREATH]=3, },
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment