diff --git a/code/modules/mining/satchel_ore_boxdm.dm b/code/modules/mining/satchel_ore_boxdm.dm
index 1d32b470c79..1e00a046de0 100644
--- a/code/modules/mining/satchel_ore_boxdm.dm
+++ b/code/modules/mining/satchel_ore_boxdm.dm
@@ -43,9 +43,12 @@
/obj/structure/ore_box/proc/show_contents(mob/user)
var/dat = text("The contents of the ore box reveal...
")
- var/list/oretypes = uniqueList(contents)
- for(var/obj/item/weapon/ore/O in oretypes)
- dat += "[capitalize(O.name)]: [count_by_type(contents, O.type)]
"
+ var/list/oretypes = list()
+ for(var/obj/item/weapon/ore/O in contents)
+ oretypes |= O.type
+ for(var/i in oretypes)
+ var/obj/item/weapon/ore/T = locate(i) in contents
+ dat += "[capitalize(T.name)]: [count_by_type(contents, T.type)]
"
dat += text("
Empty box")
user << browse("[dat]", "window=orebox")