Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merge upstream 11.12.24 #864

Merged
merged 67 commits into from
Dec 11, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
67 commits
Select commit Hold shift + click to select a range
b306c28
General maintenance for RPD (#88047)
SyncIt21 Dec 7, 2024
45c4edc
Automatic changelog for PR #88047 [ci skip]
tgstation-ci[bot] Dec 7, 2024
29991b9
Automatic changelog compile [ci skip]
tgstation-ci[bot] Dec 8, 2024
ec7913e
HSSSS, GRRRR, meow: feral edition (#88385)
Sadboysuss Dec 8, 2024
adfcc13
Automatic changelog for PR #88385 [ci skip]
tgstation-ci[bot] Dec 8, 2024
bf6958a
Adds a mail sorting unit to sort mail per department; some flatpack s…
mcbalaam Dec 8, 2024
3ae424c
Automatic changelog for PR #88288 [ci skip]
tgstation-ci[bot] Dec 8, 2024
f317c57
[NO GBP] Hotfix for CI flaky due to the spacemove fix (#88408)
SmArtKar Dec 8, 2024
b3085c9
Fixes some instances of PostTransfer not using new_parent argument (#…
tontyGH Dec 8, 2024
8f3f54b
Fix anomaly shifter deleting global themes (#88402)
FlufflesTheDog Dec 8, 2024
540db3d
Automatic changelog for PR #88398 [ci skip]
tgstation-ci[bot] Dec 8, 2024
9e4d867
Automatic changelog for PR #88402 [ci skip]
tgstation-ci[bot] Dec 8, 2024
189616a
Add better logging for ruins (#88403)
timothymtorres Dec 8, 2024
b8080ab
Automatic changelog for PR #88403 [ci skip]
tgstation-ci[bot] Dec 8, 2024
ce9a865
multitile airlock assemblies from a broken multitile airlock are the …
mc-oofert Dec 8, 2024
61338cb
Automatic changelog for PR #88409 [ci skip]
tgstation-ci[bot] Dec 8, 2024
88d1535
Pressure Tanks no longer runtime when shuttleRotated, Remedies consta…
tontyGH Dec 8, 2024
58423af
fixes access on that one engineering maintenance door on birdshot (#8…
mc-oofert Dec 8, 2024
e8e312c
Automatic changelog for PR #88413 [ci skip]
tgstation-ci[bot] Dec 8, 2024
893fe04
Automatic changelog for PR #88387 [ci skip]
tgstation-ci[bot] Dec 8, 2024
dadd6e5
[NO GBP] Gives tiziran water turfs their own fish again (#88381)
Ghommie Dec 8, 2024
a5c7a35
Automatic changelog for PR #88381 [ci skip]
tgstation-ci[bot] Dec 8, 2024
f38e7c2
Adds winterhood hair masks (#88390)
SmArtKar Dec 8, 2024
74acd8c
Automatic changelog for PR #88390 [ci skip]
tgstation-ci[bot] Dec 8, 2024
bbb94de
Repaths heavy crowbar so people don't map it in accidentally (#88384)
MrMelbert Dec 8, 2024
23c885c
Automatic changelog for PR #88384 [ci skip]
tgstation-ci[bot] Dec 8, 2024
ca4e9c7
pointing DLC, neurodivergency edition (#88333)
Sadboysuss Dec 8, 2024
becfd7e
Automatic changelog for PR #88333 [ci skip]
tgstation-ci[bot] Dec 8, 2024
69029cb
Adds unique sprites for Endotherm wintercoats (#88389)
SmArtKar Dec 8, 2024
982e81c
Automatic changelog for PR #88389 [ci skip]
tgstation-ci[bot] Dec 8, 2024
124689b
Automatic changelog compile [ci skip]
tgstation-ci[bot] Dec 9, 2024
e186970
Fixes a flaky caused by a maintenance spawner creating decals in spac…
SmArtKar Dec 9, 2024
fabf382
Fixes smokey remains flaky (#88422)
SmArtKar Dec 9, 2024
ad7816e
Update rust_g to 3.5.1 (#88181)
Ghommie Dec 9, 2024
41a606d
Eradicative Chronic Illness (#87985)
MelokGleb Dec 9, 2024
5227cef
Automatic changelog for PR #87985 [ci skip]
tgstation-ci[bot] Dec 9, 2024
3bafac6
Automatic changelog compile [ci skip]
tgstation-ci[bot] Dec 10, 2024
314e8cc
Map vote picks winner out of choices (#88425)
lessthnthree Dec 10, 2024
8daee10
Fix fitness examine runtime (#88427)
MrMelbert Dec 10, 2024
15d07d2
Automatic changelog for PR #88425 [ci skip]
tgstation-ci[bot] Dec 10, 2024
3017970
[NO GBP] Fixing a couple nits with hot spring turfs. (#88318)
Ghommie Dec 10, 2024
6c11961
Improving the fish unit tests a little (#88397)
Ghommie Dec 10, 2024
5d70a5f
Automatic changelog for PR #88397 [ci skip]
tgstation-ci[bot] Dec 10, 2024
5bb0b21
Fixing remote/ghost alt-click on aquariums + missing plasma tetra (#8…
Ghommie Dec 10, 2024
39d0b65
Automatic changelog for PR #88334 [ci skip]
tgstation-ci[bot] Dec 10, 2024
a89620d
Fixes items not falling from a lattice's loc after it's deconstructed…
Sadboysuss Dec 10, 2024
4c90d1a
Automatic changelog for PR #88439 [ci skip]
tgstation-ci[bot] Dec 10, 2024
b82b96f
Fixes *me emote running when using *help (#88437)
Sadboysuss Dec 10, 2024
5aff13f
Automatic changelog for PR #88437 [ci skip]
tgstation-ci[bot] Dec 10, 2024
933fc03
fixes completion gate getting mad about screenshot tests being skippe…
ZephyrTFA Dec 10, 2024
d05a8f6
Removes empty overlay from airlocks when lights not needed (#88410)
larentoun Dec 10, 2024
fc496d1
Fixes two mech power issues caused by megacell rework (#88414)
KingkumaArt Dec 10, 2024
8cccc5a
Automatic changelog for PR #88414 [ci skip]
tgstation-ci[bot] Dec 10, 2024
fac67c4
unhecks bar seating attack chain heck (#88440)
Sadboysuss Dec 10, 2024
a12c43b
Automatic changelog for PR #88440 [ci skip]
tgstation-ci[bot] Dec 10, 2024
3ed2194
traversing over slippery surfaces while buckled to a mob will no long…
Sadboysuss Dec 10, 2024
c2cde66
Automatic changelog for PR #88430 [ci skip]
tgstation-ci[bot] Dec 10, 2024
c092240
Fixes master (slip runtimes) (#88467)
Sadboysuss Dec 10, 2024
6e90175
Automatic changelog for PR #88467 [ci skip]
tgstation-ci[bot] Dec 10, 2024
ef72ee9
Adds suicides to fishies (#88258)
carlarctg Dec 10, 2024
c408b6b
Automatic changelog for PR #88258 [ci skip]
tgstation-ci[bot] Dec 10, 2024
b19fbdc
Removes rogue sand decals from Island Brawl domain walls (#88191)
SmArtKar Dec 10, 2024
83d38f9
Automatic changelog for PR #88191 [ci skip]
tgstation-ci[bot] Dec 10, 2024
2963f53
Automatic changelog compile [ci skip]
tgstation-ci[bot] Dec 11, 2024
95bf0ba
Fixes wendigo lag at cost of its attacks' visuals (#88441)
SmArtKar Dec 11, 2024
873d87f
Automatic changelog for PR #88441 [ci skip]
tgstation-ci[bot] Dec 11, 2024
7c46a30
Merge branch 'upstream-master' into merge-upstream
larentoun Dec 11, 2024
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
1 change: 1 addition & 0 deletions .github/workflows/ci_suite.yml
Original file line number Diff line number Diff line change
Expand Up @@ -298,3 +298,4 @@ jobs:
uses: re-actors/alls-green@release/v1
with:
jobs: ${{ toJSON(needs) }}
allowed-skips: compare_screenshots
Original file line number Diff line number Diff line change
Expand Up @@ -311,7 +311,7 @@
},
/obj/structure/rack,
/obj/item/wrench,
/obj/item/crowbar/large/heavy,
/obj/item/crowbar/large/twenty_force,
/obj/machinery/light/small/built/directional/south,
/turf/open/floor/plating/icemoon,
/area/ruin/powered/shuttle)
Expand Down
2 changes: 1 addition & 1 deletion _maps/RandomRuins/SpaceRuins/russian_derelict.dmm
Original file line number Diff line number Diff line change
Expand Up @@ -5893,8 +5893,8 @@
/turf/open/floor/plating,
/area/ruin/space/ks13/science/ordnance)
"Nk" = (
/obj/effect/spawner/random/maintenance,
/obj/structure/lattice,
/obj/effect/spawner/random/maintenance/no_decals,
/turf/template_noop,
/area/space/nearstation)
"Nl" = (
Expand Down
2 changes: 1 addition & 1 deletion _maps/RandomRuins/SpaceRuins/shuttlerelic.dmm
Original file line number Diff line number Diff line change
Expand Up @@ -63,7 +63,7 @@
/obj/structure/chair/old{
dir = 1
},
/obj/item/crowbar/large/heavy,
/obj/item/crowbar/large/twenty_force,
/turf/open/floor/oldshuttle,
/area/ruin/space/has_grav/powered)
"o" = (
Expand Down
6 changes: 3 additions & 3 deletions _maps/map_files/Birdshot/birdshot.dmm
Original file line number Diff line number Diff line change
Expand Up @@ -33933,7 +33933,7 @@
/obj/effect/turf_decal/tile/dark_red/opposingcorners,
/obj/machinery/airalarm/directional/north,
/obj/structure/rack,
/obj/item/crowbar/large/heavy,
/obj/item/crowbar/large,
/obj/item/wirecutters,
/obj/item/wrench,
/turf/open/floor/iron,
Expand Down Expand Up @@ -43772,7 +43772,7 @@
/area/station/science/ordnance/burnchamber)
"oZL" = (
/obj/structure/table,
/obj/item/crowbar/large/heavy,
/obj/item/crowbar/large,
/obj/item/stack/cable_coil,
/obj/machinery/light/small/directional/south,
/turf/open/floor/iron,
Expand Down Expand Up @@ -47524,7 +47524,7 @@
/obj/machinery/door/airlock/maintenance{
name = "Atmospherics Maintenance"
},
/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance,
/obj/effect/mapping_helpers/airlock/access/any/engineering/general,
/turf/open/floor/plating,
/area/station/maintenance/department/engine/atmos)
"qmz" = (
Expand Down
2 changes: 1 addition & 1 deletion _maps/map_files/NebulaStation/NebulaStation.dmm
Original file line number Diff line number Diff line change
Expand Up @@ -85750,7 +85750,7 @@
/area/space/nearstation)
"mLK" = (
/obj/structure/rack,
/obj/item/crowbar/large/heavy,
/obj/item/crowbar/large,
/obj/item/wirecutters,
/obj/item/wrench,
/obj/effect/turf_decal/siding/thinplating_new/dark{
Expand Down
4 changes: 2 additions & 2 deletions _maps/map_files/wawastation/wawastation.dmm
Original file line number Diff line number Diff line change
Expand Up @@ -65378,7 +65378,7 @@
/turf/open/floor/circuit/green/telecomms/mainframe,
/area/station/tcommsat/server)
"wZU" = (
/obj/item/crowbar/large/heavy,
/obj/item/crowbar/large/old,
/turf/open/misc/asteroid,
/area/station/asteroid)
"xad" = (
Expand Down Expand Up @@ -68227,7 +68227,7 @@
},
/obj/effect/decal/cleanable/dirt/dust,
/obj/effect/mapping_helpers/broken_floor,
/obj/item/crowbar/large/heavy,
/obj/item/crowbar/large,
/turf/open/floor/plating,
/area/station/maintenance/department/medical/central)
"ybh" = (
Expand Down
2 changes: 1 addition & 1 deletion _maps/modular_generic/ice_l_storage.dmm
Original file line number Diff line number Diff line change
Expand Up @@ -213,7 +213,7 @@
"M" = (
/obj/effect/turf_decal/bot/right,
/obj/structure/closet/crate/large,
/obj/item/crowbar/large/heavy,
/obj/item/crowbar/large/twenty_force,
/turf/open/floor/plating,
/area/template_noop)
"N" = (
Expand Down
44 changes: 18 additions & 26 deletions _maps/virtual_domains/island_brawl.dmm
Original file line number Diff line number Diff line change
Expand Up @@ -854,10 +854,6 @@
},
/turf/open/floor/plating,
/area/virtual_domain)
"kI" = (
/obj/effect/turf_decal/sand,
/turf/closed/wall/mineral/wood,
/area/virtual_domain)
"kJ" = (
/obj/machinery/shower/directional/south,
/obj/effect/turf_decal/siding/wood{
Expand Down Expand Up @@ -3177,10 +3173,6 @@
},
/turf/open/floor/iron/white/textured_large,
/area/virtual_domain)
"NZ" = (
/obj/effect/turf_decal/sand,
/turf/closed/wall/mineral/wood,
/area/virtual_domain/fullbright)
"Of" = (
/obj/item/reagent_containers/cup/soda_cans/space_mountain_wind{
pixel_x = -17;
Expand Down Expand Up @@ -7866,9 +7858,9 @@ bX
ev
ka
ka
NZ
NZ
eK
Bq
Bq
Bq
JN
JN
ka
Expand Down Expand Up @@ -7948,7 +7940,7 @@ bX
Yo
sz
ka
NZ
Bq
YI
LD
JN
Expand Down Expand Up @@ -8030,9 +8022,9 @@ Yo
Yo
sz
ka
NZ
kI
eK
Bq
Bq
Bq
JN
JN
ka
Expand Down Expand Up @@ -8112,7 +8104,7 @@ Yo
ka
ka
ka
NZ
Bq
Qk
Uf
JN
Expand Down Expand Up @@ -8194,9 +8186,9 @@ ka
th
ka
eK
kI
kI
eK
Bq
Bq
Bq
JN
JN
ka
Expand Down Expand Up @@ -8276,7 +8268,7 @@ ka
ka
ka
ka
NZ
Bq
ZB
sa
JN
Expand Down Expand Up @@ -8358,9 +8350,9 @@ ka
ka
ka
ka
eK
eK
eK
Bq
Bq
Bq
JN
JN
ka
Expand Down Expand Up @@ -11225,8 +11217,8 @@ cO
oa
th
ka
NZ
NZ
eK
eK
eK
ka
ka
Expand Down Expand Up @@ -11307,7 +11299,7 @@ cO
wb
MT
ka
NZ
eK
EA
xe
ka
Expand Down
11 changes: 11 additions & 0 deletions code/__DEFINES/fish.dm
Original file line number Diff line number Diff line change
Expand Up @@ -135,6 +135,17 @@
///The coefficient for maximum weight/size divergence relative to the averages.
#define MAX_FISH_DEVIATION_COEFF 2.5

/**
* Base multiplier of the difference between current size and weight and their maximum value
* used to calculate how much fish grow each time they're fed, alongside with the current hunger,
* and the current size and weight, meaning bigger fish naturally tend to grow way slowier
*/
#define FISH_GROWTH_MULT 0.38
/// Growth peaks at 45% hunger but very rapidly wanes past that.
#define FISH_GROWTH_PEAK 0.45
/// Used as part of the divisor to slow down growth of bigger fish
#define FISH_SIZE_WEIGHT_GROWTH_MALUS 0.5

///The volume of the grind results is multiplied by the fish' weight and divided by this.
#define FISH_GRIND_RESULTS_WEIGHT_DIVISOR 500
///The number of fillets is multiplied by the fish' size and divided by this.
Expand Down
1 change: 1 addition & 0 deletions code/__DEFINES/mobs.dm
Original file line number Diff line number Diff line change
Expand Up @@ -655,6 +655,7 @@
// Hair masks
#define HAIR_MASK_HIDE_ABOVE_45_DEG_MEDIUM "hide_above_45deg_medium"
#define HAIR_MASK_HIDE_ABOVE_45_DEG_LOW "hide_above_45deg_low"
#define HAIR_MASK_HIDE_WINTERHOOD "hide_winterhood"

// Height defines
// - They are numbers so you can compare height values (x height < y height)
Expand Down
25 changes: 17 additions & 8 deletions code/__DEFINES/pipe_construction.dm
Original file line number Diff line number Diff line change
@@ -1,12 +1,21 @@
//Construction Categories
#define PIPE_STRAIGHT 0 //2 directions: N/S, E/W
#define PIPE_BENDABLE 1 //6 directions: N/S, E/W, N/E, N/W, S/E, S/W
#define PIPE_TRINARY 2 //4 directions: N/E/S, E/S/W, S/W/N, W/N/E
#define PIPE_TRIN_M 3 //8 directions: N->S+E, S->N+E, N->S+W, S->N+W, E->W+S, W->E+S, E->W+N, W->E+N
#define PIPE_UNARY 4 //4 directions: N, S, E, W
#define PIPE_ONEDIR 5 //1 direction: N/S/E/W
#define PIPE_UNARY_FLIPPABLE 6 //8 directions: N/S/E/W/N-flipped/S-flipped/E-flipped/W-flipped
#define PIPE_ONEDIR_FLIPPABLE 7 //2 direction: N/S/E/W, N-flipped/S-flipped/E-flipped/W-flipped

///2 directions: N/S, E/W
#define PIPE_STRAIGHT 0
///6 directions: N/S, E/W, N/E, N/W, S/E, S/W
#define PIPE_BENDABLE 1
///4 directions: N/E/S, E/S/W, S/W/N, W/N/E
#define PIPE_TRINARY 2
///8 directions: N->S+E, S->N+E, N->S+W, S->N+W, E->W+S, W->E+S, E->W+N, W->E+N
#define PIPE_TRIN_M 3
///4 directions: N, S, E, W
#define PIPE_UNARY 4
///1 direction: N/S/E/W
#define PIPE_ONEDIR 5
///8 directions: N/S/E/W/N-flipped/S-flipped/E-flipped/W-flipped
#define PIPE_UNARY_FLIPPABLE 6
///2 direction: N/S/E/W, N-flipped/S-flipped/E-flipped/W-flipped
#define PIPE_ONEDIR_FLIPPABLE 7

//Disposal pipe relative connection directions
#define DISP_DIR_BASE 0
Expand Down
71 changes: 68 additions & 3 deletions code/__DEFINES/rust_g.dm
Original file line number Diff line number Diff line change
Expand Up @@ -161,10 +161,19 @@
#define rustg_git_revparse(rev) RUSTG_CALL(RUST_G, "rg_git_revparse")(rev)

/**
* Returns the date of the given revision in the format YYYY-MM-DD.
* Returns null if the revision is invalid.
* Returns the date of the given revision using the provided format.
* Defaults to returning %F which is YYYY-MM-DD.
*/
#define rustg_git_commit_date(rev) RUSTG_CALL(RUST_G, "rg_git_commit_date")(rev)
/proc/rustg_git_commit_date(rev, format = "%F")
return RUSTG_CALL(RUST_G, "rg_git_commit_date")(rev, format)

/**
* Returns the formatted datetime string of HEAD using the provided format.
* Defaults to returning %F which is YYYY-MM-DD.
* This is different to rustg_git_commit_date because it only needs the logs directory.
*/
/proc/rustg_git_commit_date_head(format = "%F")
return RUSTG_CALL(RUST_G, "rg_git_commit_date_head")(format)

#define RUSTG_HTTP_METHOD_GET "get"
#define RUSTG_HTTP_METHOD_PUT "put"
Expand All @@ -187,6 +196,20 @@

#define rustg_noise_get_at_coordinates(seed, x, y) RUSTG_CALL(RUST_G, "noise_get_at_coordinates")(seed, x, y)

/**
* Generates a 2D poisson disk distribution ('blue noise'), which is relatively uniform.
*
* params:
* `seed`: str
* `width`: int, width of the noisemap (see world.maxx)
* `length`: int, height of the noisemap (see world.maxy)
* `radius`: int, distance between points on the noisemap
*
* returns:
* a width*length length string of 1s and 0s representing a 2D poisson sample collapsed into a 1D string
*/
#define rustg_noise_poisson_map(seed, width, length, radius) RUSTG_CALL(RUST_G, "noise_poisson_map")(seed, width, length, radius)

/*
* Takes in a string and json_encode()"d lists to produce a sanitized string.
* This function operates on whitelists, there is currently no way to blacklist.
Expand Down Expand Up @@ -238,3 +261,45 @@
#define url_decode(text) rustg_url_decode(text)
#endif

/// Provided a static RSC file path or a raw text file path, returns the duration of the file in deciseconds as a float.
/proc/rustg_sound_length(file_path)
var/static/list/sound_cache
if(isnull(sound_cache))
sound_cache = list()

. = 0

if(!istext(file_path))
if(!isfile(file_path))
CRASH("rustg_sound_length error: Passed non-text object")

if(length("[file_path]")) // Runtime generated RSC references stringify into 0-length strings.
file_path = "[file_path]"
else
CRASH("rustg_sound_length does not support non-static file refs.")

var/cached_length = sound_cache[file_path]
if(!isnull(cached_length))
return cached_length

var/ret = RUSTG_CALL(RUST_G, "sound_len")(file_path)
var/as_num = text2num(ret)
if(isnull(ret))
. = 0
CRASH("rustg_sound_length error: [ret]")

sound_cache[file_path] = as_num
return as_num


#define RUSTG_SOUNDLEN_SUCCESSES "successes"
#define RUSTG_SOUNDLEN_ERRORS "errors"
/**
* Returns a nested key-value list containing "successes" and "errors"
* The format is as follows:
* list(
* RUSTG_SOUNDLEN_SUCCESES = list("sounds/test.ogg" = 25.34),
* RUSTG_SOUNDLEN_ERRORS = list("sound/bad.png" = "SoundLen: Unable to decode file."),
*)
*/
#define rustg_sound_length_list(file_paths) json_decode(RUSTG_CALL(RUST_G, "sound_len_list")(json_encode(file_paths)))
1 change: 1 addition & 0 deletions code/__DEFINES/subsystems.dm
Original file line number Diff line number Diff line change
Expand Up @@ -166,6 +166,7 @@
#define INIT_ORDER_OUTPUTS 35
#define INIT_ORDER_RESTAURANT 34
#define INIT_ORDER_TTS 33
#define INIT_ORDER_FLUIDS 32 // Needs to be above atoms, as some atoms may want to start fluids/gases on init
#define INIT_ORDER_ATOMS 30
#define INIT_ORDER_LANGUAGE 25
#define INIT_ORDER_MACHINES 20
Expand Down
2 changes: 2 additions & 0 deletions code/__DEFINES/traits/declarations.dm
Original file line number Diff line number Diff line change
Expand Up @@ -1390,6 +1390,8 @@ Remember to update _globalvars/traits.dm if you're adding/removing/renaming trai
* (This may be changed later but I chose to do it this way to avoid messing up interactions which require combat mode)
*/
#define TRAIT_COMBAT_MODE_SKIP_INTERACTION "combat_mode_skip_interaction"
// bars change of combat mode
#define TRAIT_COMBAT_MODE_LOCK "combat_mode_lock"

///A "fake" effect that should not be subject to normal effect removal methods (like the effect remover component)
#define TRAIT_ILLUSORY_EFFECT "illusory_effect"
Expand Down
3 changes: 3 additions & 0 deletions code/__HELPERS/type2type.dm
Original file line number Diff line number Diff line change
Expand Up @@ -99,6 +99,9 @@ GLOBAL_LIST_INIT(modulo_angle_to_dir, list(NORTH,NORTHEAST,EAST,SOUTHEAST,SOUTH,
else
return null

///Returns a single dir rotated by x degrees clockwise, adhering to the cardinal directions.
#define turn_cardinal(dir, rotation) ( angle2dir_cardinal ( dir2angle(dir) + rotation ) )

//Returns the angle in english
/proc/angle2text(degree)
return dir2text(angle2dir(degree))
Expand Down
Loading
Loading