diff --git a/code/modules/mining/mine_turfs.dm b/code/modules/mining/mine_turfs.dm
index c5c24814a2a..94c1d350ddc 100644
--- a/code/modules/mining/mine_turfs.dm
+++ b/code/modules/mining/mine_turfs.dm
@@ -350,6 +350,8 @@ commented out in r5061, I left it because of the shroom thingies
excavate_find(5, src.finds[1])
else if(prob(50))
src.finds.Remove(src.finds[1])
+ if(prob(50))
+ artifact_debris()
if(do_after(user,P.digspeed))
user << "\blue You finish [P.drill_verb] the rock."
@@ -387,8 +389,8 @@ commented out in r5061, I left it because of the shroom thingies
B = new(src)
if(artifact_find)
B.artifact_find = artifact_find
- else if(src.excavation_level + P.excavation_amount >= 100)
- artifact_debris()
+ else if(artifact_find && src.excavation_level + P.excavation_amount >= 100)
+ artifact_debris(1)
gets_drilled(B ? 0 : 1)
return
@@ -528,73 +530,60 @@ commented out in r5061, I left it because of the shroom thingies
var/obj/effect/suspension_field/S = locate() in src
if(!S || S.field_type != get_responsive_reagent(F.find_type))
if(X)
- src.visible_message("\red[pick("[display_name] crumbles away into dust","[display_name] breaks apart","[display_name] collapses onto itself")].")
+ src.visible_message("\red[pick("[display_name] crumbles away into dust","[display_name] breaks apart")].")
del(X)
src.finds.Remove(F)
-/turf/simulated/mineral/proc/artifact_debris()
+/turf/simulated/mineral/proc/artifact_debris(var/severity = 0)
//cael's patented random limited drop componentized loot system!
+ severity = max(min(severity,1),0)
var/materials = 0
var/list/viable_materials = list(1,2,4,8,16,32,64,128,256)
- var/num_materials = rand(1,5)
+ var/num_materials = rand(1,3 + severity*2)
for(var/i=0, i