diff --git a/BondageClub/Assets/Female3DCG/Female3DCG.csv b/BondageClub/Assets/Female3DCG/Female3DCG.csv
index d4f8ef4e6d5e8971a1eb99e2032c7fc42fcc2554..d9592fe9a07f543556ec01113ca08058676be2e7 100644
--- a/BondageClub/Assets/Female3DCG/Female3DCG.csv
+++ b/BondageClub/Assets/Female3DCG/Female3DCG.csv
@@ -737,6 +737,7 @@ ItemNipples,NippleWeightClamps,Nipple Weight Clamps
 ItemNipples,BellClamps,Nipple Bell Clamps
 ItemNipples,LactationPump,Lactation Pump
 ItemNipples,ShockClamps,Shock Clamps
+ItemNipples,PlateClamps, Plate Clamps
 ItemNipplesPiercings,,Nipples
 ItemNipplesPiercings,StraightPiercing,Straight Piercings
 ItemNipplesPiercings,RoundPiercing,Round Piercings
diff --git a/BondageClub/Assets/Female3DCG/Female3DCG.js b/BondageClub/Assets/Female3DCG/Female3DCG.js
index e91542f792077286c8c7fb7a8f7fa19b26fd0849..4987584c91fac9a46c3a25a8021e840c0dd3cd05 100644
--- a/BondageClub/Assets/Female3DCG/Female3DCG.js
+++ b/BondageClub/Assets/Female3DCG/Female3DCG.js
@@ -1904,6 +1904,7 @@ var AssetFemale3DCG = [
 			{ Name: "BellClamps", Fetish: ["Metal", "Masochism"], Value: 20, Time: 10, Prerequisite: "AccessBreast", Audio: "BellSmall", ExpressionTrigger: [{ Name: "Closed", Group: "Eyes", Timer: 5 }, { Name: "Angry", Group: "Eyebrows", Timer: 10 }] },
 			{ Name: "LactationPump", Fetish: ["Pet"], Value: 130, Top: 0, Priority: 38, Left: 0, Time: 10, Prerequisite: ["AccessBreast", "CannotBeSuited"], AllowPose: ["Kneel", "Hogtied", "SuspensionHogtied", "KneelingSpread"], Block: ["ItemNipplesPiercings", "ItemBreast"], Hide: ["ItemNipplesPiercings"], AllowType: ["LowSuction", "MediumSuction", "HighSuction", "MaximumSuction"], ExpressionTrigger: [{ Name: "Closed", Group: "Eyes", Timer: 5 }, { Name: "Angry", Group: "Eyebrows", Timer: 5 }], Extended: true, AlwaysExtend: true, HasType: false },
 			{ Name: "ShockClamps", Fetish: ["Metal", "Masochism"], Value: 60, Time: 10, Extended: true, AlwaysExtend: true, Prerequisite: "AccessBreast", ExpressionTrigger: [{ Name: "Closed", Group: "Eyes", Timer: 5 }, { Name: "Angry", Group: "Eyebrows", Timer: 10 }], Activity: "ShockItem" },
+			{Name: "PlateClamps", Fetish: ["Metal", "Masochism"], Value: 20, Time: 15, Extended: true, Prerequisite: "AccessBreast", ExpressionTrigger: [{ Name: "Closed", Group: "Eyes", Timer: 5 }, { Name: "Angry", Group: "Eyebrows", Timer: 10 }], AllowType: ["Tight"]},
 			AssetSpankingToys
 		],
 		Color: ["Default", "#202020", "#808080", "#bbbbbb", "#aa8080", "#80aa80", "#8080aa", "#aaaa80", "#80aaaa", "#aa80aa", "#cc3333", "#33cc33", "#3333cc", "#cccc33", "#33cccc", "#cc33cc"]
diff --git a/BondageClub/Assets/Female3DCG/ItemNipples/PlateClamps_Large.png b/BondageClub/Assets/Female3DCG/ItemNipples/PlateClamps_Large.png
new file mode 100644
index 0000000000000000000000000000000000000000..51d1bf6dbb82c6eb89f2f41d30d9f150178f59c2
Binary files /dev/null and b/BondageClub/Assets/Female3DCG/ItemNipples/PlateClamps_Large.png differ
diff --git a/BondageClub/Assets/Female3DCG/ItemNipples/PlateClamps_LargeTight.png b/BondageClub/Assets/Female3DCG/ItemNipples/PlateClamps_LargeTight.png
new file mode 100644
index 0000000000000000000000000000000000000000..47e9098616aadef8982f454fafb091bd42315156
Binary files /dev/null and b/BondageClub/Assets/Female3DCG/ItemNipples/PlateClamps_LargeTight.png differ
diff --git a/BondageClub/Assets/Female3DCG/ItemNipples/PlateClamps_Normal.png b/BondageClub/Assets/Female3DCG/ItemNipples/PlateClamps_Normal.png
new file mode 100644
index 0000000000000000000000000000000000000000..6fd132cd4995d30e792d623086e48db7a3b0b62e
Binary files /dev/null and b/BondageClub/Assets/Female3DCG/ItemNipples/PlateClamps_Normal.png differ
diff --git a/BondageClub/Assets/Female3DCG/ItemNipples/PlateClamps_NormalTight.png b/BondageClub/Assets/Female3DCG/ItemNipples/PlateClamps_NormalTight.png
new file mode 100644
index 0000000000000000000000000000000000000000..12af3df1ee041e6a6dcf32655ea2f9de5d3aa33a
Binary files /dev/null and b/BondageClub/Assets/Female3DCG/ItemNipples/PlateClamps_NormalTight.png differ
diff --git a/BondageClub/Assets/Female3DCG/ItemNipples/PlateClamps_Small.png b/BondageClub/Assets/Female3DCG/ItemNipples/PlateClamps_Small.png
new file mode 100644
index 0000000000000000000000000000000000000000..6626676833dab850d32519e2603c1ef053b9e0af
Binary files /dev/null and b/BondageClub/Assets/Female3DCG/ItemNipples/PlateClamps_Small.png differ
diff --git a/BondageClub/Assets/Female3DCG/ItemNipples/PlateClamps_SmallTight.png b/BondageClub/Assets/Female3DCG/ItemNipples/PlateClamps_SmallTight.png
new file mode 100644
index 0000000000000000000000000000000000000000..a628a9ff07db584994eb03518edf371f2adef5a2
Binary files /dev/null and b/BondageClub/Assets/Female3DCG/ItemNipples/PlateClamps_SmallTight.png differ
diff --git a/BondageClub/Assets/Female3DCG/ItemNipples/PlateClamps_XLarge.png b/BondageClub/Assets/Female3DCG/ItemNipples/PlateClamps_XLarge.png
new file mode 100644
index 0000000000000000000000000000000000000000..425af290bde28094ace747a927f686cc665e01e6
Binary files /dev/null and b/BondageClub/Assets/Female3DCG/ItemNipples/PlateClamps_XLarge.png differ
diff --git a/BondageClub/Assets/Female3DCG/ItemNipples/PlateClamps_XLargeTight.png b/BondageClub/Assets/Female3DCG/ItemNipples/PlateClamps_XLargeTight.png
new file mode 100644
index 0000000000000000000000000000000000000000..f35b1745eeeb44e283cc5f4212f18e13ab88c4a1
Binary files /dev/null and b/BondageClub/Assets/Female3DCG/ItemNipples/PlateClamps_XLargeTight.png differ
diff --git a/BondageClub/Assets/Female3DCG/ItemNipples/Preview/PlateClamps.png b/BondageClub/Assets/Female3DCG/ItemNipples/Preview/PlateClamps.png
new file mode 100644
index 0000000000000000000000000000000000000000..6faa38f979c27f8af0d5d95a49384031e3fbaef2
Binary files /dev/null and b/BondageClub/Assets/Female3DCG/ItemNipples/Preview/PlateClamps.png differ
diff --git a/BondageClub/Screens/Character/Player/Dialog_Player.csv b/BondageClub/Screens/Character/Player/Dialog_Player.csv
index e4695bb8bd5f938ab99016acafb9b42523085b84..7c75b1dda6f3b20430a3ba2453fa9017509406a7 100644
--- a/BondageClub/Screens/Character/Player/Dialog_Player.csv
+++ b/BondageClub/Screens/Character/Player/Dialog_Player.csv
@@ -1948,6 +1948,11 @@ NotificationTitleDisconnect,,,Disconnected,,
 NotificationTitleTest,,,Test Notification,,
 NotificationTitleFromRoom,,, from ChatRoomName,,
 NotificationTitleLarp,,,LARP - Your turn,,
+ItemNipplesPlateClampsTightnessLevelLoose,,,Loose,,
+ItemNipplesPlateClampsTightnessLevelTight,,,Tight,,
+ItemNipplesPlateClampsSelectTightness,,,Select Tightness,,
+ItemNipplesPlateClampsLoose,,,SourceCharacter loosens DestinationCharacter clamps.,,
+ItemNipplesPlateClampsTight,,,SourceCharacter tigthens DestinationCharacter clamps.,,
 SelectBunnyCuffsStyle,,,Select a style.,,
 BunnyCuffsTypeBoth,,,Both,,
 BunnyCuffsTypeCollar,,,Collar Only,,
@@ -1956,4 +1961,4 @@ CombinationPadlockControlsBlind,,,Your blindfold prevents you from seeing the di
 CombinationPadlockControlsClumsy,,,Your restraints prevent you from accurately manipulating the lock's dial,,
 SelectCushionStyle,,,Choose an action.,,
 CushionTypeHold,,,Hold cushion,,
-CushionTypeKneel,,,Kneel on cushion,,
\ No newline at end of file
+CushionTypeKneel,,,Kneel on cushion,,
diff --git a/BondageClub/Screens/Inventory/ItemNipples/PlateClamps/PlateClamps.js b/BondageClub/Screens/Inventory/ItemNipples/PlateClamps/PlateClamps.js
new file mode 100644
index 0000000000000000000000000000000000000000..e65dfd4fd1e32593035ff28f70dbcb3563ef03c5
--- /dev/null
+++ b/BondageClub/Screens/Inventory/ItemNipples/PlateClamps/PlateClamps.js
@@ -0,0 +1,68 @@
+"use strict";
+
+var InventoryItemNipplesPlateClampsOptions = [
+	{
+		Name: "Loose",
+		Property: {
+			Type: null
+		},
+	},
+	{
+		Name: "Tight",
+		Property: {
+			Type: "Tight"
+		},
+	}
+]
+
+/**
+ * Loads the item extension properties
+ * @returns {void} - Nothing
+ */
+ function InventoryItemNipplesPlateClampsLoad() {
+    ExtendedItemLoad(InventoryItemNipplesPlateClampsOptions, "ItemNipplesPlateClampsSelectTightness");
+}
+
+/**
+ * Draw the item extension screen
+ * @returns {void} - Nothing
+ */
+function InventoryItemNipplesPlateClampsDraw() {
+    ExtendedItemDraw(InventoryItemNipplesPlateClampsOptions, "ItemNipplesPlateClampsTightnessLevel", InventoryItemNipplesPlateClampsOptions.length, false);
+}
+/**
+ * Catches the item extension clicks
+ * @returns {void} - Nothing
+ */
+function InventoryItemNipplesPlateClampsClick() {
+	ExtendedItemClick(InventoryItemNipplesPlateClampsOptions, false, InventoryItemNipplesPlateClampsOptions.length, false);
+}
+
+/**
+ * Publishes the message to the chat
+ * @param {Character} C - The target character
+ * @param {Option} Option - The currently selected Option
+ * @param {Option} PreviousOption - The previously selected Option
+ * @returns {void} - Nothing
+ */
+function InventoryItemNipplesPlateClampsPublishAction(C, Option, PreviousOption) {
+	var msg = "ItemNipplesPlateClamps" + Option.Name;
+	var Dictionary = [
+		{ Tag: "SourceCharacter", Text: Player.Name, MemberNumber: Player.MemberNumber },
+		{ Tag: "DestinationCharacter", Text: C.Name, MemberNumber: C.MemberNumber },
+	];
+	ChatRoomPublishCustomAction(msg, true, Dictionary);
+}
+
+/**
+ * The NPC dialog is for what the NPC says to you when you make a change to their restraints - the dialog lookup is on a 
+ * per-NPC basis. You basically put the "AssetName" + OptionName in there to allow individual NPCs to override their default 
+ * "GroupName" dialog if for example we ever wanted an NPC to react specifically to having the restraint put on them. 
+ * That could be done by adding an "AssetName" entry (or entries) to that NPC's dialog CSV
+ * @param {Character} C - The NPC to whom the restraint is applied
+ * @param {Option} Option - The chosen option for this extended item
+ * @returns {void} - Nothing
+ */
+function InventoryItemNipplesPlateClampsNpcDialog(C, Option) {
+	C.CurrentDialog = DialogFind(C, "InventoryItemNipplesPlateClampsNPCReaction" + Option.Name, "ItemNipples");
+}
diff --git a/BondageClub/index.html b/BondageClub/index.html
index e76b38871de5fc77f06f018fabf277d1aa0e0df0..19b29cc5953c3179ef03903c87948e4159f3b96c 100644
--- a/BondageClub/index.html
+++ b/BondageClub/index.html
@@ -346,6 +346,7 @@
 <script src="Screens/MiniGame/KinkyDungeon/KinkyDungeonInventory.js"></script>
 <script src="Screens/Inventory/Glasses/EyePatch1/EyePatch1.js"></script>
 <script src="Screens/Inventory/ItemFeet/SpreaderMetal/SpreaderMetal.js"></script>
+<script src="Screens/Inventory/ItemNipples/PlateClamps/PlateClamps.js"></script>
 <script src="Screens/Inventory/ClothAccessory/BunnyCollarCuffs/BunnyCollarCuffs.js"></script>
 <script src="Screens/Inventory/ItemDevices/Cushion/Cushion.js"></script>
 <script>