About spawn :
if water >= 0.5 spawn only "wet"climate
else 0 >= water <= 0.5 spawn only "dry" climate
If water > 1 spawn base enemy stoped
in enemy-autoplace.lua
function enemy_autoplace(params)
.......
if biomes_present then
temp_min=-50
temp_max=10 --frozen areas
probability_expression = volume_to_noise_expression
({
temperature_min = temp_min,
temperature_max = temp_max
})
else
probability_expression = volume_to_noise_expression
({
water_min = 0.5,
water_max = 1
})
end
if is_base then
probability_expression = volume_to_noise_expression
({
water_min = 5,
water_max = 5
})
end
......
local function enemy_despawner_autoplace(distance)
return enemy_autoplace{
distance_factor = distance,
order = "b[enemy]-a[spawner]",
is_base = true
}
end
About resistance:
It seemed very strange to me that fiery cocoons explode in a chain. I just set the explosion and fire resistance to 100.
local new_fire_resists =
{
{
type = "explosion",
percent = 100,
},
{
type = "fire",
percent = 100,
},
{
type = "acid",
percent = 100,
},
{
type = "laser",
percent = -30,
},
{
type = "electric",
percent = -40,
}
And my addition Cold Rocket and Atomic Cold Rocket:
-- [COLD ROCKET] --
local cold_rocket_item = table.deepcopy(data.raw.ammo["rocket"])
cold_rocket_item.name = "cold-rocket"
cold_rocket_item.icon = "__ColdBitersExpanded__/graphics/icons/cold_rocket.png"
cold_rocket_item.ammo_type.action.action_delivery.projectile = "cold-rocket"
cold_rocket_item.order = "d[rocket-launcher]-b[explosive]-a"
local cold_rocket_projectile = table.deepcopy(data.raw.projectile["rocket"])
cold_rocket_projectile.name = "cold-rocket"
cold_rocket_projectile.action =
{
{
type = "direct",
action_delivery =
{
type = "instant",
target_effects =
{
{
type = "create-entity",
show_in_tooltip = true,
entity_name = "big-artillery-cold-explosion",
}
}
}
},
{
type = "area",
radius = 3,
action_delivery =
{
type = "instant",
target_effects =
{
{
type = "create-sticker",
sticker = 'cb-cold-sticker'
},
{
type = "damage",
damage = { amount = 200, type = "cold" },
apply_damage_to_trees = false
}
}
}
}
}
data:extend({cold_rocket_item, cold_rocket_projectile})
-- [ATOMIC COLD ROCKET] --
local atomic_cold_rocket_item = table.deepcopy(data.raw.ammo["rocket"])
atomic_cold_rocket_item.name = "atomic-cold-rocket"
atomic_cold_rocket_item.icon = "__ColdBitersExpanded__/graphics/icons/atomic_cold_rocket.png"
atomic_cold_rocket_item.ammo_type.action.action_delivery.projectile = "atomic-cold-rocket"
atomic_cold_rocket_item.order = "d[rocket-launcher]-b[explosive]-a"
local atomic_cold_rocket_projectile = table.deepcopy(data.raw.projectile["rocket"])
atomic_cold_rocket_projectile.name = "atomic-cold-rocket"
atomic_cold_rocket_projectile.action =
{
{
type = "direct",
action_delivery =
{
type = "instant",
target_effects =
{
{
type = "create-entity",
show_in_tooltip = true,
entity_name = "small-atomic-cold-explosion",
}
}
}
},
{
type = "area",
radius = 11,
action_delivery =
{
type = "instant",
target_effects =
{
{
type = "create-sticker",
sticker = 'cb-cold-sticker'
}
}
}
}
}
data:extend({atomic_cold_rocket_item, atomic_cold_rocket_projectile})