Add Ghelmina planet basics

This commit is contained in:
Simon Brodtmann 2025-02-18 23:22:29 +01:00
parent 15986634bf
commit 309a2c954a
9 changed files with 297 additions and 2 deletions

View file

@ -1,2 +1,2 @@
# ghelmina
# Ghelmina

8
ghelmina/data.lua Normal file
View file

@ -0,0 +1,8 @@
Ghelmina = {}
Ghelmina.assets = "__ghelmina-assets__/"
Ghelmina.graphics = Ghelmina.assets .. "graphics/"
Ghelmina.sound = Ghelmina.assets .. "sound/"
require("__cf-lib__/util")
require("prototypes/content/data")

View file

@ -9,7 +9,9 @@
"dependencies": [
"base >= 2.0.34",
"space-age",
"ghelmina-assets",
"PlanetsLib >= 1.1.26",
"pollution-as-surface-property >= 1.0.1",
"cf-lib >= 0.0.5"
]
}

View file

@ -1,2 +1,11 @@
[mod-name]
ghelmina= Ghelmina
ghelmina= Ghelmina
[space-location-name]
ghelmina=Ghelmina
[airborne-pollutant-name]
pain=Pain
[airborne-pollutant-name-with-amount]
pain=__1__ pain

View file

@ -0,0 +1,3 @@
require("planet/planet")
require("pain")
require("technology")

View file

@ -0,0 +1,17 @@
data:extend({
{
type = "airborne-pollutant",
name = "pain",
chart_color = { r = 115, g = 9, b = 9, a = 149 },
icon = {
filename = "__core__/graphics/icons/mip/side-map-menu-buttons.png",
priority = "high",
size = 64,
mipmap_count = 2,
y = 3 * 64,
flags = { "gui-icon" }
},
affects_evolution = true,
affects_water_tint = true,
}
})

View file

@ -0,0 +1,133 @@
return {
cliff_settings = {
name = "cliff-gleba",
control = "gleba_cliff",
cliff_elevation_0 = 40,
cliff_elevation_interval = 60,
richness = 0.80,
cliff_smoothing = 0
},
territory_settings = {
units = { "small-brain", "medium-brain", "big-brain" },
territory_index_expression = "demolisher_territory_expression",
territory_variation_expression = "demolisher_variation_expression",
minimum_territory_size = 10
},
property_expression_names = {
elevation = "gleba_elevation",
aux = "gleba_aux",
moisture = "gleba_moisture",
temperature = "gleba_temperature",
cliffiness = "gleba_cliffiness",
cliff_elevation = "cliff_elevation_from_elevation",
enemy_base_radius = "gleba_enemy_base_radius",
enemy_base_frequency = "gleba_enemy_base_frequency",
["entity:stone:richness"] = "gleba_stone_richness",
["entity:stone:probability"] = "gleba_stone_probability",
["decorative:red-desert-bush:probability"] = "gleba_red_desert_bush_probability",
["decorative:white-desert-bush:probability"] = "gleba_white_desert_bush_probability",
["decorative:red-pita:probability"] = "gleba_red_pita_probability",
["decorative:green-bush-mini:probability"] = "gleba_green_bush_probability",
["decorative:green-croton:probability"] = "gleba_green_cronton_probability",
["decorative:green-pita:probability"] = "gleba_green_pita_probability",
["decorative:green-pita-mini:probability"] = "gleba_green_pita_mini_probability",
["decorative:lichen-decal:probability"] = "gleba_orange_lichen_probability",
["decorative:shroom-decal:probability"] = "gleba_carpet_shroom_probability",
["decorative:cracked-mud-decal:probability"] = "gleba_cracked_mud_probability",
["decorative:light-mud-decal:probability"] = "gleba_light_mud_probability",
["decorative:dark-mud-decal:probability"] = "gleba_dark_mud_probability",
["decorative:green-carpet-grass:probability"] = "gleba_green_carpet_grass_probability",
["decorative:green-hairy-grass:probability"] = "gleba_green_hairy_grass_probability"
},
autoplace_controls = {
["gleba_stone"] = {},
["gleba_plants"] = {},
["gleba_enemy_base"] = {},
["gleba_water"] = {},
["gleba_cliff"] = {},
},
autoplace_settings = {
["tile"] = {
settings = {
["natural-jellynut-soil"] = {},
["wetland-jellynut"] = {},
["wetland-pink-tentacle"] = {},
["wetland-red-tentacle"] = {},
["lowland-red-vein"] = {},
["lowland-red-vein-2"] = {},
["lowland-red-vein-3"] = {},
["lowland-red-vein-4"] = {},
["lowland-red-vein-dead"] = {},
["lowland-red-infection"] = {},
}
},
["decorative"] = {
settings = {
["honeycomb-fungus"] = {},
["honeycomb-fungus-1x1"] = {},
["honeycomb-fungus-decayed"] = {},
["split-gill-1x1"] = {},
["split-gill-2x2"] = {},
["split-gill-dying-1x1"] = {},
["split-gill-dying-2x2"] = {},
["split-gill-red-1x1"] = {},
["split-gill-red-2x2"] = {},
["veins"] = {},
["veins-small"] = {},
["mycelium"] = {},
["coral-water"] = {},
["coral-land"] = {},
["coral-stunted"] = {},
["yellow-coral"] = {},
["black-sceptre"] = {},
["pink-phalanges"] = {},
["blood-grape"] = {},
["blood-grape-vibrant"] = {},
["brambles"] = {},
["polycephalum-slime"] = {},
["polycephalum-balloon"] = {},
["pink-lichen-decal"] = {},
["red-lichen-decal"] = {},
["grey-cracked-mud-decal"] = {},
["barnacles-decal"] = {},
["nerve-roots-veins-dense"] = {},
["nerve-roots-veins-sparse"] = {},
["curly-roots-orange"] = {},
["knobbly-roots"] = {},
["knobbly-roots-orange"] = {},
["matches-small"] = {},
["solo-barnacle"] = {},
["pale-lettuce-lichen-cups-1x1"] = {},
["pale-lettuce-lichen-cups-3x3"] = {},
["pale-lettuce-lichen-cups-6x6"] = {},
["pale-lettuce-lichen-1x1"] = {},
["pale-lettuce-lichen-3x3"] = {},
["pale-lettuce-lichen-6x6"] = {},
["pale-lettuce-lichen-water-1x1"] = {},
["pale-lettuce-lichen-water-3x3"] = {},
["pale-lettuce-lichen-water-6x6"] = {},
["light-mud-decal"] = {},
["dark-mud-decal"] = {},
["cracked-mud-decal"] = {},
["red-desert-bush"] = {},
["white-desert-bush"] = {},
["red-pita"] = {},
["green-bush-mini"] = {},
["green-croton"] = {},
["green-pita"] = {},
["green-pita-mini"] = {},
["lichen-decal"] = {},
["shroom-decal"] = {}
}
},
["entity"] = {
settings = {
}
}
}
}

View file

@ -0,0 +1,91 @@
local mapgen = require("mapgen")
PlanetsLib:extend({
{
type = "planet",
name = "ghelmina",
orbit = {
parent = {
type = "space-location",
name = "star"
},
distance = 100,
orientation = 0.42,
},
magnitude = 0.35,
subgroup = "satellites",
icon = Ghelmina.graphics .. "icons/ghelmina.png",
starmap_icon = Ghelmina.graphics .. "icons/starmap-planet-ghelmina.png",
starmap_icon_size = 1024,
gravity_pull = 10,
order = "[ghelmina]",
map_seed_offset = 100,
map_gen_settings = mapgen,
pollutant_type = "pain",
solar_power_in_space = nil,
draw_orbit = true,
planet_procession_set = {
arrival = { "default-b" },
departure = { "default-rocket-a" }
},
surface_properties = {
["day-night-cycle"] = 24 * 60 * minute,
["magnetic-field"] = 42,
["solar-power"] = 0,
["gravity"] = 10
},
--asteroid_spawn_influence = 1,
--asteroid_spawn_definitions = asteroid_util.spawn_definitions(nauvis_lignumis, 0.9),
--surface_render_parameters = {
-- clouds = effects.default_clouds_effect_properties()
--},
--persistent_ambient_sounds = {
-- base_ambience = { filename = "__lignumis__/sound/ambient/forest-ambience.ogg", volume = 0.1 },
-- wind = { filename = "__base__/sound/wind/wind.ogg", volume = 0.8 },
-- crossfade = {
-- order = { "wind", "base_ambience" },
-- curve_type = "cosine",
-- from = { control = 0.35, volume_percentage = 0.0 },
-- to = { control = 2, volume_percentage = 100.0 }
-- }
--},
--procession_graphic_catalogue = {
-- {
-- index = procession_graphic_catalogue_types.planet_hatch_emission_in_1,
-- sprite = util.sprite_load(
-- "__base__/graphics/entity/cargo-hubs/hatches/planet-lower-hatch-pod-emission-A",
-- {
-- priority = "medium",
-- draw_as_glow = true,
-- blend_mode = "additive",
-- scale = 0.5,
-- shift = util.by_pixel(-16, 96) --32 x ({0.5, -3.5} + {0, 0.5})
-- })
-- },
-- {
-- index = procession_graphic_catalogue_types.planet_hatch_emission_in_2,
-- sprite = util.sprite_load(
-- "__base__/graphics/entity/cargo-hubs/hatches/planet-lower-hatch-pod-emission-B",
-- {
-- priority = "medium",
-- draw_as_glow = true,
-- blend_mode = "additive",
-- scale = 0.5,
-- shift = util.by_pixel(-64, 96) --32 x ({2, -3.5} + {0, 0.5})
-- })
-- },
-- {
-- index = procession_graphic_catalogue_types.planet_hatch_emission_in_3,
-- sprite = util.sprite_load(
-- "__base__/graphics/entity/cargo-hubs/hatches/planet-lower-hatch-pod-emission-C",
-- {
-- priority = "medium",
-- draw_as_glow = true,
-- blend_mode = "additive",
-- scale = 0.5,
-- shift = util.by_pixel(-40, 64) --32 x ({1.25, -2.5} + {0, 0.5})
-- })
-- }
--}
}
})

View file

@ -0,0 +1,32 @@
data:extend({
{
type = "technology",
name = "planet-discovery-ghelmina",
localised_name = "Planet discovery Ghelmina",
icon = Ghelmina.graphics .. "technology/ghelmina.png",
icon_size = 256,
essential = false,
effects = {
{
type = "unlock-space-location",
space_location = "ghelmina",
}
},
prerequisites = { "rocket-turret", "advanced-asteroid-processing", "asteroid-reprocessing", "electromagnetic-science-pack" },
unit = {
count = 4000,
ingredients = {
{ "automation-science-pack", 1 },
{ "logistic-science-pack", 1 },
{ "chemical-science-pack", 1 },
{ "production-science-pack", 1 },
{ "utility-science-pack", 1 },
{ "space-science-pack", 1 },
{ "metallurgic-science-pack", 1 },
{ "agricultural-science-pack", 1 },
{ "electromagnetic-science-pack", 1 }
},
time = 60
}
}
})