Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
40 commits
Select commit Hold shift + click to select a range
a670aff
hfr и кристаллярий
IO979996 Feb 23, 2026
55c6b7b
Звуки и спрайты
IO979996 Feb 23, 2026
ef8791d
фикс
IO979996 Feb 23, 2026
30124e6
Ещё фикс
IO979996 Feb 23, 2026
792b187
Ещё фикс
IO979996 Feb 23, 2026
7cd8258
фикс2
IO979996 Feb 23, 2026
d77623f
Фикс, новые числа ХФР
IO979996 Feb 23, 2026
4920c31
Фикс андефайнеда в интерфейсе
IO979996 Feb 24, 2026
6c65b95
Теперь в формулах используется температура микса, а не хладагента
IO979996 Feb 24, 2026
1191e58
Фикс цифр дамага, хфр легче взрывается
IO979996 Feb 24, 2026
bd6d751
Фикс взрыва
IO979996 Feb 24, 2026
85402bc
Добавил предметы для кристалляризера
IO979996 Feb 24, 2026
10bb166
удалил скрипт копирования ВМа
IO979996 Feb 24, 2026
1057e01
Фикс кристаллов
IO979996 Feb 24, 2026
4da2f88
Фикс моделек
IO979996 Feb 24, 2026
29cf877
электролизер
IO979996 Feb 24, 2026
48b83c4
Хилиум теперь лечит брутал и берн при дыхании
IO979996 Feb 24, 2026
f0922e8
Добавление реакций
IO979996 Feb 25, 2026
04edd6d
Фикс
IO979996 Feb 25, 2026
0b816d9
бафф хилиума и фикс приоритетов
IO979996 Feb 25, 2026
f9c2659
Добавил оставшиеся реакции и сделал газы видимыми
IO979996 Feb 25, 2026
20b83d0
Спрайт горячего льда
IO979996 Feb 25, 2026
4948132
Добавил канистры с новыми газами
IO979996 Feb 26, 2026
a9e6678
Фикс спрайтов
IO979996 Feb 26, 2026
ca87367
Перенёс цены на кристаллы
IO979996 Feb 26, 2026
cd04c5e
бафф хилиума
IO979996 Feb 26, 2026
846b47f
новые вещи из кристаллов
IO979996 Feb 27, 2026
5390fc6
фикс
IO979996 Feb 27, 2026
8ea2330
статуи
IO979996 Feb 27, 2026
bf334e4
откат
IO979996 Feb 27, 2026
7961729
фикс ошибки
IO979996 Feb 27, 2026
bf52bd9
откат фикса
IO979996 Feb 27, 2026
5322856
вернул спрайты
IO979996 Feb 27, 2026
4f5628a
Добавил ещё крафты
IO979996 Feb 28, 2026
b458489
высокое давление не должно дамажить в костюме легендарного атмостеха
IO979996 Feb 28, 2026
287266a
Температура тела тоже не должна повышаться
IO979996 Feb 28, 2026
11203b4
остальные свойства
IO979996 Feb 28, 2026
5a43c3b
1
IO979996 Feb 28, 2026
cb44600
Merge upstream master, resolve conflicts (alist)
IO979996 Mar 1, 2026
c4aad93
Перенос новых крафтов в 1 вкладку
IO979996 Mar 1, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
11 changes: 10 additions & 1 deletion code/__DEFINES/atmospherics.dm
Original file line number Diff line number Diff line change
Expand Up @@ -287,7 +287,7 @@ GLOBAL_LIST_INIT(atmos_adjacent_savings, list(0,0))
//MULTIPIPES
//IF YOU EVER CHANGE THESE CHANGE SPRITES TO MATCH.
#define PIPING_LAYER_MIN 1
#define PIPING_LAYER_MAX 3
#define PIPING_LAYER_MAX 5
#define PIPING_LAYER_DEFAULT 2
#define PIPING_LAYER_P_X 5
#define PIPING_LAYER_P_Y 5
Expand Down Expand Up @@ -326,6 +326,15 @@ GLOBAL_LIST_INIT(atmos_adjacent_savings, list(0,0))
#define GAS_ETHANOL "ethanol"
#define GAS_MOTOR_OIL "motor_oil" // BLUEMOON ADD - Напитки для синтетиков
#define GAS_QCD "qcd"
// HFR / fusion gases (from WhiteMoon HFR port)
#define GAS_HELIUM "helium"
#define GAS_FREON "freon"
#define GAS_HALON "halon"
#define GAS_ANTINOBLIUM "antinoblium"
#define GAS_PROTO_NITRATE "proto_nitrate"
#define GAS_ZAUKER "zauker"
#define GAS_HEALIUM "healium"
#define GAS_NITRIUM "nitrium"

#define GAS_GROUP_CHEMICALS "Chemicals"

Expand Down
2 changes: 2 additions & 0 deletions code/__DEFINES/construction.dm
Original file line number Diff line number Diff line change
Expand Up @@ -105,6 +105,8 @@
#define CAT_SPAGHETTI "Spaghettis"
#define CAT_ICE "Frozen"
#define CAT_EAST "East foods" //BLUEMOON ADD
#define CAT_ATMOSPHERIC "Atmospherics" //BLUEMOON ADD - кристаллы и крафты из кристаллайзера (все в одной вкладке)
#define CAT_ATMOSPHERICS "Atmospherics" // единственная подкатегория — все рецепты в одном списке

#define RCD_FLOORWALL 1
#define RCD_AIRLOCK 2
Expand Down
1 change: 1 addition & 0 deletions code/__DEFINES/logging.dm
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@
#define INVESTIGATE_RESEARCH "research"
#define INVESTIGATE_SINGULO "singulo"
#define INVESTIGATE_SUPERMATTER "supermatter"
#define INVESTIGATE_HYPERTORUS "hypertorus"
#define INVESTIGATE_TELESCI "telesci"
#define INVESTIGATE_WIRES "wires"

Expand Down
71 changes: 69 additions & 2 deletions code/__DEFINES/reactions.dm
Original file line number Diff line number Diff line change
Expand Up @@ -21,8 +21,9 @@
#define STIMULUM_FIRST_DROP 0.065
#define STIMULUM_SECOND_RISE 0.0009
#define STIMULUM_ABSOLUTE_DROP 0.00000335
#define REACTION_OPPRESSION_THRESHOLD 10
#define NOBLIUM_FORMATION_ENERGY 2e9 //1 Mole of Noblium takes the planck energy to condense.
#define REACTION_OPPRESSION_THRESHOLD 5 // stops reactions when >5 mol and temp > 20 K
#define NOBLIUM_FORMATION_ENERGY 2e9 // energy released per mole (exothermic); BZ reduces amount
#define NOBLIUM_FORMATION_MAX_TEMP 15 // below 15 K only
//Research point amounts
#define NOBLIUM_RESEARCH_AMOUNT 25
#define BZ_RESEARCH_SCALE 4
Expand All @@ -43,5 +44,71 @@
#define FUSION_RAD_MAX 2000
#define FUSION_RAD_COEFFICIENT (-1000)
#define FUSION_INSTABILITY_ENDOTHERMALITY 2
#define FUSION_MAXIMUM_TEMPERATURE 1e8
// Snowflake fire product types
#define FIRE_PRODUCT_PLASMA 0

// Freon — below 0°C (273.15 K) endothermic with O2, down to ~50 K; Proto-Nitrate catalyst up to 310 K; hot ice 120–160 K
#define FREON_MAXIMUM_BURN_TEMPERATURE T0C
#define FREON_CATALYST_MAX_TEMPERATURE 310
#define FREON_LOWER_TEMPERATURE 60
#define FREON_TERMINAL_TEMPERATURE 50
#define FREON_HOT_ICE_MIN_TEMP 120
#define FREON_HOT_ICE_MAX_TEMP 160
#define FREON_OXYGEN_FULLBURN 10
#define FREON_BURN_RATE_DELTA 4
#define FIRE_FREON_ENERGY_CONSUMED 3e5
#define FREON_FORMATION_MIN_TEMPERATURE (FIRE_MINIMUM_TEMPERATURE_TO_EXIST + 100)
#define FREON_FORMATION_ENERGY_CONSUMED 2e5
#define OXYGEN_BURN_RATIO_BASE 2

// Halon
#define HALON_COMBUSTION_ENERGY 2500
#define HALON_COMBUSTION_MIN_TEMPERATURE (T0C + 70)
#define HALON_COMBUSTION_TEMPERATURE_SCALE (FIRE_MINIMUM_TEMPERATURE_TO_EXIST * 10)
#define HALON_COMBUSTION_MINIMUM_RESIN_MOLES (0.99 * HALON_COMBUSTION_MIN_TEMPERATURE / HALON_COMBUSTION_TEMPERATURE_SCALE)

// Healium
#define HEALIUM_FORMATION_MIN_TEMP 25
#define HEALIUM_FORMATION_MAX_TEMP 300
#define HEALIUM_FORMATION_ENERGY 9000

// Zauker
#define ZAUKER_FORMATION_MIN_TEMPERATURE 50000
#define ZAUKER_FORMATION_MAX_TEMPERATURE 75000
#define ZAUKER_FORMATION_TEMPERATURE_SCALE 5e-6
#define ZAUKER_FORMATION_ENERGY 5000
#define ZAUKER_DECOMPOSITION_MAX_RATE 20
#define ZAUKER_DECOMPOSITION_ENERGY 460

// Nitrium
#define NITRIUM_FORMATION_MIN_TEMP 1500
#define NITRIUM_FORMATION_TEMP_DIVISOR (FIRE_MINIMUM_TEMPERATURE_TO_EXIST * 8)
#define NITRIUM_FORMATION_ENERGY 100000
#define NITRIUM_DECOMPOSITION_MAX_TEMP (T0C + 70)
#define NITRIUM_DECOMPOSITION_TEMP_DIVISOR (FIRE_MINIMUM_TEMPERATURE_TO_EXIST * 8)
#define NITRIUM_DECOMPOSITION_ENERGY 30000

// Pluoxium formation (CO2 + O2 + Tritium)
#define PLUOXIUM_FORMATION_MIN_TEMP 50
#define PLUOXIUM_FORMATION_MAX_TEMP T0C
#define PLUOXIUM_FORMATION_MAX_RATE 5
#define PLUOXIUM_FORMATION_ENERGY 250

// Proto-Nitrate
#define PN_FORMATION_MIN_TEMPERATURE 5000
#define PN_FORMATION_MAX_TEMPERATURE 10000
#define PN_FORMATION_ENERGY 650
#define PN_HYDROGEN_CONVERSION_THRESHOLD 150
#define PN_HYDROGEN_CONVERSION_MAX_RATE 5
#define PN_HYDROGEN_CONVERSION_ENERGY 2500
#define PN_TRITIUM_CONVERSION_MIN_TEMP 150
#define PN_TRITIUM_CONVERSION_MAX_TEMP 340
#define PN_TRITIUM_CONVERSION_ENERGY 10000
#define PN_BZASE_MIN_TEMP 260
#define PN_BZASE_MAX_TEMP 280
#define PN_BZASE_ENERGY 60000

// Antinoblium
#define ANTINOBLIUM_CONVERSION_DIVISOR 90
#define REACTION_OPPRESSION_MIN_TEMP 20
2 changes: 2 additions & 0 deletions code/__DEFINES/sound.dm
Original file line number Diff line number Diff line change
Expand Up @@ -507,3 +507,5 @@ GLOBAL_LIST_EMPTY(sfx_datum_by_key)
#define SFX_DRAWER_CLOSE "drawer_close"
#define SFX_ROLLING_PIN_ROLLING "rolling_pin_rolling"
#define SFX_KNIFE_SLICE "knife_slice"
#define SFX_HYPERTORUS_CALM "hypertorus_calm"
#define SFX_HYPERTORUS_MELTING "hypertorus_melting"
3 changes: 3 additions & 0 deletions code/datums/components/crafting/crafting.dm
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,9 @@
CAT_TOOL,
CAT_FURNITURE,
),
CAT_ATMOSPHERIC = list(
CAT_ATMOSPHERICS,
),
CAT_PRIMAL = CAT_NONE,
CAT_FOOD = list(
CAT_BREAD,
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,138 @@
// Крафты из продуктов кристаллайзера и атмос-оборудования (вкладка Atmospherics)

/datum/crafting_recipe/zaukerite_bolt
name = "Zaukerite bolt"
result = /obj/item/zaukerite_bolt
reqs = list(
/obj/item/stack/sheet/mineral/zaukerite = 1,
/obj/item/stack/rods = 1,
)
time = 25
category = CAT_ATMOSPHERIC
subcategory = CAT_ATMOSPHERICS

/datum/crafting_recipe/hot_ice_pack
name = "Hot ice cooling pack"
result = /obj/item/hot_ice_pack
reqs = list(
/obj/item/stack/sheet/hot_ice = 3,
/obj/item/stack/sheet/cloth = 2,
)
time = 30
category = CAT_ATMOSPHERIC
subcategory = CAT_ATMOSPHERICS

// --- Atmos equipment (из WhiteMoon tailoring.dm + atmospheric.dm) ---
/datum/crafting_recipe/atmospherics_gas_mask
name = "Atmospherics gas mask"
result = /obj/item/clothing/mask/gas/atmos
tools = list(TOOL_WELDER)
time = 80
reqs = list(
/obj/item/stack/sheet/mineral/metal_hydrogen = 1,
/obj/item/stack/sheet/mineral/zaukerite = 1,
)
category = CAT_ATMOSPHERIC
subcategory = CAT_ATMOSPHERICS

/datum/crafting_recipe/igniter
name = "Igniter"
result = /obj/machinery/igniter
reqs = list(
/obj/item/stack/sheet/metal = 5,
/obj/item/assembly/igniter = 1,
)
time = 20
category = CAT_ATMOSPHERIC
subcategory = CAT_ATMOSPHERICS

/datum/crafting_recipe/ammonia_pack
name = "Ammonia pack"
result = /obj/item/ammonia_pack
reqs = list(
/obj/item/stack/ammonia_crystals = 3,
/obj/item/stack/sheet/cloth = 2,
)
time = 25
category = CAT_ATMOSPHERIC
subcategory = CAT_ATMOSPHERICS

/datum/crafting_recipe/metallic_hydrogen_rod
name = "Metallic hydrogen rod"
result = /obj/item/metallic_hydrogen_rod
reqs = list(
/obj/item/stack/sheet/mineral/metal_hydrogen = 1,
/obj/item/stack/rods = 1,
)
time = 30
category = CAT_ATMOSPHERIC
subcategory = CAT_ATMOSPHERICS

/datum/crafting_recipe/metallic_hydrogen_cooling_pack
name = "Metallic hydrogen cooling pack"
result = /obj/item/metallic_hydrogen_cooling_pack
reqs = list(
/obj/item/stack/sheet/mineral/metal_hydrogen = 2,
/obj/item/stack/sheet/cloth = 2,
)
time = 35
category = CAT_ATMOSPHERIC
subcategory = CAT_ATMOSPHERICS

/datum/crafting_recipe/elder_atmosian_statue
name = "Elder Atmosian statue"
result = /obj/structure/statue/elder_atmosian
reqs = list(
/obj/item/stack/sheet/mineral/metal_hydrogen = 20,
/obj/item/stack/sheet/mineral/zaukerite = 15,
/obj/item/stack/sheet/metal = 30,
)
time = 60
category = CAT_ATMOSPHERIC
subcategory = CAT_ATMOSPHERICS

/datum/crafting_recipe/elder_atmosian_armor
name = "Elder Atmosian armor"
result = /obj/item/clothing/suit/armor/elder_atmosian
reqs = list(
/obj/item/stack/sheet/mineral/metal_hydrogen = 5,
/obj/item/clothing/suit/fire/atmos = 1,
)
time = 40
category = CAT_ATMOSPHERIC
subcategory = CAT_ATMOSPHERICS

/datum/crafting_recipe/elder_atmosian_helmet
name = "Elder Atmosian helmet"
result = /obj/item/clothing/head/helmet/elder_atmosian
reqs = list(
/obj/item/stack/sheet/mineral/metal_hydrogen = 3,
/obj/item/clothing/head/hardhat/atmos = 1,
)
time = 40
category = CAT_ATMOSPHERIC
subcategory = CAT_ATMOSPHERICS

/datum/crafting_recipe/metal_h2_fireaxe
name = "Metal hydrogen fire axe"
result = /obj/item/fireaxe/metal_h2_axe
reqs = list(
/obj/item/stack/sheet/mineral/metal_hydrogen = 7,
)
time = 30
category = CAT_ATMOSPHERIC
subcategory = CAT_ATMOSPHERICS

/datum/crafting_recipe/crystal_cell_assembly
name = "Crystal cell assembly"
result = /obj/item/stock_parts/cell/crystal_cell
reqs = list(
/obj/item/stack/sheet/mineral/plasma = 2,
/obj/item/stack/sheet/mineral/diamond = 1,
/obj/item/stack/cable_coil = 5,
/obj/item/stack/sheet/glass = 1,
)
tools = list(TOOL_WELDER, TOOL_SCREWDRIVER)
time = 40
category = CAT_ATMOSPHERIC
subcategory = CAT_ATMOSPHERICS
12 changes: 6 additions & 6 deletions code/datums/looping_sounds/machinery_sounds.dm
Original file line number Diff line number Diff line change
Expand Up @@ -28,12 +28,12 @@

///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

// /datum/looping_sound/hypertorus
// mid_sounds = list('sound/machines/hypertorus/loops/hypertorus_nominal.ogg' = 1)
// mid_length = 60
// volume = 55
// extra_range = 15
// vary = TRUE
/datum/looping_sound/hypertorus
mid_sounds = list('sound/machines/sm/supermatter1.ogg'=1,'sound/machines/sm/supermatter2.ogg'=1,'sound/machines/sm/supermatter3.ogg'=1)
mid_length = 10
volume = 5
extra_range = 15
vary = TRUE

///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

Expand Down
10 changes: 10 additions & 0 deletions code/datums/materials/basemats.dm
Original file line number Diff line number Diff line change
Expand Up @@ -138,6 +138,16 @@ Unless you know what you're doing, only use the first three numbers. They're in
qdel(source.GetComponent(/datum/component/slippery))
qdel(source.GetComponent(/datum/component/squeak))

/// Metallic hydrogen (crystallizer product); used in atmos crafts and Elder Atmosian statue
/datum/material/metalhydrogen
name = "Metal Hydrogen"
desc = "Solid metallic hydrogen. Some say it should be impossible."
color = "#62708A"
categories = list(MAT_CATEGORY_ORE = TRUE, MAT_CATEGORY_RIGID = TRUE, MAT_CATEGORY_BASE_RECIPES = TRUE)
sheet_type = /obj/item/stack/sheet/mineral/metal_hydrogen
value_per_unit = 0.07
beauty_modifier = 0.35
strength_modifier = 1.2

///Mediocre force increase
/datum/material/titanium
Expand Down
Loading
Loading