diff --git a/code/__DEFINES/~skyrat_defines/opposing_force_defines.dm b/code/__DEFINES/~skyrat_defines/opposing_force_defines.dm
index 0e998bbbf6a..772b4afb94e 100644
--- a/code/__DEFINES/~skyrat_defines/opposing_force_defines.dm
+++ b/code/__DEFINES/~skyrat_defines/opposing_force_defines.dm
@@ -48,3 +48,5 @@
#define OPFOR_EQUIPMENT_CATEGORY_EXPLOSIVES "Explosives"
#define OPFOR_EQUIPMENT_CATEGORY_LOADOUT "Loadouts"
#define OPFOR_EQUIPMENT_CATEGORY_OTHER "Other"
+#define OPFOR_EQUIPMENT_CATEGORY_MARTIAL_ART "Martial Art"
+#define OPFOR_EQUIPMENT_CATEGORY_SERVICES "Services"
diff --git a/modular_skyrat/modules/opposing_force/code/equipment/ammo.dm b/modular_skyrat/modules/opposing_force/code/equipment/ammo.dm
new file mode 100644
index 00000000000..b4b4058ed65
--- /dev/null
+++ b/modular_skyrat/modules/opposing_force/code/equipment/ammo.dm
@@ -0,0 +1,91 @@
+/datum/opposing_force_equipment/ammo
+ category = OPFOR_EQUIPMENT_CATEGORY_AMMUNITION
+
+/datum/opposing_force_equipment/ammo/m45
+ item_type = /obj/item/ammo_box/magazine/m45
+ description = "An eight-round magazine for the M1911 pistol. Uses .45 caliber ammunition."
+
+/datum/opposing_force_equipment/ammo/m16
+ item_type = /obj/item/ammo_box/magazine/m16
+ description = "A twenty-round magazine for the M16 assault rifle. Uses 5.56x45mm ammunition."
+
+/datum/opposing_force_equipment/ammo/akm
+ item_type = /obj/item/ammo_box/magazine/akm
+
+/datum/opposing_force_equipment/ammo/akmbanan
+ item_type = /obj/item/ammo_box/magazine/akm/banana
+
+/datum/opposing_force_equipment/ammo/mp40
+ item_type = /obj/item/ammo_box/magazine/mp40
+ description = "A thirty-two round magazine for the MP-40. Uses 9x19mm ammunition."
+
+/datum/opposing_force_equipment/ammo/pps
+ item_type = /obj/item/ammo_box/magazine/pps
+
+/datum/opposing_force_equipment/ammo/ppsh
+ item_type = /obj/item/ammo_box/magazine/ppsh
+
+/datum/opposing_force_equipment/ammo/stg
+ item_type = /obj/item/ammo_box/magazine/stg
+
+/datum/opposing_force_equipment/ammo/fg42
+ item_type = /obj/item/ammo_box/magazine/fg42
+ description = "A twenty round magazine for the FG-42. Uses 7.92×57mm ammunition."
+
+/datum/opposing_force_equipment/ammo/m9mm
+ item_type = /obj/item/ammo_box/magazine/uzim9mm
+ description = "A thirty-two round magazine for the mini uzi. Uses 9x19mm ammunition."
+
+/datum/opposing_force_equipment/ammo/mg34
+ item_type = /obj/item/ammo_box/magazine/mg34
+
+/datum/opposing_force_equipment/ammo/cm762
+ item_type = /obj/item/ammo_box/magazine/cm762
+ description = "7.62 bullets in a ten round magazine for Cantanheim 7.62 rifle."
+
+/datum/opposing_force_equipment/ammo/a357
+ item_type = /obj/item/ammo_box/a357
+ description = "A seven-round .357 magnum speedloader for a revolver."
+
+/datum/opposing_force_equipment/ammo/a357match
+ item_type = /obj/item/ammo_box/a357/match
+ description = "A seven-round .357 magnum speedloader for a revolver, loaded with match-grade ammunition that bounces off walls several times."
+
+/datum/opposing_force_equipment/ammo/cfa_snub
+ item_type = /obj/item/ammo_box/magazine/multi_sprite/cfa_snub
+
+/datum/opposing_force_equipment/ammo/cfa_snubap
+ item_type = /obj/item/ammo_box/magazine/multi_sprite/cfa_snub/ap
+
+/datum/opposing_force_equipment/ammo/cfa_snubrubber
+ item_type = /obj/item/ammo_box/magazine/multi_sprite/cfa_snub/rubber
+
+/datum/opposing_force_equipment/ammo/cfa_snubincendiary
+ item_type = /obj/item/ammo_box/magazine/multi_sprite/cfa_snub/incendiary
+
+/datum/opposing_force_equipment/ammo/cfa_ruby
+ item_type = /obj/item/ammo_box/magazine/multi_sprite/cfa_ruby
+
+/datum/opposing_force_equipment/ammo/cfa_rubyap
+ item_type = /obj/item/ammo_box/magazine/multi_sprite/cfa_ruby/ap
+
+/datum/opposing_force_equipment/ammo/cfa_rubyrubber
+ item_type = /obj/item/ammo_box/magazine/multi_sprite/cfa_ruby/rubber
+
+/datum/opposing_force_equipment/ammo/cfa_rubyhp
+ item_type = /obj/item/ammo_box/magazine/multi_sprite/cfa_ruby/hp
+
+/datum/opposing_force_equipment/ammo/cfa_rubyincendiary
+ item_type = /obj/item/ammo_box/magazine/multi_sprite/cfa_ruby/incendiary
+
+/datum/opposing_force_equipment/ammo/wildcat
+ item_type = /obj/item/ammo_box/magazine/multi_sprite/cfa_wildcat
+
+/datum/opposing_force_equipment/ammo/wildcatap
+ item_type = /obj/item/ammo_box/magazine/multi_sprite/cfa_wildcat/ap
+
+/datum/opposing_force_equipment/ammo/wildcatrubber
+ item_type = /obj/item/ammo_box/magazine/multi_sprite/cfa_wildcat/rubber
+
+/datum/opposing_force_equipment/ammo/wildcatincendiary
+ item_type = /obj/item/ammo_box/magazine/multi_sprite/cfa_wildcat/incendiary
diff --git a/modular_skyrat/modules/opposing_force/code/equipment/clothing.dm b/modular_skyrat/modules/opposing_force/code/equipment/clothing.dm
new file mode 100644
index 00000000000..befaf51b870
--- /dev/null
+++ b/modular_skyrat/modules/opposing_force/code/equipment/clothing.dm
@@ -0,0 +1,107 @@
+/datum/opposing_force_equipment/clothing
+ category = OPFOR_EQUIPMENT_CATEGORY_CLOTHING
+
+/datum/opposing_force_equipment/clothing/syndiebag
+ item_type = /obj/item/storage/backpack/duffelbag/syndie
+ name = "Syndicate Brand Duffelbag"
+ description = "Thanks to being made from a lighter yet sturdier material, this duffelbag holds just the same as any other duffelbag without the speed penalty of its counterparts."
+
+/datum/opposing_force_equipment/clothing/vest
+ item_type = /obj/item/clothing/suit/armor/vest
+ description = "A basic armored vest, rated for all manner of protections."
+
+/datum/opposing_force_equipment/clothing/ballistic
+ item_type = /obj/item/clothing/suit/armor/bulletproof
+ description = "A bulletproof vest, for the aspiring warfighter."
+
+/datum/opposing_force_equipment/clothing/laser
+ item_type = /obj/item/clothing/suit/armor/laserproof
+ description = "A laserproof vest, for the aspiring bane of security."
+
+/datum/opposing_force_equipment/clothing/heavy
+ item_type = /obj/item/clothing/suit/armor/heavy
+ description = "A superheavy armor suit purpose-built to ensure all injuries are pushovers. WARNING: Not spaceproof."
+
+/datum/opposing_force_equipment/clothing/infiltrator
+ name = "Infiltrator Gear"
+ item_type = /obj/item/storage/toolbox/infiltrator
+ description = "A box of equipment specially made for an infiltration expert, including sound-insulated boots, nanochip apprehension gloves, \
+ and a voice-masking balaclava. Too bad it's made in such a red color..."
+
+/datum/opposing_force_equipment/clothing/helmet
+ item_type = /obj/item/clothing/head/helmet/swat
+ description = "A red-striped SWAT helmet. More robust than the standard-issue Nanotrasen security issue helmet, and spaceproof to boot."
+
+/datum/opposing_force_equipment/clothing/syndierig
+ item_type = /obj/item/storage/belt/military
+
+/datum/opposing_force_equipment/clothing/assaultbelt
+ item_type = /obj/item/storage/belt/military/assault
+
+/datum/opposing_force_equipment/clothing/bandolier
+ item_type = /obj/item/storage/belt/bandolier
+
+/datum/opposing_force_equipment/clothing/grenades
+ item_type = /obj/item/storage/belt/grenade
+ description = "A belt for holding grenades. Does not come with grenades unfortunately."
+
+/datum/opposing_force_equipment/clothing/chameleon_set
+ name = "Chameleon Kit"
+ item_type = /obj/item/storage/box/syndie_kit/chameleon
+ description = "A box containing a set of chameleon gear, perfect for disguise and infiltration."
+
+//NRI larping equipment here
+
+/datum/opposing_force_equipment/clothing/nrihelm
+ item_type = /obj/item/clothing/head/helmet/rus_helmet/nri
+
+/datum/opposing_force_equipment/clothing/nriberet
+ item_type = /obj/item/clothing/head/beret/sec/nri
+ name = "NRI Commander Beret"
+ description = "An armored beret worn by high-ranking NRI officers"
+
+/datum/opposing_force_equipment/clothing/reduthelm
+ item_type = /obj/item/clothing/head/helmet/nri_heavy
+ description = "A specialized ultra-heavy composite ballistic helmet stolen from space russians. Purpose-built for heavy duty combat, \
+ or murder with a frying pan."
+
+/datum/opposing_force_equipment/clothing/nrivest
+ item_type = /obj/item/clothing/suit/armor/vest/russian/nri
+
+/datum/opposing_force_equipment/clothing/redut
+ item_type = /obj/item/clothing/suit/armor/heavy/nri
+
+/datum/opposing_force_equipment/clothing/nrijumpsuit
+ item_type = /obj/item/clothing/under/costume/nri
+
+/datum/opposing_force_equipment/clothing/nribelt
+ item_type = /obj/item/storage/belt/military/nri
+
+//end of NRI larp equipment
+
+/datum/opposing_force_equipment/clothing/holster
+ item_type = /obj/item/storage/belt/holster/chameleon
+ description = "A chameleon holster that fits into your belt. Designed to hold one sidearm and a spare load of ammunition, it also allows you to spin \
+ your revolver, if you have one."
+
+/datum/opposing_force_equipment/clothing/holsternk
+ item_type = /obj/item/storage/belt/holster/nukie
+ description = "A holster retrieved from a nuclear operative. Able to hold any two types of weaponry or ammo as long as it is not extremely large. \
+ Expect security to be not so friendly if they see you wearing one of these..."
+
+//modsuits in 2022
+
+/datum/opposing_force_equipment/clothing/basicmod
+ name = "Advanced MODsuit"
+ item_type = /obj/item/mod/control/pre_equipped/advanced
+ description = "An advanced version of Nakamura Engineering's classic suit, shining with a white, acid and fire resistant polish."
+
+/datum/opposing_force_equipment/clothing/nukiemod
+ name = "Blood-Red MODsuit"
+ item_type = /obj/item/mod/control/pre_equipped/nuclear
+ description = "A suit designed by Gorlex Marauders, offering armor ruled illegal in most of Spinward Stellar."
+
+/datum/opposing_force_equipment/clothing/elitemod
+ name = "Elite MODsuit"
+ item_type = /obj/item/mod/control/pre_equipped/elite
+ description = "An elite suit upgraded by Cybersun Industries, offering upgraded armor values."
diff --git a/modular_skyrat/modules/opposing_force/code/equipment/equip_parent.dm b/modular_skyrat/modules/opposing_force/code/equipment/equip_parent.dm
new file mode 100644
index 00000000000..d29d02fff6d
--- /dev/null
+++ b/modular_skyrat/modules/opposing_force/code/equipment/equip_parent.dm
@@ -0,0 +1,21 @@
+/**
+ * OPFOR EQUIPMENT DATUM
+ *
+ * The OPFOR subsystem will gather all of these on initialisation and populate a list, which is then passed
+ * into the OPFOR UI, which can be selected by the user.
+ *
+ * The User will be equipped with whatever they have selected if the approving admin authorises it.
+ */
+
+
+/datum/opposing_force_equipment
+ /// The name of the equipment used in the listing, if not set, it will use the items name.
+ var/name
+ /// The description of the equipment used in the listing, if not set, it will use the items description.
+ var/description
+ /// The item path that we refer to when equipping.
+ var/obj/item_type
+ /// Category of the item. See opposing_force_defines.dm for a list of categories.
+ var/category = ""
+ /// Note to admins, useful if the item is extraordinarily strong
+ var/admin_note = ""
diff --git a/modular_skyrat/modules/opposing_force/code/equipment/explosives.dm b/modular_skyrat/modules/opposing_force/code/equipment/explosives.dm
new file mode 100644
index 00000000000..3d0c2c21e01
--- /dev/null
+++ b/modular_skyrat/modules/opposing_force/code/equipment/explosives.dm
@@ -0,0 +1,33 @@
+/datum/opposing_force_equipment/bomb
+ category = OPFOR_EQUIPMENT_CATEGORY_EXPLOSIVES
+
+/datum/opposing_force_equipment/bomb/henade
+ item_type = /obj/item/grenade/syndieminibomb/concussion
+ description = "A grenade intended to concuss and incapacitate enemies. Still rather explosive."
+
+/datum/opposing_force_equipment/bomb/fragnade
+ item_type = /obj/item/grenade/frag
+ description = "A fragmentation grenade that looses pieces of shrapnel after detonating for maximum injury."
+
+/datum/opposing_force_equipment/bomb/radnade
+ item_type = /obj/item/grenade/gluon
+ description = "A prototype grenade that freezes the target area and unleashes a wave of deadly radiation."
+
+/datum/opposing_force_equipment/bomb/c4
+ item_type = /obj/item/grenade/c4
+ description = "A brick of plastic explosives, for breaking open walls, doors, and optionally people."
+
+/datum/opposing_force_equipment/bomb/x4
+ item_type = /obj/item/grenade/c4/x4
+ description = "Similar to C4, but with a stronger blast that is directional instead of circular."
+
+/datum/opposing_force_equipment/bomb/syndicate
+ name = "Syndicate Bomb"
+ item_type = /obj/item/sbeacondrop/bomb
+ description = "A large, powerful bomb that can be wrenched down and armed with a variable timer."
+ admin_note = "WARNING: This is a pretty big bomb, it can take out entire rooms."
+
+/datum/opposing_force_equipment/bomb/syndicate_emp
+ name = "Syndicate EMP Bomb"
+ item_type = /obj/item/sbeacondrop/emp
+ description = "A modified version of the Syndicate Bomb that releases a large EMP instead.."
diff --git a/modular_skyrat/modules/opposing_force/code/equipment/guns.dm b/modular_skyrat/modules/opposing_force/code/equipment/guns.dm
new file mode 100644
index 00000000000..36a712e75f7
--- /dev/null
+++ b/modular_skyrat/modules/opposing_force/code/equipment/guns.dm
@@ -0,0 +1,130 @@
+/datum/opposing_force_equipment/gun
+ category = OPFOR_EQUIPMENT_CATEGORY_RANGED_WEAPONS
+/datum/opposing_force_equipment/gun/m1911
+ item_type = /obj/item/gun/ballistic/automatic/pistol/m1911
+ description = "A semi-automatic .45 caliber pistol. Gold standard for sidearms."
+
+/datum/opposing_force_equipment/gun/m16
+ item_type = /obj/item/gun/ballistic/automatic/assault_rifle/m16
+ admin_note = "WARNING: This weapon is extremely powerful, firing a 3 round burst of 35 damage bullets."
+
+/datum/opposing_force_equipment/gun/m16m
+ item_type = /obj/item/gun/ballistic/automatic/assault_rifle/m16/modern
+ admin_note = "WARNING: This weapon is extremely powerful, firing a 3 round burst of 30 damage bullets. The modern version features a halfed spread and reduced fire delay."
+
+/datum/opposing_force_equipment/gun/m16patriot
+ item_type = /obj/item/gun/ballistic/automatic/assault_rifle/m16/modern/v2
+ admin_note = "WARNING: This weapon is extremely powerful, firing a 4 round burst of 30 damage bullets. The patriot version features a halfed fire delay."
+
+/datum/opposing_force_equipment/gun/akm
+ item_type = /obj/item/gun/ballistic/automatic/assault_rifle/akm
+ admin_note = "WARNING: This weapon is extremely powerful, firing a 3 round burst of 38 damage bullets."
+
+/datum/opposing_force_equipment/gun/akmm
+ item_type = /obj/item/gun/ballistic/automatic/assault_rifle/akm/modern
+ admin_note = "WARNING: This weapon is extremely powerful, firing a 3 round burst of 38 damage bullets. The modern version has a halfed fire delay."
+
+/datum/opposing_force_equipment/gun/mp40
+ item_type = /obj/item/gun/ballistic/automatic/submachine_gun/mp40
+ admin_note = "WARNING: This weapon is extremely powerful, firing a 3 round burst of 30 damage bullets."
+
+/datum/opposing_force_equipment/gun/mp40m/modern
+ item_type = /obj/item/gun/ballistic/automatic/submachine_gun/mp40/modern
+ admin_note = "WARNING: This weapon is extremely powerful, firing a 4 round burst of 30 damage bullets. The modern version has a reduced fire delay."
+
+/datum/opposing_force_equipment/gun/pps
+ item_type = /obj/item/gun/ballistic/automatic/submachine_gun/pps
+ description = "A very cheap, barely reliable reproduction of a personal defense weapon based on the original Soviet model. Not nearly as infamous as the Mosin. \
+ Compact enough to fit in your backpack!"
+
+/datum/opposing_force_equipment/gun/ppsh
+ item_type = /obj/item/gun/ballistic/automatic/submachine_gun/ppsh
+ admin_note = "WARNING: This weapon is extremely powerful, firing a 6 round burst of 22 damage bullets."
+
+/datum/opposing_force_equipment/gun/ppshm
+ item_type = /obj/item/gun/ballistic/automatic/submachine_gun/ppsh/modern
+ admin_note = "WARNING: This weapon is extremely powerful, firing a 5 round burst of 22 damage bullets. The modern version features 25% less spread."
+
+/datum/opposing_force_equipment/gun/stg
+ item_type = /obj/item/gun/ballistic/automatic/assault_rifle/stg
+ admin_note = "WARNING: This weapon is extremely powerful, firing a 4 round burst of 40 damage bullets."
+
+/datum/opposing_force_equipment/gun/stgm
+ item_type = /obj/item/gun/ballistic/automatic/assault_rifle/stg/modern
+ admin_note = "WARNING: This weapon is extremely powerful, firing a 4 round burst of 40 damage bullets. The modern version features 20% reduced fire delay."
+
+/datum/opposing_force_equipment/gun/fg42
+ item_type = /obj/item/gun/ballistic/automatic/battle_rifle/fg42
+ admin_note = "WARNING: This weapon is extremely powerful, firing a 2 round burst of 45 damage bullets."
+
+/datum/opposing_force_equipment/gun/fg42m
+ item_type = /obj/item/gun/ballistic/automatic/battle_rifle/fg42/modern
+ admin_note = "WARNING: This weapon is extremely powerful, firing a 3 round burst of 45 damage bullets. The modern version has a halfed fire delay."
+
+/datum/opposing_force_equipment/gun/uzi
+ item_type = /obj/item/gun/ballistic/automatic/mini_uzi
+ description = "The uzi nine millimeter, a timeless submachinegun for a warrior out of time."
+ admin_note = "WARNING: This weapon is decently powerful, firing a 2 round burst of 30 damage bullets."
+
+/datum/opposing_force_equipment/gun/mg34
+ item_type = /obj/item/gun/ballistic/automatic/mg34
+ admin_note = "WARNING: This weapon is extremely powerful, being a fully-automatic light machine gun firing 45 damage bullets."
+
+/datum/opposing_force_equipment/gun/cfa
+ item_type = /obj/item/gun/ballistic/automatic/cfa_rifle
+ admin_note = "WARNING: This weapon is very powerful, firing single-shot 60 damage bullets."
+
+/datum/opposing_force_equipment/gun/m23
+ item_type = /obj/item/gun/ballistic/shotgun/m23
+ description = "An eight-round pump-action shotgun found in an old station. Comes loaded with beanbag shells but can take any 12 gauge load."
+
+/datum/opposing_force_equipment/gun/as2
+ item_type = /obj/item/gun/ballistic/shotgun/automatic/as2
+ description = "A compact version of the combat shotgun. Comes with a four-round tube and can be silenced as well as holstered to your belt or vest. \
+ Comes loaded with slugs but can take any 12 gauge load."
+
+/datum/opposing_force_equipment/gun/sas14
+ item_type = /obj/item/gun/ballistic/shotgun/sas14
+ description = "A semi-automatic, magazine-fed shotgun chambered in 14 gauge. Standard mags can take five rounds. \
+ Despite the lower damage of 14 gauge, it can load the highly praised taser shots."
+
+/datum/opposing_force_equipment/gun/g357
+ item_type = /obj/item/gun/ballistic/revolver
+ description = "A .357 magnum revolver. Seven shots, more than enough to kill anything that moves."
+ admin_note = "WARNING: This weapon is very powerful, firing semi-auto 60 damage bullets."
+
+/datum/opposing_force_equipment/gun/mateba
+ item_type = /obj/item/gun/ballistic/revolver/mateba
+ admin_note = "WARNING: This weapon is very powerful, firing semi-auto 60 damage bullets."
+
+/datum/opposing_force_equipment/gun/nagant
+ item_type = /obj/item/gun/ballistic/revolver/nagant
+ admin_note = "WARNING: This weapon is very powerful, firing semi-auto 60 damage bullets."
+
+/datum/opposing_force_equipment/gun/snub
+ item_type = /obj/item/gun/ballistic/automatic/pistol/cfa_snub
+ admin_note = "Fires 20 damage bullets."
+
+/datum/opposing_force_equipment/gun/ruby
+ item_type = /obj/item/gun/ballistic/automatic/pistol/cfa_ruby
+ admin_note = "Fires 40 damage bullets."
+
+/datum/opposing_force_equipment/gun/wildcat
+ item_type = /obj/item/gun/ballistic/automatic/cfa_wildcat
+ admin_note = "Fires a 3 round burst of 15 damage bullets."
+
+//oddities
+/datum/opposing_force_equipment/gun/ninjastar
+ item_type = /obj/item/throwing_star
+ description = "Be the maintenance ninja you always wanted to be. Does not come with multi-throwing cybernetics"
+
+/datum/opposing_force_equipment/gun/throwing_weapons
+ item_type = /obj/item/storage/box/syndie_kit/throwing_weapons
+ description = "A box of shurikens and reinforced bolas from ancient Earth martial arts. They are highly effective \
+ throwing weapons. The bolas can knock a target down and the shurikens will embed into limbs."
+ name = "Box of Throwing Weapons"
+
+/datum/opposing_force_equipment/gun/origami
+ item_type = /obj/item/storage/box/syndie_kit/origami_bundle
+ description = "A box containing a guide on how to craft masterful works of origami, allowing you to transform normal pieces of paper into \
+ perfectly aerodynamic (and potentially lethal) paper airplanes."
diff --git a/modular_skyrat/modules/opposing_force/code/equipment/loadouts.dm b/modular_skyrat/modules/opposing_force/code/equipment/loadouts.dm
new file mode 100644
index 00000000000..31d6e043cac
--- /dev/null
+++ b/modular_skyrat/modules/opposing_force/code/equipment/loadouts.dm
@@ -0,0 +1,45 @@
+/datum/opposing_force_equipment/loadout
+ category = OPFOR_EQUIPMENT_CATEGORY_LOADOUT
+
+/datum/opposing_force_equipment/loadout/gunman
+ item_type = /obj/item/storage/box/syndie_kit/gunman_outfit
+
+/datum/opposing_force_equipment/loadout/grenadier
+ item_type = /obj/item/storage/belt/grenade/full
+ name = "Grenadier Kit"
+ description = "A belt full of grenades and bombs. May gods have mercy upon us if they approve this."
+
+/datum/opposing_force_equipment/loadout/syndicate
+ item_type = /obj/item/storage/box/syndie_kit/insurgent
+ description = "A box containing a MODSuit, among other clothing, to LARP as your favorite syndicate operative! Does not come with any weapons."
+
+/datum/opposing_force_equipment/loadout/mafioso
+ name = "Downtown Special bundle"
+ item_type = /obj/item/storage/backpack/duffelbag/syndie/loadout/downtownspecial
+ description = "Ayyy fuggedaboudit! This bundle contains everything to be your own one man mafioso. Including an icon of the Virgin Mary for your own authentic mafia nickname. Gang members not included."
+
+/datum/opposing_force_equipment/loadout/nt_commander
+ name = "Corporate Deceit bundle"
+ item_type = /obj/item/storage/box/syndie_kit/loadout/nt_impostor
+ description = "Don the identities of the most powerful men and women in Nanotrasen, and pull strings from the shadows as you please with this specialized kit."
+
+/datum/opposing_force_equipment/loadout/bond
+ name = "Classic Spy bundle"
+ item_type = /obj/item/storage/backpack/duffelbag/syndie/loadout/bond
+ description = "Play the hero or the villain in a cheesy spy movie with this throwback kit to old syndicate operatives."
+
+/datum/opposing_force_equipment/loadout/donk
+ name = "Donk Co. Shill bundle"
+ item_type = /obj/item/storage/backpack/duffelbag/syndie/loadout/donkshillkit
+ description = "Love Donk Pockets? Want to shill Donk Co. Toys? This bundle is for you! Contains some DonkSoft guns, a vending machine, restocking units, and a box of Donk Pockets."
+
+/datum/opposing_force_equipment/loadout/robohand // Why? It's fun, I guess
+ name = "Robohand bundle"
+ item_type = /obj/item/storage/backpack/duffelbag/syndie/loadout/robohand
+ description = "Themed after the infamous terrorist(or not), Johnny Robohand. The gun inside requires your arm to be robotic. It comes with a robotic replacement arm. Wake the fuck up, samurai."
+ admin_note = "BIG FUCKING WARNING: This bundle is extremely powerful, containing a 60 damage gun and multiple magazines of ammunition, in addition to various implants. Use with EXTREME discretion."
+
+/datum/opposing_force_equipment/loadout/ocelotfoxtrot
+ name = "Snake Eater bundle"
+ item_type = /obj/item/storage/box/syndie_kit/loadout/ocelotfoxtrot
+ description = "A kit themed around one certain gun spinning cat. Includes his famous colt special, and personalised ammo."
diff --git a/modular_skyrat/modules/opposing_force/code/equipment/martial_arts.dm b/modular_skyrat/modules/opposing_force/code/equipment/martial_arts.dm
new file mode 100644
index 00000000000..f9b094efded
--- /dev/null
+++ b/modular_skyrat/modules/opposing_force/code/equipment/martial_arts.dm
@@ -0,0 +1,37 @@
+/datum/opposing_force_equipment/martial_art
+ category = OPFOR_EQUIPMENT_CATEGORY_MARTIAL_ART
+
+/datum/opposing_force_equipment/martial_art/cqc
+ item_type = /obj/item/book/granter/martial/cqc
+ description = "A manual that teaches a single user tactical Close-Quarters Combat before self-destructing."
+ admin_note = "CQC is capable of knocking out a target in 3 hits and is equivalent to 23 TC."
+
+/datum/opposing_force_equipment/martial_art/carp
+ item_type = /obj/item/book/granter/martial/carp
+ description = "This scroll contains the secrets of an ancient martial arts technique. You will master unarmed combat \
+ and gain the ability to swat bullets from the air, but you will also refuse to use dishonorable ranged weaponry."
+ admin_note = "Sleeping Carp is capable of letting you reflect bullets."
+
+/datum/opposing_force_equipment/martial_art/kravmaga
+ name = "Krav Maga Implanter"
+ item_type = /obj/item/implanter/krav_maga
+ description = "No need for gloves! This handy implanter teaches you everything you need to know about Krav Maga."
+
+/datum/opposing_force_equipment/martial_art/plasmafist
+ item_type = /obj/item/book/granter/martial/plasma_fist
+ description = "An old and wisened scroll capable of teaching the powerful technique of the Plasma Fist to one person."
+ admin_note = "BIG FUCKING WARNING: This martial art lets you gib people with a 5-hit combo. Use EXTREME discretion."
+
+/datum/opposing_force_equipment/martial_art/wrestling
+ item_type = /obj/item/storage/belt/champion/wrestling
+ description = "With the imbued MACHO POWERS of this belt, learn the MACHO art of wrestling!"
+ admin_note = "Normally adminspawn only, decently powerful."
+
+/datum/opposing_force_equipment/martial_art/mushpunch
+ item_type = /obj/item/mushpunch
+ description = "Consume this mushroom to learn the Mushroom Punch! A powerful attack that allows you to send people flying."
+
+/datum/opposing_force_equipment/martial_art/cqcplus //Is this too much? Maybe, but it's up to the admins to approve it
+ item_type = /obj/item/book/granter/martial/cqc/plus
+ description = "A manual that teaches a single user tactical Close-Quarters Combat and how to deflect projectiles before self-destructing."
+ admin_note = "BIG WARNING: This is CQC with Sleeping Carp's bullet reflection."
diff --git a/modular_skyrat/modules/opposing_force/code/equipment/melee.dm b/modular_skyrat/modules/opposing_force/code/equipment/melee.dm
new file mode 100644
index 00000000000..b7a3dcac1e7
--- /dev/null
+++ b/modular_skyrat/modules/opposing_force/code/equipment/melee.dm
@@ -0,0 +1,52 @@
+/datum/opposing_force_equipment/melee
+ category = OPFOR_EQUIPMENT_CATEGORY_MELEE_WEAPONS
+
+/datum/opposing_force_equipment/melee/switchblade
+ item_type = /obj/item/switchblade
+
+/datum/opposing_force_equipment/melee/metalbat
+ item_type = /obj/item/melee/baseball_bat/ablative
+ description = "A highly reflective baseball bat for when you need to crack skulls and run away from security in the same night. Can reflect lasers."
+
+/datum/opposing_force_equipment/melee/esword
+ item_type = /obj/item/melee/energy/sword
+ description = "The energy sword is an edged weapon with a blade of pure energy. The sword is small enough to be \
+ pocketed when inactive. Activating it produces a loud, distinctive noise."
+
+/datum/opposing_force_equipment/melee/epirate
+ item_type = /obj/item/melee/energy/sword/pirate
+ description = "A variant of the energy sword styled as a cutlass. Pirate costume sold separately. Warranty void if bought."
+
+/datum/opposing_force_equipment/melee/edagger
+ item_type = /obj/item/pen/edagger
+ name = "Energy Dagger"
+ description = "A dagger made of energy that looks and functions as a pen when off."
+
+/datum/opposing_force_equipment/melee/cutlass
+ item_type = /obj/item/claymore/cutlass
+
+/datum/opposing_force_equipment/melee/claymore
+ item_type = /obj/item/claymore
+ description = "An extremely sharp and robust sword perfect to cleave through any opposition. Also highly illegal."
+
+/datum/opposing_force_equipment/melee/katana
+ item_type = /obj/item/katana
+ description = "An extremely sharp and robust sword folded over nine thousand times until perfection. Highly lethal and illegal."
+
+/datum/opposing_force_equipment/melee/ekatana
+ item_type = /obj/item/energy_katana
+ description = "An energy katana seized from a dead Spider Clan ninja. As well as being highly robust, it allows the \
+ user to teleport short distances using right-click."
+
+/datum/opposing_force_equipment/melee/eswordarm
+ item_type = /obj/item/autosurgeon/organ/syndicate/esword_arm
+ name = "Energy Sword Arm Implant"
+ description = "It's an energy sword, in your arm. Pretty decent for getting past stop-searches and assassinating people. Comes loaded in a Syndicate brand autosurgeon to boot!"
+
+/datum/opposing_force_equipment/melee/powerfist
+ item_type = /obj/item/melee/powerfist
+ name = "Power Fist"
+ description = "The power-fist is a metal gauntlet with a built-in piston-ram powered by an external gas supply.\
+ Upon hitting a target, the piston-ram will extend forward to make contact for some serious damage. \
+ Using a wrench on the piston valve will allow you to tweak the amount of gas used per punch to \
+ deal extra damage and hit targets further. Use a screwdriver to take out any attached tanks."
diff --git a/modular_skyrat/modules/opposing_force/code/equipment/misc.dm b/modular_skyrat/modules/opposing_force/code/equipment/misc.dm
new file mode 100644
index 00000000000..19816bf550d
--- /dev/null
+++ b/modular_skyrat/modules/opposing_force/code/equipment/misc.dm
@@ -0,0 +1,34 @@
+/datum/opposing_force_equipment/other
+ category = OPFOR_EQUIPMENT_CATEGORY_OTHER
+
+/datum/opposing_force_equipment/other/uplink
+ item_type = /obj/item/uplink/opfor
+ name = "Syndicate Uplink"
+ description = "An old-school syndicate uplink without a password and an empty TC account. Perfect for the aspiring operatives."
+
+/datum/opposing_force_equipment/other/tc1
+ item_type = /obj/item/stack/telecrystal
+ name = "1 Raw Telecrystal"
+ description = "A telecrystal in its rawest and purest form; can be utilized on active uplinks to increase their telecrystal count."
+
+/datum/opposing_force_equipment/other/tc5
+ item_type = /obj/item/stack/telecrystal/five
+ name = "5 Raw Telecrystals"
+ description = "A bunch of telecrystals in their rawest and purest form; can be utilized on active uplinks to increase their telecrystal count."
+
+/datum/opposing_force_equipment/other/tc20
+ item_type = /obj/item/stack/telecrystal/twenty
+ name = "20 Raw Telecrystals"
+ description = "A bundle of telecrystals in their rawest and purest form; can be utilized on active uplinks to increase their telecrystal count."
+
+/datum/opposing_force_equipment/other/cashcase
+ item_type = /obj/item/storage/secure/briefcase/syndie
+ name = "Syndicate Briefcase Full of Cash"
+ description = "A secure briefcase containing 5000 space credits. Useful for bribing personnel, or purchasing goods \
+ and services at lucrative prices. The briefcase also feels a little heavier to hold; it has been \
+ manufactured to pack a little bit more of a punch if your client needs some convincing."
+
+/datum/opposing_force_equipment/other/c10k
+ name = "10000 Space Cash Bill"
+ item_type = /obj/item/stack/spacecash/c10000
+ description = "Cold hard cash. When you REALLY need to bribe or buy your way in. Or to payroll your gangmembers."
diff --git a/modular_skyrat/modules/opposing_force/code/equipment/services.dm b/modular_skyrat/modules/opposing_force/code/equipment/services.dm
new file mode 100644
index 00000000000..07d9626bd71
--- /dev/null
+++ b/modular_skyrat/modules/opposing_force/code/equipment/services.dm
@@ -0,0 +1,54 @@
+/datum/opposing_force_equipment/service
+ category = OPFOR_EQUIPMENT_CATEGORY_SERVICES
+ item_type = /obj/effect/gibspawner/generic
+
+/datum/opposing_force_equipment/service/rep
+ name = "100 Reputation"
+ description = "Grant your Syndicate uplink 100 reputation, should you have one."
+ var/rep_count = 100
+
+/datum/opposing_force_equipment/service/rep/high
+ name = "500 Reputation"
+ description = "Grant your Syndicate uplink 500 reputation, should you have one."
+ rep_count = 500
+
+/datum/opposing_force_equipment/service/rep/very_high
+ name = "1000 Reputation"
+ description = "Grant your Syndicate uplink 1000 reputation, should you have one."
+ rep_count = 1000
+
+/datum/opposing_force_equipment/service/rep/on_issue(mob/living/target)
+ var/datum/component/uplink/the_uplink = target.mind.find_syndicate_uplink()
+ if(!the_uplink) //Why'd you even purchase this in the first place?
+ return
+ var/datum/uplink_handler/handler = the_uplink.uplink_handler
+ if(!handler)
+ return
+ handler.progression_points += rep_count
+
+/datum/opposing_force_equipment/service/power_outage
+ name = "Power Outage"
+ description = "A virus will be uploaded to the engineering processing servers to force a routine power grid check, forcing all APCs on the station to be temporarily disabled."
+ admin_note = "Equivalent to the Grid Check random event."
+
+/datum/opposing_force_equipment/service/power_outage/on_issue()
+ var/datum/round_event_control/event = locate(/datum/round_event_control/grid_check) in SSevents.control
+ event.runEvent()
+
+/datum/opposing_force_equipment/service/telecom_outage
+ name = "Telecomms Outage"
+ description = "A virus will be uploaded to the telecommunication processing servers to temporarily disable themselves."
+ admin_note = "Equivalent to the Communications Blackout random event."
+
+/datum/opposing_force_equipment/service/telecom_outage/on_issue()
+ var/datum/round_event_control/event = locate(/datum/round_event_control/communications_blackout) in SSevents.control
+ event.runEvent()
+
+/datum/opposing_force_equipment/service/market_crash
+ name = "Market Crash"
+ description = "Some forged documents will be given to Nanotrasen, skyrocketing the price of all on-station vendors for a short while."
+ admin_note = "Equivalent to the Market Crash random event."
+
+/datum/opposing_force_equipment/service/market_crash/on_issue()
+ var/datum/round_event_control/event = locate(/datum/round_event_control/market_crash) in SSevents.control
+ event.runEvent()
diff --git a/modular_skyrat/modules/opposing_force/code/equipment/utility.dm b/modular_skyrat/modules/opposing_force/code/equipment/utility.dm
new file mode 100644
index 00000000000..f2344558b91
--- /dev/null
+++ b/modular_skyrat/modules/opposing_force/code/equipment/utility.dm
@@ -0,0 +1,110 @@
+/datum/opposing_force_equipment/gear
+ category = OPFOR_EQUIPMENT_CATEGORY_UTILITY
+
+/datum/opposing_force_equipment/gear/emag
+ name = "Cryptographic Sequencer"
+ item_type = /obj/item/card/emag
+ description = "An electromagnetic ID card used to break machinery and disable safeties. Notoriously used by Syndicate agents, now commonly traded hardware at blackmarkets."
+
+/datum/opposing_force_equipment/gear/doormag
+ name = "Airlock Override Card"
+ item_type = /obj/item/card/emag/doorjack
+ description = "Identifies commonly as a \"doorjack\", this illegally modified ID card can disrupt airlock electronics. Has a self recharging cell."
+
+/datum/opposing_force_equipment/gear/stoolbox
+ item_type = /obj/item/storage/toolbox/syndicate
+ description = "A fully-kitted toolbox scavenged from maintenance by our highly-paid monkeys. The toolbox \
+ itself is weighted especially to bash any head in and comes with a free pair of insulated combat gloves."
+
+/datum/opposing_force_equipment/gear/engichip
+ item_type = /obj/item/skillchip/job/engineer
+ description = "A skillchip that, when installed, allows the user to recognise airlock and APC wire layouts and understand their functionality at a glance. Highly valuable and sought after."
+
+/datum/opposing_force_equipment/gear/roboticist
+ item_type = /obj/item/skillchip/job/roboticist
+ description = "A skillchip that, when installed, allows the user to recognise cyborg wire layouts and understand their functionality at a glance."
+
+/datum/opposing_force_equipment/gear/tacticool
+ item_type = /obj/item/skillchip/chameleon/reload
+
+/datum/opposing_force_equipment/gear/thermalgoggles
+ item_type = /obj/item/clothing/glasses/thermal
+ description = "A pair of thermal goggles. Cannot be chameleon disguised."
+
+/datum/opposing_force_equipment/gear/xraygoggles
+ item_type = /obj/item/clothing/glasses/thermal/xray
+ description = "A pair of low-light x-ray goggles manufactured by the Syndicate. Cannot be chameleon disguised. Makes wearer more vulnerable to bright lights."
+
+/datum/opposing_force_equipment/gear/thermalgogglessyndi
+ item_type = /obj/item/clothing/glasses/thermal/syndi
+ description = "A Syndicate take on the classic thermal goggles, complete with chameleon disguise functionality."
+
+/datum/opposing_force_equipment/gear/cloakerbelt
+ item_type = /obj/item/shadowcloak
+ description = "A belt that allows its wearer to temporarily turn invisible. Only recharges in dark areas. Use wisely."
+
+/datum/opposing_force_equipment/gear/projector
+ item_type = /obj/item/chameleon
+ description = "A projector that allows its user to turn into any scanned object. Pairs well with a cluttered room and ambush weapon."
+
+/datum/opposing_force_equipment/gear/box
+ item_type = /obj/item/implanter/stealth
+ description = "An implanter that grants you the ability to wield the ultimate in invisible box technology. Best used in conjunction with \
+ a tape recorder playing Snake Eater."
+
+/datum/opposing_force_equipment/gear/sechud
+ item_type = /obj/item/clothing/glasses/hud/security/chameleon
+ description = "A stolen Security HUD refitted with chameleon technology. Provides flash protection."
+
+/datum/opposing_force_equipment/gear/aidetector
+ item_type = /obj/item/multitool/ai_detect
+ description = "A multitool that lets you see the AI's vision cone with an overlaid HUD and know if you're being watched."
+
+/datum/opposing_force_equipment/gear/noslip
+ item_type = /obj/item/clothing/shoes/chameleon/noslip
+ description = "No-slip chameleon shoes, for when you plan on running through hell and back."
+
+/datum/opposing_force_equipment/gear/cloakmod
+ item_type = /obj/item/mod/module/stealth/ninja
+ description = "An upgraded MODsuit cloaking module stolen from the Spider Clan's finest. Consumes less power than the standard, but is obviously illegal."
+
+/datum/opposing_force_equipment/gear/suppressor
+ item_type = /obj/item/suppressor
+
+/datum/opposing_force_equipment/gear/extendedrag
+ item_type = /obj/item/reagent_containers/glass/rag/large
+ description = "A damp rag made with extra absorbant materials. The perfectly innocent tool to kidnap your local assistant. \
+ Apply up to 30u liquids and use combat mode to smother anyone not covering their mouth."
+
+/datum/opposing_force_equipment/gear/nodrop
+ item_type = /obj/item/autosurgeon/organ/syndicate/nodrop
+ name = "Anti Drop Implant"
+ description = "An implant that prevents you from dropping items in your hand involuntarily. Comes loaded in a syndicate autosurgeon."
+
+/datum/opposing_force_equipment/gear/hackerman
+ item_type = /obj/item/autosurgeon/organ/syndicate/hackerman
+ name = "Hacking Arm Implant"
+ description = "An advanced arm implant that comes with cutting edge hacking tools. Perfect for the cybernetically enhanced wirerunners."
+
+/datum/opposing_force_equipment/gear/mulligan
+ name = "Mulligan"
+ item_type = /obj/item/reagent_containers/syringe/mulligan
+ description = "A syringe containing a chemical that can completely change the user's identity."
+
+/datum/opposing_force_equipment/gear/dump_eet
+ name = "Crab-17 Phone"
+ item_type = /obj/item/suspiciousphone
+ description = "\"Bogdanoff, he did it.\" \"He bought?\" \"He went all in.\" \"Dump it.\"" // I'm sorry
+
+/datum/opposing_force_equipment/gear/borer_egg
+ name = "Cortical Borer Egg"
+ item_type = /obj/effect/gibspawner/generic
+ description = "The egg of a cortical borer. The cortical borer is a parasite that can produce chemicals upon command, as well as learn new chemicals through the blood if old enough."
+ admin_note = "Allows a ghost to take control of a Cortical Borer."
+
+/datum/opposing_force_equipment/gear/borer_egg/on_issue(mob/living/target)
+ new /obj/effect/mob_spawn/ghost_role/borer_egg(get_turf(src))
+
+/datum/opposing_force_equipment/gear/ventcrawl_book
+ item_type = /obj/item/book/granter/traitsr/ventcrawl_book
+ admin_note = "WARNING: Incredibly powerful, use discretion when handing this out."
diff --git a/modular_skyrat/modules/opposing_force/code/items.dm b/modular_skyrat/modules/opposing_force/code/items.dm
index 4908c63b78e..984277b0601 100644
--- a/modular_skyrat/modules/opposing_force/code/items.dm
+++ b/modular_skyrat/modules/opposing_force/code/items.dm
@@ -42,8 +42,19 @@
max_ammo = 30
multiple_sprites = AMMO_BOX_FULL_EMPTY
-
-
-
/obj/item/autosurgeon/organ/syndicate/hackerman
starting_organ = /obj/item/organ/cyberimp/arm/hacker
+
+/obj/item/storage/box/syndie_kit/insurgent
+ name = "Syndicate Insurgent Bundle"
+ desc = "A box containing everything you need to LARP as your favorite syndicate operative!"
+
+/obj/item/storage/box/syndie_kit/insurgent/PopulateContents()
+ new /obj/item/clothing/under/syndicate(src)
+ new /obj/item/clothing/gloves/tackler/combat(src)
+ new /obj/item/clothing/shoes/combat(src)
+ new /obj/item/clothing/glasses/sunglasses(src)
+ new /obj/item/clothing/mask/gas/sechailer/swat(src)
+ new /obj/item/storage/belt/military(src)
+ new /obj/item/card/id/advanced/chameleon(src)
+ new /obj/item/mod/control/pre_equipped/nuclear(src)
diff --git a/modular_skyrat/modules/opposing_force/code/opposing_force_datum.dm b/modular_skyrat/modules/opposing_force/code/opposing_force_datum.dm
index a84f56e7d9b..f21e3288c9b 100644
--- a/modular_skyrat/modules/opposing_force/code/opposing_force_datum.dm
+++ b/modular_skyrat/modules/opposing_force/code/opposing_force_datum.dm
@@ -18,6 +18,10 @@
opposing_force_equipment = null
return ..()
+/// Called when the gear is issued, use for unique services (e.g. a power outage) that don't have an item
+/datum/opposing_force_equipment/proc/on_issue(mob/living/target)
+ return
+
/datum/opposing_force_objective
/// The name of the objective
var/title = ""
@@ -186,6 +190,7 @@
"name" = opfor_equipment.name,
"description" = opfor_equipment.description,
"equipment_category" = opfor_equipment.category,
+ "admin_note" = opfor_equipment.admin_note,
))
data["equipment_list"] += list(list(
"category" = equipment_category,
@@ -204,6 +209,7 @@
"reason" = equipment.reason,
"denied_reason" = equipment.denied_reason,
"count" = equipment.count,
+ "admin_note" = equipment.opposing_force_equipment.admin_note,
)
data["selected_equipment"] += list(equipment_data)
@@ -432,7 +438,10 @@
if(iterating_equipment.status != OPFOR_EQUIPMENT_STATUS_APPROVED)
continue
for(var/i in 1 to iterating_equipment.count)
- new iterating_equipment.opposing_force_equipment.item_type(spawned_box)
+ if(!istype(iterating_equipment.opposing_force_equipment.item_type, /obj/effect/gibspawner/generic)) // This is what's used in place of an item in uplinks, so it's the same here
+ new iterating_equipment.opposing_force_equipment.item_type(spawned_box)
+ iterating_equipment.opposing_force_equipment.on_issue(target)
+
if(ishuman(target))
var/mob/living/carbon/human/human = target
human.put_in_hands(spawned_box)
diff --git a/modular_skyrat/modules/opposing_force/code/opposing_force_equipment.dm b/modular_skyrat/modules/opposing_force/code/opposing_force_equipment.dm
deleted file mode 100644
index e945d979fd1..00000000000
--- a/modular_skyrat/modules/opposing_force/code/opposing_force_equipment.dm
+++ /dev/null
@@ -1,565 +0,0 @@
-/**
- * OPFOR EQUIPMENT DATUM
- *
- * The OPFOR subsystem will gather all of these on initialisation and populate a list, which is then passed
- * into the OPFOR UI, which can be selected by the user.
- *
- * The User will be equipped with whatever they have selected if the approving admin authorises it.
- */
-
-
-/datum/opposing_force_equipment
- /// The name of the equipment used in the listing, if not set, it will use the items name.
- var/name
- /// The description of the equipment used in the listing, if not set, it will use the items description.
- var/description
- /// The item path that we refer to when equipping.
- var/obj/item_type
- /// Category of the item. See opposing_force_defines.dm for a list of categories.
- var/category = ""
-
-/**
- * GUNS
- */
-
-/datum/opposing_force_equipment/gun
- category = OPFOR_EQUIPMENT_CATEGORY_RANGED_WEAPONS
-/datum/opposing_force_equipment/gun/m1911
- item_type = /obj/item/gun/ballistic/automatic/pistol/m1911
- description = "A semi-automatic .45 caliber pistol. Gold standard for sidearms."
-
-/datum/opposing_force_equipment/gun/m16
- item_type = /obj/item/gun/ballistic/automatic/assault_rifle/m16
-
-/datum/opposing_force_equipment/gun/m16m
- item_type = /obj/item/gun/ballistic/automatic/assault_rifle/m16/modern
-
-/datum/opposing_force_equipment/gun/m16patriot
- item_type = /obj/item/gun/ballistic/automatic/assault_rifle/m16/modern/v2
-
-/datum/opposing_force_equipment/gun/akm
- item_type = /obj/item/gun/ballistic/automatic/assault_rifle/akm
-
-/datum/opposing_force_equipment/gun/akmm
- item_type = /obj/item/gun/ballistic/automatic/assault_rifle/akm/modern
-
-/datum/opposing_force_equipment/gun/mp40
- item_type = /obj/item/gun/ballistic/automatic/submachine_gun/mp40
-
-/datum/opposing_force_equipment/gun/mp40m/modern
- item_type = /obj/item/gun/ballistic/automatic/submachine_gun/mp40
-
-/datum/opposing_force_equipment/gun/pps
- item_type = /obj/item/gun/ballistic/automatic/submachine_gun/pps
- description = "A very cheap, barely reliable reproduction of a personal defense weapon based on the original Soviet model. Not nearly as infamous as the Mosin. \
- Compact enough to fit in your backpack!"
-
-/datum/opposing_force_equipment/gun/ppsh
- item_type = /obj/item/gun/ballistic/automatic/submachine_gun/ppsh
-
-/datum/opposing_force_equipment/gun/ppshm
- item_type = /obj/item/gun/ballistic/automatic/submachine_gun/ppsh/modern
-
-/datum/opposing_force_equipment/gun/stg
- item_type = /obj/item/gun/ballistic/automatic/assault_rifle/stg
-
-/datum/opposing_force_equipment/gun/stgm
- item_type = /obj/item/gun/ballistic/automatic/assault_rifle/stg/modern
-
-/datum/opposing_force_equipment/gun/fg42
- item_type = /obj/item/gun/ballistic/automatic/battle_rifle/fg42
-
-/datum/opposing_force_equipment/gun/fg42m
- item_type = /obj/item/gun/ballistic/automatic/battle_rifle/fg42/modern
-
-/datum/opposing_force_equipment/gun/uzi
- item_type = /obj/item/gun/ballistic/automatic/mini_uzi
- description = "The uzi nine millimeter, a timeless submachinegun for a warrior out of time."
-
-/datum/opposing_force_equipment/gun/mg34
- item_type = /obj/item/gun/ballistic/automatic/mg34
-
-/datum/opposing_force_equipment/gun/cfa
- item_type = /obj/item/gun/ballistic/automatic/cfa_rifle
-
-/datum/opposing_force_equipment/gun/m23
- item_type = /obj/item/gun/ballistic/shotgun/m23
- description = "An eight-round pump-action shotgun found in an old station. Comes loaded with beanbag shells but can take any 12 gauge load."
-
-/datum/opposing_force_equipment/gun/as2
- item_type = /obj/item/gun/ballistic/shotgun/automatic/as2
- description = "A compact version of the combat shotgun. Comes with a four-round tube and can be silenced as well as holstered to your belt or vest. \
- Comes loaded with slugs but can take any 12 gauge load."
-
-/datum/opposing_force_equipment/gun/sas14
- item_type = /obj/item/gun/ballistic/shotgun/sas14
- description = "A semi-automatic, magazine-fed shotgun chambered in 14 gauge. Standard mags can take five rounds. \
- Despite the lower damage of 14 gauge, it can load the highly praised taser shots."
-
-/datum/opposing_force_equipment/gun/g357
- item_type = /obj/item/gun/ballistic/revolver
- description = "A .357 magnum revolver. Seven shots, more than enough to kill anything that moves."
-
-/datum/opposing_force_equipment/gun/mateba
- item_type = /obj/item/gun/ballistic/revolver/mateba
-
-/datum/opposing_force_equipment/gun/nagant
- item_type = /obj/item/gun/ballistic/revolver/nagant
-
-/datum/opposing_force_equipment/gun/snub
- item_type = /obj/item/gun/ballistic/automatic/pistol/cfa_snub
-
-/datum/opposing_force_equipment/gun/ruby
- item_type = /obj/item/gun/ballistic/automatic/pistol/cfa_ruby
-
-/datum/opposing_force_equipment/gun/wildcat
- item_type = /obj/item/gun/ballistic/automatic/cfa_wildcat
-
-//oddities
-/datum/opposing_force_equipment/gun/ninjastar
- item_type = /obj/item/throwing_star
- description = "Be the maintenance ninja you always wanted to be. Does not come with multi-throwing cybernetics"
-
-/datum/opposing_force_equipment/gun/throwing_weapons
- item_type = /obj/item/storage/box/syndie_kit/throwing_weapons
- description = "A box of shurikens and reinforced bolas from ancient Earth martial arts. They are highly effective \
- throwing weapons. The bolas can knock a target down and the shurikens will embed into limbs."
- name = "Box of Throwing Weapons"
-
-/datum/opposing_force_equipment/gun/origami
- item_type = /obj/item/storage/box/syndie_kit/origami_bundle
- description = "A box containing a guide on how to craft masterful works of origami, allowing you to transform normal pieces of paper into \
- perfectly aerodynamic (and potentially lethal) paper airplanes."
-
-
-
-/**
- * AMMO
- */
-/datum/opposing_force_equipment/ammo
- category = OPFOR_EQUIPMENT_CATEGORY_AMMUNITION
-
-/datum/opposing_force_equipment/ammo/m45
- item_type = /obj/item/ammo_box/magazine/m45
- description = "An eight-round magazine for the M1911 pistol. Uses .45 caliber ammunition."
-
-/datum/opposing_force_equipment/ammo/m16
- item_type = /obj/item/ammo_box/magazine/m16
- description = "A twenty-round magazine for the M16 assault rifle. Uses 5.56x45mm ammunition."
-
-/datum/opposing_force_equipment/ammo/akm
- item_type = /obj/item/ammo_box/magazine/akm
-
-/datum/opposing_force_equipment/ammo/akmbanan
- item_type = /obj/item/ammo_box/magazine/akm/banana
-
-/datum/opposing_force_equipment/ammo/mp40
- item_type = /obj/item/ammo_box/magazine/mp40
- description = "A thirty-two round magazine for the MP-40. Uses 9x19mm ammunition."
-
-/datum/opposing_force_equipment/ammo/pps
- item_type = /obj/item/ammo_box/magazine/pps
-
-/datum/opposing_force_equipment/ammo/ppsh
- item_type = /obj/item/ammo_box/magazine/ppsh
-
-/datum/opposing_force_equipment/ammo/stg
- item_type = /obj/item/ammo_box/magazine/stg
-
-/datum/opposing_force_equipment/ammo/fg42
- item_type = /obj/item/ammo_box/magazine/fg42
- description = "A twenty round magazine for the FG-42. Uses 7.92×57mm ammunition."
-
-/datum/opposing_force_equipment/ammo/m9mm
- item_type = /obj/item/ammo_box/magazine/uzim9mm
- description = "A thirty-two round magazine for the mini uzi. Uses 9x19mm ammunition."
-
-/datum/opposing_force_equipment/ammo/mg34
- item_type = /obj/item/ammo_box/magazine/mg34
-
-/datum/opposing_force_equipment/ammo/cm762
- item_type = /obj/item/ammo_box/magazine/cm762
- description = "7.62 bullets in a ten round magazine for Cantanheim 7.62 rifle."
-
-/datum/opposing_force_equipment/ammo/a357
- item_type = /obj/item/ammo_box/a357
- description = "A seven-round .357 magnum speedloader for a revolver."
-
-/datum/opposing_force_equipment/ammo/a357match
- item_type = /obj/item/ammo_box/a357/match
- description = "A seven-round .357 magnum speedloader for a revolver, loaded with match-grade ammunition that bounces off walls several times."
-
-/datum/opposing_force_equipment/ammo/cfa_snub
- item_type = /obj/item/ammo_box/magazine/multi_sprite/cfa_snub
-
-/datum/opposing_force_equipment/ammo/cfa_snubap
- item_type = /obj/item/ammo_box/magazine/multi_sprite/cfa_snub/ap
-
-/datum/opposing_force_equipment/ammo/cfa_snubrubber
- item_type = /obj/item/ammo_box/magazine/multi_sprite/cfa_snub/rubber
-
-/datum/opposing_force_equipment/ammo/cfa_snubincendiary
- item_type = /obj/item/ammo_box/magazine/multi_sprite/cfa_snub/incendiary
-
-/datum/opposing_force_equipment/ammo/cfa_ruby
- item_type = /obj/item/ammo_box/magazine/multi_sprite/cfa_ruby
-
-/datum/opposing_force_equipment/ammo/cfa_rubyap
- item_type = /obj/item/ammo_box/magazine/multi_sprite/cfa_ruby/ap
-
-/datum/opposing_force_equipment/ammo/cfa_rubyrubber
- item_type = /obj/item/ammo_box/magazine/multi_sprite/cfa_ruby/rubber
-
-/datum/opposing_force_equipment/ammo/cfa_rubyhp
- item_type = /obj/item/ammo_box/magazine/multi_sprite/cfa_ruby/hp
-
-/datum/opposing_force_equipment/ammo/cfa_rubyincendiary
- item_type = /obj/item/ammo_box/magazine/multi_sprite/cfa_ruby/incendiary
-
-/datum/opposing_force_equipment/ammo/wildcat
- item_type = /obj/item/ammo_box/magazine/multi_sprite/cfa_wildcat
-
-/datum/opposing_force_equipment/ammo/wildcatap
- item_type = /obj/item/ammo_box/magazine/multi_sprite/cfa_wildcat/ap
-
-/datum/opposing_force_equipment/ammo/wildcatrubber
- item_type = /obj/item/ammo_box/magazine/multi_sprite/cfa_wildcat/rubber
-
-/datum/opposing_force_equipment/ammo/wildcatincendiary
- item_type = /obj/item/ammo_box/magazine/multi_sprite/cfa_wildcat/incendiary
-/**
- * MELEE WEAPONS
- */
-/datum/opposing_force_equipment/melee
- category = OPFOR_EQUIPMENT_CATEGORY_MELEE_WEAPONS
-
-/datum/opposing_force_equipment/melee/switchblade
- item_type = /obj/item/switchblade
-
-/datum/opposing_force_equipment/melee/metalbat
- item_type = /obj/item/melee/baseball_bat/ablative
- description = "A highly reflective baseball bat for when you need to crack skulls and run away from security in the same night."
-
-/datum/opposing_force_equipment/melee/esword
- item_type = /obj/item/melee/energy/sword
- description = "The energy sword is an edged weapon with a blade of pure energy. The sword is small enough to be \
- pocketed when inactive. Activating it produces a loud, distinctive noise."
-
-/datum/opposing_force_equipment/melee/epirate
- item_type = /obj/item/melee/energy/sword/pirate
- description = "A variant of the energy sword styled as a cutlass. Pirate costume sold separately. Warranty void if bought."
-
-/datum/opposing_force_equipment/melee/edagger
- item_type = /obj/item/pen/edagger
- name = "Energy Dagger"
- description = "A dagger made of energy that looks and functions as a pen when off."
-
-/datum/opposing_force_equipment/melee/cutlass
- item_type = /obj/item/claymore/cutlass
-
-/datum/opposing_force_equipment/melee/claymore
- item_type = /obj/item/claymore
- description = "An extremely sharp and robust sword perfect to cleave through any opposition. Also highly illegal."
-
-/datum/opposing_force_equipment/melee/katana
- item_type = /obj/item/katana
- description = "An extremely sharp and robust sword folded over nine thousand times until perfection. Highly lethal and illegal."
-
-/datum/opposing_force_equipment/melee/ekatana
- item_type = /obj/item/energy_katana
- description = "An energy katana seized from a dead Spider Clan ninja. As well as being highly robust, it allows the \
- user to teleport short distances using right-click."
-
-/datum/opposing_force_equipment/melee/eswordarm
- item_type = /obj/item/autosurgeon/organ/syndicate/esword_arm
- name = "Energy Sword Arm Implant"
- description = "It's an energy sword, in your arm. Pretty decent for getting past stop-searches and assassinating people. Comes loaded in a Syndicate brand autosurgeon to boot!"
-
-/datum/opposing_force_equipment/melee/powerfist
- item_type = /obj/item/melee/powerfist
- name = "Power Fist"
- description = "The power-fist is a metal gauntlet with a built-in piston-ram powered by an external gas supply.\
- Upon hitting a target, the piston-ram will extend forward to make contact for some serious damage. \
- Using a wrench on the piston valve will allow you to tweak the amount of gas used per punch to \
- deal extra damage and hit targets further. Use a screwdriver to take out any attached tanks."
-
-//martialarts
-
-/datum/opposing_force_equipment/melee/cqc
- item_type = /obj/item/book/granter/martial/cqc
- description = "A manual that teaches a single user tactical Close-Quarters Combat before self-destructing."
-
-/datum/opposing_force_equipment/melee/carp
- item_type = /obj/item/book/granter/martial/carp
- description = "This scroll contains the secrets of an ancient martial arts technique. You will master unarmed combat \
- and gain the ability to swat bullets from the air, but you will also refuse to use dishonorable ranged weaponry."
-
-/datum/opposing_force_equipment/melee/kravmaga
- item_type = /obj/item/clothing/gloves/krav_maga/combatglovesplus //yes its a glove but it exists to give krav maga martial arts so its here
-
-/**
- * ARMOR AND CLOTHES
- */
-/datum/opposing_force_equipment/clothing
- category = OPFOR_EQUIPMENT_CATEGORY_CLOTHING
-
-/datum/opposing_force_equipment/clothing/syndiebag
- item_type = /obj/item/storage/backpack/duffelbag/syndie
- name = "Syndicate Brand Duffelbag"
- description = "Thanks to being made from a lighter yet sturdier material, this duffelbag holds just the same as any other duffelbag without the speed penalty of its counterparts."
-
-/datum/opposing_force_equipment/clothing/vest
- item_type = /obj/item/clothing/suit/armor/vest
- description = "A basic armored vest, rated for all manner of protections."
-
-/datum/opposing_force_equipment/clothing/ballistic
- item_type = /obj/item/clothing/suit/armor/bulletproof
- description = "A bulletproof vest, for the aspiring warfighter."
-
-/datum/opposing_force_equipment/clothing/laser
- item_type = /obj/item/clothing/suit/armor/laserproof
- description = "A laserproof vest, for the aspiring bane of security."
-
-/datum/opposing_force_equipment/clothing/heavy
- item_type = /obj/item/clothing/suit/armor/heavy
- description = "A superheavy armor suit purpose-built to ensure all injuries are pushovers. WARNING: Not spaceproof."
-
-/datum/opposing_force_equipment/clothing/infiltrator
- name = "Infiltrator Gear"
- item_type = /obj/item/storage/toolbox/infiltrator
- description = "A box of equipment specially made for an infiltration expert, including sound-insulated boots, nanochip apprehension gloves, \
- and a voice-masking balaclava. Too bad it's made in such a red color..."
-
-/datum/opposing_force_equipment/clothing/helmet
- item_type = /obj/item/clothing/head/helmet/swat
- description = "A red-striped SWAT helmet. More robust than the standard-issue Nanotrasen security issue helmet, and spaceproof to boot."
-
-/datum/opposing_force_equipment/clothing/syndierig
- item_type = /obj/item/storage/belt/military
-
-/datum/opposing_force_equipment/clothing/assaultbelt
- item_type = /obj/item/storage/belt/military/assault
-
-/datum/opposing_force_equipment/clothing/bandolier
- item_type = /obj/item/storage/belt/bandolier
-
-/datum/opposing_force_equipment/clothing/grenades
- item_type = /obj/item/storage/belt/grenade
- description = "A belt for holding grenades. Does not come with grenades unfortunately."
-
-//NRI larping equipment here
-
-/datum/opposing_force_equipment/clothing/nrihelm
- item_type = /obj/item/clothing/head/helmet/rus_helmet/nri
-
-/datum/opposing_force_equipment/clothing/nriberet
- item_type = /obj/item/clothing/head/beret/sec/nri
- name = "NRI Commander Beret"
- description = "An armored beret worn by high-ranking NRI officers"
-
-/datum/opposing_force_equipment/clothing/reduthelm
- item_type = /obj/item/clothing/head/helmet/nri_heavy
- description = "A specialized ultra-heavy composite ballistic helmet stolen from space russians. Purpose-built for heavy duty combat, \
- or murder with a frying pan."
-
-/datum/opposing_force_equipment/clothing/nrivest
- item_type = /obj/item/clothing/suit/armor/vest/russian/nri
-
-/datum/opposing_force_equipment/clothing/redut
- item_type = /obj/item/clothing/suit/armor/heavy/nri
-
-/datum/opposing_force_equipment/clothing/nrijumpsuit
- item_type = /obj/item/clothing/under/costume/nri
-
-/datum/opposing_force_equipment/clothing/nribelt
- item_type = /obj/item/storage/belt/military/nri
-
-//end of NRI larp equipment
-
-/datum/opposing_force_equipment/clothing/holster
- item_type = /obj/item/storage/belt/holster/chameleon
- description = "A chameleon holster that fits into your belt. Designed to hold one sidearm and a spare load of ammunition, it also allows you to spin \
- your revolver, if you have one."
-
-/datum/opposing_force_equipment/clothing/holsternk
- item_type = /obj/item/storage/belt/holster/nukie
- description = "A holster retrieved from a nuclear operative. Able to hold any two types of weaponry or ammo as long as it is not extremely large. \
- Expect security to be not so friendly if they see you wearing one of these..."
-
-//modsuits in 2022
-
-/datum/opposing_force_equipment/clothing/basicmod
- item_type = /obj/item/mod/control/pre_equipped/advanced
-
-/datum/opposing_force_equipment/clothing/syndiemod
- item_type = /obj/item/mod/control/pre_equipped/traitor
-
-/datum/opposing_force_equipment/clothing/nukiemod
- item_type = /obj/item/mod/control/pre_equipped/nuclear
-
-/datum/opposing_force_equipment/clothing/elitemod
- item_type = /obj/item/mod/control/pre_equipped/elite
-
-/**
- * UTILITY ITEMS
- */
-/datum/opposing_force_equipment/gear/
- category = OPFOR_EQUIPMENT_CATEGORY_UTILITY
-
-/datum/opposing_force_equipment/gear/emag
- name = "Cryptographic Sequencer"
- item_type = /obj/item/card/emag
- description = "An electromagnetic ID card used to break machinery and disable safeties. Notoriously used by Syndicate agents, now commonly traded hardware at blackmarkets."
-
-/datum/opposing_force_equipment/gear/stoolbox
- item_type = /obj/item/storage/toolbox/syndicate
- description = "A fully-kitted toolbox scavenged from maintenance by our highly-paid monkeys. The toolbox \
- itself is weighted especially to bash any head in and comes with a free pair of insulated combat gloves."
-
-/datum/opposing_force_equipment/gear/engichip
- item_type = /obj/item/skillchip/job/engineer
- description = "A skillchip that, when installed, allows the user to recognise airlock and APC wire layouts and understand their functionality at a glance. Highly valuable and sought after."
-
-/datum/opposing_force_equipment/gear/roboticist
- item_type = /obj/item/skillchip/job/roboticist
- description = "A skillchip that, when installed, allows the user to recognise cyborg wire layouts and understand their functionality at a glance."
-
-/datum/opposing_force_equipment/gear/tacticool
- item_type = /obj/item/skillchip/chameleon/reload
-
-/datum/opposing_force_equipment/gear/thermalgoggles
- item_type = /obj/item/clothing/glasses/thermal
- description = "A pair of thermal goggles. Cannot be chameleon disguised."
-
-/datum/opposing_force_equipment/gear/xraygoggles
- item_type = /obj/item/clothing/glasses/thermal/xray
- description = "A pair of low-light x-ray goggles manufactured by the Syndicate. Cannot be chameleon disguised. Makes wearer more vulnerable to bright lights."
-
-/datum/opposing_force_equipment/gear/thermalgogglessyndi
- item_type = /obj/item/clothing/glasses/thermal/syndi
- description = "A Syndicate take on the classic thermal goggles, complete with chameleon disguise functionality."
-
-/datum/opposing_force_equipment/gear/cloakerbelt
- item_type = /obj/item/shadowcloak
- description = "A belt that allows its wearer to temporarily turn invisible. Only recharges in dark areas. Use wisely."
-
-/datum/opposing_force_equipment/gear/projector
- item_type = /obj/item/chameleon
- description = "A projector that allows its user to turn into any scanned object. Pairs well with a cluttered room and ambush weapon."
-
-/datum/opposing_force_equipment/gear/box
- item_type = /obj/item/implanter/stealth
- description = "An implanter that grants you the ability to wield the ultimate in invisible box technology. Best used in conjunction with \
- a tape recorder playing Snake Eater."
-
-/datum/opposing_force_equipment/gear/sechud
- item_type = /obj/item/clothing/glasses/hud/security/chameleon
- description = "A stolen Security HUD refitted with chameleon technology. Provides flash protection."
-
-/datum/opposing_force_equipment/gear/aidetector
- item_type = /obj/item/multitool/ai_detect
- description = "A multitool that lets you see the AI's vision cone with an overlaid HUD and know if you're being watched."
-
-/datum/opposing_force_equipment/gear/noslip
- item_type = /obj/item/clothing/shoes/chameleon/noslip
- description = "No-slip chameleon shoes, for when you plan on running through hell and back."
-
-/datum/opposing_force_equipment/gear/cloakmod
- item_type = /obj/item/mod/module/stealth/ninja
- description = "An upgraded MODsuit cloaking module stolen from the Spider Clan's finest. Consumes less power than the standard, but is obviously illegal."
-
-/datum/opposing_force_equipment/gear/suppressor
- item_type = /obj/item/suppressor
-
-/datum/opposing_force_equipment/gear/extendedrag
- item_type = /obj/item/reagent_containers/glass/rag/large
- description = "A damp rag made with extra absorbant materials. The perfectly innocent tool to kidnap your local assistant. \
- Apply up to 30u liquids and use combat mode to smother anyone not covering their mouth."
-
-/datum/opposing_force_equipment/gear/nodrop
- item_type = /obj/item/autosurgeon/organ/syndicate/nodrop
- name = "Anti Drop Implant"
- description = "An implant that prevents you from dropping items in your hand involuntarily. Comes loaded in a syndicate autosurgeon"
-
-/datum/opposing_force_equipment/gear/hackerman
- item_type = /obj/item/autosurgeon/organ/syndicate/hackerman
- name = "Hacking Arm Implant"
- description = "An advanced arm implant that comes with cutting edge hacking tools. Perfect for the cybernetically enhanced wirerunners."
-
-/**
- * EXPLOSIVES
- */
-/datum/opposing_force_equipment/bomb
- category = OPFOR_EQUIPMENT_CATEGORY_EXPLOSIVES
-
-/datum/opposing_force_equipment/bomb/henade
- item_type = /obj/item/grenade/syndieminibomb/concussion
- description = "A grenade intended to concuss and incapacitate enemies. Still rather explosive."
-
-/datum/opposing_force_equipment/bomb/fragnade
- item_type = /obj/item/grenade/frag
- description = "A fragmentation grenade that looses pieces of shrapnel after detonating for maximum injury."
-
-/datum/opposing_force_equipment/bomb/radnade
- item_type = /obj/item/grenade/gluon
- description = "A prototype grenade that freezes the target area and unleashes a wave of deadly radiation."
-
-/datum/opposing_force_equipment/bomb/c4
- item_type = /obj/item/grenade/c4
- description = "A brick of plastic explosives, for breaking open walls, doors, and optionally people."
-
-/datum/opposing_force_equipment/bomb/x4
- item_type = /obj/item/grenade/c4/x4
- description = "Similar to C4, but with a stronger blast that is directional instead of circular."
-
-/**
- * LOADOUTS
- */
-/datum/opposing_force_equipment/loadout
- category = OPFOR_EQUIPMENT_CATEGORY_LOADOUT
-
-/datum/opposing_force_equipment/loadout/gunman
- item_type = /obj/item/storage/box/syndie_kit/gunman_outfit
-
-/datum/opposing_force_equipment/loadout/grenadier
- item_type = /obj/item/storage/belt/grenade/full
- name = "Grenadier Kit"
- description = "A belt full of grenades and bombs. May gods have mercy upon us if they approve this."
-
-/**
- * OTHER
- */
-/datum/opposing_force_equipment/other
- category = OPFOR_EQUIPMENT_CATEGORY_OTHER
-
-/datum/opposing_force_equipment/other/uplink
- item_type = /obj/item/uplink/opfor
- name = "Syndicate Uplink"
- description = "An old-school syndicate uplink without a password and an empty TC account. Perfect for the aspiring operatives."
-
-/datum/opposing_force_equipment/other/tc1
- item_type = /obj/item/stack/telecrystal
- name = "1 Raw Telecrystal"
- description = "A telecrystal in its rawest and purest form; can be utilized on active uplinks to increase their telecrystal count."
-
-/datum/opposing_force_equipment/other/tc5
- item_type = /obj/item/stack/telecrystal/five
- name = "5 Raw Telecrystals"
- description = "A bunch of telecrystals in their rawest and purest form; can be utilized on active uplinks to increase their telecrystal count."
-
-/datum/opposing_force_equipment/other/tc20
- item_type = /obj/item/stack/telecrystal/twenty
- name = "20 Raw Telecrystals"
- description = "A bundle of telecrystals in their rawest and purest form; can be utilized on active uplinks to increase their telecrystal count."
-
-/datum/opposing_force_equipment/other/cashcase
- item_type = /obj/item/storage/secure/briefcase/syndie
- name = "Syndicate Briefcase Full of Cash"
- description = "A secure briefcase containing 5000 space credits. Useful for bribing personnel, or purchasing goods \
- and services at lucrative prices. The briefcase also feels a little heavier to hold; it has been \
- manufactured to pack a little bit more of a punch if your client needs some convincing."
-
-/datum/opposing_force_equipment/other/c10k
- name = "10000 Space Cash Bill"
- item_type = /obj/item/stack/spacecash/c10000
- description = "Cold hard cash. When you REALLY need to bribe or buy your way in. Or to payroll your gangmembers."
diff --git a/tgstation.dme b/tgstation.dme
index ecdd25df06f..e8cb7fe2f2e 100644
--- a/tgstation.dme
+++ b/tgstation.dme
@@ -5264,9 +5264,19 @@
#include "modular_skyrat\modules\opposing_force\code\items.dm"
#include "modular_skyrat\modules\opposing_force\code\mind.dm"
#include "modular_skyrat\modules\opposing_force\code\opposing_force_datum.dm"
-#include "modular_skyrat\modules\opposing_force\code\opposing_force_equipment.dm"
#include "modular_skyrat\modules\opposing_force\code\opposing_force_subsystem.dm"
#include "modular_skyrat\modules\opposing_force\code\roundend.dm"
+#include "modular_skyrat\modules\opposing_force\code\equipment\ammo.dm"
+#include "modular_skyrat\modules\opposing_force\code\equipment\clothing.dm"
+#include "modular_skyrat\modules\opposing_force\code\equipment\equip_parent.dm"
+#include "modular_skyrat\modules\opposing_force\code\equipment\explosives.dm"
+#include "modular_skyrat\modules\opposing_force\code\equipment\guns.dm"
+#include "modular_skyrat\modules\opposing_force\code\equipment\loadouts.dm"
+#include "modular_skyrat\modules\opposing_force\code\equipment\martial_arts.dm"
+#include "modular_skyrat\modules\opposing_force\code\equipment\melee.dm"
+#include "modular_skyrat\modules\opposing_force\code\equipment\misc.dm"
+#include "modular_skyrat\modules\opposing_force\code\equipment\services.dm"
+#include "modular_skyrat\modules\opposing_force\code\equipment\utility.dm"
#include "modular_skyrat\modules\organs\code\lungs.dm"
#include "modular_skyrat\modules\oversized\code\door.dm"
#include "modular_skyrat\modules\oversized\code\oversized_quirk.dm"
diff --git a/tgui/packages/tgui/interfaces/OpposingForcePanel.js b/tgui/packages/tgui/interfaces/OpposingForcePanel.js
index 998297bd1a8..607fdfd1cf5 100644
--- a/tgui/packages/tgui/interfaces/OpposingForcePanel.js
+++ b/tgui/packages/tgui/interfaces/OpposingForcePanel.js
@@ -765,6 +765,13 @@ export const AdminTab = (props, context) => {
{equipment.count}
+ {item.admin_note.length === 0 ? (
+ null
+ ) : (
+
+ {item.admin_note}
+
+ )}
))