diff --git a/code/defines/obj/weapon.dm b/code/defines/obj/weapon.dm
index 4c67ae89ca..acc0d6c225 100644
--- a/code/defines/obj/weapon.dm
+++ b/code/defines/obj/weapon.dm
@@ -759,6 +759,7 @@
throw_speed = 3
throw_range = 15
layer = 4
+ var/list/stamped
var/see_face = 1
var/body_parts_covered = HEAD
var/protective_temperature = T0C + 10
@@ -1409,6 +1410,27 @@ Total SMES charging rate should not exceed total power generation rate, or an ov
throw_range = 15
m_amt = 60
+/obj/item/weapon/stamp/captain
+ name = "captain's rubber stamp"
+ icon_state = "stamp-cap"
+
+/obj/item/weapon/stamp/hop
+ name = "head of personnel's rubber stamp"
+ icon_state = "stamp-hop"
+
+/obj/item/weapon/stamp/hos
+ name = "head of security's rubber stamp"
+ icon_state = "stamp-hos"
+
+/obj/item/weapon/stamp/ce
+ name = "chief engineer's rubber stamp"
+ icon_state = "stamp-ce"
+
+/obj/item/weapon/stamp/rd
+ name = "research director's rubber stamp"
+ icon_state = "stamp-rd"
+
+
/obj/item/weapon/cigpacket
name = "Cigarette packet"
desc = "The most popular brand of Space Cigarettes, sponsors of the Space Olympics."
diff --git a/code/game/objects/items/weapons/papers_bins.dm b/code/game/objects/items/weapons/papers_bins.dm
index 311d4494df..08fc4dcfde 100644
--- a/code/game/objects/items/weapons/papers_bins.dm
+++ b/code/game/objects/items/weapons/papers_bins.dm
@@ -94,7 +94,22 @@ CLIPBOARDS
if ((!in_range(src, usr) && src.loc != user && !( istype(src.loc, /obj/item/weapon/clipboard) ) && src.loc.loc != user && user.equipped() != P))
return
src.info += text("
This paper has been stamped with the [].
", P.name)
- src.icon_state = "paper_stamped"
+ switch(P.type)
+ if(/obj/item/weapon/stamp/captain)
+ src.icon_state = "paper_stamped_cap"
+ if(/obj/item/weapon/stamp/hop)
+ src.icon_state = "paper_stamped_hop"
+ if(/obj/item/weapon/stamp/hos)
+ src.icon_state = "paper_stamped_hos"
+ if(/obj/item/weapon/stamp/ce)
+ src.icon_state = "paper_stamped_ce"
+ if(/obj/item/weapon/stamp/rd)
+ src.icon_state = "paper_stamped_rd"
+ else
+ src.icon_state = "paper_stamped"
+ if(!stamped)
+ stamped = new
+ stamped += P.type
user << "\blue You stamp the paper with your rubber stamp."
/*
diff --git a/code/game/supplyshuttle.dm b/code/game/supplyshuttle.dm
index 1ab68e1612..a675300378 100644
--- a/code/game/supplyshuttle.dm
+++ b/code/game/supplyshuttle.dm
@@ -7,6 +7,7 @@
#define SUPPLY_POINTSPERCRATE 5 //Points per crate sent back.
#define SUPPLY_STATION_AREATYPE "/area/supply/station" //Type of the supply shuttle area for station
#define SUPPLY_DOCK_AREATYPE "/area/supply/dock" //Type of the supply shuttle area for dock
+#define SUPPLY_POINTSPERSLIP 1 //points per packing slip sent back stamped.
var/supply_shuttle_moving = 0
var/supply_shuttle_at_station = 0
diff --git a/icons/obj/items.dmi b/icons/obj/items.dmi
index a55d072d10..d113458cb2 100644
Binary files a/icons/obj/items.dmi and b/icons/obj/items.dmi differ