diff --git a/code/game/objects/items/stunbaton.dm b/code/game/objects/items/stunbaton.dm
index 13905151a83..f54cc7f56f7 100644
--- a/code/game/objects/items/stunbaton.dm
+++ b/code/game/objects/items/stunbaton.dm
@@ -250,3 +250,46 @@
QDEL_NULL(sparkler)
return ..()
+/obj/item/melee/baton/boomerang
+ name = "\improper OZtek Boomerang"
+ desc = "A device invented in 2486 for the great Space Emu War by the confederacy of Australicus, these high-tech boomerangs also work exceptionally well at stunning crewmembers. Just be careful to catch it when thrown!"
+ throw_speed = 1
+ icon_state = "boomerang"
+ item_state = "boomerang"
+ force = 5
+ throwforce = 5
+ throw_range = 5
+ hitcost = 2000
+ throw_hit_chance = 99 //Have you prayed today?
+ custom_materials = list(/datum/material/iron = 10000, /datum/material/glass = 4000, /datum/material/silver = 10000, /datum/material/gold = 2000)
+
+/obj/item/melee/baton/boomerang/throw_at(atom/target, range, speed, mob/thrower, spin=1, diagonals_first = 0, datum/callback/callback, force)
+ if(turned_on)
+ if(ishuman(thrower))
+ var/mob/living/carbon/human/H = thrower
+ H.throw_mode_off() //so they can catch it on the return.
+ return ..()
+
+/obj/item/melee/baton/boomerang/throw_impact(atom/hit_atom, datum/thrownthing/throwingdatum)
+ if(turned_on)
+ var/caught = hit_atom.hitby(src, FALSE, FALSE, throwingdatum=throwingdatum)
+ if(ishuman(hit_atom) && !caught && prob(throw_hit_chance))//if they are a carbon and they didn't catch it
+ baton_effect(hit_atom)
+ if(thrownby && !caught)
+ sleep(1)
+ if(!QDELETED(src))
+ throw_at(thrownby, throw_range+2, throw_speed, null, TRUE)
+ else
+ return ..()
+
+
+/obj/item/melee/baton/boomerang/update_icon()
+ if(turned_on)
+ icon_state = "[initial(icon_state)]_active"
+ else if(!cell)
+ icon_state = "[initial(icon_state)]_nocell"
+ else
+ icon_state = "[initial(icon_state)]"
+
+/obj/item/melee/baton/boomerang/loaded //Same as above, comes with a cell.
+ preload_cell_type = /obj/item/stock_parts/cell/high
diff --git a/code/modules/projectiles/pins.dm b/code/modules/projectiles/pins.dm
index 6730ffba8f8..834bc58df94 100644
--- a/code/modules/projectiles/pins.dm
+++ b/code/modules/projectiles/pins.dm
@@ -295,6 +295,21 @@
to_chat(user, "ERROR: User has no valid bank account to substract neccesary funds from!")
return FALSE
+// Explorer Firing Pin- Prevents use on station Z-Level, so it's justifiable to give Explorers guns that don't suck.
+/obj/item/firing_pin/explorer
+ name = "outback firing pin"
+ desc = "A firing pin used by the austrailian defense force, retrofit to prevent weapon discharge on the station."
+ icon_state = "firing_pin_explorer"
+ fail_message = "CANNOT FIRE WHILE ON STATION, MATE!"
+
+// This checks that the user isn't on the station Z-level.
+/obj/item/firing_pin/explorer/pin_auth(mob/living/user)
+ var/turf/station_check = get_turf(user)
+ if(!station_check||is_station_level(station_check.z))
+ to_chat(user, "You cannot use your weapon while on the station!")
+ return FALSE
+ return TRUE
+
// Laser tag pins
/obj/item/firing_pin/tag
name = "laser tag firing pin"
diff --git a/code/modules/research/designs/weapon_designs.dm b/code/modules/research/designs/weapon_designs.dm
index 7f316fbf6b1..a441ec0d773 100644
--- a/code/modules/research/designs/weapon_designs.dm
+++ b/code/modules/research/designs/weapon_designs.dm
@@ -94,6 +94,16 @@
category = list("Firing Pins")
departmental_flags = DEPARTMENTAL_FLAG_SECURITY
+/datum/design/pin_explorer
+ name = "Outback Firing Pin"
+ desc = "This firing pin only shoots while ya ain't on station, fair dinkum!"
+ id = "pin_explorer"
+ build_type = PROTOLATHE
+ materials = list(/datum/material/silver = 1000, /datum/material/gold = 1000, /datum/material/iron = 500)
+ build_path = /obj/item/firing_pin/explorer
+ category = list("Firing Pins")
+ departmental_flags = DEPARTMENTAL_FLAG_SECURITY
+
/datum/design/stunrevolver
name = "Tesla Revolver"
desc = "A high-tech revolver that fires internal, reusable shock cartridges in a revolving cylinder. The cartridges can be recharged using conventional rechargers."
@@ -342,3 +352,13 @@
materials = list(MAT_CATEGORY_RIGID = 12000)
build_path = /obj/item/melee/cleric_mace
category = list("Imported")
+
+/datum/design/stun_boomerang
+ name = "OZtek Boomerang"
+ desc = "Uses reverse flow gravitodynamics to flip its personal gravity back to the thrower mid-flight. Also functions similar to a stun baton."
+ id = "stun_boomerang"
+ build_type = PROTOLATHE
+ materials = list(/datum/material/iron = 10000, /datum/material/glass = 4000, /datum/material/silver = 10000, /datum/material/gold = 2000)
+ build_path = /obj/item/melee/baton/boomerang
+ category = list("Weapons")
+ departmental_flags = DEPARTMENTAL_FLAG_SECURITY
diff --git a/code/modules/research/techweb/all_nodes.dm b/code/modules/research/techweb/all_nodes.dm
index 83b5fcc6c7a..e0491e6fad5 100644
--- a/code/modules/research/techweb/all_nodes.dm
+++ b/code/modules/research/techweb/all_nodes.dm
@@ -1067,6 +1067,17 @@
hidden = TRUE
experimental = TRUE
+/datum/techweb_node/aus_security
+ id = "aus_security"
+ display_name = "Australicus Security Protocols"
+ description = "It is said that security in the Australicus sector is tight, so we took some pointers from their equipment. Thankfully, our sector lacks any signs of these, 'dropbears'."
+ prereq_ids = list("base")
+ design_ids = list("pin_explorer", "stun_boomerang")
+ research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 2500)
+ export_price = 2500
+ hidden = TRUE
+ experimental = TRUE
+
//Helpers for debugging/balancing the techweb in its entirety!
/proc/total_techweb_exports()
var/list/datum/techweb_node/processing = list()
diff --git a/icons/mob/inhands/equipment/security_lefthand.dmi b/icons/mob/inhands/equipment/security_lefthand.dmi
index e4713a67fbc..6b44b72cafe 100644
Binary files a/icons/mob/inhands/equipment/security_lefthand.dmi and b/icons/mob/inhands/equipment/security_lefthand.dmi differ
diff --git a/icons/mob/inhands/equipment/security_righthand.dmi b/icons/mob/inhands/equipment/security_righthand.dmi
index 6da7e5e79e3..932f0a10b10 100644
Binary files a/icons/mob/inhands/equipment/security_righthand.dmi and b/icons/mob/inhands/equipment/security_righthand.dmi differ
diff --git a/icons/obj/device.dmi b/icons/obj/device.dmi
index cc482eaf37b..8ad974fbffb 100644
Binary files a/icons/obj/device.dmi and b/icons/obj/device.dmi differ
diff --git a/icons/obj/items_and_weapons.dmi b/icons/obj/items_and_weapons.dmi
index 2af7a239a7c..322514171b3 100644
Binary files a/icons/obj/items_and_weapons.dmi and b/icons/obj/items_and_weapons.dmi differ