diff --git a/code/game/objects/items/weapons/storage/backpack.dm b/code/game/objects/items/weapons/storage/backpack.dm
index 18c60af449..f5ea4ead6f 100644
--- a/code/game/objects/items/weapons/storage/backpack.dm
+++ b/code/game/objects/items/weapons/storage/backpack.dm
@@ -422,3 +422,10 @@
H.visible_message("\The [src] decides not to unpack \the [src]!", \
"You decide not to unpack \the [src]!")
return
+
+/obj/item/weapon/storage/backpack/satchel/ranger
+ name = "ranger satchel"
+ desc = "A satchel designed for the Go Go ERT Rangers series to allow for slightly bigger carry capacity for the ERT-Rangers.\
+ Unlike the show claims, it is not a phoron-enhanced satchel of holding with plot-relevant content."
+ icon = 'icons/obj/clothing/ranger.dmi'
+ icon_state = "ranger_satchel"
\ No newline at end of file
diff --git a/code/game/objects/items/weapons/storage/belt.dm b/code/game/objects/items/weapons/storage/belt.dm
index 213f9cc36b..e8084b478c 100644
--- a/code/game/objects/items/weapons/storage/belt.dm
+++ b/code/game/objects/items/weapons/storage/belt.dm
@@ -433,3 +433,8 @@
icon_state = "fannypack_yellow"
item_state = "fannypack_yellow"
+/obj/item/weapon/storage/belt/ranger
+ name = "ranger belt"
+ desc = "The fancy utility-belt holding the tools, cuffs and gadgets of the Go Go ERT-Rangers. The belt buckle is not real phoron, but it is still surprisingly comfortable to wear."
+ icon = 'icons/obj/clothing/ranger.dmi'
+ icon_state = "ranger_belt"
\ No newline at end of file
diff --git a/code/modules/clothing/gloves/miscellaneous.dm b/code/modules/clothing/gloves/miscellaneous.dm
index bfb53f5e03..94e2d1fef0 100644
--- a/code/modules/clothing/gloves/miscellaneous.dm
+++ b/code/modules/clothing/gloves/miscellaneous.dm
@@ -127,3 +127,35 @@
overgloves = 1
force = 5
punch_force = 5
+
+/obj/item/clothing/gloves/ranger
+ var/glovecolor = "white"
+ name = "ranger gloves"
+ desc = "The gloves of the Rangers are the least memorable part. They're not even insulated in the show, so children \
+ don't try and take apart a toaster with inadequate protection. They only serve to complete the fancy outfit."
+ icon = 'icons/obj/clothing/ranger.dmi'
+ icon_state = "ranger_gloves"
+
+/obj/item/clothing/gloves/ranger/Initialize()
+ . = ..()
+ if(icon_state == "ranger_gloves")
+ name = "[glovecolor] ranger gloves"
+ icon_state = "[glovecolor]_ranger_gloves"
+
+/obj/item/clothing/gloves/ranger/black
+ glovecolor = "black"
+
+/obj/item/clothing/gloves/ranger/pink
+ glovecolor = "pink"
+
+/obj/item/clothing/gloves/ranger/green
+ glovecolor = "green"
+
+/obj/item/clothing/gloves/ranger/cyan
+ glovecolor = "cyan"
+
+/obj/item/clothing/gloves/ranger/orange
+ glovecolor = "orange"
+
+/obj/item/clothing/gloves/ranger/yellow
+ glovecolor = "yellow"
\ No newline at end of file
diff --git a/code/modules/clothing/head/hardhat.dm b/code/modules/clothing/head/hardhat.dm
index 558f30fbd9..e7d7cee13d 100644
--- a/code/modules/clothing/head/hardhat.dm
+++ b/code/modules/clothing/head/hardhat.dm
@@ -35,3 +35,37 @@
/obj/item/clothing/head/hardhat/dblue
name = "blue hard hat"
icon_state = "hardhat0_dblue"
+
+/obj/item/clothing/head/hardhat/ranger
+ var/hatcolor = "white"
+ name = "ranger helmet"
+ desc = "A special helmet designed for the Go Go ERT-Rangers, able to withstand a pressureless environment, filter gas and provide air. It has thermal vision and sometimes \
+ mesons to find breaches, as well as an integrated radio... well, only in the show, of course. This one has none of those features- it just has a flashlight instead."
+ icon = 'icons/obj/clothing/ranger.dmi'
+ icon_state = "ranger_helmet"
+ light_overlay = "helmet_light"
+ flags_inv = HIDEMASK|HIDEEARS|HIDEEYES|HIDEFACE|BLOCKHAIR
+
+/obj/item/clothing/head/hardhat/ranger/Initialize()
+ . = ..()
+ if(icon_state == "ranger_helmet")
+ name = "[hatcolor] ranger helmet"
+ icon_state = "[hatcolor]_ranger_helmet"
+
+/obj/item/clothing/head/hardhat/ranger/black
+ hatcolor = "black"
+
+/obj/item/clothing/head/hardhat/ranger/pink
+ hatcolor = "pink"
+
+/obj/item/clothing/head/hardhat/ranger/green
+ hatcolor = "green"
+
+/obj/item/clothing/head/hardhat/ranger/cyan
+ hatcolor = "cyan"
+
+/obj/item/clothing/head/hardhat/ranger/orange
+ hatcolor = "orange"
+
+/obj/item/clothing/head/hardhat/ranger/yellow
+ hatcolor = "yellow"
\ No newline at end of file
diff --git a/code/modules/clothing/shoes/miscellaneous.dm b/code/modules/clothing/shoes/miscellaneous.dm
index 0311a0fec2..e2a93f1dff 100644
--- a/code/modules/clothing/shoes/miscellaneous.dm
+++ b/code/modules/clothing/shoes/miscellaneous.dm
@@ -155,3 +155,35 @@
force = 0
w_class = ITEMSIZE_SMALL
species_restricted = null
+
+/obj/item/clothing/shoes/boots/ranger
+ var/bootcolor = "white"
+ name = "ranger boots"
+ desc = "The Rangers special lightweight hybrid magboots-jetboots perfect for EVA. If only these functions were so easy to copy in reality.\
+ These ones are just a well-made pair of boots in appropriate colours."
+ icon = 'icons/obj/clothing/ranger.dmi'
+ icon_state = "ranger_boots"
+
+/obj/item/clothing/shoes/boots/ranger/Initialize()
+ . = ..()
+ if(icon_state == "ranger_boots")
+ name = "[bootcolor] ranger boots"
+ icon_state = "[bootcolor]_ranger_boots"
+
+/obj/item/clothing/shoes/boots/ranger/black
+ bootcolor = "black"
+
+/obj/item/clothing/shoes/boots/ranger/pink
+ bootcolor = "pink"
+
+/obj/item/clothing/shoes/boots/ranger/green
+ bootcolor = "green"
+
+/obj/item/clothing/shoes/boots/ranger/cyan
+ bootcolor = "cyan"
+
+/obj/item/clothing/shoes/boots/ranger/orange
+ bootcolor = "orange"
+
+/obj/item/clothing/shoes/boots/ranger/yellow
+ bootcolor = "yellow"
\ No newline at end of file
diff --git a/code/modules/clothing/under/miscellaneous.dm b/code/modules/clothing/under/miscellaneous.dm
index c90d575b98..c7ccb6a31a 100644
--- a/code/modules/clothing/under/miscellaneous.dm
+++ b/code/modules/clothing/under/miscellaneous.dm
@@ -908,3 +908,40 @@
name = "hazard cohesion suit"
desc = "An orange cohesion suit with yellow hazard stripes intended to assist Prometheans in maintaining their form and prevent direct skin exposure."
icon_state = "cohesionsuit_hazard"
+
+//Uniforms
+//On-mob sprites go in icons\mob\uniform.dmi with the format "white_ranger_uniform_s" - with 'white' replaced with green, cyan, etc... of course! Note the _s - this is not optional.
+//Item sprites go in icons\obj\clothing\ranger.dmi with the format "white_ranger_uniform"
+/obj/item/clothing/under/color/ranger
+ var/unicolor = "white"
+ name = "ranger uniform"
+ desc = "Made from a space-proof fibre and tight fitting, this uniform usually gives the agile Rangers all kinds of protection while not inhibiting their movement. \
+ This costume is instead made from genuine cotton fibre and is based on the season three uniform."
+ icon = 'icons/obj/clothing/ranger.dmi'
+ icon_state = "ranger_uniform"
+ rolled_down = 0
+ rolled_sleeves = 0
+
+/obj/item/clothing/under/color/ranger/Initialize()
+ . = ..()
+ if(icon_state == "ranger_uniform") //allows for custom items
+ name = "[unicolor] ranger uniform"
+ icon_state = "[unicolor]_ranger_uniform"
+
+/obj/item/clothing/under/color/ranger/black
+ unicolor = "black"
+
+/obj/item/clothing/under/color/ranger/pink
+ unicolor = "pink"
+
+/obj/item/clothing/under/color/ranger/green
+ unicolor = "green"
+
+/obj/item/clothing/under/color/ranger/cyan
+ unicolor = "cyan"
+
+/obj/item/clothing/under/color/ranger/orange
+ unicolor = "orange"
+
+/obj/item/clothing/under/color/ranger/yellow
+ unicolor = "yellow"
\ No newline at end of file
diff --git a/icons/mob/back.dmi b/icons/mob/back.dmi
index 129db87f03..f3e7e10b85 100644
Binary files a/icons/mob/back.dmi and b/icons/mob/back.dmi differ
diff --git a/icons/mob/belt.dmi b/icons/mob/belt.dmi
index 1ed8e7cf12..c3f0f0d956 100644
Binary files a/icons/mob/belt.dmi and b/icons/mob/belt.dmi differ
diff --git a/icons/mob/feet.dmi b/icons/mob/feet.dmi
index 52a443cdc8..65899f8ad5 100644
Binary files a/icons/mob/feet.dmi and b/icons/mob/feet.dmi differ
diff --git a/icons/mob/hands.dmi b/icons/mob/hands.dmi
index 18f20899d2..32008f190b 100644
Binary files a/icons/mob/hands.dmi and b/icons/mob/hands.dmi differ
diff --git a/icons/mob/uniform.dmi b/icons/mob/uniform.dmi
index ec0759bef5..fa1989ec5f 100644
Binary files a/icons/mob/uniform.dmi and b/icons/mob/uniform.dmi differ
diff --git a/icons/obj/clothing/ranger.dmi b/icons/obj/clothing/ranger.dmi
new file mode 100644
index 0000000000..5f810d2ea4
Binary files /dev/null and b/icons/obj/clothing/ranger.dmi differ