Skip to content
Merged
Show file tree
Hide file tree
Changes from 27 commits
Commits
Show all changes
33 commits
Select commit Hold shift + click to select a range
5140299
made chimeric organs alot more forgiving
dwasint Jan 8, 2026
6ae50e7
Update coins.dm
dwasint Jan 8, 2026
cd51580
adds in trade agreements (bounty replacement)
dwasint Jan 8, 2026
fa5e41f
makes them pipe lines
dwasint Jan 9, 2026
21e4d24
Update coins.dm
dwasint Jan 9, 2026
f45604b
pain now uses a lingering fullscreen effect
dwasint Jan 9, 2026
b28b84d
Update perfume.dm
dwasint Jan 9, 2026
6d44571
Update perfume.dm
dwasint Jan 9, 2026
38f82c5
tweaks
dwasint Jan 9, 2026
0976f64
converts over to a better algorithm for placing nodes and builds a be…
dwasint Jan 9, 2026
2a93420
adds functionality to spawn traders, and other integrations for natio…
dwasint Jan 9, 2026
9ce7277
fixes
dwasint Jan 9, 2026
724948d
Update _base_blueprint_object.dm
dwasint Jan 10, 2026
4fe835e
Update _base_blueprint_object.dm
dwasint Jan 10, 2026
3483844
Update living_defense.dm
dwasint Jan 10, 2026
f4e142d
Update living_defense.dm
dwasint Jan 10, 2026
302e923
rather big qol for fishers
dwasint Jan 10, 2026
c943208
Update special.dm
dwasint Jan 10, 2026
f0d557e
Update mob_overlay_effect.dm
dwasint Jan 10, 2026
e3a069f
Update _traits.dm
dwasint Jan 11, 2026
9f4d16f
redone lures, added bait_flag to non food baits, lures and hooks use…
dwasint Jan 11, 2026
7892d09
adds new fish spot
dwasint Jan 11, 2026
00d466d
random lure map helper
dwasint Jan 11, 2026
10d69ed
automations part 1
dwasint Jan 16, 2026
675f9f1
Update traits.dm
dwasint Jan 16, 2026
8322fec
Update _automaton.dm
dwasint Jan 16, 2026
798abdb
Update _automaton.dm
dwasint Jan 16, 2026
62d570e
Update action.dm
dwasint Jan 17, 2026
43d0791
Merge remote-tracking branch 'upstream/main' into glorp-IX
dwasint Jan 17, 2026
b0d264b
Update steam_life.dm
dwasint Jan 17, 2026
c26a86e
adds custom_name data to keep name through new and merge
dwasint Jan 17, 2026
8abb101
adds custom taste passthrough
dwasint Jan 17, 2026
e7a6d6a
desleeve python script
dwasint Jan 27, 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
2 changes: 1 addition & 1 deletion _maps/map_files/daftmarsh/daftmarsh.dmm
Original file line number Diff line number Diff line change
Expand Up @@ -11676,7 +11676,7 @@
/area/outdoors/town)
"kdA" = (
/obj/structure/closet/crate/chest/crate,
/obj/item/fishing/lure,
/obj/effect/spawner/map_spawner/random_lure,
/turf/open/floor/wood,
/area/indoors/town)
"kdC" = (
Expand Down
4 changes: 2 additions & 2 deletions _maps/map_files/debug/roguetest.dmm
Original file line number Diff line number Diff line change
Expand Up @@ -2863,9 +2863,7 @@
/turf/open/floor/grass/yel,
/area/outdoors)
"GO" = (
/obj/effect/landmark/start/adventurerlate,
/obj/machinery/light/fueled/wallfire/candle,
/obj/effect/landmark/latejoin,
/turf/open/floor/ruinedwood,
/area/outdoors)
"GU" = (
Expand Down Expand Up @@ -3477,6 +3475,8 @@
pixel_x = -6
},
/obj/structure/table/vtable/v2,
/obj/effect/spawner/map_spawner/random_lure,
/obj/effect/spawner/map_spawner/random_lure,
/turf/open/floor/wood,
/area/indoors/town/manor)
"VA" = (
Expand Down
2 changes: 1 addition & 1 deletion _maps/map_files/vanderlin/vanderlin.dmm
Original file line number Diff line number Diff line change
Expand Up @@ -1519,7 +1519,7 @@
/area/indoors/town/orphanage)
"aMw" = (
/obj/structure/closet/crate/chest/neu,
/obj/item/fishing/lure,
/obj/effect/spawner/map_spawner/random_lure,
/obj/effect/decal/cleanable/dirt/dust,
/turf/open/floor/wood,
/area/indoors/town)
Expand Down
2 changes: 1 addition & 1 deletion _maps/matthios_tomb/room/goblincamp.dmm
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
"ao" = (
/obj/structure/chair/stool,
/obj/item/fishingrod,
/obj/item/fishing/lure,
/obj/effect/spawner/map_spawner/random_lure,
/turf/open/floor/ruinedwood,
/area/under/tomb/cave)
"aN" = (
Expand Down
11 changes: 11 additions & 0 deletions code/__DEFINES/components.dm
Original file line number Diff line number Diff line change
Expand Up @@ -114,6 +114,7 @@
#define COMSIG_MOB_UPDATE_SIGHT "mob_update_sight" //from base of /mob/update_sight(): ()
#define COMSIG_MOB_SAY "mob_say" // from /mob/living/say(): ()
#define COMPONENT_UPPERCASE_SPEECH 1
#define COMPONENT_SPEECH_CANCEL (1<<1)
// used to access COMSIG_MOB_SAY argslist
#define SPEECH_MESSAGE 1
// #define SPEECH_BUBBLE_TYPE 2
Expand Down Expand Up @@ -347,3 +348,13 @@
#define COMSIG_TIPS_REMOVE "comsig_tip_remove"
///used incase we care about a tracker dying
#define COMSIG_LIVING_TRACKER_REMOVED "tracker_removed"
///used when a command is issued to someone, if they have the correct component acts on this
#define COMSIG_PARENT_COMMAND_RECEIVED "command_received"

#define COMSIG_AUGMENT_INSTALL "augment_install"
#define COMSIG_AUGMENT_REMOVE "augment_remove"
#define COMSIG_AUGMENT_REPAIR "augment_repair"
#define COMSIG_AUGMENT_GET_STABILITY "augment_get_stability"

#define COMPONENT_AUGMENT_SUCCESS (1<<0)
#define COMPONENT_AUGMENT_FAILED (1<<1)
2 changes: 1 addition & 1 deletion code/__DEFINES/fish.dm
Original file line number Diff line number Diff line change
Expand Up @@ -202,7 +202,7 @@
///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.
#define FISH_FILLET_NUMBER_SIZE_DIVISOR 60
#define FISH_FILLET_NUMBER_SIZE_DIVISOR 30

///The slowdown of the fish when carried begins at this value
#define FISH_WEIGHT_SLOWDOWN 2100
Expand Down
22 changes: 22 additions & 0 deletions code/__DEFINES/footsteps.dm
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,7 @@
#define FOOTSTEP_MOB_SHOE "footstep_shoe"
#define FOOTSTEP_MOB_HUMAN "footstep_human" //Warning: Only works on /mob/living/carbon/human
#define FOOTSTEP_MOB_SLIME "footstep_slime"
#define FOOTSTEP_MOB_METAL "footstep_metal"

//priority defines for the footstep_override element
#define STEP_SOUND_NO_PRIORITY 0
Expand Down Expand Up @@ -186,3 +187,24 @@ GLOBAL_LIST_INIT(heavyfootstep, list(
'sound/foley/footsteps/FTMUD (5).ogg'), 100, 0),
))

GLOBAL_LIST_INIT(metalfootstep, list(
FOOTSTEP_GENERIC_HEAVY = list(list(
'sound/foley/footsteps/armor/powerarmor (1).ogg',
'sound/foley/footsteps/armor/powerarmor (2).ogg',
'sound/foley/footsteps/armor/powerarmor (3).ogg',), 100, 0),
FOOTSTEP_WATER = list(list(
'sound/foley/footsteps/armor/powerarmor (1).ogg',
'sound/foley/footsteps/armor/powerarmor (2).ogg',
'sound/foley/footsteps/armor/powerarmor (3).ogg',), 100, 0),
FOOTSTEP_SHALLOW = list(list(
'sound/foley/footsteps/armor/powerarmor (1).ogg',
'sound/foley/footsteps/armor/powerarmor (2).ogg',
'sound/foley/footsteps/armor/powerarmor (3).ogg',), 100, 0),
FOOTSTEP_LAVA = list(list(
'sound/blank.ogg'), 100, 0),
FOOTSTEP_MUD = list(list(
'sound/foley/footsteps/armor/powerarmor (1).ogg',
'sound/foley/footsteps/armor/powerarmor (2).ogg',
'sound/foley/footsteps/armor/powerarmor (3).ogg',), 100, 0),
))

2 changes: 2 additions & 0 deletions code/__DEFINES/species/_species.dm
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@
#define SPEC_ID_TRITON "triton"
#define SPEC_ID_MEDICATOR "medicator"
#define SPEC_ID_HALFLING "halfling"
#define SPEC_ID_AUTOMATON "automaton"

#define SPEC_ID_ORC "orc"
#define SPEC_ID_GOBLIN "goblin"
Expand Down Expand Up @@ -44,6 +45,7 @@
SPEC_ID_ZIZOMBIE,\
SPEC_ID_HUMAN_SPACE,\
SPEC_ID_HALFLING,\
SPEC_ID_AUTOMATON, \
)

/// Species where females get underwear, no underwear for kobold, rakshari, medicator and triton, dwarves handled seperately
Expand Down
1 change: 1 addition & 0 deletions code/__DEFINES/traits.dm
Original file line number Diff line number Diff line change
Expand Up @@ -161,6 +161,7 @@ Remember to update _globalvars/traits.dm if you're adding/removing/renaming trai
#define TRAIT_NOLIMBDISABLE "no_limb_disable"
#define TRAIT_EASYLIMBDISABLE "easy_limb_disable"
#define TRAIT_TOXINLOVER "toxinlover"
#define TRAIT_NO_EXPERIENCE "unlearning"
#define TRAIT_NOBREATH "no_breath"
#define TRAIT_HOLY "holy"
#define TRAIT_NOCRITDAMAGE "no_crit"
Expand Down
3 changes: 2 additions & 1 deletion code/__HELPERS/fish.dm
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,8 @@
if(FISH_BAIT_FOODTYPE)
if(isfood(bait))
return bait:foodtype & special_identifier[FISH_BAIT_VALUE]
return NONE
else
return bait:bait_flag & special_identifier[FISH_BAIT_VALUE]
if(FISH_BAIT_REAGENT)
return bait.reagents?.has_reagent(special_identifier[FISH_BAIT_VALUE], special_identifier[FISH_BAIT_AMOUNT], check_subtypes = TRUE)
else
Expand Down
3 changes: 3 additions & 0 deletions code/controllers/subsystem/job.dm
Original file line number Diff line number Diff line change
Expand Up @@ -658,6 +658,9 @@ SUBSYSTEM_DEF(job)
/// Gives the player the stuff they should have with their rank
/datum/controller/subsystem/job/proc/EquipRank(mob/living/carbon/human/equipping, datum/job/job, client/player_client)
equipping.job = job.title
equipping.job_type = job.type
if(job.parent_job)
equipping.job_type = job.parent_job.type

SEND_SIGNAL(equipping, COMSIG_JOB_RECEIVED, job)

Expand Down
17 changes: 17 additions & 0 deletions code/controllers/subsystem/merchant.dm
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,9 @@ SUBSYSTEM_DEF(merchant)
var/list/faction_rotation_schedule = list() // When each faction becomes active
var/list/active_faction_traders = list()

///this is our list of created nations
var/list/nations = list()

/// Cache of recipe component costs to avoid recalculation
var/static/list/recipe_base_values = list()
/// Cached list of all valid bounty items (items that can be obtained through gameplay)
Expand All @@ -44,6 +47,7 @@ SUBSYSTEM_DEF(merchant)


/datum/controller/subsystem/merchant/Initialize(timeofday)
setup_map_nations()
// Initialize recipe values and bounty cache BEFORE factions cause they use it
initialize_recipe_values()
initialize_bounty_cache()
Expand All @@ -61,6 +65,8 @@ SUBSYSTEM_DEF(merchant)
initialize_factions()
return ..()

/datum/controller/subsystem/merchant/proc/setup_map_nations()
return //! TODO: when lore done set this up

/**
* Initializes recipe base values for ALL recipes
Expand Down Expand Up @@ -498,6 +504,17 @@ SUBSYSTEM_DEF(merchant)
continue
pack.unlocked = TRUE

/datum/controller/subsystem/merchant/proc/handle_lift_contents(obj/structure/industrial_lift/tram/platform, list/items, datum/nation/shipped_nation)
if(!length(nations))
return
if(shipped_nation)
shipped_nation.handle_import_shipment(items, platform)
for(var/datum/nation/other_nation in nations)
if(shipped_nation == other_nation)
continue
shipped_nation.handle_global_shipment(items)


/obj/Initialize()
. = ..()
if(sellprice)
Expand Down
1 change: 1 addition & 0 deletions code/datums/components/abberant_eater.dm
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,7 @@

playsound(M,'sound/misc/eat.ogg', rand(30,60), TRUE)
SEND_SIGNAL(source, COMSIG_FOOD_EATEN, M, user)
SEND_SIGNAL(user, COMSIG_MOB_FOOD_EAT, source)
source.on_consume(user)
qdel(source)
return TRUE
16 changes: 16 additions & 0 deletions code/datums/components/augments/augment_datums/_base.dm
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
/datum/augment
var/name = "base augment"
var/desc = "A mechanical augmentation."
var/stability_cost = 0 // Negative values add stability, positive values reduce it
var/engineering_difficulty = SKILL_LEVEL_NOVICE
var/installation_time = 10 SECONDS
var/mob/living/carbon/parent

/datum/augment/proc/on_install(mob/living/carbon/human/H)
return

/datum/augment/proc/on_remove(mob/living/carbon/human/H)
return

/datum/augment/proc/get_examine_info()
return
Loading
Loading