diff --git a/code/game/objects/items/stacks/sheets/mineral.dm b/code/game/objects/items/stacks/sheets/mineral.dm
index 436bc5ff59..e2b6adaeca 100644
--- a/code/game/objects/items/stacks/sheets/mineral.dm
+++ b/code/game/objects/items/stacks/sheets/mineral.dm
@@ -337,7 +337,7 @@ GLOBAL_LIST_INIT(snow_recipes, list ( \
* Adamantine
*/
GLOBAL_LIST_INIT(adamantine_recipes, list(
- new /datum/stack_recipe("artificial golem shell", /obj/item/golem_shell/artificial, req_amount=1, res_amount=1),
+ new /datum/stack_recipe("incomplete servant golem shell", /obj/item/golem_shell/servant, req_amount=1, res_amount=1),
))
/obj/item/stack/sheet/mineral/adamantine
@@ -385,4 +385,4 @@ GLOBAL_LIST_INIT(abductor_recipes, list ( \
/obj/item/stack/sheet/mineral/abductor/Initialize(mapload, new_amount, merge = TRUE)
recipes = GLOB.abductor_recipes
- ..()
+ ..()
\ No newline at end of file
diff --git a/code/game/objects/structures/ghost_role_spawners.dm b/code/game/objects/structures/ghost_role_spawners.dm
index 5b5c88ebe0..989a2fdeb3 100644
--- a/code/game/objects/structures/ghost_role_spawners.dm
+++ b/code/game/objects/structures/ghost_role_spawners.dm
@@ -96,7 +96,7 @@
//Golem shells: Spawns in Free Golem ships in lavaland. Ghosts become mineral golems and are advised to spread personal freedom.
/obj/effect/mob_spawn/human/golem
- name = "inert golem shell"
+ name = "inert free golem shell"
desc = "A humanoid shape, empty, lifeless, and full of potential."
mob_name = "a free golem"
icon = 'icons/obj/wizard.dmi'
@@ -106,13 +106,14 @@
death = FALSE
anchored = 0
density = 0
+ var/has_owner = FALSE
var/can_transfer = TRUE //if golems can switch bodies to this new shell
var/mob/living/owner = null //golem's owner if it has one
flavour_text = "You are a Free Golem. Your family worships The Liberator. In his infinite and divine wisdom, he set your clan free to \
travel the stars with a single declaration: \"Yeah go do whatever.\" Though you are bound to the one who created you, it is customary in your society to repeat those same words to newborn \
golems, so that no golem may ever be forced to serve again."
-/obj/effect/mob_spawn/human/golem/Initialize(mapload, datum/species/golem/species = null, has_owner = FALSE, mob/creator = null)
+/obj/effect/mob_spawn/human/golem/Initialize(mapload, datum/species/golem/species = null, mob/creator = null)
..()
if(species)
name += " ([initial(species.prefix)])"
@@ -155,9 +156,13 @@
return
..()
+/obj/effect/mob_spawn/human/golem/servant
+ has_owner = TRUE
+ name = "inert servant golem shell"
+
/obj/effect/mob_spawn/human/golem/adamantine
- name = "dust-caked golem shell"
+ name = "dust-caked free golem shell"
desc = "A humanoid shape, empty, lifeless, and full of potential."
mob_name = "a free golem"
can_transfer = FALSE
diff --git a/code/modules/ruins/lavaland_ruin_code.dm b/code/modules/ruins/lavaland_ruin_code.dm
index b28d388b29..ccc690350a 100644
--- a/code/modules/ruins/lavaland_ruin_code.dm
+++ b/code/modules/ruins/lavaland_ruin_code.dm
@@ -40,7 +40,7 @@
category = list("Imported")
/obj/item/golem_shell
- name = "incomplete golem shell"
+ name = "incomplete free golem shell"
icon = 'icons/obj/wizard.dmi'
icon_state = "construct"
desc = "The incomplete body of a golem. Add ten sheets of any mineral to finish."
@@ -113,7 +113,7 @@
if(species)
if(O.use(10))
to_chat(user, "You finish up the golem shell with ten sheets of [O].")
- new shell_type(get_turf(src), species, has_owner, user)
+ new shell_type(get_turf(src), species, user)
qdel(src)
else
to_chat(user, "You need at least ten sheets to finish a golem.")
@@ -121,9 +121,9 @@
to_chat(user, "You can't build a golem out of this kind of material.")
//made with xenobiology, the golem obeys its creator
-/obj/item/golem_shell/artificial
- name = "incomplete artificial golem shell"
- has_owner = TRUE
+/obj/item/golem_shell/servant
+ name = "incomplete servant golem shell"
+ shell_type = /obj/effect/mob_spawn/human/golem/servant
///Syndicate Listening Post
/obj/effect/mob_spawn/human/lavaland_syndicate