diff --git a/code/modules/projectiles/gun.dm b/code/modules/projectiles/gun.dm
index 7816b7882a4..3e96bad41c4 100644
--- a/code/modules/projectiles/gun.dm
+++ b/code/modules/projectiles/gun.dm
@@ -292,7 +292,10 @@
process_point_blank(projectile, user, target)
if(process_projectile(projectile, user, target, user.zone_sel.selecting, clickparams))
- handle_post_fire(user, target, pointblank, reflex, TRUE)
+ var/show_emote = TRUE
+ if(i > 1 && burst_delay < 3 && burst < 5)
+ show_emote = FALSE
+ handle_post_fire(user, target, pointblank, reflex, show_emote)
update_icon()
if(i < burst)
diff --git a/code/modules/projectiles/guns/energy/laser.dm b/code/modules/projectiles/guns/energy/laser.dm
index 475df754123..7457fbb9557 100644
--- a/code/modules/projectiles/guns/energy/laser.dm
+++ b/code/modules/projectiles/guns/energy/laser.dm
@@ -166,32 +166,46 @@ obj/item/gun/energy/retro
to_chat(usr, "You can't look through the scope without stabilizing the rifle!")
/obj/item/gun/energy/laser/shotgun
- name = "quad-beam laser"
- desc = "A Nanotrasen designed laser weapon, designed to split a single beam four times."
+ name = "laser shotgun"
+ desc = "A Nanotrasen designed laser weapon, designed to split a single amplified beam four times."
desc_fluff = "The NT QB-2 is a laser weapon developed and produced by Nanotrasen. Designed to fill in the niche that ballistic shotguns do, but in the form of laser weaponry. It is equipped with a special crystal lens that splits a single laser beam into four."
- icon = 'icons/obj/guns/ecarbine.dmi' // using this as placeholder until proper sprites are made
- icon_state = "energykill100"
- item_state = "energykill100"
+ icon = 'icons/obj/guns/lasershotgun.dmi'
+ icon_state = "lasershotgun"
+ item_state = "lasershotgun"
+ modifystate = null
+ has_item_ratio = FALSE
fire_sound = 'sound/weapons/Laser.ogg'
slot_flags = SLOT_BELT|SLOT_BACK
- w_class = 3
+ w_class = ITEMSIZE_LARGE
accuracy = 0
force = 10
matter = list(DEFAULT_WALL_MATERIAL = 2000)
origin_tech = list(TECH_COMBAT = 4, TECH_MAGNET = 2)
projectile_type = /obj/item/projectile/beam/shotgun
- max_shots = 12
+ max_shots = 20
sel_mode = 1
+ is_wieldable = TRUE
burst = 4
burst_delay = 0
move_delay = 0
fire_delay = 2
dispersion = list(10)
- can_turret = 1
- turret_is_lethal = 1
+ can_turret = TRUE
+ turret_is_lethal = TRUE
turret_sprite_set = "laser"
- modifystate = "energykill"
+/obj/item/gun/energy/laser/shotgun/update_icon()
+ ..()
+ if(wielded)
+ item_state = "[initial(icon_state)]-wielded"
+ else
+ item_state = initial(item_state)
+ update_held_icon()
+
+/obj/item/gun/energy/laser/shotgun/research
+ name = "expedition shotgun"
+ desc = "A Nanotrasen designed laser weapon, designed to split a single amplified beam four times. This one is marked for expeditionary use."
+ pin = /obj/item/device/firing_pin/away_site
////////Laser Tag////////////////////
diff --git a/code/modules/projectiles/pins.dm b/code/modules/projectiles/pins.dm
index 4f9a70b89ce..3c305589fd4 100644
--- a/code/modules/projectiles/pins.dm
+++ b/code/modules/projectiles/pins.dm
@@ -217,3 +217,14 @@ Pins Below.
return 0
else
return 1
+
+/obj/item/device/firing_pin/away_site
+ name = "away site firing pin"
+ desc = "This access locked firing pin allows weapons to be fired only when the user is not on-station."
+ fail_message = "USER ON STATION LEVEL."
+
+/obj/item/device/firing_pin/access/pin_auth(mob/living/user)
+ if(!isStationLevel(src.z))
+ return TRUE
+ else
+ return FALSE
\ No newline at end of file
diff --git a/code/modules/projectiles/projectile/beams.dm b/code/modules/projectiles/projectile/beams.dm
index 66b7b67a6f4..ab9110e75c4 100644
--- a/code/modules/projectiles/projectile/beams.dm
+++ b/code/modules/projectiles/projectile/beams.dm
@@ -282,13 +282,9 @@
name = "diffuse laser"
icon_state = "laser"
pass_flags = PASSTABLE | PASSGLASS | PASSGRILLE
- damage = 15
+ damage = 20
eyeblur = 4
- muzzle_type = /obj/effect/projectile/muzzle/laser
- tracer_type = /obj/effect/projectile/tracer/laser
- impact_type = /obj/effect/projectile/impact/laser
-
/obj/item/projectile/beam/megaglaive
name = "thermal lance"
icon_state = "gauss"
diff --git a/code/modules/research/designs/protolathe/modular_gun_designs.dm b/code/modules/research/designs/protolathe/modular_gun_designs.dm
index dfe974fd1b8..675ef8e298f 100644
--- a/code/modules/research/designs/protolathe/modular_gun_designs.dm
+++ b/code/modules/research/designs/protolathe/modular_gun_designs.dm
@@ -5,6 +5,14 @@
..()
name = "Modular Weapon Design ([capitalize_first_letters(item_name)])"
+/datum/design/item/modular_weapon/firing_pin
+ req_tech = list(TECH_MATERIAL = 1)
+ materials = list(DEFAULT_WALL_MATERIAL = 500)
+ build_path = /obj/item/device/firing_pin/test_range
+
+/datum/design/item/modular_weapon/firing_pin/away
+ build_path = /obj/item/device/firing_pin/away_site
+
/datum/design/item/modular_weapon/modular_small
req_tech = list(TECH_MATERIAL = 1)
materials = list(DEFAULT_WALL_MATERIAL = 2000)
diff --git a/html/changelogs/geeves-laser_shotgun.yml b/html/changelogs/geeves-laser_shotgun.yml
new file mode 100644
index 00000000000..daae6d1d7f7
--- /dev/null
+++ b/html/changelogs/geeves-laser_shotgun.yml
@@ -0,0 +1,10 @@
+author: Code by Geeves, Sprites by Kyres
+
+delete-after: True
+
+changes:
+ - tweak: "Tweaked the laser shotgun sprite. Renamed it to laser shotgun, instead of quad-beam laser."
+ - tweak: "Buffed the laser shotgun damage from 15 burn, to 20. Increased the max shots from 12 to 20, which is 5 bursts. It can now be wielded."
+ - rscadd: "Added two expedition laser shotguns to the research shuttle. They can only be fired when off-station."
+ - tweak: "Burst weapons now only emote you firing them the first time, if their burst delay is low and they burst amount is low."
+ - rscadd: "Added testing range and away site firing pins to the modular gun protolathe category."
\ No newline at end of file
diff --git a/icons/obj/guns/lasershotgun.dmi b/icons/obj/guns/lasershotgun.dmi
new file mode 100644
index 00000000000..5317d210c50
Binary files /dev/null and b/icons/obj/guns/lasershotgun.dmi differ
diff --git a/maps/aurora/aurora-6_surface.dmm b/maps/aurora/aurora-6_surface.dmm
index 1c611eed3e4..d005aa0add5 100644
--- a/maps/aurora/aurora-6_surface.dmm
+++ b/maps/aurora/aurora-6_surface.dmm
@@ -12992,6 +12992,12 @@
/obj/machinery/light/small{
dir = 4
},
+/obj/structure/closet/secure_closet/guncabinet{
+ name = "expedition armory";
+ req_access = null
+ },
+/obj/item/gun/energy/laser/shotgun/research,
+/obj/item/gun/energy/laser/shotgun/research,
/turf/simulated/floor/plating,
/area/shuttle/research/station)
"yL" = (