diff --git a/code/game/objects/items/devices/radio/beacon.dm b/code/game/objects/items/devices/radio/beacon.dm
index 17fa2b57e64..eabcd0e9433 100644
--- a/code/game/objects/items/devices/radio/beacon.dm
+++ b/code/game/objects/items/devices/radio/beacon.dm
@@ -57,7 +57,7 @@
user.drop_item()
qdel(src)
-/obj/item/radio/beacon/syndicate/bundle/
+/obj/item/radio/beacon/syndicate/bundle
name = "suspicious beacon"
desc = "A label on it reads: Activate to select a bundle."
var/list/static/bundles = list(
@@ -73,7 +73,10 @@
"Sniper" = /obj/item/storage/box/syndie_kit/bundle/professional,
"Grenadier" = /obj/item/storage/box/syndie_kit/bundle/grenadier,
"Augmented" = /obj/item/storage/box/syndie_kit/bundle/metroid,
- "Ocelot" = /obj/item/storage/box/syndie_kit/bundle/ocelot)
+ "Ocelot" = /obj/item/storage/box/syndie_kit/bundle/ocelot,
+ "Nuclear Wannabe" = /obj/item/storage/box/syndie_kit/bundle/operative,
+ "Big Spender" = /obj/item/storage/box/syndie_kit/bundle/rich,
+ "Maintenance Collector" = /obj/item/storage/box/syndie_kit/bundle/maint_loot)
var/list/selected = list()
var/list/unselected = list()
diff --git a/code/game/objects/items/weapons/cards_ids.dm b/code/game/objects/items/weapons/cards_ids.dm
index 4abfbffb948..a6585f225d0 100644
--- a/code/game/objects/items/weapons/cards_ids.dm
+++ b/code/game/objects/items/weapons/cards_ids.dm
@@ -637,6 +637,29 @@
untrackable = TRUE
access = list(ACCESS_SYNDICATE, ACCESS_SYNDICATE_LEADER, ACCESS_SYNDICATE_COMMAND, ACCESS_EXTERNAL_AIRLOCKS)
+// like /obj/item/card/id/syndicate, but you can only swipe access, not change your identity, its also trackable
+/obj/item/card/id/syndi_scan_only
+ name = "Syndicate Operative's ID card (Operative)"
+ rank = "Operative"
+ assignment = "Operative"
+ registered_name = "Syndicate Operative"
+ access = list(ACCESS_SYNDICATE)
+
+/obj/item/card/id/syndi_scan_only/examine(mob/user)
+ . = ..()
+ if(isAntag(user))
+ . += "Similar to an agent ID, this ID card can be used to copy accesses, but it lacks the customization and anti-tracking capabilities of an agent ID."
+
+/obj/item/card/id/syndi_scan_only/afterattack(obj/item/O, mob/user, proximity)
+ if(!proximity)
+ return
+ if(istype(O, /obj/item/card/id))
+ var/obj/item/card/id/I = O
+ if(isliving(user) && user.mind)
+ if(user.mind.special_role)
+ to_chat(user, "The card's microscanners activate as you pass it over [I], copying its access.")
+ access |= I.access // Don't copy access if user isn't an antag -- to prevent metagaming
+
/obj/item/card/id/captains_spare
name = "captain's spare ID"
desc = "The spare ID of the captain."
diff --git a/code/game/objects/items/weapons/storage/uplink_kits.dm b/code/game/objects/items/weapons/storage/uplink_kits.dm
index b3a24992c50..6bfe4d60fd8 100644
--- a/code/game/objects/items/weapons/storage/uplink_kits.dm
+++ b/code/game/objects/items/weapons/storage/uplink_kits.dm
@@ -178,7 +178,7 @@
/// 133TC + Tactical Grenadier Belt
/obj/item/storage/box/syndie_kit/bundle/grenadier
name = "Grenade Bundle"
- desc = "A variety of grenades and pyrotechnics to ensure you can blast your way through any situation. "
+ desc = "A variety of grenades and pyrotechnics to ensure you can blast your way through any situation."
items = list(
/obj/item/storage/belt/grenade/tactical, // Contains 2 Frag and EMP grenades, 5 C4 Explosives, 5 Smoke and Gluon grenades and 1 Minibomb grenade ~20TC Estimate
/obj/item/storage/box/syndie_kit/stechkin, // 20TC
@@ -227,6 +227,71 @@
/obj/item/clothing/gloves/combat, // 0 TC
/obj/item/clothing/shoes/combat) // 0 TC
+// 175 TC
+/obj/item/storage/box/syndie_kit/bundle/operative
+ name = "\"Operative\" Bundle"
+ desc = "Glory to the Syndicate! Only the essentials for destroying Nanotrasen in this important kit."
+ items = list(
+ /obj/item/mod/control/pre_equipped/traitor, // 30TC
+ /obj/item/card/id/syndi_scan_only, // ~2TC?
+ /obj/item/encryptionkey/syndicate, // 10tc
+ /obj/item/melee/energy/sword/saber/red, // 40tc
+ /obj/item/shield/energy, // 40tc
+ /obj/item/pinpointer/advpinpointer, // 20tc, get dat fuckin disk
+ /obj/item/storage/belt/military, // 10tc
+ /obj/item/grenade/plastic/c4, // 5tc
+ /obj/item/bio_chip_implanter/proto_adrenalin, // 18tc
+ /obj/item/toy/figure/crew/syndie, // 0tc
+ /obj/item/clothing/under/syndicate // 0tc
+ )
+
+// 250 TC worth of credits
+/obj/item/storage/box/syndie_kit/bundle/rich
+ name = "Big Spender Bundle"
+ desc = "It's money. I don't need to explain more."
+ items = list(
+ /obj/item/clothing/under/suit/really_black, // 0 TC
+ /obj/item/clothing/shoes/laceup, // 0 TC
+ /obj/item/clothing/glasses/monocle, // 0 TC
+ /obj/item/clothing/gloves/color/white, // 0 TC
+ /obj/item/clothing/head/that, // 0 TC
+ /obj/item/storage/secure/briefcase, // 0 TC
+ /// syndie briefcase has 600 credits for 5 TC.
+ /obj/item/stack/spacecash/c10000,
+ /obj/item/stack/spacecash/c10000,
+ /obj/item/stack/spacecash/c10000
+ )
+
+// 211 TC of maint loot, higher than other bundles because it doesn't combo well
+/obj/item/storage/box/syndie_kit/bundle/maint_loot
+ name = "Maintenance Loot Bundle"
+ desc = "One of our interns found all of this lying in a Nanotrasen Maintenance tunnels. Reduce, Reuse, Recycle!"
+ items = list(
+ /obj/item/storage/bag/plasticbag, // 1 TC
+ /obj/item/grenade/clown_grenade, // 15 TC
+ /obj/item/seeds/ambrosia/cruciatus, // 5 TC
+ /obj/item/gun/projectile/automatic/pistol, // 20 TC
+ /obj/item/ammo_box/magazine/m10mm, // 3 TC
+ /obj/item/soap/syndie, // 5 TC
+ /obj/item/suppressor, // 5 TC
+ /obj/item/clothing/under/chameleon, // 3 TC
+ /obj/item/clothing/shoes/chameleon/noslip, // 10 TC
+ /obj/item/clothing/mask/chameleon/voice_change, // 10 TC
+ /obj/item/dnascrambler, // 7 TC
+ /obj/item/storage/backpack/satchel_flat, // 10 TC
+ /obj/item/storage/toolbox/syndicate, // 5 TC
+ /obj/item/storage/backpack/duffel/syndie/med/surgery, // 10 TC
+ /obj/item/storage/belt/military/traitor, // 10 TC
+ /obj/item/storage/box/syndie_kit/space, // 20 TC
+ /obj/item/multitool/ai_detect, // 5 TC
+ /obj/item/bio_chip_implanter/storage, // 40 TC
+ /obj/item/deck/cards/syndicate, // 2 TC
+ /obj/item/storage/secure/briefcase/syndie, // 5 TC
+ /obj/item/storage/fancy/cigarettes/cigpack_syndicate, // 7 TC
+ /obj/item/clothing/suit/jacket/syndicatebomber, // 3 TC
+ /obj/item/melee/knuckleduster/syndie, // 10 TC
+ )
+
/obj/item/storage/box/syndie_kit/bundle/populate_contents()
for(var/obj/item/item as anything in items)
new item(src)