diff --git a/code/game/objects/items/devices/modificationkit.dm b/code/game/objects/items/devices/modificationkit.dm
deleted file mode 100644
index cd25b38140a..00000000000
--- a/code/game/objects/items/devices/modificationkit.dm
+++ /dev/null
@@ -1,35 +0,0 @@
-/obj/item/modkit
- name = "modification kit"
- desc = "A one-use kit, which enables kinetic accelerators to retain their \
- charge when away from a bioelectric source, renders them immune to \
- interference with other accelerators, as well as allowing less \
- dextrous races to use the tool."
- icon = 'icons/obj/objects.dmi'
- icon_state = "modkit"
- origin_tech = "programming=2;materials=2;magnets=4"
- var/uses = 1
-
-/obj/item/modkit/afterattack(obj/item/weapon/gun/energy/kinetic_accelerator/C, mob/user)
- ..()
- if(!uses)
- qdel(src)
- return
- if(!istype(C))
- user << "This kit can only modify kinetic \
- accelerators!"
- return ..()
- // RIP the 'improved improved improved improved kinetic accelerator
- if(C.holds_charge && C.unique_frequency)
- user << "This kinetic accelerator already has \
- these upgrades."
- return ..()
-
- user <<"You modify the [C], adjusting the trigger \
- guard and internal capacitor."
- C.name = "improved [C.name]"
- C.holds_charge = TRUE
- C.unique_frequency = TRUE
- C.trigger_guard = TRIGGER_GUARD_ALLOW_ALL
- uses--
- if(!uses)
- qdel(src)
diff --git a/code/modules/mining/machine_vending.dm b/code/modules/mining/machine_vending.dm
index 7bfeefc707a..4f6e067477d 100644
--- a/code/modules/mining/machine_vending.dm
+++ b/code/modules/mining/machine_vending.dm
@@ -38,7 +38,6 @@
new /datum/data/mining_equipment("Mining Hardsuit", /obj/item/clothing/suit/space/hardsuit/mining, 2000),
new /datum/data/mining_equipment("Diamond Pickaxe", /obj/item/weapon/pickaxe/diamond, 2000),
new /datum/data/mining_equipment("Super Resonator", /obj/item/weapon/resonator/upgraded, 2500),
- new /datum/data/mining_equipment("Super Accelerator", /obj/item/weapon/gun/energy/kinetic_accelerator/super, 3000),
new /datum/data/mining_equipment("Point Transfer Card", /obj/item/weapon/card/mining_point_card, 500),
new /datum/data/mining_equipment("Mining Drone", /mob/living/simple_animal/hostile/mining_drone, 800),
new /datum/data/mining_equipment("Drone Melee Upgrade", /obj/item/device/mine_bot_ugprade, 400),
diff --git a/code/modules/projectiles/ammunition/energy.dm b/code/modules/projectiles/ammunition/energy.dm
index 8d37a225f4a..abe46e6732d 100644
--- a/code/modules/projectiles/ammunition/energy.dm
+++ b/code/modules/projectiles/ammunition/energy.dm
@@ -111,18 +111,6 @@
projectile_type = /obj/item/projectile/meteor
select_name = "goddamn meteor"
-/obj/item/ammo_casing/energy/kinetic
- projectile_type = /obj/item/projectile/kinetic
- select_name = "kinetic"
- e_cost = 500
- fire_sound = 'sound/weapons/Kenetic_accel.ogg' // fine spelling there chap
-
-/obj/item/ammo_casing/energy/kinetic/super
- projectile_type = /obj/item/projectile/kinetic/super
-
-/obj/item/ammo_casing/energy/kinetic/hyper
- projectile_type = /obj/item/projectile/kinetic/hyper
-
/obj/item/ammo_casing/energy/disabler
projectile_type = /obj/item/projectile/beam/disabler
select_name = "disable"
diff --git a/code/modules/projectiles/guns/energy/kinetic_accelerator.dm b/code/modules/projectiles/guns/energy/kinetic_accelerator.dm
new file mode 100644
index 00000000000..4d5d8ffa6a2
--- /dev/null
+++ b/code/modules/projectiles/guns/energy/kinetic_accelerator.dm
@@ -0,0 +1,238 @@
+/obj/item/weapon/gun/energy/kinetic_accelerator
+ name = "proto-kinetic accelerator"
+ desc = "A self recharging, "
+ icon_state = "kineticgun"
+ item_state = "kineticgun"
+ ammo_type = list(/obj/item/ammo_casing/energy/kinetic)
+ cell_type = /obj/item/weapon/stock_parts/cell/emproof
+ needs_permit = 0
+ unique_rename = 1
+ origin_tech = "combat=3;powerstorage=3;engineering=3"
+ weapon_weight = WEAPON_LIGHT
+ can_flashlight = 1
+ flight_x_offset = 15
+ flight_y_offset = 9
+ var/overheat_time = 16
+ var/holds_charge = FALSE
+ var/unique_frequency = FALSE // modified by KA modkits
+ var/overheat = FALSE
+
+ var/list/max_mod_capacity = 2
+ var/list/modkits = list()
+
+
+/obj/item/weapon/gun/energy/kinetic_accelerator/attackby(obj/item/A, mob/user)
+ if(istype(A, /obj/item/weapon/crowbar))
+ if(modkits.len)
+ user << "You pry the modifications out."
+ for(var/obj/item/modkit/M in modkits)
+ M.forceMove(get_turf(user))
+ else
+ user << "There are no modifications currently installed."
+ else if(istype(A, /obj/item/modkit))
+ var/obj/item/modkit/MK = A
+ var/current_mod_capacity = 0
+ for(var/obj/item/modkit/M in modkits)
+ current_mod_capacity += M.cost
+ if((current_mod_capacity + MK.cost) > max_mod_capacity)
+ user << "You don't have room to install this modkit. Use a crowbar to remove existing modkits."
+ return
+ else
+ user << "You install the modkit."
+ MK.install(src)
+ else
+ ..()
+
+
+/obj/item/weapon/gun/energy/kinetic_accelerator/proc/modify_projectile(obj/item/projectile/kinetic/K)
+ for(var/obj/item/modkit/M in src)
+ M.modify_projectile(K)
+
+/obj/item/weapon/gun/energy/kinetic_accelerator/cyborg
+ holds_charge = TRUE
+ unique_frequency = TRUE
+
+/obj/item/weapon/gun/energy/kinetic_accelerator/hyper/cyborg
+ holds_charge = TRUE
+ unique_frequency = TRUE
+
+/obj/item/weapon/gun/energy/kinetic_accelerator/New()
+ . = ..()
+ if(!holds_charge)
+ empty()
+
+/obj/item/weapon/gun/energy/kinetic_accelerator/shoot_live_shot()
+ . = ..()
+ attempt_reload()
+
+/obj/item/weapon/gun/energy/kinetic_accelerator/equipped(mob/user)
+ . = ..()
+ if(!can_shoot())
+ attempt_reload()
+
+/obj/item/weapon/gun/energy/kinetic_accelerator/dropped()
+ . = ..()
+ if(!holds_charge)
+ // Put it on a delay because moving item from slot to hand
+ // calls dropped().
+ sleep(1)
+ if(!ismob(loc))
+ empty()
+
+/obj/item/weapon/gun/energy/kinetic_accelerator/proc/empty()
+ power_supply.use(500)
+ update_icon()
+
+/obj/item/weapon/gun/energy/kinetic_accelerator/proc/attempt_reload()
+ if(overheat)
+ return
+ overheat = TRUE
+
+ var/carried = 0
+ if(!unique_frequency)
+ for(var/obj/item/weapon/gun/energy/kinetic_accelerator/K in \
+ loc.GetAllContents())
+
+ carried++
+
+ carried = max(carried, 1)
+ else
+ carried = 1
+
+ addtimer(src, "reload", overheat_time * carried)
+
+/obj/item/weapon/gun/energy/kinetic_accelerator/emp_act(severity)
+ return
+
+/obj/item/weapon/gun/energy/kinetic_accelerator/proc/reload()
+ power_supply.give(500)
+ if(!suppressed)
+ playsound(src.loc, 'sound/weapons/kenetic_reload.ogg', 60, 1)
+ else
+ loc << "[src] silently charges up."
+ update_icon()
+ overheat = FALSE
+
+/obj/item/weapon/gun/energy/kinetic_accelerator/update_icon()
+ cut_overlays()
+ if(!can_shoot())
+ add_overlay("kineticgun_empty")
+
+ if(F && can_flashlight)
+ var/iconF = "flight"
+ if(F.on)
+ iconF = "flight_on"
+ add_overlay(image(icon = icon, icon_state = iconF, pixel_x = flight_x_offset, pixel_y = flight_y_offset))
+
+
+
+
+
+
+
+
+
+
+//Casing
+
+
+/obj/item/ammo_casing/energy/kinetic
+ projectile_type = /obj/item/projectile/kinetic
+ select_name = "kinetic"
+ e_cost = 500
+ fire_sound = 'sound/weapons/Kenetic_accel.ogg' // fine spelling there chap
+
+/obj/item/ammo_casing/energy/kinetic/ready_proj(atom/target, mob/living/user, quiet, zone_override = "")
+ ..()
+ if(loc && istype(loc, /obj/item/weapon/gun/energy/kinetic_accelerator))
+ var/obj/item/weapon/gun/energy/kinetic_accelerator/KA = loc
+ KA.modify_projectile(BB)
+
+/obj/item/ammo_casing/energy/kinetic/hyper
+ projectile_type = /obj/item/projectile/kinetic/hyper
+
+
+
+//Projectiles
+
+/obj/item/projectile/kinetic
+ name = "kinetic force"
+ icon_state = null
+ damage = 10
+ damage_type = BRUTE
+ flag = "bomb"
+ range = 3
+ var/damage_multiplier = 4
+
+/obj/item/projectile/kinetic/super
+ damage = 11
+ range = 4
+
+/obj/item/projectile/kinetic/New()
+ var/turf/proj_turf = get_turf(src)
+ if(!istype(proj_turf, /turf))
+ return
+ var/datum/gas_mixture/environment = proj_turf.return_air()
+ var/pressure = environment.return_pressure()
+ if(pressure < 50)
+ name = "full strength [name]"
+ damage *= damage_multiplier
+ ..()
+
+/obj/item/projectile/kinetic/on_range()
+ PoolOrNew(/obj/effect/overlay/temp/kinetic_blast, loc)
+ ..()
+
+/obj/item/projectile/kinetic/on_hit(atom/target)
+ var/turf/target_turf= get_turf(target)
+ if(istype(target_turf, /turf/closed/mineral))
+ var/turf/closed/mineral/M = target_turf
+ M.gets_drilled(firer)
+ PoolOrNew(/obj/effect/overlay/temp/kinetic_blast, target_turf)
+ . = ..()
+
+
+//AoE
+
+/obj/item/projectile/kinetic/hyper
+ name = "kinetic explosion"
+ damage = 10
+ range = 3
+
+/obj/item/projectile/kinetic/hyper/proc/aoe_blast(atom/target)
+ var/turf/target_turf = get_turf(target)
+ if(!target_turf)
+ target_turf = get_turf(src)
+ PoolOrNew(/obj/effect/overlay/temp/explosion/fast, target_turf)
+ for(var/T in RANGE_TURFS(1, target_turf) - target_turf)
+ if(istype(T, /turf/closed/mineral))
+ var/turf/closed/mineral/M = T
+ M.gets_drilled(firer)
+
+/obj/item/projectile/kinetic/hyper/on_range()
+ aoe_blast()
+ ..()
+
+/obj/item/projectile/kinetic/hyper/on_hit(atom/target)
+ aoe_blast(target)
+ . = ..()
+
+
+
+
+
+//Modkits
+
+/obj/item/modkit
+ name = "modification kit"
+ desc = "An upgrade for kinetic accelerators.."
+ icon = 'icons/obj/objects.dmi'
+ icon_state = "modkit"
+ origin_tech = "programming=2;materials=2;magnets=4"
+ var/cost = 2
+
+/obj/item/modkit/proc/install(obj/item/weapon/gun/energy/kinetic_accelerator/KA)
+ return
+
+/obj/item/modkit/proc/modify_projectile(/obj/item/projectile/kinetic/K)
+ return
\ No newline at end of file
diff --git a/code/modules/projectiles/guns/energy/special.dm b/code/modules/projectiles/guns/energy/special.dm
index 4f8e3253eea..e6af08ed230 100644
--- a/code/modules/projectiles/guns/energy/special.dm
+++ b/code/modules/projectiles/guns/energy/special.dm
@@ -82,146 +82,6 @@
ammo_type = list(/obj/item/ammo_casing/energy/mindflayer)
ammo_x_offset = 2
-/obj/item/weapon/gun/energy/kinetic_accelerator
- name = "proto-kinetic accelerator"
- desc = "In the year 2544, only a year after the discovery of a potentially \
- world-changing substance, now colloquially referred to as plasma, the \
- Nanotrasen-UEG mining conglomerate introduced a prototype of a gun-like \
- device intended for quick, effective mining of plasma in the low \
- pressures of the solar system. Included in this presentation were \
- demonstrations of the gun being fired at collections of rocks contained \
- in vacuumed environments, obliterating them instantly while maintaining \
- the structure of the ores buried within them. Additionally, volunteers \
- were called from the crowd to have the gun used on them, only proving that \
- the gun caused little harm to objects in standard pressure. \n\
- An official from an unnamed, now long dissipated company observed this \
- presentation and offered to share their self-recharger cells, powered \
- by the user's bioelectrical field, another new and unknown technology. \
- They warned that the cells were incredibly experimental and several times \
- had injured workers, but the scientists as Nanotrasen were unable to resist \
- the money-saving potential of self recharging cells. Upon accepting this \
- offer, it took only a matter of days to prove the volatility of these cells, \
- as they exploded left and right whenever inserted into the prototype devices, \
- only throwing more money in the bin. \n\
- Whenever the Nanotrasen scientists were on the edge of giving up, a \
- breakthrough was made by head researcher Miles Parks McCollum, who \
- demonstrated that the cells could be stabilized when exposed to radium \
- then cooled with cryostylane. After this discovery, the low pressure gun, \
- now named the Kinetic Accelerator, was hastily completed and made compatible \
- with the self-recharging cells. As a result of poor testing, the currently \
- used guns lose their charge when not in use, and when two Kinetic Accelerators \
- come in proximity of one another, they will interfere with each other. Despite \
- this, the shoddy guns still see use in the mining of plasma to this day."
- icon_state = "kineticgun"
- item_state = "kineticgun"
- ammo_type = list(/obj/item/ammo_casing/energy/kinetic)
- cell_type = /obj/item/weapon/stock_parts/cell/emproof
- // Apparently these are safe to carry? I'm sure goliaths would disagree.
- needs_permit = 0
- unique_rename = 1
- origin_tech = "combat=3;powerstorage=3;engineering=3"
- weapon_weight = WEAPON_LIGHT
- can_flashlight = 1
- flight_x_offset = 15
- flight_y_offset = 9
- var/overheat_time = 16
- var/holds_charge = FALSE
- var/unique_frequency = FALSE // modified by KA modkits
- var/overheat = FALSE
-
-/obj/item/weapon/gun/energy/kinetic_accelerator/super
- name = "super-kinetic accelerator"
- desc = "An upgraded, superior version of the proto-kinetic accelerator."
- icon_state = "kineticgun_u"
- ammo_type = list(/obj/item/ammo_casing/energy/kinetic/super)
- overheat_time = 15
- origin_tech = "materials=5;powerstorage=3;engineering=4;magnets=3;combat=3"
-
-/obj/item/weapon/gun/energy/kinetic_accelerator/hyper
- name = "hyper-kinetic accelerator"
- desc = "An upgraded, even more superior version of the proto-kinetic accelerator."
- icon_state = "kineticgun_h"
- ammo_type = list(/obj/item/ammo_casing/energy/kinetic/hyper)
- overheat_time = 14
- origin_tech = "materials=6;powerstorage=4;engineering=4;magnets=4;combat=4"
-
-/obj/item/weapon/gun/energy/kinetic_accelerator/cyborg
- holds_charge = TRUE
- unique_frequency = TRUE
-
-/obj/item/weapon/gun/energy/kinetic_accelerator/hyper/cyborg
- holds_charge = TRUE
- unique_frequency = TRUE
-
-/obj/item/weapon/gun/energy/kinetic_accelerator/New()
- . = ..()
- if(!holds_charge)
- empty()
-
-/obj/item/weapon/gun/energy/kinetic_accelerator/shoot_live_shot()
- . = ..()
- attempt_reload()
-
-/obj/item/weapon/gun/energy/kinetic_accelerator/equipped(mob/user)
- . = ..()
- if(!can_shoot())
- attempt_reload()
-
-/obj/item/weapon/gun/energy/kinetic_accelerator/dropped()
- . = ..()
- if(!holds_charge)
- // Put it on a delay because moving item from slot to hand
- // calls dropped().
- sleep(1)
- if(!ismob(loc))
- empty()
-
-/obj/item/weapon/gun/energy/kinetic_accelerator/proc/empty()
- power_supply.use(500)
- update_icon()
-
-/obj/item/weapon/gun/energy/kinetic_accelerator/proc/attempt_reload()
- if(overheat)
- return
- overheat = TRUE
-
- var/carried = 0
- if(!unique_frequency)
- for(var/obj/item/weapon/gun/energy/kinetic_accelerator/K in \
- loc.GetAllContents())
-
- carried++
-
- carried = max(carried, 1)
- else
- carried = 1
-
- addtimer(src, "reload", overheat_time * carried)
-
-/obj/item/weapon/gun/energy/kinetic_accelerator/emp_act(severity)
- return
-
-/obj/item/weapon/gun/energy/kinetic_accelerator/proc/reload()
- power_supply.give(500)
- if(!suppressed)
- playsound(src.loc, 'sound/weapons/kenetic_reload.ogg', 60, 1)
- else
- loc << "[src] silently charges up."
- update_icon()
- overheat = FALSE
-
-/obj/item/weapon/gun/energy/kinetic_accelerator/update_icon()
- cut_overlays()
- if(!can_shoot())
- add_overlay("kineticgun_empty")
-
- if(F && can_flashlight)
- var/iconF = "flight"
- if(F.on)
- iconF = "flight_on"
- add_overlay(image(icon = icon, icon_state = iconF, pixel_x = flight_x_offset, pixel_y = flight_y_offset))
-
-
/obj/item/weapon/gun/energy/kinetic_accelerator/crossbow
name = "mini energy crossbow"
desc = "A weapon favored by syndicate stealth specialists."
diff --git a/code/modules/projectiles/projectile/special.dm b/code/modules/projectiles/projectile/special.dm
index aabb1fd448e..0dadac9de80 100644
--- a/code/modules/projectiles/projectile/special.dm
+++ b/code/modules/projectiles/projectile/special.dm
@@ -121,64 +121,6 @@
M.adjustBrainLoss(20)
M.hallucination += 20
-/obj/item/projectile/kinetic
- name = "kinetic force"
- icon_state = null
- damage = 10
- damage_type = BRUTE
- flag = "bomb"
- range = 3
-
-/obj/item/projectile/kinetic/super
- damage = 11
- range = 4
-
-/obj/item/projectile/kinetic/New()
- var/turf/proj_turf = get_turf(src)
- if(!istype(proj_turf, /turf))
- return
- var/datum/gas_mixture/environment = proj_turf.return_air()
- var/pressure = environment.return_pressure()
- if(pressure < 50)
- name = "full strength [name]"
- damage *= 4
- ..()
-
-/obj/item/projectile/kinetic/on_range()
- PoolOrNew(/obj/effect/overlay/temp/kinetic_blast, loc)
- ..()
-
-/obj/item/projectile/kinetic/on_hit(atom/target)
- var/turf/target_turf= get_turf(target)
- if(istype(target_turf, /turf/closed/mineral))
- var/turf/closed/mineral/M = target_turf
- M.gets_drilled(firer)
- PoolOrNew(/obj/effect/overlay/temp/kinetic_blast, target_turf)
- . = ..()
-
-/obj/item/projectile/kinetic/hyper
- name = "kinetic explosion"
- damage = 12
- range = 5
-
-/obj/item/projectile/kinetic/hyper/proc/aoe_blast(atom/target)
- var/turf/target_turf = get_turf(target)
- if(!target_turf)
- target_turf = get_turf(src)
- PoolOrNew(/obj/effect/overlay/temp/explosion/fast, target_turf)
- for(var/T in RANGE_TURFS(1, target_turf) - target_turf)
- if(istype(T, /turf/closed/mineral))
- var/turf/closed/mineral/M = T
- M.gets_drilled(firer)
-
-/obj/item/projectile/kinetic/hyper/on_range()
- aoe_blast()
- ..()
-
-/obj/item/projectile/kinetic/hyper/on_hit(atom/target)
- aoe_blast(target)
- . = ..()
-
/obj/item/projectile/beam/wormhole
name = "bluespace beam"
icon_state = "spark"
diff --git a/code/modules/research/designs.dm b/code/modules/research/designs.dm
index 8d2f17106e7..3f20d597265 100644
--- a/code/modules/research/designs.dm
+++ b/code/modules/research/designs.dm
@@ -159,7 +159,7 @@ other types of metals and chemistry for reagents).
build_path = /obj/item/weapon/pickaxe/drill/jackhammer
category = list("Mining Designs")
-/datum/design/modkit
+/*/datum/design/modkit
name = "Modification Kit"
desc = "A device which allows kinetic accelerators to be wielded with one hand, and by any organism."
id = "modkit"
@@ -188,7 +188,7 @@ other types of metals and chemistry for reagents).
materials = list(MAT_METAL = 8000, MAT_GLASS = 1500, MAT_SILVER = 2000, MAT_GOLD = 2000, MAT_DIAMOND = 2000)
build_path = /obj/item/weapon/gun/energy/kinetic_accelerator/hyper
category = list("Mining Designs")
-
+*/
/datum/design/superresonator
name = "Upgraded Resonator"
desc = "An upgraded version of the resonator that allows more fields to be active at once."
diff --git a/tgstation.dme b/tgstation.dme
index 85719642ba1..f3c4c78a1e7 100644
--- a/tgstation.dme
+++ b/tgstation.dme
@@ -612,7 +612,6 @@
#include "code\game\objects\items\devices\lightreplacer.dm"
#include "code\game\objects\items\devices\machineprototype.dm"
#include "code\game\objects\items\devices\megaphone.dm"
-#include "code\game\objects\items\devices\modificationkit.dm"
#include "code\game\objects\items\devices\multitool.dm"
#include "code\game\objects\items\devices\paicard.dm"
#include "code\game\objects\items\devices\pipe_painter.dm"
@@ -1625,6 +1624,7 @@
#include "code\modules\projectiles\guns\mounted.dm"
#include "code\modules\projectiles\guns\projectile.dm"
#include "code\modules\projectiles\guns\syringe_gun.dm"
+#include "code\modules\projectiles\guns\energy\kinetic_accelerator.dm"
#include "code\modules\projectiles\guns\energy\laser.dm"
#include "code\modules\projectiles\guns\energy\nuclear.dm"
#include "code\modules\projectiles\guns\energy\pulse.dm"