diff --git a/code/defines/obj/clothing/gloves.dm b/code/defines/obj/clothing/gloves.dm
index 08a7058fa5d..076f08e22ab 100644
--- a/code/defines/obj/clothing/gloves.dm
+++ b/code/defines/obj/clothing/gloves.dm
@@ -100,3 +100,51 @@
permeability_coefficient = 0.9
protective_temperature = 400
heat_transfer_coefficient = 0.70
+
+/obj/item/clothing/gloves/orange
+ name = "Orange Gloves"
+ desc = "A pair of gloves, they don't look special in any way."
+ icon_state = "orange"
+ item_state = "orangegloves"
+
+/obj/item/clothing/gloves/red
+ name = "Red Gloves"
+ desc = "A pair of gloves, they don't look special in any way."
+ icon_state = "red"
+ item_state = "redgloves"
+
+/obj/item/clothing/gloves/blue
+ name = "Blue Gloves"
+ desc = "A pair of gloves, they don't look special in any way."
+ icon_state = "blue"
+ item_state = "bluegloves"
+
+/obj/item/clothing/gloves/purple
+ name = "Purple Gloves"
+ desc = "A pair of gloves, they don't look special in any way."
+ icon_state = "purple"
+ item_state = "purplegloves"
+
+/obj/item/clothing/gloves/green
+ name = "Green Gloves"
+ desc = "A pair of gloves, they don't look special in any way."
+ icon_state = "green"
+ item_state = "greengloves"
+
+/obj/item/clothing/gloves/gray
+ name = "Gray Gloves"
+ desc = "A pair of gloves, they don't look special in any way."
+ icon_state = "gray"
+ item_state = "graygloves"
+
+/obj/item/clothing/gloves/light_brown
+ name = "Light Brown Gloves"
+ desc = "A pair of gloves, they don't look special in any way."
+ icon_state = "lightbrown"
+ item_state = "lightbrowngloves"
+
+/obj/item/clothing/gloves/brown
+ name = "Brown Gloves"
+ desc = "A pair of gloves, they don't look special in any way."
+ icon_state = "brown"
+ item_state = "browngloves"
\ No newline at end of file
diff --git a/code/defines/obj/storage.dm b/code/defines/obj/storage.dm
index 5d9fdd2fcbe..5c33a42b5e9 100644
--- a/code/defines/obj/storage.dm
+++ b/code/defines/obj/storage.dm
@@ -109,6 +109,11 @@
desc = "A very robust backpack."
icon_state = "securitypack"
+/obj/item/weapon/storage/backpack/satchel
+ name = "Satchel"
+ desc = "A very robust satchel to wear on your back."
+ icon_state = "satchel"
+
/obj/item/weapon/storage/backpack/industrial
name = "industrial backpack"
desc = "A tough backpack for the daily grind"
diff --git a/code/modules/mob/living/carbon/human/human.dm b/code/modules/mob/living/carbon/human/human.dm
index 291b6767ce1..ded97e71ad7 100644
--- a/code/modules/mob/living/carbon/human/human.dm
+++ b/code/modules/mob/living/carbon/human/human.dm
@@ -1748,6 +1748,8 @@
playsound(loc, "punch", 25, 1, -1)
for(var/mob/O in viewers(src, null))
O.show_message(text("\red [] has punched []!", M, src), 1)
+ M.attack_log += text("[world.time] - has punched [src.name] ([src.ckey])")
+ src.attack_log += text("[world.time] - has been punched by [M.name] ([M.ckey])")
if (def_zone == "head")
if ((((head && head.body_parts_covered & HEAD) || (wear_mask && wear_mask.body_parts_covered & HEAD)) && prob(99)))
diff --git a/icons/mob/back.dmi b/icons/mob/back.dmi
index 78c0a3ea706..b8d09bf0789 100644
Binary files a/icons/mob/back.dmi and b/icons/mob/back.dmi differ
diff --git a/icons/mob/hands.dmi b/icons/mob/hands.dmi
index 3af9ea11a1d..175e1978860 100644
Binary files a/icons/mob/hands.dmi and b/icons/mob/hands.dmi differ
diff --git a/icons/obj/clothing/gloves.dmi b/icons/obj/clothing/gloves.dmi
index 842aae6b51c..fbd2d908831 100644
Binary files a/icons/obj/clothing/gloves.dmi and b/icons/obj/clothing/gloves.dmi differ
diff --git a/icons/obj/clothing/uniforms.dmi b/icons/obj/clothing/uniforms.dmi
index d01269cb8df..23ae702b544 100644
Binary files a/icons/obj/clothing/uniforms.dmi and b/icons/obj/clothing/uniforms.dmi differ
diff --git a/icons/obj/storage.dmi b/icons/obj/storage.dmi
index aa530767589..988481f9861 100644
Binary files a/icons/obj/storage.dmi and b/icons/obj/storage.dmi differ