Move autolathe design datums to techweb datums (#19202)

* testing makes me feel good

* invalid lists

* get rid of those boards

* show expected mats

* oop

* error

* wip techweb porting

* more techweb entries

* ported too

* disable those for now

* okay nevermind i guess

* already exists

* assemblies

* moar

* welding helmet

* many entries

* lol tg

* fix test

* again

* fixagain

* more moved

* update techweb test

* catch that too

* screeee

* more fixes

* missing announcement

* orphaned sleevecard

* some more fixing

* test

* more

* oops

* glasses

* illegal icons

* non starting

* it's starting

* messed up

* cleanup

* more generic stuff

* morrrreee

* the plastic set

* oops

* correct value

* barbed wires

* more cleaning

* many more

* gone

* cleanup

* no longer

* do not allow duped designs

* it's own node

* proper order no dupes

* last of the broken nodes

* fix bad path

* cleanup

* more test more limits

* gone

* almost done

* these are gone

* syringe gun

* bioregenerator design

* all moved

* organized and webbed

* more fixes

* oops

* cleaning up

* organization

* clean up

* organize

* organized

* didn't save

* wrong mat

* adds many missing ammo types

* svd doesn't exist

* 10mm pistol added

* magazines not casings

* these are pistols

* this is used by like, one weapon

* m1 is ancient

* this is hunting

* extremely botched untested lathe

* disk junk

* rough foundations

* slowly converting

* slowly building this

* local materials

* almost

* big reorganization

* more cleanup

* more cleaning

* lathe stuff

* small fixes

* oops

* many fixes

* mat fix

* more fixes

* actually isolate the hacked designs

* protolathe hacking

* imprinter hacking

* missing ammos

* sheet printing for autolathe

* fixs

* again

* fixed test

* test test

* fix

* fix

* WHY

* fix it...

* here we go

* material print

* on turf

* body disk

* consistant name

* Many weapons to hacked lathe

* missing node

* wrong section

* fixes

* this list should be unified

* ammo boxes

* don't do single shells anymore

* wat

* specifics

* snowflake

* not needed

* already available

* pickaxe too

* tweak

* removed unneeded node

* missing surgery items

* Apply suggestion from @Cameron-The-Raven

* Adds RMS

* typo

* illegal needs hacked

* disabled material weapons

* circuit testing

* STRING TEST

* test

* fixing some things

* huh?

* hidden circuits

* some flakey boards

* grammar

* fixes

* more hidden

* wrong board

* security cams

* alert consoles

* spaceheater is simple enough to not have one

* pcus

* cargo vendors

* tcomms stuff

* solar tracker circuit

* artifact stuff

* SM stuff

* illegal machines

* med machines

* no longer needed

* more stuff

* these are not standard

* moreeee

* doppler and more

* organized

* finishing

* oop

* use the define

* inheret

* dopper fixes

* space heater

* doing some organization

* explain the var

* some tweaks

* wrong one

* fixed test

* material test too

* simple roto gens

* use the define

* emergency power node

* tgui fixes for icons

* not needed

* color blended material designs

* icons for large research

* oops

* unshit that

* use stack here

* center math

* .

* .

* .

* .

* .

* unifi

* fix these

* NO COPYPASTA

* ILLEEGGALLL

* mandate descriptions

* agony

* actually lets do this

* use macros

* description

* desc

* desc

* desc

* desc

* desc

* desc

* gps desc

* telecomms component desc

---------

Co-authored-by: Cameron Lennox <killer65311@gmail.com>
Co-authored-by: Kashargul <144968721+Kashargul@users.noreply.github.com>
This commit is contained in:
Will
2026-03-20 19:38:00 -04:00
committed by GitHub
parent 4c61dc7932
commit 0c8488b0ae
126 changed files with 5731 additions and 2372 deletions
@@ -64,4 +64,11 @@
if (keyboard && (keyboard in all_states))
transform.blend_icon(uni_icon(icon_file, keyboard), ICON_OVERLAY)
insert_icon(initial(path.id), uni_icon(icon_file, icon_state, transform=transform))
// Materials are snowflakes that use blended colors for some stacks
if(ispath(item, /obj/item/stack/material))
var/obj/item/stack/material/mat = item
if(mat::apply_colour)
var/datum/material/material = GET_MATERIAL_REF(mat::default_type)
transform = color_transform(material::icon_colour)
insert_icon(sanitize_css_class_name(initial(path.id)), uni_icon(icon_file, icon_state, transform=transform))
@@ -21,4 +21,4 @@
var/datum/material/material = GET_MATERIAL_REF(M::default_type)
UI.blend_color(material.icon_colour, ICON_MULTIPLY)
insert_icon(M::default_type, UI)
insert_icon(sanitize_css_class_name(M::default_type), UI)
+2 -21
View File
@@ -743,34 +743,15 @@
/obj/item/multitool = 4,
/obj/item/cell/high = 10,
/obj/item/airlock_electronics = 10,
/obj/item/circuitboard/autolathe = 3,
/obj/item/circuitboard/circuit_imprinter = 3,
/obj/item/circuitboard/airlock_cycling = 20,
/obj/item/module/power_control = 10,
/obj/item/circuitboard/airalarm = 10,
/obj/item/circuitboard/firealarm = 10,
/obj/item/circuitboard/status_display = 2,
/obj/item/circuitboard/ai_status_display = 2,
/obj/item/circuitboard/newscaster = 2,
/obj/item/circuitboard/holopad = 2,
/obj/item/circuitboard/intercom = 4,
/obj/item/circuitboard/security/telescreen/entertainment = 4,
/obj/item/stock_parts/motor = 2,
/obj/item/stock_parts/spring = 2,
/obj/item/stock_parts/gear = 2,
/obj/item/circuitboard/atm,
/obj/item/circuitboard/guestpass,
/obj/item/circuitboard/keycard_auth,
/obj/item/circuitboard/geiger,
/obj/item/circuitboard/photocopier,
/obj/item/circuitboard/fax,
/obj/item/circuitboard/request,
/obj/item/circuitboard/microwave,
/obj/item/circuitboard/washing,
/obj/item/circuitboard/scanner_console,
/obj/item/circuitboard/sleeper_console,
/obj/item/circuitboard/body_scanner,
/obj/item/circuitboard/medical_kiosk,
/obj/item/circuitboard/sleeper,
/obj/item/circuitboard/dna_analyzer,
/obj/item/clothing/glasses/omnihud/eng = 6)
contraband = list(/obj/item/cell/potato = 3,
/obj/item/rms = 5)
@@ -2,6 +2,7 @@
name = "glass carafe"
base_name = "carafe"
base_icon = "carafe"
icon_state = "carafe"
icon = 'icons/obj/drinks.dmi'
filling_states = list(10, 20, 30, 40, 50, 60, 70, 80, 90, 100)
volume = 120
@@ -12,6 +13,7 @@
name = "plastic pitcher"
base_name = "pitcher"
base_icon = "pitcher"
icon_state = "pitcher"
icon = 'icons/obj/drinks.dmi'
filling_states = list(15, 30, 50, 70, 85, 100)
volume = 120
@@ -167,7 +167,7 @@
stack_type = /obj/item/stack/material/log/hard
/datum/material/wood/stick
name = "wooden stick"
name = MAT_WOODEN_STICK
icon_colour = "#824B28"
display_name = MAT_WOOD
icon_base = "stick"
+1 -1
View File
@@ -10,7 +10,7 @@
throw_range = 20
drop_sound = 'sound/items/drop/metalweapon.ogg'
pickup_sound = 'sound/items/pickup/metalweapon.ogg'
matter = list(MAT_STEEL = SHEET_MATERIAL_AMOUNT / 2)
matter = list(MAT_STEEL = REAGENTS_PER_ROD)
max_amount = 60
attack_verb = list("hit", "bludgeoned", "whacked")
@@ -6,6 +6,7 @@
name = T_BOARD("obstruction removal ballista control")
build_path = /obj/machinery/computer/ship/disperser
origin_tech = list(TECH_ENGINEERING = 2, TECH_COMBAT = 2, TECH_BLUESPACE = 2)
hidden = TRUE // todo - Make properly constructable in round
/obj/item/circuitboard/disperserfront
name = T_BOARD("obstruction removal ballista beam generator")
@@ -15,6 +16,7 @@
req_components = list (
/obj/item/stock_parts/manipulator/pico = 5
)
hidden = TRUE // todo - Make properly constructable in round
/obj/item/circuitboard/dispersermiddle
name = T_BOARD("obstruction removal ballista fusor")
@@ -24,6 +26,7 @@
req_components = list (
/obj/item/stock_parts/subspace/crystal = 10
)
hidden = TRUE // todo - Make properly constructable in round
/obj/item/circuitboard/disperserback
name = T_BOARD("obstruction removal ballista material deconstructor")
@@ -33,3 +36,4 @@
req_components = list (
/obj/item/stock_parts/capacitor/super = 5
)
hidden = TRUE // todo - Make properly constructable in round
+5 -5
View File
@@ -1,10 +1,10 @@
/obj/item/circuitboard/fusion_core_control
name = "circuit board (fusion core controller)"
name = T_BOARD("fusion core controller")
build_path = /obj/machinery/computer/fusion_core_control
origin_tech = list(TECH_DATA = 4, TECH_ENGINEERING = 4)
/obj/item/circuitboard/fusion_fuel_compressor
name = "circuit board (fusion fuel compressor)"
name = T_BOARD("fusion fuel compressor")
build_path = /obj/machinery/fusion_fuel_compressor
board_type = new /datum/frame/frame_types/machine
origin_tech = list(TECH_POWER = 3, TECH_ENGINEERING = 4, TECH_MATERIAL = 4)
@@ -16,12 +16,12 @@
)
/obj/item/circuitboard/fusion_fuel_control
name = "circuit board (fusion fuel controller)"
name = T_BOARD("fusion fuel controller")
build_path = /obj/machinery/computer/fusion_fuel_control
origin_tech = list(TECH_DATA = 4, TECH_ENGINEERING = 4)
/obj/item/circuitboard/gyrotron_control
name = "circuit board (gyrotron controller)"
name = T_BOARD("gyrotron controller")
build_path = /obj/machinery/computer/gyrotron_control
origin_tech = list(TECH_DATA = 4, TECH_ENGINEERING = 4)
@@ -51,7 +51,7 @@
)
/obj/item/circuitboard/gyrotron
name = "circuit board (gyrotron)"
name = T_BOARD("gyrotron")
build_path = /obj/machinery/power/emitter/gyrotron
board_type = new /datum/frame/frame_types/machine
origin_tech = list(TECH_POWER = 4, TECH_ENGINEERING = 4, TECH_MATERIAL = 5, TECH_MAGNET = 3)
+2
View File
@@ -64,6 +64,7 @@
req_components = list(
/obj/item/stack/cable_coil = 5,
/obj/item/stock_parts/capacitor/hyper = 1)
hidden = TRUE
/obj/item/circuitboard/machine/abductor/core/hybrid
name = T_BOARD("void generator (hybrid)")
@@ -74,6 +75,7 @@
/obj/item/stack/cable_coil = 5,
/obj/item/stock_parts/capacitor/hyper = 1,
/obj/item/stock_parts/micro_laser/hyper = 1)
hidden = TRUE
// Radioisotope Thermoelectric Generator (RTG)
// Simple power generator that would replace "magic SMES" on various derelicts.
@@ -15,14 +15,9 @@
name = T_BOARD("grounding rod")
build_path = /obj/machinery/power/grounding_rod
board_type = new /datum/frame/frame_types/machine
matter = list(MAT_STEEL = 50, MAT_GLASS = 50)
origin_tech = list(TECH_MAGNET = 1, TECH_POWER = 2)
req_components = list()
/datum/category_item/autolathe/engineering/grounding_rod
name = "grounding rod electronics"
path = /obj/item/circuitboard/grounding_rod
// SPECIAL BOARDS BELOW
/obj/item/circuitboard/tesla_coil/attackby(obj/item/I as obj, mob/user as mob)
+2
View File
@@ -70,6 +70,7 @@
board_type = new /datum/frame/frame_types/machine
origin_tech = list(TECH_MATERIAL = 4, TECH_POWER = 2)
req_components = list(/obj/item/stack/cable_coil = 5, /obj/item/stock_parts/manipulator = 6)
hidden = TRUE // todo - Make properly constructable in round
/obj/item/circuitboard/machine/power_turbine
name = T_BOARD("power turbine")
@@ -77,6 +78,7 @@
board_type = new /datum/frame/frame_types/machine
origin_tech = list(TECH_ENGINEERING = 2, TECH_POWER = 4)
req_components = list(/obj/item/stack/cable_coil = 5, /obj/item/stock_parts/capacitor = 6)
hidden = TRUE // todo - Make properly constructable in round
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// Compressor
@@ -0,0 +1,23 @@
// Design disk containing all ammunitions
/obj/item/disk/design_disk/security
name = "security armory design disk"
desc = "A disk containing many, many, many bullets."
/obj/item/disk/design_disk/security/Initialize(mapload)
. = ..()
// Lets get all security nodes and put them on a disk.
// This way if bullets are disabled by default we can get a disk mapped instead.
var/list/process_nodes = list(
/datum/techweb_node/pistol_ammo::id,
/datum/techweb_node/pistol_special::id,
/datum/techweb_node/rifle_ammo::id,
/datum/techweb_node/rifle_ammo_special::id,
/datum/techweb_node/shotgun_ammo::id,
/datum/techweb_node/speedloaders::id
)
for(var/node_id in process_nodes)
var/datum/techweb_node/node = SSresearch.techweb_node_by_id(node_id)
for(var/id in node.design_ids)
var/datum/design_techweb/design = SSresearch.techweb_design_by_id(id)
blueprints += design
@@ -1,5 +1,5 @@
/datum/design_techweb/board/aicore
name = "AI core circuit"
SET_CIRCUIT_DESIGN_NAMEDESC("AI core")
id = "aicore"
// req_tech = list(TECH_DATA = 4, TECH_BIO = 3)
build_path = /obj/item/circuitboard/aicore
@@ -70,6 +70,7 @@
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/aimodule
desc = "A circuit used to change a silicon's configured laws."
build_type = IMPRINTER
materials = list(MAT_GLASS = 2000, MAT_GOLD = 100)
category = list(
File diff suppressed because it is too large Load Diff
@@ -1,5 +1,5 @@
/datum/design_techweb/board/atmosalerts
name = "atmosphere alert console circuit"
SET_CIRCUIT_DESIGN_NAMEDESC("atmosphere alert console")
id = "atmosalerts"
build_path = /obj/item/circuitboard/atmos_alert
category = list(
@@ -8,7 +8,7 @@
departmental_flags = DEPARTMENT_BITFLAG_ENGINEERING | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/air_management
name = "atmosphere monitoring console circuit"
SET_CIRCUIT_DESIGN_NAMEDESC("atmosphere monitoring console")
id = "air_management"
build_path = /obj/item/circuitboard/air_management
category = list(
@@ -17,7 +17,7 @@
departmental_flags = DEPARTMENT_BITFLAG_ENGINEERING | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/tank_management
name = "tank monitoring console circuit"
SET_CIRCUIT_DESIGN_NAMEDESC("tank monitoring console")
id = "tank_management"
build_path = /obj/item/circuitboard/air_management/tank_control
category = list(
@@ -26,7 +26,7 @@
departmental_flags = DEPARTMENT_BITFLAG_ENGINEERING | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/shutoff_monitor
name = "Automatic shutoff valve monitor circuit"
SET_CIRCUIT_DESIGN_NAMEDESC("Automatic shutoff valve monitor")
id = "shutoff_monitor"
// req_tech = list(TECH_DATA = 4, TECH_ENGINEERING = 3)
build_path = /obj/item/circuitboard/shutoff_monitor
@@ -36,7 +36,7 @@
departmental_flags = DEPARTMENT_BITFLAG_ENGINEERING | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/gas_heater
name = "gas heating system circuit"
SET_CIRCUIT_DESIGN_NAMEDESC("gas heating system")
id = "gasheater"
// req_tech = list(TECH_POWER = 2, TECH_ENGINEERING = 1)
build_path = /obj/item/circuitboard/unary_atmos/heater
@@ -46,7 +46,7 @@
departmental_flags = DEPARTMENT_BITFLAG_ENGINEERING | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/gas_cooler
name = "gas cooling system circuit"
SET_CIRCUIT_DESIGN_NAMEDESC("gas cooling system")
id = "gascooler"
// req_tech = list(TECH_MAGNET = 2, TECH_ENGINEERING = 2)
build_path = /obj/item/circuitboard/unary_atmos/cooler
@@ -56,7 +56,7 @@
departmental_flags = DEPARTMENT_BITFLAG_ENGINEERING | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/arf_generator
name = "atmospheric field generator circuit"
SET_CIRCUIT_DESIGN_NAMEDESC("atmospheric field generator")
id = "arf_generator"
// req_tech = list(TECH_MAGNET = 4, TECH_POWER = 4, TECH_BIO = 3)
build_path = /obj/item/circuitboard/arf_generator
@@ -64,3 +64,21 @@
RND_CATEGORY_MACHINE + RND_SUBCATEGORY_MACHINE_ATMOS
)
departmental_flags = DEPARTMENT_BITFLAG_ENGINEERING | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/atmoscontrol
SET_CIRCUIT_DESIGN_NAMEDESC("central atmospherics computer")
id = "atmoscontrol"
build_path = /obj/item/circuitboard/atmoscontrol
category = list(
RND_CATEGORY_COMPUTER + RND_SUBCATEGORY_MACHINE_ATMOS
)
departmental_flags = DEPARTMENT_BITFLAG_ENGINEERING | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/area_atmos
SET_CIRCUIT_DESIGN_NAMEDESC("area air control console")
id = "area_atmos"
build_path = /obj/item/circuitboard/area_atmos
category = list(
RND_CATEGORY_MACHINE + RND_SUBCATEGORY_MACHINE_ATMOS
)
departmental_flags = DEPARTMENT_BITFLAG_ENGINEERING | DEPARTMENT_BITFLAG_SCIENCE
@@ -1,5 +1,5 @@
/datum/design_techweb/board/ordercomp
name = "supply ordering console circuit"
SET_CIRCUIT_DESIGN_NAMEDESC("supply ordering console")
id = "ordercomp"
build_path = /obj/item/circuitboard/supplycomp
category = list(
@@ -8,7 +8,7 @@
departmental_flags = DEPARTMENT_BITFLAG_CARGO | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/supplycomp
name = "supply control console circuit"
SET_CIRCUIT_DESIGN_NAMEDESC("supply control console")
id = "supplycomp"
// req_tech = list(TECH_DATA = 3)
build_path = /obj/item/circuitboard/supplycomp/control
@@ -18,7 +18,7 @@
departmental_flags = DEPARTMENT_BITFLAG_CARGO | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/miningdrill
name = "mining drill head circuit"
SET_CIRCUIT_DESIGN_NAMEDESC("mining drill head")
id = "mining drill head"
// req_tech = list(TECH_DATA = 1, TECH_ENGINEERING = 1)
build_path = /obj/item/circuitboard/miningdrill
@@ -28,7 +28,7 @@
departmental_flags = DEPARTMENT_BITFLAG_CARGO | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/miningdrillbrace
name = "mining drill brace circuit"
SET_CIRCUIT_DESIGN_NAMEDESC("mining drill brace")
id = "mining drill brace"
// req_tech = list(TECH_DATA = 1, TECH_ENGINEERING = 1)
build_path = /obj/item/circuitboard/miningdrillbrace
@@ -38,11 +38,46 @@
departmental_flags = DEPARTMENT_BITFLAG_CARGO | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/ore_silo
name = "Ore Silo Board"
desc = "The circuit board for an ore silo."
SET_CIRCUIT_DESIGN_NAMEDESC("Ore Silo")
id = "ore_silo"
build_path = /obj/item/circuitboard/machine/ore_silo
category = list(
RND_CATEGORY_MACHINE + RND_SUBCATEGORY_MACHINE_CARGO
)
departmental_flags = DEPARTMENT_BITFLAG_CARGO | DEPARTMENT_BITFLAG_ENGINEERING | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/request_console
SET_CIRCUIT_DESIGN_NAMEDESC("request console")
id = "request"
build_path = /obj/item/circuitboard/request
category = list(
RND_CATEGORY_MACHINE + RND_SUBCATEGORY_COMPUTER_CARGO
)
departmental_flags = DEPARTMENT_BITFLAG_CARGO | DEPARTMENT_BITFLAG_ENGINEERING | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/mining_equipment_vendor
SET_CIRCUIT_DESIGN_NAMEDESC("mining equipment vendor")
id = "mining_equipment_vendor"
build_path = /obj/item/circuitboard/mining_equipment_vendor
category = list(
RND_CATEGORY_COMPUTER + RND_SUBCATEGORY_COMPUTER_CARGO
)
departmental_flags = DEPARTMENT_BITFLAG_CARGO | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/survey_equipment_vendor
SET_CIRCUIT_DESIGN_NAMEDESC("exploration equipment vendor")
id = "survey_equipment_vendor"
build_path = /obj/item/circuitboard/exploration_equipment_vendor
category = list(
RND_CATEGORY_COMPUTER + RND_SUBCATEGORY_COMPUTER_CARGO
)
departmental_flags = DEPARTMENT_BITFLAG_CARGO | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/stockexchange
SET_CIRCUIT_DESIGN_NAMEDESC("stock exchange console")
id = "stockexchange"
build_path = /obj/item/circuitboard/stockexchange
category = list(
RND_CATEGORY_COMPUTER + RND_SUBCATEGORY_COMPUTER_CARGO
)
departmental_flags = DEPARTMENT_BITFLAG_CARGO | DEPARTMENT_BITFLAG_SCIENCE
@@ -1,5 +1,5 @@
/datum/design_techweb/board/rcon_console
name = "RCON remote control console circuit"
SET_CIRCUIT_DESIGN_NAMEDESC("RCON remote control console")
id = "rcon_console"
// req_tech = list(TECH_DATA = 4, TECH_ENGINEERING = 3, TECH_POWER = 5)
build_path = /obj/item/circuitboard/rcon_console
@@ -9,7 +9,7 @@
departmental_flags = DEPARTMENT_BITFLAG_ENGINEERING | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/dronecontrol
name = "drone control console circuit"
SET_CIRCUIT_DESIGN_NAMEDESC("drone control console")
id = "dronecontrol"
// req_tech = list(TECH_DATA = 4)
build_path = /obj/item/circuitboard/drone_control
@@ -19,7 +19,7 @@
departmental_flags = DEPARTMENT_BITFLAG_ENGINEERING | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/powermonitor
name = "power monitoring console circuit"
SET_CIRCUIT_DESIGN_NAMEDESC("power monitoring console")
id = "powermonitor"
build_path = /obj/item/circuitboard/powermonitor
category = list(
@@ -28,7 +28,7 @@
departmental_flags = DEPARTMENT_BITFLAG_ENGINEERING | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/solarcontrol
name = "solar control console circuit"
SET_CIRCUIT_DESIGN_NAMEDESC("solar control console")
id = "solarcontrol"
build_path = /obj/item/circuitboard/solar_control
category = list(
@@ -36,8 +36,17 @@
)
departmental_flags = DEPARTMENT_BITFLAG_ENGINEERING | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/solar_tracker
SET_CIRCUIT_DESIGN_NAMEDESC("solar tracker")
id = "solar_tracker"
build_path = /obj/item/tracker_electronics
category = list(
RND_CATEGORY_COMPUTER + RND_SUBCATEGORY_COMPUTER_ENGINEERING
)
departmental_flags = DEPARTMENT_BITFLAG_ENGINEERING | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/pacman
name = "PACMAN-type generator circuit"
SET_CIRCUIT_DESIGN_NAMEDESC("PACMAN-type generator")
id = "pacman"
// req_tech = list(TECH_DATA = 3, TECH_PHORON = 3, TECH_POWER = 3, TECH_ENGINEERING = 3)
build_path = /obj/item/circuitboard/pacman
@@ -47,7 +56,7 @@
departmental_flags = DEPARTMENT_BITFLAG_ENGINEERING | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/superpacman
name = "SUPERPACMAN-type generator circuit"
SET_CIRCUIT_DESIGN_NAMEDESC("SUPERPACMAN-type generator")
id = "superpacman"
// req_tech = list(TECH_DATA = 3, TECH_POWER = 4, TECH_ENGINEERING = 4)
build_path = /obj/item/circuitboard/pacman/super
@@ -57,7 +66,7 @@
departmental_flags = DEPARTMENT_BITFLAG_ENGINEERING | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/mrspacman
name = "MRSPACMAN-type generator circuit"
SET_CIRCUIT_DESIGN_NAMEDESC("MRSPACMAN-type generator")
id = "mrspacman"
// req_tech = list(TECH_DATA = 3, TECH_POWER = 5, TECH_ENGINEERING = 5)
build_path = /obj/item/circuitboard/pacman/mrs
@@ -67,7 +76,7 @@
departmental_flags = DEPARTMENT_BITFLAG_ENGINEERING | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/batteryrack
name = "cell rack PSU circuit"
SET_CIRCUIT_DESIGN_NAMEDESC("cell rack PSU")
id = "batteryrack"
// req_tech = list(TECH_POWER = 3, TECH_ENGINEERING = 2)
build_path = /obj/item/circuitboard/batteryrack
@@ -88,8 +97,7 @@
departmental_flags = DEPARTMENT_BITFLAG_ENGINEERING | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/grid_checker
name = "power grid checker circuit"
desc = "Allows for the construction of circuit boards used to build a grid checker."
SET_CIRCUIT_DESIGN_NAMEDESC("power grid checker")
id = "grid_checker"
// req_tech = list(TECH_POWER = 4, TECH_ENGINEERING = 3)
build_path = /obj/item/circuitboard/grid_checker
@@ -99,8 +107,7 @@
departmental_flags = DEPARTMENT_BITFLAG_ENGINEERING | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/breakerbox
name = "breaker box circuit"
desc = "Allows for the construction of circuit boards used to build a breaker box."
SET_CIRCUIT_DESIGN_NAMEDESC("breaker box")
id = "breakerbox"
// req_tech = list(TECH_POWER = 3, TECH_ENGINEERING = 3)
build_path = /obj/item/circuitboard/breakerbox
@@ -121,7 +128,7 @@
departmental_flags = DEPARTMENT_BITFLAG_ENGINEERING | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/shield_generator
name = "shield generator circuit"
SET_CIRCUIT_DESIGN_NAMEDESC("shield generator")
id = "shield_generator"
// req_tech = list(TECH_MAGNET = 3, TECH_POWER = 4, TECH_BLUESPACE = 2, TECH_ENGINEERING = 3)
build_path = /obj/item/circuitboard/shield_generator
@@ -131,7 +138,7 @@
departmental_flags = DEPARTMENT_BITFLAG_ENGINEERING | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/shield_diffuser
name = "shield diffuser circuit"
SET_CIRCUIT_DESIGN_NAMEDESC("shield diffuser")
id = "shield_diffuser"
// req_tech = list(TECH_MAGNET = 4, TECH_POWER = 2, TECH_ENGINEERING = 5)
build_path = /obj/item/circuitboard/shield_diffuser
@@ -141,7 +148,7 @@
departmental_flags = DEPARTMENT_BITFLAG_ENGINEERING | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/pointdefense
name = "point defense battery circuit"
SET_CIRCUIT_DESIGN_NAMEDESC("point defense battery")
id = "pointdefense"
// req_tech = list(TECH_DATA = 2, TECH_ENGINEERING = 3, TECH_COMBAT = 4)
build_path = /obj/item/circuitboard/pointdefense
@@ -151,7 +158,7 @@
departmental_flags = DEPARTMENT_BITFLAG_ENGINEERING | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/pointdefense_control
name = "point defense control circuit"
SET_CIRCUIT_DESIGN_NAMEDESC("point defense control")
id = "pointdefense_control"
// req_tech = list(TECH_DATA = 4, TECH_ENGINEERING = 3, TECH_COMBAT = 2)
build_path = /obj/item/circuitboard/pointdefense_control
@@ -161,7 +168,7 @@
departmental_flags = DEPARTMENT_BITFLAG_ENGINEERING | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/recycler_crusher
name = "recycler - crusher circuit"
SET_CIRCUIT_DESIGN_NAMEDESC("recycling crusher")
id = "recycler_crusher"
// req_tech = list(TECH_MATERIAL = 2)
build_path = /obj/item/circuitboard/recycler_crusher
@@ -171,7 +178,7 @@
departmental_flags = DEPARTMENT_BITFLAG_ENGINEERING | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/recycler_sorter
name = "recycler - sorter circuit"
SET_CIRCUIT_DESIGN_NAMEDESC("recycling sorter")
id = "recycler_sorter"
// req_tech = list(TECH_MATERIAL = 2)
build_path = /obj/item/circuitboard/recycler_sorter
@@ -181,7 +188,7 @@
departmental_flags = DEPARTMENT_BITFLAG_ENGINEERING | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/recycler_stamper
name = "recycler - stamper circuit"
SET_CIRCUIT_DESIGN_NAMEDESC("recycling stamper")
id = "recycler_stamper"
// req_tech = list(TECH_MATERIAL = 2)
build_path = /obj/item/circuitboard/recycler_stamper
@@ -191,7 +198,7 @@
departmental_flags = DEPARTMENT_BITFLAG_ENGINEERING | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/algae_farm
name = "Algae Oxygen Generator circuit"
SET_CIRCUIT_DESIGN_NAMEDESC("Algae Oxygen Generator")
id = "algae_farm"
// req_tech = list(TECH_ENGINEERING = 3, TECH_BIO = 2)
build_path = /obj/item/circuitboard/algae_farm
@@ -201,7 +208,7 @@
departmental_flags = DEPARTMENT_BITFLAG_ENGINEERING | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/thermoregulator
name = "thermal regulator circuit"
SET_CIRCUIT_DESIGN_NAMEDESC("thermal regulator")
id = "thermoregulator"
// req_tech = list(TECH_ENGINEERING = 4, TECH_POWER = 3)
build_path = /obj/item/circuitboard/thermoregulator
@@ -211,7 +218,7 @@
departmental_flags = DEPARTMENT_BITFLAG_ENGINEERING | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/partslathe
name = "Parts lathe circuit"
SET_CIRCUIT_DESIGN_NAMEDESC("Parts lathe")
id = "partslathe"
// req_tech = list(TECH_DATA = 2, TECH_ENGINEERING = 2)
build_path = /obj/item/circuitboard/partslathe
@@ -221,7 +228,7 @@
departmental_flags = DEPARTMENT_BITFLAG_ENGINEERING | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/rtg
name = "radioisotope TEG circuit"
SET_CIRCUIT_DESIGN_NAMEDESC("radioisotope TEG")
id = "rtg"
// req_tech = list(TECH_DATA = 3, TECH_POWER = 3, TECH_PHORON = 3, TECH_ENGINEERING = 3)
build_path = /obj/item/circuitboard/machine/rtg
@@ -231,7 +238,7 @@
departmental_flags = DEPARTMENT_BITFLAG_ENGINEERING | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/rtg_advanced
name = "advanced radioisotope TEG circuit"
SET_CIRCUIT_DESIGN_NAMEDESC("advanced radioisotope TEG")
id = "adv_rtg"
// req_tech = list(TECH_DATA = 5, TECH_POWER = 5, TECH_PHORON = 5, TECH_ENGINEERING = 5)
build_path = /obj/item/circuitboard/machine/rtg/advanced
@@ -240,8 +247,30 @@
)
departmental_flags = DEPARTMENT_BITFLAG_ENGINEERING | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/dtype_rtg
SET_CIRCUIT_DESIGN_NAMEDESC("d-type rotary electric generator")
id = "dtype_rtg"
build_type = AUTOLATHE | IMPRINTER // Simple circuit
build_path = /obj/item/circuitboard/machine/reg_d
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_MACHINE + RND_SUBCATEGORY_MACHINE_ENGINEERING
)
departmental_flags = DEPARTMENT_BITFLAG_ENGINEERING | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/ctype_rtg
SET_CIRCUIT_DESIGN_NAMEDESC("c-type rotary electric generator")
id = "ctype_rtg"
build_type = AUTOLATHE | IMPRINTER // Simple circuit
build_path = /obj/item/circuitboard/machine/reg_c
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_MACHINE + RND_SUBCATEGORY_MACHINE_ENGINEERING
)
departmental_flags = DEPARTMENT_BITFLAG_ENGINEERING | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/pointdefense
name = "point defense battery circuit"
SET_CIRCUIT_DESIGN_NAMEDESC("point defense battery")
id = "pointdefense"
// req_tech = list(TECH_DATA = 2, TECH_ENGINEERING = 3, TECH_COMBAT = 4)
build_path = /obj/item/circuitboard/pointdefense
@@ -251,7 +280,7 @@
departmental_flags = DEPARTMENT_BITFLAG_ENGINEERING | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/pointdefense_control
name = "point defense control circuit"
SET_CIRCUIT_DESIGN_NAMEDESC("point defense control")
id = "pointdefense_control"
// req_tech = list(TECH_DATA = 4, TECH_ENGINEERING = 3, TECH_COMBAT = 2)
build_path = /obj/item/circuitboard/pointdefense_control
@@ -261,7 +290,7 @@
departmental_flags = DEPARTMENT_BITFLAG_ENGINEERING | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/fusion
name = "Fusion Core Control Console"
SET_CIRCUIT_DESIGN_NAMEDESC("Fusion Core Control Console")
id = "fusion_core_control"
build_path = /obj/item/circuitboard/fusion_core_control
category = list(
@@ -270,32 +299,32 @@
departmental_flags = DEPARTMENT_BITFLAG_ENGINEERING | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/fusion/fuel_compressor
name = "Fusion Fuel Compressor"
SET_CIRCUIT_DESIGN_NAMEDESC("Fusion Fuel Compressor")
id = "fusion_fuel_compressor"
build_path = /obj/item/circuitboard/fusion_fuel_compressor
/datum/design_techweb/board/fusion/fuel_control
name = "Fusion Fuel Control Console"
SET_CIRCUIT_DESIGN_NAMEDESC("Fusion Fuel Control Console")
id = "fusion_fuel_control"
build_path = /obj/item/circuitboard/fusion_fuel_control
/datum/design_techweb/board/fusion/gyrotron_control
name = "Gyrotron Control Console"
SET_CIRCUIT_DESIGN_NAMEDESC("Gyrotron Control Console")
id = "gyrotron_control"
build_path = /obj/item/circuitboard/gyrotron_control
/datum/design_techweb/board/fusion/core
name = "Fusion Core"
SET_CIRCUIT_DESIGN_NAMEDESC("Fusion Core")
id = "fusion_core"
build_path = /obj/item/circuitboard/fusion_core
/datum/design_techweb/board/fusion/injector
name = "Fusion Fuel Injector"
SET_CIRCUIT_DESIGN_NAMEDESC("Fusion Fuel Injector")
id = "fusion_injector"
build_path = /obj/item/circuitboard/fusion_injector
/datum/design_techweb/board/airlock_cycling
name = "Machine Design (Cycling Airlock Board)"
name = "airlock cycling control circuit"
desc = "The circuit board for cycling airlock parts."
id = "airlock_cycling"
build_path = /obj/item/circuitboard/airlock_cycling
@@ -305,11 +334,73 @@
departmental_flags = DEPARTMENT_BITFLAG_ENGINEERING | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/tesla_coil
name = "Machine Design (Tesla Coil Board)"
desc = "The circuit board for a tesla coil."
SET_CIRCUIT_DESIGN_NAMEDESC("tesla coil")
id = "tesla_coil"
build_path = /obj/item/circuitboard/tesla_coil
category = list(
RND_CATEGORY_MACHINE + RND_SUBCATEGORY_MACHINE_ENGINEERING
)
departmental_flags = DEPARTMENT_BITFLAG_ENGINEERING | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/grounding_rod
SET_CIRCUIT_DESIGN_NAMEDESC("grounding rod")
id = "grounding_rod"
build_path = /obj/item/circuitboard/grounding_rod
category = list(
RND_CATEGORY_MACHINE + RND_SUBCATEGORY_MACHINE_ENGINEERING
)
departmental_flags = DEPARTMENT_BITFLAG_ENGINEERING | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/electrochromic
SET_CIRCUIT_DESIGN_NAMEDESC("electrochromic button")
id = "electrochromic"
build_path = /obj/item/circuitboard/electrochromic
category = list(
RND_CATEGORY_MACHINE + RND_SUBCATEGORY_MACHINE_ENGINEERING
)
departmental_flags = DEPARTMENT_BITFLAG_ENGINEERING | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/automatic_pipe_layer
SET_CIRCUIT_DESIGN_NAMEDESC("automatic pipe layer")
id = "automatic_pipe_layer"
build_path = /obj/item/circuitboard/pipelayer
category = list(
RND_CATEGORY_MACHINE + RND_SUBCATEGORY_MACHINE_ENGINEERING
)
departmental_flags = DEPARTMENT_BITFLAG_ENGINEERING | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/geiger
SET_CIRCUIT_DESIGN_NAMEDESC("wall-mounted geiger counter")
id = "geiger"
build_path = /obj/item/circuitboard/geiger
category = list(
RND_CATEGORY_MACHINE + RND_SUBCATEGORY_MACHINE_ENGINEERING
)
departmental_flags = DEPARTMENT_BITFLAG_ENGINEERING | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/gyrotron
SET_CIRCUIT_DESIGN_NAMEDESC("gyrotron")
id = "gyrotron"
build_path = /obj/item/circuitboard/gyrotron
category = list(
RND_CATEGORY_COMPUTER + RND_SUBCATEGORY_MACHINE_ENGINEERING
)
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_ENGINEERING
/datum/design_techweb/board/supermatter_core_manager
SET_CIRCUIT_DESIGN_NAMEDESC("supermatter core control")
id = "supermatter_core_manager"
build_path = /obj/item/circuitboard/air_management/supermatter_core
category = list(
RND_CATEGORY_COMPUTER + RND_SUBCATEGORY_MACHINE_ENGINEERING
)
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_ENGINEERING
/datum/design_techweb/board/supermatter_injector_control
SET_CIRCUIT_DESIGN_NAMEDESC("supermatter injector control")
id = "supermatter_injector_control"
build_path = /obj/item/circuitboard/air_management/injector_control
category = list(
RND_CATEGORY_COMPUTER + RND_SUBCATEGORY_MACHINE_ENGINEERING
)
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_ENGINEERING
@@ -1,6 +1,6 @@
// Cooking Appliances
/datum/design_techweb/board/microwave
name = "microwave board circuit"
SET_CIRCUIT_DESIGN_NAMEDESC("microwave")
id = "microwave_board"
// req_tech = list(TECH_MAGNET = 2, TECH_ENGINEERING = 2)
build_path = /obj/item/circuitboard/microwave
@@ -10,7 +10,7 @@
departmental_flags = DEPARTMENT_BITFLAG_SERVICE | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/oven
name = "oven board circuit"
SET_CIRCUIT_DESIGN_NAMEDESC("oven")
id = "oven_board"
// req_tech = list(TECH_MAGNET = 2, TECH_ENGINEERING = 2)
build_path = /obj/item/circuitboard/oven
@@ -20,7 +20,7 @@
departmental_flags = DEPARTMENT_BITFLAG_SERVICE | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/fryer
name = "deep fryer board circuit"
SET_CIRCUIT_DESIGN_NAMEDESC("deep fryer")
id = "fryer_board"
// req_tech = list(TECH_MAGNET = 2, TECH_ENGINEERING = 2)
build_path = /obj/item/circuitboard/fryer
@@ -29,8 +29,17 @@
)
departmental_flags = DEPARTMENT_BITFLAG_SERVICE | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/range
SET_CIRCUIT_DESIGN_NAMEDESC("grill")
id = "range"
build_path = /obj/item/circuitboard/grill
category = list(
RND_CATEGORY_MACHINE + RND_SUBCATEGORY_MACHINE_KITCHEN
)
departmental_flags = DEPARTMENT_BITFLAG_SERVICE | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/cerealmaker
name = "cereal maker board circuit"
SET_CIRCUIT_DESIGN_NAMEDESC("cereal maker")
id = "cerealmaker_board"
// req_tech = list(TECH_MAGNET = 2, TECH_ENGINEERING = 2)
build_path = /obj/item/circuitboard/cerealmaker
@@ -40,7 +49,7 @@
departmental_flags = DEPARTMENT_BITFLAG_SERVICE | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/candymaker
name = "candy machine board circuit"
SET_CIRCUIT_DESIGN_NAMEDESC("candy machine")
id = "candymachine_board"
// req_tech = list(TECH_MAGNET = 2, TECH_ENGINEERING = 2)
build_path = /obj/item/circuitboard/candymachine
@@ -48,3 +57,12 @@
RND_CATEGORY_MACHINE + RND_SUBCATEGORY_MACHINE_KITCHEN
)
departmental_flags = DEPARTMENT_BITFLAG_SERVICE | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/honey_extractor
SET_CIRCUIT_DESIGN_NAMEDESC("honey extractor")
id = "honey_extractor"
build_path = /obj/item/circuitboard/honey_extractor
category = list(
RND_CATEGORY_MACHINE + RND_SUBCATEGORY_MACHINE_BOTANY
)
departmental_flags = DEPARTMENT_BITFLAG_SERVICE | DEPARTMENT_BITFLAG_SCIENCE
@@ -1,6 +1,6 @@
/datum/design_techweb/board/clonepod
name = "clone pod circuit"
SET_CIRCUIT_DESIGN_NAMEDESC("clone pod")
id = "clonepod"
// req_tech = list(TECH_DATA = 3, TECH_BIO = 3)
build_path = /obj/item/circuitboard/clonepod
@@ -10,7 +10,7 @@
departmental_flags = DEPARTMENT_BITFLAG_MEDICAL | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/clonescanner
name = "cloning scanner circuit"
SET_CIRCUIT_DESIGN_NAMEDESC("cloning scanner")
id = "clonescanner"
// req_tech = list(TECH_DATA = 3, TECH_BIO = 3)
build_path = /obj/item/circuitboard/clonescanner
@@ -20,7 +20,7 @@
departmental_flags = DEPARTMENT_BITFLAG_MEDICAL | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/chem_master
name = "ChemMaster 3000 circuit"
SET_CIRCUIT_DESIGN_NAMEDESC("ChemMaster 3000")
id = "chemmaster"
// req_tech = list(TECH_DATA = 3, TECH_MAGNET = 2)
build_path = /obj/item/circuitboard/chem_master
@@ -30,7 +30,7 @@
departmental_flags = DEPARTMENT_BITFLAG_MEDICAL | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/crewconsole
name = "crew monitoring console circuit"
SET_CIRCUIT_DESIGN_NAMEDESC("crew monitoring console")
id = "crewconsole"
// req_tech = list(TECH_DATA = 3, TECH_MAGNET = 2, TECH_BIO = 2)
build_path = /obj/item/circuitboard/crew
@@ -40,7 +40,7 @@
departmental_flags = DEPARTMENT_BITFLAG_MEDICAL | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/pandemic
name = "PanD.E.M.I.C 2200 circuit"
SET_CIRCUIT_DESIGN_NAMEDESC("PanD.E.M.I.C 2200")
id = "pandemic"
// req_tech = list(TECH_DATA = 2, TECH_BIO = 2)
build_path = /obj/item/circuitboard/pandemic
@@ -50,7 +50,7 @@
departmental_flags = DEPARTMENT_BITFLAG_MEDICAL | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/transhuman_clonepod
name = "grower pod circuit"
SET_CIRCUIT_DESIGN_NAMEDESC("grower pod")
id = "transhuman_clonepod"
// req_tech = list(TECH_DATA = 3, TECH_BIO = 3)
build_path = /obj/item/circuitboard/transhuman_clonepod
@@ -60,7 +60,7 @@
departmental_flags = DEPARTMENT_BITFLAG_MEDICAL | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/transhuman_resleever
name = "Resleeving pod circuit"
SET_CIRCUIT_DESIGN_NAMEDESC("Resleeving pod")
id = "transhuman_resleever"
// req_tech = list(TECH_ENGINEERING = 4, TECH_BIO = 4)
build_path = /obj/item/circuitboard/transhuman_resleever
@@ -70,7 +70,7 @@
departmental_flags = DEPARTMENT_BITFLAG_MEDICAL | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/resleeving_control
name = "Resleeving control console circuit"
SET_CIRCUIT_DESIGN_NAMEDESC("Resleeving control console")
id = "resleeving_control"
// req_tech = list(TECH_DATA = 5)
build_path = /obj/item/circuitboard/resleeving_control
@@ -80,7 +80,7 @@
departmental_flags = DEPARTMENT_BITFLAG_MEDICAL | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/body_designer
name = "Body design console circuit"
SET_CIRCUIT_DESIGN_NAMEDESC("Body design console")
id = "body_designer"
// req_tech = list(TECH_DATA = 5)
build_path = /obj/item/circuitboard/body_designer
@@ -90,7 +90,7 @@
departmental_flags = DEPARTMENT_BITFLAG_MEDICAL | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/vitals_monitor
name = "vitals monitor circuit"
SET_CIRCUIT_DESIGN_NAMEDESC("vitals monitor")
id = "vitals"
// req_tech = list(TECH_DATA = 3, TECH_BIO = 4, TECH_ENGINEERING = 2)
build_path = /obj/item/circuitboard/machine/vitals_monitor
@@ -100,7 +100,7 @@
departmental_flags = DEPARTMENT_BITFLAG_MEDICAL | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/smart_centrifuge
name = "smart centrifuge circuit"
SET_CIRCUIT_DESIGN_NAMEDESC("smart centrifuge")
id = "smart_centrifuge"
// req_tech = list(TECH_MAGNET = 2, TECH_DATA = 1, TECH_MATERIAL = 2)
build_path = /obj/item/circuitboard/smart_centrifuge
@@ -110,7 +110,7 @@
departmental_flags = DEPARTMENT_BITFLAG_MEDICAL | DEPARTMENT_BITFLAG_ENGINEERING | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/chem_analyzer
name = "chem analyzer PRO circuit"
SET_CIRCUIT_DESIGN_NAMEDESC("chem analyzer PRO")
id = "chem_analyzer"
// req_tech = list(TECH_MATERIAL = 1, TECH_ENGINEERING = 1)
build_path = /obj/item/circuitboard/chemical_analyzer
@@ -118,3 +118,57 @@
RND_CATEGORY_MACHINE + RND_SUBCATEGORY_MACHINE_MEDICAL
)
departmental_flags = DEPARTMENT_BITFLAG_MEDICAL | DEPARTMENT_BITFLAG_ENGINEERING | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/medical_kiosk
SET_CIRCUIT_DESIGN_NAMEDESC("Medical Kiosk")
id = "medical_kiosk"
build_path = /obj/item/circuitboard/medical_kiosk
category = list(
RND_CATEGORY_MACHINE + RND_SUBCATEGORY_MACHINE_MEDICAL
)
departmental_flags = DEPARTMENT_BITFLAG_ENGINEERING | DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_MEDICAL
/datum/design_techweb/board/scanner_console
SET_CIRCUIT_DESIGN_NAMEDESC("body scanner console")
id = "scanner_console"
build_path = /obj/item/circuitboard/scanner_console
category = list(
RND_CATEGORY_COMPUTER + RND_SUBCATEGORY_MACHINE_MEDICAL
)
departmental_flags = DEPARTMENT_BITFLAG_MEDICAL | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/body_scanner
SET_CIRCUIT_DESIGN_NAMEDESC("body scanner")
id = "body_scanner"
build_path = /obj/item/circuitboard/body_scanner
category = list(
RND_CATEGORY_COMPUTER + RND_SUBCATEGORY_MACHINE_MEDICAL
)
departmental_flags = DEPARTMENT_BITFLAG_MEDICAL | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/sleeper_console
SET_CIRCUIT_DESIGN_NAMEDESC("sleeper console")
id = "sleeper_console"
build_path = /obj/item/circuitboard/sleeper_console
category = list(
RND_CATEGORY_COMPUTER + RND_SUBCATEGORY_MACHINE_MEDICAL
)
departmental_flags = DEPARTMENT_BITFLAG_MEDICAL | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/sleeper
SET_CIRCUIT_DESIGN_NAMEDESC("sleeper")
id = "sleeper"
build_path = /obj/item/circuitboard/sleeper
category = list(
RND_CATEGORY_COMPUTER + RND_SUBCATEGORY_MACHINE_MEDICAL
)
departmental_flags = DEPARTMENT_BITFLAG_MEDICAL | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/bioprinter
SET_CIRCUIT_DESIGN_NAMEDESC("bioprinter")
id = "bioprinter"
build_path = /obj/item/circuitboard/bioprinter
category = list(
RND_CATEGORY_COMPUTER + RND_SUBCATEGORY_MACHINE_MEDICAL
)
departmental_flags = DEPARTMENT_BITFLAG_MEDICAL | DEPARTMENT_BITFLAG_SCIENCE
+185 -26
View File
@@ -8,8 +8,7 @@
)
/datum/design_techweb/board/arcademachine
name = "battle arcade machine"
desc = "Allows for the construction of circuit boards used to build a new arcade machine."
SET_CIRCUIT_DESIGN_NAMEDESC("battle arcade machine")
id = "arcademachine"
// req_tech = list(TECH_DATA = 1)
build_path = /obj/item/circuitboard/arcade/battle
@@ -19,8 +18,7 @@
departmental_flags = DEPARTMENT_BITFLAG_SERVICE | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/oriontrail
name = "orion trail arcade machine"
desc = "Allows for the construction of circuit boards used to build a new arcade machine."
SET_CIRCUIT_DESIGN_NAMEDESC("orion trail arcade machine")
id = "oriontrail"
// req_tech = list(TECH_DATA = 1)
build_path = /obj/item/circuitboard/arcade/orion_trail
@@ -30,8 +28,7 @@
departmental_flags = DEPARTMENT_BITFLAG_SERVICE | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/clawmachine
name = "grab-a-gift arcade machine"
desc = "Allows for the construction of circuit boards used to build a new arcade machine."
SET_CIRCUIT_DESIGN_NAMEDESC("grab-a-gift arcade machine")
id = "clawmachine"
// req_tech = list(TECH_DATA = 1)
build_path = /obj/item/circuitboard/arcade/clawmachine
@@ -41,18 +38,43 @@
departmental_flags = DEPARTMENT_BITFLAG_SERVICE | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/seccamera
name = "security camera monitor"
desc = "Allows for the construction of circuit boards used to build a security camera monitor."
SET_CIRCUIT_DESIGN_NAMEDESC("security camera monitor")
id = "seccamera"
build_path = /obj/item/circuitboard/security
category = list(
RND_CATEGORY_COMPUTER + RND_SUBCATEGORY_COMPUTER_SECURITY
)
departmental_flags = DEPARTMENT_BITFLAG_SECURITY | DEPARTMENT_BITFLAG_SCIENCE
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_SECURITY
/datum/design_techweb/board/engcamera
SET_CIRCUIT_DESIGN_NAMEDESC("engineering camera monitor")
id = "engcamera"
build_path = /obj/item/circuitboard/security/engineering
category = list(
RND_CATEGORY_COMPUTER + RND_SUBCATEGORY_COMPUTER_SECURITY
)
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_ENGINEERING
/datum/design_techweb/board/crgcamera
SET_CIRCUIT_DESIGN_NAMEDESC("mining camera monitor")
id = "crgcamera"
build_path = /obj/item/circuitboard/security/mining
category = list(
RND_CATEGORY_COMPUTER + RND_SUBCATEGORY_COMPUTER_SECURITY
)
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_CARGO
/datum/design_techweb/board/xenobiocamera
SET_CIRCUIT_DESIGN_NAMEDESC("xenobiology camera monitor")
id = "xenobiocamera"
build_path = /obj/item/circuitboard/security/xenobio
category = list(
RND_CATEGORY_COMPUTER + RND_SUBCATEGORY_COMPUTER_SECURITY
)
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/secdata
name = "security records console"
desc = "Allows for the construction of circuit boards used to build a security records console."
SET_CIRCUIT_DESIGN_NAMEDESC("security records console")
id = "sec_data"
build_path = /obj/item/circuitboard/secure_data
category = list(
@@ -61,8 +83,7 @@
departmental_flags = DEPARTMENT_BITFLAG_SECURITY | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/prisonmanage
name = "prisoner management console"
desc = "Allows for the construction of circuit boards used to build a prisoner management console."
SET_CIRCUIT_DESIGN_NAMEDESC("prisoner management console")
id = "prisonmanage"
build_path = /obj/item/circuitboard/prisoner
category = list(
@@ -71,8 +92,7 @@
departmental_flags = DEPARTMENT_BITFLAG_SECURITY | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/med_data
name = "medical records console"
desc = "Allows for the construction of circuit boards used to build a medical records console."
SET_CIRCUIT_DESIGN_NAMEDESC("medical records console")
id = "med_data"
build_path = /obj/item/circuitboard/med_data
category = list(
@@ -80,9 +100,28 @@
)
departmental_flags = DEPARTMENT_BITFLAG_MEDICAL | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/med_pcu
SET_CIRCUIT_DESIGN_NAMEDESC("medical records PCU")
id = "med_pcu"
build_path = /obj/item/circuitboard/med_data/pcu
category = list(
RND_CATEGORY_COMPUTER + RND_SUBCATEGORY_COMPUTER_MEDICAL
)
departmental_flags = DEPARTMENT_BITFLAG_MEDICAL | DEPARTMENT_BITFLAG_SCIENCE
// TODO - non-pcu skill console, id = "skill_data"
/datum/design_techweb/board/skill_pcu
SET_CIRCUIT_DESIGN_NAMEDESC("employment records PCU")
id = "skill_pcu"
build_path = /obj/item/circuitboard/skills/pcu
category = list(
RND_CATEGORY_COMPUTER + RND_SUBCATEGORY_COMPUTER_COMMAND
)
departmental_flags = DEPARTMENT_BITFLAG_COMMAND | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/operating
name = "patient monitoring console"
desc = "Allows for the construction of circuit boards used to build a patient monitoring console."
SET_CIRCUIT_DESIGN_NAMEDESC("patient monitoring console")
id = "operating"
build_path = /obj/item/circuitboard/operating
category = list(
@@ -91,8 +130,7 @@
departmental_flags = DEPARTMENT_BITFLAG_MEDICAL | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/scan_console
name = "DNA console"
desc = "Allows for the construction of circuit boards used to build a DNA console."
SET_CIRCUIT_DESIGN_NAMEDESC("DNA console")
id = "scan_console"
build_path = /obj/item/circuitboard/scan_consolenew
category = list(
@@ -101,7 +139,7 @@
departmental_flags = DEPARTMENT_BITFLAG_MEDICAL | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/clonecontrol
name = "cloning control console circuit"
SET_CIRCUIT_DESIGN_NAMEDESC("cloning control console")
id = "clonecontrol"
// req_tech = list(TECH_DATA = 3, TECH_BIO = 3)
build_path = /obj/item/circuitboard/cloning
@@ -111,9 +149,10 @@
departmental_flags = DEPARTMENT_BITFLAG_MEDICAL | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/jukebox
name = "jukebox circuit"
SET_CIRCUIT_DESIGN_NAMEDESC("jukebox")
id = "jukebox"
// req_tech = list(TECH_MAGNET = 2, TECH_DATA = 1)
build_type = AUTOLATHE | IMPRINTER // Simple circuit
build_path = /obj/item/circuitboard/jukebox
category = list(
RND_CATEGORY_MACHINE + RND_SUBCATEGORY_MACHINE_BAR
@@ -121,7 +160,7 @@
departmental_flags = DEPARTMENT_BITFLAG_SERVICE | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/teleconsole
name = "teleporter control console circuit"
SET_CIRCUIT_DESIGN_NAMEDESC("teleporter control console")
id = "teleconsole"
// req_tech = list(TECH_DATA = 3, TECH_BLUESPACE = 2)
build_path = /obj/item/circuitboard/teleporter
@@ -131,7 +170,7 @@
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/biogenerator
name = "biogenerator circuit"
SET_CIRCUIT_DESIGN_NAMEDESC("biogenerator")
id = "biogenerator"
// req_tech = list(TECH_DATA = 2)
build_path = /obj/item/circuitboard/biogenerator
@@ -141,7 +180,7 @@
departmental_flags = DEPARTMENT_BITFLAG_SERVICE | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/comconsole
name = "communications console circuit"
SET_CIRCUIT_DESIGN_NAMEDESC("communications console")
id = "comconsole"
build_path = /obj/item/circuitboard/communications
category = list(
@@ -150,7 +189,7 @@
departmental_flags = DEPARTMENT_BITFLAG_COMMAND | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/idcardconsole
name = "ID card modification console circuit"
SET_CIRCUIT_DESIGN_NAMEDESC("ID card modification console")
id = "idcardconsole"
build_path = /obj/item/circuitboard/card
category = list(
@@ -159,10 +198,130 @@
departmental_flags = DEPARTMENT_BITFLAG_COMMAND | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/emp_data
name = "employment records console circuit"
SET_CIRCUIT_DESIGN_NAMEDESC("employment records console")
id = "emp_data"
build_path = /obj/item/circuitboard/skills
category = list(
RND_CATEGORY_COMPUTER + RND_SUBCATEGORY_COMPUTER_COMMAND
)
departmental_flags = DEPARTMENT_BITFLAG_COMMAND | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/id_restorer
SET_CIRCUIT_DESIGN_NAMEDESC("ID restoration console")
id = "idrestore_console"
build_path = /obj/item/circuitboard/id_restorer
category = list(
RND_CATEGORY_MACHINE + RND_SUBCATEGORY_COMPUTER_COMMAND
)
departmental_flags = DEPARTMENT_BITFLAG_ENGINEERING | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/keycard_auth
SET_CIRCUIT_DESIGN_NAMEDESC("keycard authenticator")
id = "keycard_auth"
build_path = /obj/item/circuitboard/keycard_auth
category = list(
RND_CATEGORY_MACHINE + RND_SUBCATEGORY_COMPUTER_COMMAND
)
departmental_flags = DEPARTMENT_BITFLAG_ENGINEERING | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/status_display
SET_CIRCUIT_DESIGN_NAMEDESC("status display")
id = "status_display"
build_path = /obj/item/circuitboard/status_display
category = list(
RND_CATEGORY_MACHINE + RND_SUBCATEGORY_MACHINE_ENGINEERING
)
departmental_flags = DEPARTMENT_BITFLAG_ENGINEERING | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/ai_status_display
SET_CIRCUIT_DESIGN_NAMEDESC("AI status display")
id = "ai_status_display"
build_path = /obj/item/circuitboard/ai_status_display
category = list(
RND_CATEGORY_MACHINE + RND_SUBCATEGORY_MACHINE_ENGINEERING
)
departmental_flags = DEPARTMENT_BITFLAG_ENGINEERING | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/newscaster
SET_CIRCUIT_DESIGN_NAMEDESC("newscaster")
id = "newscaster"
build_type = AUTOLATHE | IMPRINTER // Simple circuit
build_path = /obj/item/circuitboard/newscaster
category = list(
RND_CATEGORY_MACHINE + RND_SUBCATEGORY_MACHINE_SERVICE
)
departmental_flags = DEPARTMENT_BITFLAG_SERVICE | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/telescreen_entertainment
SET_CIRCUIT_DESIGN_NAMEDESC("entertainment camera monitor")
id = "telescreen_entertainment"
build_path = /obj/item/circuitboard/security/telescreen/entertainment
category = list(
RND_CATEGORY_MACHINE + RND_SUBCATEGORY_MACHINE_SERVICE
)
departmental_flags = DEPARTMENT_BITFLAG_SERVICE | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/washing
SET_CIRCUIT_DESIGN_NAMEDESC("washing machine")
id = "washing"
build_path = /obj/item/circuitboard/washing
category = list(
RND_CATEGORY_MACHINE + RND_SUBCATEGORY_MACHINE_SERVICE
)
departmental_flags = DEPARTMENT_BITFLAG_SERVICE | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/timeclock
SET_CIRCUIT_DESIGN_NAMEDESC("timeclock")
id = "timeclock"
build_type = AUTOLATHE | IMPRINTER // Simple circuit
build_path = /obj/item/circuitboard/timeclock
category = list(
RND_CATEGORY_MACHINE + RND_SUBCATEGORY_MACHINE_ENGINEERING
)
departmental_flags = DEPARTMENT_BITFLAG_ENGINEERING | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/stationalert_engineering
SET_CIRCUIT_DESIGN_NAMEDESC("station alert console (engineering)")
id = "stationalert_engineering"
build_path = /obj/item/circuitboard/stationalert_engineering
category = list(
RND_CATEGORY_COMPUTER + RND_SUBCATEGORY_COMPUTER_ENGINEERING
)
departmental_flags = DEPARTMENT_BITFLAG_ENGINEERING | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/stationalert_security
SET_CIRCUIT_DESIGN_NAMEDESC("station alert console (security)")
id = "stationalert_security"
build_path = /obj/item/circuitboard/stationalert_security
category = list(
RND_CATEGORY_COMPUTER + RND_SUBCATEGORY_COMPUTER_SECURITY
)
departmental_flags = DEPARTMENT_BITFLAG_ENGINEERING | DEPARTMENT_BITFLAG_SECURITY | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/stationalert_all
SET_CIRCUIT_DESIGN_NAMEDESC("station alert console (all)")
id = "stationalert_all"
build_path = /obj/item/circuitboard/stationalert_all
category = list(
RND_CATEGORY_COMPUTER + RND_SUBCATEGORY_COMPUTER_COMMAND
)
departmental_flags = DEPARTMENT_BITFLAG_COMMAND | DEPARTMENT_BITFLAG_ENGINEERING | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/vr_sleeper
SET_CIRCUIT_DESIGN_NAMEDESC("virtual reality sleeper")
id = "vr_sleeper"
build_path = /obj/item/circuitboard/vr_sleeper
category = list(
RND_CATEGORY_COMPUTER + RND_SUBCATEGORY_MACHINE_RESEARCH
)
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/space_heater
SET_CIRCUIT_DESIGN_NAMEDESC("space heater")
id = "space_heater"
build_type = AUTOLATHE | IMPRINTER // Simple circuit
build_path = /obj/item/circuitboard/space_heater
category = list(
RND_CATEGORY_COMPUTER + RND_SUBCATEGORY_MACHINE_SERVICE
)
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_SERVICE
@@ -1,129 +1,129 @@
/datum/design_techweb/board/industrial_reagent_filter
name = "Industrial Reagent Filter"
SET_CIRCUIT_DESIGN_NAMEDESC("Industrial Reagent Filter")
id = "industrial_reagent_filter"
// req_tech = list(TECH_DATA = 1)
build_path = /obj/item/circuitboard/industrial_reagent_filter
category = list(
RND_CATEGORY_MACHINE + RND_SUBCATEGORY_MACHINE_ENGINEERING
RND_CATEGORY_MACHINE + RND_SUBCATEGORY_MACHINE_REFINERY
)
departmental_flags = DEPARTMENT_BITFLAG_ENGINEERING | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/industrial_reagent_furnace
name = "Industrial Reagent Furnace"
SET_CIRCUIT_DESIGN_NAMEDESC("Industrial Reagent Furnace")
id = "industrial_reagent_furnace"
// req_tech = list(TECH_DATA = 1)
build_path = /obj/item/circuitboard/industrial_reagent_furnace
category = list(
RND_CATEGORY_MACHINE + RND_SUBCATEGORY_MACHINE_ENGINEERING
RND_CATEGORY_MACHINE + RND_SUBCATEGORY_MACHINE_REFINERY
)
departmental_flags = DEPARTMENT_BITFLAG_ENGINEERING | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/industrial_reagent_grinder
name = "Industrial Reagent Grinder"
SET_CIRCUIT_DESIGN_NAMEDESC("Industrial Reagent Grinder")
id = "industrial_reagent_grinder"
// req_tech = list(TECH_DATA = 1)
build_path = /obj/item/circuitboard/industrial_reagent_grinder
category = list(
RND_CATEGORY_MACHINE + RND_SUBCATEGORY_MACHINE_ENGINEERING
RND_CATEGORY_MACHINE + RND_SUBCATEGORY_MACHINE_REFINERY
)
departmental_flags = DEPARTMENT_BITFLAG_ENGINEERING | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/industrial_reagent_hub
name = "Industrial Reagent Hub"
SET_CIRCUIT_DESIGN_NAMEDESC("Industrial Reagent Hub")
id = "industrial_reagent_hub"
// req_tech = list(TECH_DATA = 1)
build_path = /obj/item/circuitboard/industrial_reagent_hub
category = list(
RND_CATEGORY_MACHINE + RND_SUBCATEGORY_MACHINE_ENGINEERING
RND_CATEGORY_MACHINE + RND_SUBCATEGORY_MACHINE_REFINERY
)
departmental_flags = DEPARTMENT_BITFLAG_ENGINEERING | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/industrial_reagent_pipe
name = "Industrial Reagent Pipe"
SET_CIRCUIT_DESIGN_NAMEDESC("Industrial Reagent Pipe")
id = "industrial_reagent_pipe"
// req_tech = list(TECH_DATA = 1)
build_path = /obj/item/circuitboard/industrial_reagent_pipe
category = list(
RND_CATEGORY_MACHINE + RND_SUBCATEGORY_MACHINE_ENGINEERING
RND_CATEGORY_MACHINE + RND_SUBCATEGORY_MACHINE_REFINERY
)
departmental_flags = DEPARTMENT_BITFLAG_ENGINEERING | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/industrial_reagent_pump
name = "Industrial Reagent Pump"
SET_CIRCUIT_DESIGN_NAMEDESC("Industrial Reagent Pump")
id = "industrial_reagent_pump"
// req_tech = list(TECH_DATA = 1)
build_path = /obj/item/circuitboard/industrial_reagent_pump
category = list(
RND_CATEGORY_MACHINE + RND_SUBCATEGORY_MACHINE_ENGINEERING
RND_CATEGORY_MACHINE + RND_SUBCATEGORY_MACHINE_REFINERY
)
departmental_flags = DEPARTMENT_BITFLAG_ENGINEERING | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/industrial_reagent_reactor
name = "Industrial Reagent Reactor"
SET_CIRCUIT_DESIGN_NAMEDESC("Industrial Reagent Reactor")
id = "industrial_reagent_reactor"
// req_tech = list(TECH_DATA = 1)
build_path = /obj/item/circuitboard/industrial_reagent_reactor
category = list(
RND_CATEGORY_MACHINE + RND_SUBCATEGORY_MACHINE_ENGINEERING
RND_CATEGORY_MACHINE + RND_SUBCATEGORY_MACHINE_REFINERY
)
departmental_flags = DEPARTMENT_BITFLAG_ENGINEERING | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/industrial_reagent_vat
name = "Industrial Reagent Vat"
SET_CIRCUIT_DESIGN_NAMEDESC("Industrial Reagent Vat")
id = "industrial_reagent_vat"
// req_tech = list(TECH_DATA = 1)
build_path = /obj/item/circuitboard/industrial_reagent_vat
category = list(
RND_CATEGORY_MACHINE + RND_SUBCATEGORY_MACHINE_ENGINEERING
RND_CATEGORY_MACHINE + RND_SUBCATEGORY_MACHINE_REFINERY
)
departmental_flags = DEPARTMENT_BITFLAG_ENGINEERING | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/industrial_reagent_mixer
name = "Industrial Reagent Mixer"
SET_CIRCUIT_DESIGN_NAMEDESC("Industrial Reagent Mixer")
id = "industrial_reagent_mixer"
// req_tech = list(TECH_DATA = 1)
build_path = /obj/item/circuitboard/industrial_reagent_mixer
category = list(
RND_CATEGORY_MACHINE + RND_SUBCATEGORY_MACHINE_ENGINEERING
RND_CATEGORY_MACHINE + RND_SUBCATEGORY_MACHINE_REFINERY
)
departmental_flags = DEPARTMENT_BITFLAG_ENGINEERING | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/industrial_reagent_waste_processor
name = "Industrial Reagent Waste Processor"
SET_CIRCUIT_DESIGN_NAMEDESC("Industrial Reagent Waste Processor")
id = "industrial_reagent_waste_processor"
// req_tech = list(TECH_DATA = 1)
build_path = /obj/item/circuitboard/industrial_reagent_waste_processor
category = list(
RND_CATEGORY_MACHINE + RND_SUBCATEGORY_MACHINE_ENGINEERING
RND_CATEGORY_MACHINE + RND_SUBCATEGORY_MACHINE_REFINERY
)
departmental_flags = DEPARTMENT_BITFLAG_ENGINEERING | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/industrial_reagent_splitter
name = "Industrial Reagent Splitter"
SET_CIRCUIT_DESIGN_NAMEDESC("Industrial Reagent Splitter")
id = "industrial_reagent_splitter"
// req_tech = list(TECH_DATA = 1)
build_path = /obj/item/circuitboard/industrial_reagent_splitter
category = list(
RND_CATEGORY_MACHINE + RND_SUBCATEGORY_MACHINE_ENGINEERING
RND_CATEGORY_MACHINE + RND_SUBCATEGORY_MACHINE_REFINERY
)
departmental_flags = DEPARTMENT_BITFLAG_ENGINEERING | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/pump_relay
name = "Pump Relay"
SET_CIRCUIT_DESIGN_NAMEDESC("Pump Relay")
id = "pump_relay"
// req_tech = list(TECH_DATA = 1)
build_path = /obj/item/circuitboard/pump_relay
category = list(
RND_CATEGORY_MACHINE + RND_SUBCATEGORY_MACHINE_ENGINEERING
RND_CATEGORY_MACHINE + RND_SUBCATEGORY_MACHINE_REFINERY
)
departmental_flags = DEPARTMENT_BITFLAG_ENGINEERING | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/fluid_pump
name = "Fluid Pump"
SET_CIRCUIT_DESIGN_NAMEDESC("Fluid Pump")
id = "fluid_pump"
// req_tech = list(TECH_DATA = 1)
build_path = /obj/item/circuitboard/fluidpump
category = list(
RND_CATEGORY_MACHINE + RND_SUBCATEGORY_MACHINE_ENGINEERING
RND_CATEGORY_MACHINE + RND_SUBCATEGORY_MACHINE_REFINERY
)
departmental_flags = DEPARTMENT_BITFLAG_ENGINEERING | DEPARTMENT_BITFLAG_SCIENCE
@@ -1,5 +1,5 @@
/datum/design_techweb/board/robocontrol
name = "robotics control console circuit"
SET_CIRCUIT_DESIGN_NAMEDESC("robotics control console")
id = "robocontrol"
// req_tech = list(TECH_DATA = 4)
build_path = /obj/item/circuitboard/robotics
@@ -9,7 +9,7 @@
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/mechacontrol
name = "exosuit control console circuit"
SET_CIRCUIT_DESIGN_NAMEDESC("exosuit control console")
id = "mechacontrol"
// req_tech = list(TECH_DATA = 3)
build_path = /obj/item/circuitboard/mecha_control
@@ -19,7 +19,7 @@
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/rdconsole
name = "R&D control console circuit"
SET_CIRCUIT_DESIGN_NAMEDESC("R&D control console")
id = "rdconsole"
// req_tech = list(TECH_DATA = 4)
build_path = /obj/item/circuitboard/rdconsole
@@ -29,7 +29,7 @@
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/aifixer
name = "AI integrity restorer circuit"
SET_CIRCUIT_DESIGN_NAMEDESC("AI integrity restorer")
id = "aifixer"
// req_tech = list(TECH_DATA = 3, TECH_BIO = 2)
build_path = /obj/item/circuitboard/aifixer
@@ -39,7 +39,7 @@
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/aiupload
name = "AI upload console circuit"
SET_CIRCUIT_DESIGN_NAMEDESC("AI upload console")
id = "aiupload"
// req_tech = list(TECH_DATA = 4)
build_path = /obj/item/circuitboard/aiupload
@@ -49,7 +49,7 @@
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/borgupload
name = "cyborg upload console circuit"
SET_CIRCUIT_DESIGN_NAMEDESC("cyborg upload console")
id = "borgupload"
// req_tech = list(TECH_DATA = 4)
build_path = /obj/item/circuitboard/borgupload
@@ -59,7 +59,7 @@
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/circuit_imprinter
name = "circuit imprinter circuit"
SET_CIRCUIT_DESIGN_NAMEDESC("circuit imprinter")
id = "circuit_imprinter"
// req_tech = list(TECH_DATA = 2, TECH_ENGINEERING = 2)
build_path = /obj/item/circuitboard/circuit_imprinter
@@ -69,7 +69,7 @@
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/autolathe
name = "autolathe board circuit"
SET_CIRCUIT_DESIGN_NAMEDESC("autolathe")
id = "autolathe"
// req_tech = list(TECH_DATA = 2, TECH_ENGINEERING = 2)
build_path = /obj/item/circuitboard/autolathe
@@ -79,7 +79,7 @@
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/rdserver
name = "R&D server circuit"
SET_CIRCUIT_DESIGN_NAMEDESC("R&D server")
id = "rdserver"
// req_tech = list(TECH_DATA = 3)
build_path = /obj/item/circuitboard/machine/rdserver
@@ -89,7 +89,7 @@
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/mechfab
name = "exosuit fabricator circuit"
SET_CIRCUIT_DESIGN_NAMEDESC("exosuit fabricator")
id = "mechfab"
// req_tech = list(TECH_DATA = 3, TECH_ENGINEERING = 3)
build_path = /obj/item/circuitboard/mechfab
@@ -99,7 +99,7 @@
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/prosfab
name = "prosthetics fabricator circuit"
SET_CIRCUIT_DESIGN_NAMEDESC("prosthetics fabricator")
id = "prosfab"
// req_tech = list(TECH_DATA = 3, TECH_ENGINEERING = 3)
build_path = /obj/item/circuitboard/prosthetics
@@ -109,7 +109,7 @@
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/mech_recharger
name = "mech recharger circuit"
SET_CIRCUIT_DESIGN_NAMEDESC("mech recharger")
id = "mech_recharger"
// req_tech = list(TECH_DATA = 2, TECH_POWER = 2, TECH_ENGINEERING = 2)
build_path = /obj/item/circuitboard/mech_recharger
@@ -119,7 +119,7 @@
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/recharge_station
name = "cyborg recharge station circuit"
SET_CIRCUIT_DESIGN_NAMEDESC("cyborg recharge station")
id = "recharge_station"
// req_tech = list(TECH_DATA = 3, TECH_ENGINEERING = 2)
build_path = /obj/item/circuitboard/recharge_station
@@ -129,7 +129,7 @@
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/transhuman_synthprinter
name = "SynthFab 3000 circuit"
SET_CIRCUIT_DESIGN_NAMEDESC("SynthFab 3000")
id = "transhuman_synthprinter"
// req_tech = list(TECH_DATA = 3, TECH_ENGINEERING = 3)
build_path = /obj/item/circuitboard/transhuman_synthprinter
@@ -140,7 +140,7 @@
// Telesci stuff
/datum/design_techweb/board/telesci_console
name = "Telepad Control Console circuit"
SET_CIRCUIT_DESIGN_NAMEDESC("Telepad Control Console")
id = "telesci_console"
// req_tech = list(TECH_DATA = 3, TECH_BLUESPACE = 3, TECH_PHORON = 4)
build_path = /obj/item/circuitboard/telesci_console
@@ -150,7 +150,7 @@
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/telesci_pad
name = "Telepad circuit"
SET_CIRCUIT_DESIGN_NAMEDESC("Telepad")
id = "telesci_pad"
// req_tech = list(TECH_DATA = 4, TECH_ENGINEERING = 4, TECH_PHORON = 4, TECH_BLUESPACE = 5)
build_path = /obj/item/circuitboard/telesci_pad
@@ -160,7 +160,7 @@
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/quantum_pad
name = "Quantum Pad circuit"
SET_CIRCUIT_DESIGN_NAMEDESC("Quantum Pad")
id = "quantum_pad"
// req_tech = list(TECH_DATA = 4, TECH_ENGINEERING = 4, TECH_PHORON = 4, TECH_BLUESPACE = 5)
build_path = /obj/item/circuitboard/quantumpad
@@ -170,7 +170,7 @@
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/bomb_tester
name = "Explosive Effect Simulator circuit"
SET_CIRCUIT_DESIGN_NAMEDESC("Explosive Effect Simulator")
id = "bomb_tester"
// req_tech = list(TECH_PHORON = 3, TECH_DATA = 2, TECH_MAGNET = 2)
build_path = /obj/item/circuitboard/bomb_tester
@@ -180,7 +180,7 @@
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/teleporter_hub
name = "teleporter hub"
SET_CIRCUIT_DESIGN_NAMEDESC("teleporter hub")
id = "teleporter_hub"
build_path = /obj/item/circuitboard/teleporter_hub
category = list(
@@ -189,7 +189,7 @@
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_ENGINEERING
/datum/design_techweb/board/teleporter_station
name = "teleporter station"
SET_CIRCUIT_DESIGN_NAMEDESC("teleporter station")
id = "teleporter_station"
build_path = /obj/item/circuitboard/teleporter_station
category = list(
@@ -198,7 +198,7 @@
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_ENGINEERING
/datum/design_techweb/board/destructive_analyzer
name = "destructive analyzer"
SET_CIRCUIT_DESIGN_NAMEDESC("destructive analyzer")
id = "destructive_analyzer"
build_path = /obj/item/circuitboard/destructive_analyzer
category = list(
@@ -207,7 +207,7 @@
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/anomaly_harvester
name = "Anomaly Harvester"
SET_CIRCUIT_DESIGN_NAMEDESC("Anomaly Harvester")
id = "anomaly_harvester"
build_path = /obj/item/circuitboard/anomaly_harvester
category = list(
@@ -215,35 +215,88 @@
)
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/rdservercontrol
SET_CIRCUIT_DESIGN_NAMEDESC("R&D server")
desc = "Manages access to research databases and consoles."
id = "rdservercontrol"
build_path = /obj/item/circuitboard/rdservercontrol
category = list(
RND_CATEGORY_COMPUTER + RND_SUBCATEGORY_COMPUTER_RESEARCH
)
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/doppler_array
SET_CIRCUIT_DESIGN_NAMEDESC("doppler array")
id = "doppler_array"
build_path = /obj/item/circuitboard/doppler_array
category = list(
RND_CATEGORY_COMPUTER + RND_SUBCATEGORY_MACHINE_RESEARCH
)
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/protean_reconstitutor
SET_CIRCUIT_DESIGN_NAMEDESC("protean reconstitutor")
id = "protean_reconstitutor"
build_path = /obj/item/circuitboard/protean_reconstitutor
category = list(
RND_CATEGORY_COMPUTER + RND_SUBCATEGORY_MACHINE_RESEARCH
)
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/artifact_harvester
SET_CIRCUIT_DESIGN_NAMEDESC("exotic particle harvester")
id = "artifact_harvester"
build_path = /obj/item/circuitboard/artifact_harvester
category = list(
RND_CATEGORY_COMPUTER + RND_SUBCATEGORY_MACHINE_RESEARCH
)
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/artifact_scanpad
SET_CIRCUIT_DESIGN_NAMEDESC("anomaly scanner pad")
id = "artifact_scanpad"
build_path = /obj/item/circuitboard/artifact_scanpad
category = list(
RND_CATEGORY_COMPUTER + RND_SUBCATEGORY_MACHINE_RESEARCH
)
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE
///Protolathe boards
/* Optional
/datum/design_techweb/board/protolathe
name = "Protolathe Board - Science"
SET_CIRCUIT_DESIGN_NAMEDESC("Protolathe - Omni")
id = "protolathe_omni"
build_path = /obj/item/circuitboard/machine/protolathe
*/
/datum/design_techweb/board/protolathe/science
SET_CIRCUIT_DESIGN_NAMEDESC("Protolathe - Science")
id = "protolathe_science"
build_path = /obj/item/circuitboard/machine/protolathe/department/science
/datum/design_techweb/board/protolathe/service
name = "Protolathe Board - Service"
SET_CIRCUIT_DESIGN_NAMEDESC("Protolathe - Service")
id = "protolathe_service"
build_path = /obj/item/circuitboard/machine/protolathe/department/service
/datum/design_techweb/board/protolathe/medical
name = "Protolathe Board - Medical"
SET_CIRCUIT_DESIGN_NAMEDESC("Protolathe - Medical")
id = "protolathe_medical"
build_path = /obj/item/circuitboard/machine/protolathe/department/medical
/datum/design_techweb/board/protolathe/cargo
name = "Protolathe Board - Cargo"
SET_CIRCUIT_DESIGN_NAMEDESC("Protolathe - Cargo")
id = "protolathe_cargo"
build_path = /obj/item/circuitboard/machine/protolathe/department/cargo
/datum/design_techweb/board/protolathe/engineering
name = "Protolathe Board - Engineering"
SET_CIRCUIT_DESIGN_NAMEDESC("Protolathe - Engineering")
id = "protolathe_engineering"
build_path = /obj/item/circuitboard/machine/protolathe/department/engineering
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_ENGINEERING //Engineering gets an exception in that they can produce their own, since engineering often expands operations.
/datum/design_techweb/board/protolathe/security
name = "Protolathe Board - Security"
SET_CIRCUIT_DESIGN_NAMEDESC("Protolathe - Security")
id = "protolathe_security"
build_path = /obj/item/circuitboard/machine/protolathe/department/security
@@ -0,0 +1,8 @@
/datum/design_techweb/board/dna_analyzer
SET_CIRCUIT_DESIGN_NAMEDESC("DNA analyzer")
id = "dna_analyzer"
build_path = /obj/item/circuitboard/dna_analyzer
category = list(
RND_CATEGORY_COMPUTER + RND_SUBCATEGORY_MACHINE_SECURITY
)
departmental_flags = DEPARTMENT_BITFLAG_SECURITY | DEPARTMENT_BITFLAG_SCIENCE
@@ -1,96 +1,82 @@
/datum/design_techweb/board/comm_monitor
name = "telecommunications monitoring console circuit"
id = "comm_monitor"
// req_tech = list(TECH_DATA = 3)
build_path = /obj/item/circuitboard/comm_monitor
category = list(
RND_CATEGORY_MACHINE + RND_SUBCATEGORY_MACHINE_TELECOMMS
)
departmental_flags = DEPARTMENT_BITFLAG_ENGINEERING | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/comm_server
name = "telecommunications server monitoring console circuit"
id = "comm_server"
// req_tech = list(TECH_DATA = 3)
build_path = /obj/item/circuitboard/comm_server
category = list(
RND_CATEGORY_MACHINE + RND_SUBCATEGORY_MACHINE_TELECOMMS
)
departmental_flags = DEPARTMENT_BITFLAG_ENGINEERING | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/message_monitor
name = "messaging monitor console circuit"
id = "message_monitor"
// req_tech = list(TECH_DATA = 5)
build_path = /obj/item/circuitboard/message_monitor
category = list(
RND_CATEGORY_MACHINE + RND_SUBCATEGORY_MACHINE_TELECOMMS
)
departmental_flags = DEPARTMENT_BITFLAG_ENGINEERING | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/tcom
category = list(
RND_CATEGORY_MACHINE + RND_SUBCATEGORY_MACHINE_TELECOMMS
)
departmental_flags = DEPARTMENT_BITFLAG_ENGINEERING | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/tcom/comm_monitor
SET_CIRCUIT_DESIGN_NAMEDESC("telecommunications monitoring console")
id = "comm_monitor"
build_path = /obj/item/circuitboard/comm_monitor
/datum/design_techweb/board/tcom/comm_server
SET_CIRCUIT_DESIGN_NAMEDESC("telecommunications server monitoring console")
id = "comm_server"
build_path = /obj/item/circuitboard/comm_server
/datum/design_techweb/board/tcom/message_monitor
SET_CIRCUIT_DESIGN_NAMEDESC("messaging monitor console")
id = "message_monitor"
build_path = /obj/item/circuitboard/message_monitor
/datum/design_techweb/board/tcom/server
name = "server mainframe circuit"
SET_CIRCUIT_DESIGN_NAMEDESC("server mainframe")
id = "tcom-server"
build_path = /obj/item/circuitboard/telecomms/server
/datum/design_techweb/board/tcom/processor
name = "processor unit circuit"
SET_CIRCUIT_DESIGN_NAMEDESC("processor unit")
id = "tcom-processor"
build_path = /obj/item/circuitboard/telecomms/processor
/datum/design_techweb/board/tcom/bus
name = "bus mainframe circuit"
SET_CIRCUIT_DESIGN_NAMEDESC("bus mainframe")
id = "tcom-bus"
build_path = /obj/item/circuitboard/telecomms/bus
/datum/design_techweb/board/tcom/hub
name = "hub mainframe circuit"
SET_CIRCUIT_DESIGN_NAMEDESC("hub mainframe")
id = "tcom-hub"
build_path = /obj/item/circuitboard/telecomms/hub
/datum/design_techweb/board/tcom/relay
name = "relay mainframe circuit"
SET_CIRCUIT_DESIGN_NAMEDESC("relay mainframe")
id = "tcom-relay"
// req_tech = list(TECH_DATA = 3, TECH_ENGINEERING = 4, TECH_BLUESPACE = 3)
build_path = /obj/item/circuitboard/telecomms/relay
/datum/design_techweb/board/tcom/broadcaster
name = "subspace broadcaster circuit"
SET_CIRCUIT_DESIGN_NAMEDESC("subspace broadcaster")
id = "tcom-broadcaster"
// req_tech = list(TECH_DATA = 4, TECH_ENGINEERING = 4, TECH_BLUESPACE = 2)
build_path = /obj/item/circuitboard/telecomms/broadcaster
/datum/design_techweb/board/tcom/receiver
name = "subspace receiver circuit"
SET_CIRCUIT_DESIGN_NAMEDESC("subspace receiver")
id = "tcom-receiver"
// req_tech = list(TECH_DATA = 4, TECH_ENGINEERING = 3, TECH_BLUESPACE = 2)
build_path = /obj/item/circuitboard/telecomms/receiver
/datum/design_techweb/board/tcom/exonet_node
name = "exonet node circuit"
SET_CIRCUIT_DESIGN_NAMEDESC("exonet node")
id = "tcom-exonet_node"
// req_tech = list(TECH_DATA = 5, TECH_ENGINEERING = 5, TECH_BLUESPACE = 4)
build_path = /obj/item/circuitboard/telecomms/exonet_node
/datum/design_techweb/board/ntnet_relay
name = "NTNet Quantum Relay circuit"
/datum/design_techweb/board/tcom/ntnet_relay
SET_CIRCUIT_DESIGN_NAMEDESC("NTNet Quantum Relay")
id = "ntnet_relay"
// req_tech = list(TECH_DATA = 4)
build_path = /obj/item/circuitboard/ntnet_relay
category = list(
RND_CATEGORY_MACHINE + RND_SUBCATEGORY_MACHINE_TELECOMMS
)
departmental_flags = DEPARTMENT_BITFLAG_ENGINEERING | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/tcom/pda_multicaster
SET_CIRCUIT_DESIGN_NAMEDESC("PDA multicaster")
id = "pda_multicaster"
build_path = /obj/item/circuitboard/telecomms/pda_multicaster
/datum/design_techweb/board/tcom/comm_traffic
SET_CIRCUIT_DESIGN_NAMEDESC("telecommunications traffic control console")
id = "comm_traffic"
build_path = /obj/item/circuitboard/comm_traffic
// Telecomm parts
/datum/design_techweb/subspace
desc = "Complex components used to construct and repair telecomms machinery."
build_type = PROTOLATHE
category = list(
RND_CATEGORY_MACHINE + RND_SUBCATEGORY_MACHINE_TELECOMMS
@@ -0,0 +1,125 @@
/datum/design_techweb/board/airlock_electronics
SET_CIRCUIT_DESIGN_NAMEDESC("airlock")
id = "airlock_board"
build_type = AUTOLATHE | IMPRINTER // Simple circuit
build_path = /obj/item/airlock_electronics
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_MACHINE + RND_SUBCATEGORY_MACHINE_ENGINEERING
)
departmental_flags = DEPARTMENT_BITFLAG_ENGINEERING | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/airalarm
SET_CIRCUIT_DESIGN_NAMEDESC("air alarm")
id = "airalarm_electronics"
build_type = AUTOLATHE | IMPRINTER // Simple circuit
build_path = /obj/item/circuitboard/airalarm
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_MACHINE + RND_SUBCATEGORY_MACHINE_ENGINEERING
)
departmental_flags = DEPARTMENT_BITFLAG_ENGINEERING | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/firealarm
SET_CIRCUIT_DESIGN_NAMEDESC("fire alarm")
id = "firealarm_electronics"
build_type = AUTOLATHE | IMPRINTER // Simple circuit
build_path = /obj/item/circuitboard/firealarm
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_MACHINE + RND_SUBCATEGORY_MACHINE_ENGINEERING
)
departmental_flags = DEPARTMENT_BITFLAG_ENGINEERING | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/power_control
name = "power control module"
desc = "The circuit board for an area power controller(APC)."
id = "power_control"
build_type = AUTOLATHE | IMPRINTER // Simple circuit
build_path = /obj/item/module/power_control
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_MACHINE + RND_SUBCATEGORY_MACHINE_ENGINEERING
)
departmental_flags = DEPARTMENT_BITFLAG_ENGINEERING | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/holopad
SET_CIRCUIT_DESIGN_NAMEDESC("AI holopad")
id = "holopad"
build_path = /obj/item/circuitboard/holopad
category = list(
RND_CATEGORY_MACHINE + RND_SUBCATEGORY_MACHINE_ENGINEERING
)
departmental_flags = DEPARTMENT_BITFLAG_ENGINEERING | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/board/intercom
SET_CIRCUIT_DESIGN_NAMEDESC("intercom")
id = "intercom"
build_type = AUTOLATHE | IMPRINTER // Simple circuit
build_path = /obj/item/circuitboard/intercom
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_MACHINE + RND_SUBCATEGORY_MACHINE_ENGINEERING
)
departmental_flags = DEPARTMENT_BITFLAG_ENGINEERING | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/light_bulb
name = "light bulb"
id = "light_bulb"
build_type = AUTOLATHE | PROTOLATHE
materials = list(MAT_GLASS = 125)
build_path = /obj/item/light/bulb
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_TOOLS + RND_SUBCATEGORY_MACHINE_ENGINEERING
)
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_ENGINEERING | DEPARTMENT_BITFLAG_SERVICE
/datum/design_techweb/large_light_bulb
name = "large light bulb"
id = "large_light_bulb"
build_type = AUTOLATHE | PROTOLATHE
materials = list(MAT_GLASS = 200)
build_path = /obj/item/light/bulb/large
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_TOOLS + RND_SUBCATEGORY_MACHINE_ENGINEERING
)
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_ENGINEERING | DEPARTMENT_BITFLAG_SERVICE
/datum/design_techweb/light_tube
name = "light tube"
id = "light_tube"
build_type = AUTOLATHE | PROTOLATHE
materials = list(MAT_GLASS = 125)
build_path = /obj/item/light/tube
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_TOOLS + RND_SUBCATEGORY_MACHINE_ENGINEERING
)
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_ENGINEERING | DEPARTMENT_BITFLAG_SERVICE
/datum/design_techweb/large_light_tube
name = "large light tube"
id = "large_light_tube"
build_type = AUTOLATHE | PROTOLATHE
materials = list(MAT_GLASS = 200)
build_path = /obj/item/light/tube/large
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_TOOLS + RND_SUBCATEGORY_MACHINE_ENGINEERING
)
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_ENGINEERING | DEPARTMENT_BITFLAG_SERVICE
/datum/design_techweb/floor_light
name = "floor light kit"
desc = "A backlit floor panel, ready for installation!"
id = "floor_light"
build_type = AUTOLATHE | PROTOLATHE
materials = list(MAT_STEEL = 3000, MAT_GLASS = 3000)
build_path = /obj/item/floor_light
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_TOOLS + RND_SUBCATEGORY_MACHINE_ENGINEERING
)
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_ENGINEERING
@@ -241,6 +241,7 @@
// GPS
/datum/design_techweb/gps
desc = "A global positioning system reciever, used to safely navigate when far away from the station."
// req_tech = list(TECH_MATERIAL = 2, TECH_DATA = 2, TECH_BLUESPACE = 2)
build_type = PROTOLATHE
materials = list(MAT_STEEL = 500)
@@ -388,3 +389,79 @@
RND_CATEGORY_EQUIPMENT + RND_SUBCATEGORY_EQUIPMENT_MISC
)
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/radio_headset
name = "radio headset"
desc = "An updated, modular intercom that fits over the head. Takes encryption keys"
id = "radio_headset"
build_type = AUTOLATHE | PROTOLATHE
materials = list(MAT_STEEL = 120)
build_path = /obj/item/radio/headset
category = list(
RND_CATEGORY_EQUIPMENT + RND_SUBCATEGORY_EQUIPMENT_MISC
)
departmental_flags = ALL
/datum/design_techweb/welding_helmet
name = "welding helmet"
desc = "A head-mounted face cover designed to protect the wearer completely from space-arc eye."
id = "welding_helmet"
build_type = AUTOLATHE | PROTOLATHE
materials = list(MAT_STEEL = 3750, MAT_GLASS = 1250)
build_path = /obj/item/clothing/head/welding
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_EQUIPMENT + RND_SUBCATEGORY_EQUIPMENT_ENGINEERING
)
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_ENGINEERING
/datum/design_techweb/welding_goggles
name = "welding goggles"
desc = "Protects the eyes from welders, approved by the mad scientist association."
id = "welding_goggles"
build_type = PROTOLATHE
materials = list(MAT_STEEL = 2000, MAT_GLASS = 1500)
build_path = /obj/item/clothing/glasses/welding
category = list(
RND_CATEGORY_EQUIPMENT + RND_SUBCATEGORY_EQUIPMENT_ENGINEERING
)
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_ENGINEERING
/datum/design_techweb/suit_cooling_unit
name = "portable suit cooling unit"
desc = "A portable heat sink and liquid cooled radiator that can be hooked up to a space suit's existing temperature controls to provide industrial levels of cooling."
id = "suit_cooling_unit"
build_type = PROTOLATHE
materials = list(MAT_STEEL = 18000, MAT_GLASS = 4400)
build_path = /obj/item/suit_cooling_unit
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_EQUIPMENT + RND_SUBCATEGORY_EQUIPMENT_MISC
)
departmental_flags = ALL
/datum/design_techweb/holocollar
name = "Holo-collar"
desc = "An expensive holo-collar for the modern day pet."
id = "holocollar"
build_type = AUTOLATHE | PROTOLATHE
materials = list(MAT_STEEL = 60)
build_path = /obj/item/clothing/accessory/collar/holo
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_EQUIPMENT + RND_SUBCATEGORY_EQUIPMENT_MISC
)
departmental_flags = ALL
/datum/design_techweb/leash
name = "leash"
desc = "A simple tether that can easily be hooked onto a collar. Usually used to keep pets nearby."
id = "leash"
build_type = AUTOLATHE | PROTOLATHE
materials = list(MAT_STEEL = 50)
build_path = /obj/item/leash
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_EQUIPMENT + RND_SUBCATEGORY_EQUIPMENT_MISC
)
departmental_flags = ALL
@@ -10,7 +10,7 @@
name = "Firework Star ([name])"
/datum/design_techweb/board/firework_launcher
name = "firework launcher circuit"
SET_CIRCUIT_DESIGN_NAMEDESC("firework launcher")
id = "fireworklauncher"
// req_tech = list(TECH_DATA = 2, TECH_ENGINEERING = 2)
build_path = /obj/item/circuitboard/firework_launcher
@@ -7,6 +7,7 @@
materials = list(MAT_STEEL = 300, MAT_GLASS = 300)
build_path = /obj/item/encryptionkey/binary
category = list(
RND_CATEGORY_HACKED,
RND_CATEGORY_EQUIPMENT + RND_SUBCATEGORY_EQUIPMENT_MISC
)
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE
@@ -20,6 +21,7 @@
materials = list(MAT_STEEL = 500)
build_path = /obj/item/storage/box/syndie_kit/chameleon
category = list(
RND_CATEGORY_HACKED,
RND_CATEGORY_EQUIPMENT + RND_SUBCATEGORY_EQUIPMENT_MISC
)
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE
@@ -32,6 +34,20 @@
materials = list(MAT_STEEL = 4000, MAT_GLASS = 4000, MAT_URANIUM = 2000)
build_path = /obj/item/bodysnatcher
category = list(
RND_CATEGORY_HACKED,
RND_CATEGORY_EQUIPMENT + RND_SUBCATEGORY_EQUIPMENT_MISC
)
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/electropack
name = "electropack"
desc = "Dance my monkeys! DANCE!!!"
id = "electropack"
build_type = AUTOLATHE | PROTOLATHE
materials = list(MAT_STEEL = 12500, MAT_GLASS = 3125)
build_path = /obj/item/radio/electropack
category = list(
RND_CATEGORY_HACKED,
RND_CATEGORY_EQUIPMENT + RND_SUBCATEGORY_EQUIPMENT_MISC
)
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE
@@ -0,0 +1,726 @@
// Mining mats
/datum/design_techweb/iron
SET_MATERIAL_DESIGN_NAMEDESC(MAT_IRON)
id = MAT_IRON
build_type = AUTOLATHE
materials = list(MAT_IRON = SHEET_MATERIAL_AMOUNT)
build_path = /obj/item/stack/material/iron
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_CONSTRUCTION + RND_SUBCATEGORY_CONSTRUCTION_MATERIALS,
)
/datum/design_techweb/steel
SET_MATERIAL_DESIGN_NAMEDESC(MAT_STEEL)
id = MAT_STEEL
build_type = AUTOLATHE
materials = list(MAT_STEEL = SHEET_MATERIAL_AMOUNT)
build_path = /obj/item/stack/material/steel
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_CONSTRUCTION + RND_SUBCATEGORY_CONSTRUCTION_MATERIALS,
)
/datum/design_techweb/rods
SET_MATERIAL_DESIGN_NAMEDESC("metal rods")
id = "rods"
build_type = AUTOLATHE
materials = list(MAT_STEEL = REAGENTS_PER_ROD)
build_path = /obj/item/stack/rods
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_CONSTRUCTION + RND_SUBCATEGORY_CONSTRUCTION_MATERIALS,
)
/datum/design_techweb/silver
SET_MATERIAL_DESIGN_NAMEDESC(MAT_SILVER)
id = MAT_SILVER
build_type = AUTOLATHE
materials = list(MAT_SILVER = SHEET_MATERIAL_AMOUNT)
build_path = /obj/item/stack/material/silver
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_CONSTRUCTION + RND_SUBCATEGORY_CONSTRUCTION_MATERIALS,
)
/datum/design_techweb/gold
SET_MATERIAL_DESIGN_NAMEDESC(MAT_GOLD)
id = MAT_GOLD
build_type = AUTOLATHE
materials = list(MAT_GOLD = SHEET_MATERIAL_AMOUNT)
build_path = /obj/item/stack/material/gold
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_CONSTRUCTION + RND_SUBCATEGORY_CONSTRUCTION_MATERIALS,
)
/datum/design_techweb/tin
SET_MATERIAL_DESIGN_NAMEDESC(MAT_TIN)
id = MAT_TIN
build_type = AUTOLATHE
materials = list(MAT_TIN = SHEET_MATERIAL_AMOUNT)
build_path = /obj/item/stack/material/tin
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_CONSTRUCTION + RND_SUBCATEGORY_CONSTRUCTION_MATERIALS,
)
/datum/design_techweb/copper
SET_MATERIAL_DESIGN_NAMEDESC(MAT_COPPER)
id = MAT_COPPER
build_type = AUTOLATHE
materials = list(MAT_COPPER = SHEET_MATERIAL_AMOUNT)
build_path = /obj/item/stack/material/copper
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_CONSTRUCTION + RND_SUBCATEGORY_CONSTRUCTION_MATERIALS,
)
/datum/design_techweb/diamond
SET_MATERIAL_DESIGN_NAMEDESC(MAT_DIAMOND)
id = MAT_DIAMOND
build_type = AUTOLATHE
materials = list(MAT_DIAMOND = SHEET_MATERIAL_AMOUNT)
build_path = /obj/item/stack/material/diamond
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_CONSTRUCTION + RND_SUBCATEGORY_CONSTRUCTION_MATERIALS,
)
/datum/design_techweb/phoron
SET_MATERIAL_DESIGN_NAMEDESC(MAT_PHORON)
id = MAT_PHORON
build_type = AUTOLATHE
materials = list(MAT_PHORON = SHEET_MATERIAL_AMOUNT)
build_path = /obj/item/stack/material/phoron
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_CONSTRUCTION + RND_SUBCATEGORY_CONSTRUCTION_MATERIALS,
)
/datum/design_techweb/uranium
SET_MATERIAL_DESIGN_NAMEDESC(MAT_URANIUM)
id = MAT_URANIUM
build_type = AUTOLATHE
materials = list(MAT_URANIUM = SHEET_MATERIAL_AMOUNT)
build_path = /obj/item/stack/material/uranium
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_CONSTRUCTION + RND_SUBCATEGORY_CONSTRUCTION_MATERIALS,
)
/datum/design_techweb/titanium
SET_MATERIAL_DESIGN_NAMEDESC(MAT_TITANIUM)
id = MAT_TITANIUM
build_type = AUTOLATHE
materials = list(MAT_TITANIUM = SHEET_MATERIAL_AMOUNT)
build_path = /obj/item/stack/material/titanium
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_CONSTRUCTION + RND_SUBCATEGORY_CONSTRUCTION_MATERIALS,
)
/datum/design_techweb/plastic
SET_MATERIAL_DESIGN_NAMEDESC(MAT_PLASTIC)
id = MAT_PLASTIC
build_type = AUTOLATHE
materials = list(MAT_PLASTIC = SHEET_MATERIAL_AMOUNT)
build_path = /obj/item/stack/material/plastic
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_CONSTRUCTION + RND_SUBCATEGORY_CONSTRUCTION_MATERIALS,
)
/datum/design_techweb/painite
SET_MATERIAL_DESIGN_NAMEDESC(MAT_PAINITE)
id = MAT_PAINITE
build_type = AUTOLATHE
materials = list(MAT_PAINITE = SHEET_MATERIAL_AMOUNT)
build_path = /obj/item/stack/material/painite
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_CONSTRUCTION + RND_SUBCATEGORY_CONSTRUCTION_MATERIALS,
)
/datum/design_techweb/void_opal
SET_MATERIAL_DESIGN_NAMEDESC(MAT_VOPAL)
id = MAT_VOPAL
build_type = AUTOLATHE
materials = list(MAT_VOPAL = SHEET_MATERIAL_AMOUNT)
build_path = /obj/item/stack/material/void_opal
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_CONSTRUCTION + RND_SUBCATEGORY_CONSTRUCTION_MATERIALS,
)
/datum/design_techweb/quartz
SET_MATERIAL_DESIGN_NAMEDESC(MAT_QUARTZ)
id = MAT_QUARTZ
build_type = AUTOLATHE
materials = list(MAT_QUARTZ = SHEET_MATERIAL_AMOUNT)
build_path = /obj/item/stack/material/quartz
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_CONSTRUCTION + RND_SUBCATEGORY_CONSTRUCTION_MATERIALS,
)
/datum/design_techweb/valhollide
SET_MATERIAL_DESIGN_NAMEDESC(MAT_VALHOLLIDE)
id = MAT_VALHOLLIDE
build_type = AUTOLATHE
materials = list(MAT_VALHOLLIDE = SHEET_MATERIAL_AMOUNT)
build_path = /obj/item/stack/material/valhollide
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_CONSTRUCTION + RND_SUBCATEGORY_CONSTRUCTION_MATERIALS,
)
/datum/design_techweb/verdantium
SET_MATERIAL_DESIGN_NAMEDESC(MAT_VERDANTIUM)
id = MAT_VERDANTIUM
build_type = AUTOLATHE
materials = list(MAT_VERDANTIUM = SHEET_MATERIAL_AMOUNT)
build_path = /obj/item/stack/material/verdantium
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_CONSTRUCTION + RND_SUBCATEGORY_CONSTRUCTION_MATERIALS,
)
/datum/design_techweb/morphium
SET_MATERIAL_DESIGN_NAMEDESC(MAT_MORPHIUM)
id = MAT_MORPHIUM
build_type = AUTOLATHE
materials = list(MAT_MORPHIUM = SHEET_MATERIAL_AMOUNT)
build_path = /obj/item/stack/material/morphium
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_CONSTRUCTION + RND_SUBCATEGORY_CONSTRUCTION_MATERIALS,
)
/datum/design_techweb/glamour
SET_MATERIAL_DESIGN_NAMEDESC(MAT_GLAMOUR)
id = MAT_GLAMOUR
build_type = AUTOLATHE
materials = list(MAT_GLAMOUR = SHEET_MATERIAL_AMOUNT)
build_path = /obj/item/stack/material/glamour
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_CONSTRUCTION + RND_SUBCATEGORY_CONSTRUCTION_MATERIALS,
)
/datum/design_techweb/weathered_agate
SET_MATERIAL_DESIGN_NAMEDESC(MAT_EAGATE)
id = MAT_EAGATE
build_type = AUTOLATHE
materials = list(MAT_EAGATE = SHEET_MATERIAL_AMOUNT)
build_path = /obj/item/stack/material/weathered_agate
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_CONSTRUCTION + RND_SUBCATEGORY_CONSTRUCTION_MATERIALS,
)
/datum/design_techweb/sandstone
SET_MATERIAL_DESIGN_NAMEDESC(MAT_SANDSTONE)
id = MAT_SANDSTONE
build_type = AUTOLATHE
materials = list(MAT_SANDSTONE = SHEET_MATERIAL_AMOUNT)
build_path = /obj/item/stack/material/sandstone
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_CONSTRUCTION + RND_SUBCATEGORY_CONSTRUCTION_MATERIALS,
)
/datum/design_techweb/marble
SET_MATERIAL_DESIGN_NAMEDESC(MAT_MARBLE)
id = MAT_MARBLE
build_type = AUTOLATHE
materials = list(MAT_MARBLE = SHEET_MATERIAL_AMOUNT)
build_path = /obj/item/stack/material/marble
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_CONSTRUCTION + RND_SUBCATEGORY_CONSTRUCTION_MATERIALS,
)
/datum/design_techweb/supermatter
SET_MATERIAL_DESIGN_NAMEDESC(MAT_SUPERMATTER)
id = MAT_SUPERMATTER
build_type = AUTOLATHE
materials = list(MAT_SUPERMATTER = SHEET_MATERIAL_AMOUNT)
build_path = /obj/item/stack/material/supermatter
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_CONSTRUCTION + RND_SUBCATEGORY_CONSTRUCTION_MATERIALS,
)
/datum/design_techweb/plasteel
SET_MATERIAL_DESIGN_NAMEDESC(MAT_PLASTEEL)
id = MAT_PLASTEEL
build_type = AUTOLATHE
materials = list(MAT_PLASTEEL = SHEET_MATERIAL_AMOUNT)
build_path = /obj/item/stack/material/plasteel
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_CONSTRUCTION + RND_SUBCATEGORY_CONSTRUCTION_MATERIALS,
)
/datum/design_techweb/durasteel
SET_MATERIAL_DESIGN_NAMEDESC(MAT_DURASTEEL)
id = MAT_DURASTEEL
build_type = AUTOLATHE
materials = list(MAT_DURASTEEL = SHEET_MATERIAL_AMOUNT)
build_path = /obj/item/stack/material/durasteel
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_CONSTRUCTION + RND_SUBCATEGORY_CONSTRUCTION_MATERIALS,
)
/datum/design_techweb/plastitanium
SET_MATERIAL_DESIGN_NAMEDESC(MAT_PLASTITANIUM)
id = MAT_PLASTITANIUM
build_type = AUTOLATHE
materials = list(MAT_PLASTITANIUM = SHEET_MATERIAL_AMOUNT)
build_path = /obj/item/stack/material/plastitanium
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_CONSTRUCTION + RND_SUBCATEGORY_CONSTRUCTION_MATERIALS,
)
/datum/design_techweb/lead
SET_MATERIAL_DESIGN_NAMEDESC(MAT_LEAD)
id = MAT_LEAD
build_type = AUTOLATHE
materials = list(MAT_LEAD = SHEET_MATERIAL_AMOUNT)
build_path = /obj/item/stack/material/lead
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_CONSTRUCTION + RND_SUBCATEGORY_CONSTRUCTION_MATERIALS,
)
/datum/design_techweb/platinum
SET_MATERIAL_DESIGN_NAMEDESC(MAT_PLATINUM)
id = MAT_PLATINUM
build_type = AUTOLATHE
materials = list(MAT_PLATINUM = SHEET_MATERIAL_AMOUNT)
build_path = /obj/item/stack/material/platinum
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_CONSTRUCTION + RND_SUBCATEGORY_CONSTRUCTION_MATERIALS,
)
/datum/design_techweb/mhydrogen
SET_MATERIAL_DESIGN_NAMEDESC(MAT_METALHYDROGEN)
id = MAT_METALHYDROGEN
build_type = AUTOLATHE
materials = list(MAT_METALHYDROGEN = SHEET_MATERIAL_AMOUNT)
build_path = /obj/item/stack/material/mhydrogen
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_CONSTRUCTION + RND_SUBCATEGORY_CONSTRUCTION_MATERIALS,
)
/datum/design_techweb/deuterium
SET_MATERIAL_DESIGN_NAMEDESC(MAT_DEUTERIUM)
id = MAT_DEUTERIUM
build_type = AUTOLATHE
materials = list(MAT_DEUTERIUM = SHEET_MATERIAL_AMOUNT)
build_path = /obj/item/stack/material/deuterium
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_CONSTRUCTION + RND_SUBCATEGORY_CONSTRUCTION_MATERIALS,
)
/datum/design_techweb/tritium
SET_MATERIAL_DESIGN_NAMEDESC(MAT_TRITIUM)
id = MAT_TRITIUM
build_type = AUTOLATHE
materials = list(MAT_TRITIUM = SHEET_MATERIAL_AMOUNT)
build_path = /obj/item/stack/material/tritium
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_CONSTRUCTION + RND_SUBCATEGORY_CONSTRUCTION_MATERIALS,
)
/datum/design_techweb/osmium
SET_MATERIAL_DESIGN_NAMEDESC(MAT_OSMIUM)
id = MAT_OSMIUM
build_type = AUTOLATHE
materials = list(MAT_OSMIUM = SHEET_MATERIAL_AMOUNT)
build_path = /obj/item/stack/material/osmium
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_CONSTRUCTION + RND_SUBCATEGORY_CONSTRUCTION_MATERIALS,
)
/datum/design_techweb/graphite
SET_MATERIAL_DESIGN_NAMEDESC(MAT_GRAPHITE)
id = MAT_GRAPHITE
build_type = AUTOLATHE
materials = list(MAT_GRAPHITE = SHEET_MATERIAL_AMOUNT)
build_path = /obj/item/stack/material/graphite
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_CONSTRUCTION + RND_SUBCATEGORY_CONSTRUCTION_MATERIALS,
)
/datum/design_techweb/bronze
SET_MATERIAL_DESIGN_NAMEDESC(MAT_BRONZE)
id = MAT_BRONZE
build_type = AUTOLATHE
materials = list(MAT_BRONZE = SHEET_MATERIAL_AMOUNT)
build_path = /obj/item/stack/material/bronze
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_CONSTRUCTION + RND_SUBCATEGORY_CONSTRUCTION_MATERIALS,
)
/datum/design_techweb/aluminium
SET_MATERIAL_DESIGN_NAMEDESC(MAT_ALUMINIUM)
id = MAT_ALUMINIUM
build_type = AUTOLATHE
materials = list(MAT_ALUMINIUM = SHEET_MATERIAL_AMOUNT)
build_path = /obj/item/stack/material/aluminium
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_CONSTRUCTION + RND_SUBCATEGORY_CONSTRUCTION_MATERIALS,
)
// Glass
/datum/design_techweb/glass
SET_MATERIAL_DESIGN_NAMEDESC(MAT_GLASS)
id = MAT_GLASS
build_type = AUTOLATHE
materials = list(MAT_GLASS = SHEET_MATERIAL_AMOUNT)
build_path = /obj/item/stack/material/glass
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_CONSTRUCTION + RND_SUBCATEGORY_CONSTRUCTION_MATERIALS,
)
/datum/design_techweb/phoronglass
SET_MATERIAL_DESIGN_NAMEDESC(MAT_PGLASS)
id = MAT_PGLASS
build_type = AUTOLATHE
materials = list(MAT_PGLASS = SHEET_MATERIAL_AMOUNT)
build_path = /obj/item/stack/material/glass/phoronglass
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_CONSTRUCTION + RND_SUBCATEGORY_CONSTRUCTION_MATERIALS,
)
/datum/design_techweb/glass_titanium
SET_MATERIAL_DESIGN_NAMEDESC(MAT_TITANIUMGLASS)
id = MAT_TITANIUMGLASS
build_type = AUTOLATHE
materials = list(MAT_TITANIUMGLASS = SHEET_MATERIAL_AMOUNT)
build_path = /obj/item/stack/material/glass/titanium
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_CONSTRUCTION + RND_SUBCATEGORY_CONSTRUCTION_MATERIALS,
)
/datum/design_techweb/glass_plastitanium
SET_MATERIAL_DESIGN_NAMEDESC(MAT_PLASTITANIUMGLASS)
id = MAT_PLASTITANIUMGLASS
build_type = AUTOLATHE
materials = list(MAT_PLASTITANIUMGLASS = SHEET_MATERIAL_AMOUNT)
build_path = /obj/item/stack/material/glass/plastitanium
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_CONSTRUCTION + RND_SUBCATEGORY_CONSTRUCTION_MATERIALS,
)
// Wood
/datum/design_techweb/wood
SET_MATERIAL_DESIGN_NAMEDESC(MAT_WOOD)
id = MAT_WOOD
build_type = AUTOLATHE
materials = list(MAT_WOOD = SHEET_MATERIAL_AMOUNT)
build_path = /obj/item/stack/material/wood
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_CONSTRUCTION + RND_SUBCATEGORY_CONSTRUCTION_MATERIALS,
)
/datum/design_techweb/sif_wood
SET_MATERIAL_DESIGN_NAMEDESC(MAT_SIFWOOD)
id = MAT_SIFWOOD
build_type = AUTOLATHE
materials = list(MAT_SIFWOOD = SHEET_MATERIAL_AMOUNT)
build_path = /obj/item/stack/material/wood/sif
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_CONSTRUCTION + RND_SUBCATEGORY_CONSTRUCTION_MATERIALS,
)
/datum/design_techweb/hard_wood
SET_MATERIAL_DESIGN_NAMEDESC(MAT_HARDWOOD)
id = MAT_HARDWOOD
build_type = AUTOLATHE
materials = list(MAT_HARDWOOD = SHEET_MATERIAL_AMOUNT)
build_path = /obj/item/stack/material/wood/hard
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_CONSTRUCTION + RND_SUBCATEGORY_CONSTRUCTION_MATERIALS,
)
/datum/design_techweb/birch_wood
SET_MATERIAL_DESIGN_NAMEDESC(MAT_BIRCHWOOD)
id = MAT_BIRCHWOOD
build_type = AUTOLATHE
materials = list(MAT_BIRCHWOOD = SHEET_MATERIAL_AMOUNT)
build_path = /obj/item/stack/material/wood/birch
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_CONSTRUCTION + RND_SUBCATEGORY_CONSTRUCTION_MATERIALS,
)
/datum/design_techweb/pine_wood
SET_MATERIAL_DESIGN_NAMEDESC(MAT_PINEWOOD)
id = MAT_PINEWOOD
build_type = AUTOLATHE
materials = list(MAT_PINEWOOD = SHEET_MATERIAL_AMOUNT)
build_path = /obj/item/stack/material/wood/pine
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_CONSTRUCTION + RND_SUBCATEGORY_CONSTRUCTION_MATERIALS,
)
/datum/design_techweb/oak_wood
SET_MATERIAL_DESIGN_NAMEDESC(MAT_OAKWOOD)
id = MAT_OAKWOOD
build_type = AUTOLATHE
materials = list(MAT_OAKWOOD = SHEET_MATERIAL_AMOUNT)
build_path = /obj/item/stack/material/wood/oak
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_CONSTRUCTION + RND_SUBCATEGORY_CONSTRUCTION_MATERIALS,
)
/datum/design_techweb/acacia_wood
SET_MATERIAL_DESIGN_NAMEDESC(MAT_ACACIAWOOD)
id = MAT_ACACIAWOOD
build_type = AUTOLATHE
materials = list(MAT_ACACIAWOOD = SHEET_MATERIAL_AMOUNT)
build_path = /obj/item/stack/material/wood/acacia
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_CONSTRUCTION + RND_SUBCATEGORY_CONSTRUCTION_MATERIALS,
)
/datum/design_techweb/redwood_wood
SET_MATERIAL_DESIGN_NAMEDESC(MAT_REDWOOD)
id = MAT_REDWOOD
build_type = AUTOLATHE
materials = list(MAT_REDWOOD = SHEET_MATERIAL_AMOUNT)
build_path = /obj/item/stack/material/wood/redwood
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_CONSTRUCTION + RND_SUBCATEGORY_CONSTRUCTION_MATERIALS,
)
// Misc mats
/datum/design_techweb/algae
SET_MATERIAL_DESIGN_NAMEDESC(MAT_ALGAE)
id = MAT_ALGAE
build_type = AUTOLATHE
materials = list(MAT_ALGAE = SHEET_MATERIAL_AMOUNT)
build_path = /obj/item/stack/material/algae
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_CONSTRUCTION + RND_SUBCATEGORY_CONSTRUCTION_MATERIALS,
)
/datum/design_techweb/wax
SET_MATERIAL_DESIGN_NAMEDESC(MAT_WAX)
id = MAT_WAX
build_type = AUTOLATHE
materials = list(MAT_WAX = SHEET_MATERIAL_AMOUNT)
build_path = /obj/item/stack/material/wax
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_CONSTRUCTION + RND_SUBCATEGORY_CONSTRUCTION_MATERIALS,
)
/datum/design_techweb/cardboard
SET_MATERIAL_DESIGN_NAMEDESC(MAT_CARDBOARD)
id = MAT_CARDBOARD
build_type = AUTOLATHE
materials = list(MAT_CARDBOARD = SHEET_MATERIAL_AMOUNT)
build_path = /obj/item/stack/material/cardboard
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_CONSTRUCTION + RND_SUBCATEGORY_CONSTRUCTION_MATERIALS,
)
/datum/design_techweb/snow
SET_MATERIAL_DESIGN_NAMEDESC(MAT_SNOW)
id = MAT_SNOW
build_type = AUTOLATHE
materials = list(MAT_SNOW = SHEET_MATERIAL_AMOUNT)
build_path = /obj/item/stack/material/snow
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_CONSTRUCTION + RND_SUBCATEGORY_CONSTRUCTION_MATERIALS,
)
/datum/design_techweb/snowbrick
SET_MATERIAL_DESIGN_NAMEDESC(MAT_SNOWBRICK)
id = MAT_SNOWBRICK
build_type = AUTOLATHE
materials = list(MAT_SNOWBRICK = SHEET_MATERIAL_AMOUNT)
build_path = /obj/item/stack/material/snowbrick
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_CONSTRUCTION + RND_SUBCATEGORY_CONSTRUCTION_MATERIALS,
)
/datum/design_techweb/flint
SET_MATERIAL_DESIGN_NAMEDESC(MAT_FLINT)
id = MAT_FLINT
build_type = AUTOLATHE
materials = list(MAT_FLINT = SHEET_MATERIAL_AMOUNT)
build_path = /obj/item/stack/material/flint
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_CONSTRUCTION + RND_SUBCATEGORY_CONSTRUCTION_MATERIALS,
)
/datum/design_techweb/concrete
SET_MATERIAL_DESIGN_NAMEDESC(MAT_CONCRETE)
id = MAT_CONCRETE
build_type = AUTOLATHE
materials = list(MAT_CONCRETE = SHEET_MATERIAL_AMOUNT)
build_path = /obj/item/stack/material/concrete
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_CONSTRUCTION + RND_SUBCATEGORY_CONSTRUCTION_MATERIALS,
)
/datum/design_techweb/chitin
SET_MATERIAL_DESIGN_NAMEDESC(MAT_CHITIN)
id = MAT_CHITIN
build_type = AUTOLATHE
materials = list(MAT_CHITIN = SHEET_MATERIAL_AMOUNT)
build_path = /obj/item/stack/material/chitin
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_CONSTRUCTION + RND_SUBCATEGORY_CONSTRUCTION_MATERIALS,
)
/datum/design_techweb/fur
SET_MATERIAL_DESIGN_NAMEDESC(MAT_FUR)
id = MAT_FUR
build_type = AUTOLATHE
materials = list(MAT_FUR = SHEET_MATERIAL_AMOUNT)
build_path = /obj/item/stack/material/fur
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_CONSTRUCTION + RND_SUBCATEGORY_CONSTRUCTION_MATERIALS,
)
/datum/design_techweb/wool
SET_MATERIAL_DESIGN_NAMEDESC(MAT_WOOL)
id = MAT_WOOL
build_type = AUTOLATHE
materials = list(MAT_WOOL = SHEET_MATERIAL_AMOUNT)
build_path = /obj/item/stack/material/fur/wool
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_CONSTRUCTION + RND_SUBCATEGORY_CONSTRUCTION_MATERIALS,
)
/datum/design_techweb/resin
SET_MATERIAL_DESIGN_NAMEDESC(MAT_RESIN)
id = MAT_RESIN
build_type = AUTOLATHE
materials = list(MAT_RESIN = SHEET_MATERIAL_AMOUNT)
build_path = /obj/item/stack/material/resin
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_CONSTRUCTION + RND_SUBCATEGORY_CONSTRUCTION_MATERIALS,
)
/datum/design_techweb/leather
SET_MATERIAL_DESIGN_NAMEDESC(MAT_LEATHER)
id = MAT_LEATHER
build_type = AUTOLATHE
materials = list(MAT_LEATHER = SHEET_MATERIAL_AMOUNT)
build_path = /obj/item/stack/material/leather
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_CONSTRUCTION + RND_SUBCATEGORY_CONSTRUCTION_MATERIALS,
)
/datum/design_techweb/cotton
SET_MATERIAL_DESIGN_NAMEDESC(MAT_COTTON)
id = MAT_COTTON
build_type = AUTOLATHE
materials = list(MAT_COTTON = SHEET_MATERIAL_AMOUNT)
build_path = /obj/item/stack/material/cotton
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_CONSTRUCTION + RND_SUBCATEGORY_CONSTRUCTION_MATERIALS,
)
/datum/design_techweb/smolebricks
SET_MATERIAL_DESIGN_NAMEDESC(MAT_SMOLEBRICKS)
id = MAT_SMOLEBRICKS
build_type = AUTOLATHE
materials = list(MAT_SMOLEBRICKS = SHEET_MATERIAL_AMOUNT)
build_path = /obj/item/stack/material/smolebricks
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_CONSTRUCTION + RND_SUBCATEGORY_CONSTRUCTION_MATERIALS,
)
// TODO - Remove a lot of these by giving sheets a flag or something to prevent the autolathe/silo from using them for mats
/datum/design_techweb/log
SET_MATERIAL_DESIGN_NAMEDESC(MAT_LOG)
id = MAT_LOG
build_type = AUTOLATHE
materials = list(MAT_LOG = REAGENTS_PER_LOG)
build_path = /obj/item/stack/material/log
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_CONSTRUCTION + RND_SUBCATEGORY_CONSTRUCTION_MATERIALS,
)
/datum/design_techweb/siflog
SET_MATERIAL_DESIGN_NAMEDESC(MAT_SIFLOG)
id = MAT_SIFLOG
build_type = AUTOLATHE
materials = list(MAT_SIFLOG = REAGENTS_PER_LOG)
build_path = /obj/item/stack/material/log/sif
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_CONSTRUCTION + RND_SUBCATEGORY_CONSTRUCTION_MATERIALS,
)
/datum/design_techweb/hardlog
SET_MATERIAL_DESIGN_NAMEDESC(MAT_HARDLOG)
id = MAT_HARDLOG
build_type = AUTOLATHE
materials = list(MAT_HARDLOG = REAGENTS_PER_LOG)
build_path = /obj/item/stack/material/log/hard
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_CONSTRUCTION + RND_SUBCATEGORY_CONSTRUCTION_MATERIALS,
)
/datum/design_techweb/stick
SET_MATERIAL_DESIGN_NAMEDESC(MAT_WOODEN_STICK)
id = MAT_WOODEN_STICK
build_type = AUTOLATHE
materials = list(MAT_WOODEN_STICK = REAGENTS_PER_ROD)
build_path = /obj/item/stack/material/stick
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_CONSTRUCTION + RND_SUBCATEGORY_CONSTRUCTION_MATERIALS,
)
@@ -382,21 +382,21 @@
)
/datum/design_techweb/mechfab/pinnace/pinnace_main
name = "Pinnace central control board circuit"
name = "Pinnace central control circuit"
id = "pinnace_main"
// req_tech = list(TECH_DATA = 3, TECH_POWER = 4)
build_path = /obj/item/circuitboard/mecha/fighter/pinnace/main
materials = DEFAULT_CIRCUIT_MATERIALS
/datum/design_techweb/mechfab/pinnace/pinnace_flight
name = "Pinnace flight control board circuit"
name = "Pinnace flight control circuit"
id = "pinnace_flight"
// req_tech = list(TECH_DATA = 3, TECH_POWER = 4)
build_path = /obj/item/circuitboard/mecha/fighter/pinnace/flight
materials = DEFAULT_CIRCUIT_MATERIALS
/datum/design_techweb/mechfab/pinnace/pinnace_targeting
name = "Pinnace weapon control and targeting board circuit"
name = "Pinnace weapon control and targeting circuit"
id = "pinnace_targeting"
// req_tech = list(TECH_DATA = 3, TECH_POWER = 4)
build_path = /obj/item/circuitboard/mecha/fighter/pinnace/targeting
@@ -466,21 +466,21 @@
)
/datum/design_techweb/mechfab/baron/baron_main
name = "Baron central control board circuit"
name = "Baron central control circuit"
id = "baron_main"
// req_tech = list(TECH_DATA = 5, TECH_POWER = 4)
build_path = /obj/item/circuitboard/mecha/fighter/baron/main
materials = DEFAULT_CIRCUIT_MATERIALS
/datum/design_techweb/mechfab/baron/baron_flight
name = "Baron flight control board circuit"
name = "Baron flight control circuit"
id = "baron_flight"
// req_tech = list(TECH_DATA = 5, TECH_POWER = 4)
build_path = /obj/item/circuitboard/mecha/fighter/baron/flight
materials = DEFAULT_CIRCUIT_MATERIALS
/datum/design_techweb/mechfab/baron/baron_targeting
name = "Baron weapon control and targeting board circuit"
name = "Baron weapon control and targeting circuit"
id = "baron_targeting"
// req_tech = list(TECH_DATA = 5, TECH_POWER = 4, TECH_COMBAT = 3)
build_path = /obj/item/circuitboard/mecha/fighter/baron/targeting
@@ -1,4 +1,5 @@
/datum/design_techweb/mechfab/equipment
desc = "Heavy-duty equipment installed on an exosuit or fighter craft. The vehicle must have the correct hardpoints to mount this equipment."
category = list(
RND_CATEGORY_MECHFAB_EQUIPMENT
)
@@ -6,6 +6,7 @@
materials = list(MAT_PLASTIC = 100, MAT_GLASS = 100)
build_path = /obj/item/storage/pill_bottle
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_EQUIPMENT + RND_SUBCATEGORY_EQUIPMENT_CHEMISTRY,
)
departmental_flags = DEPARTMENT_BITFLAG_MEDICAL | DEPARTMENT_BITFLAG_SCIENCE
@@ -14,9 +15,10 @@
name = "Syringe"
id = "syringe"
build_type = AUTOLATHE | PROTOLATHE
materials = list(MAT_STEEL = 100, MAT_GLASS = 500)
materials = list(MAT_GLASS = 190)
build_path = /obj/item/reagent_containers/syringe
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_EQUIPMENT + RND_SUBCATEGORY_EQUIPMENT_CHEMISTRY,
)
departmental_flags = DEPARTMENT_BITFLAG_MEDICAL | DEPARTMENT_BITFLAG_SCIENCE
@@ -28,6 +30,7 @@
materials = list(MAT_GLASS = 100, MAT_PLASTIC = 500)
build_path = /obj/item/reagent_containers/dropper
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_EQUIPMENT + RND_SUBCATEGORY_EQUIPMENT_CHEMISTRY,
)
departmental_flags = DEPARTMENT_BITFLAG_MEDICAL | DEPARTMENT_BITFLAG_SCIENCE
@@ -39,6 +42,7 @@
materials = list(MAT_STEEL = 500, MAT_GLASS = 500)
build_path = /obj/item/surgical/scalpel
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_TOOLS + RND_SUBCATEGORY_TOOLS_MEDICAL,
)
departmental_flags = DEPARTMENT_BITFLAG_MEDICAL | DEPARTMENT_BITFLAG_SCIENCE
@@ -50,6 +54,7 @@
materials = list(MAT_STEEL = 1000, MAT_GLASS = 1000)
build_path = /obj/item/surgical/circular_saw
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_TOOLS + RND_SUBCATEGORY_TOOLS_MEDICAL,
)
departmental_flags = DEPARTMENT_BITFLAG_MEDICAL | DEPARTMENT_BITFLAG_SCIENCE
@@ -61,6 +66,7 @@
materials = list(MAT_STEEL = 1000, MAT_GLASS = 1000)
build_path = /obj/item/surgical/bonesetter
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_TOOLS + RND_SUBCATEGORY_TOOLS_MEDICAL,
)
departmental_flags = DEPARTMENT_BITFLAG_MEDICAL | DEPARTMENT_BITFLAG_SCIENCE
@@ -72,6 +78,7 @@
materials = list(MAT_STEEL = 500, MAT_GLASS = 500)
build_path = /obj/item/surgical/surgicaldrill
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_TOOLS + RND_SUBCATEGORY_TOOLS_MEDICAL,
)
departmental_flags = DEPARTMENT_BITFLAG_MEDICAL | DEPARTMENT_BITFLAG_SCIENCE
@@ -83,6 +90,7 @@
materials = list(MAT_STEEL = 500, MAT_GLASS = 500)
build_path = /obj/item/surgical/retractor
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_TOOLS + RND_SUBCATEGORY_TOOLS_MEDICAL,
)
departmental_flags = DEPARTMENT_BITFLAG_MEDICAL | DEPARTMENT_BITFLAG_SCIENCE
@@ -94,6 +102,7 @@
materials = list(MAT_STEEL = 500, MAT_GLASS = 500)
build_path = /obj/item/surgical/cautery
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_TOOLS + RND_SUBCATEGORY_TOOLS_MEDICAL,
)
departmental_flags = DEPARTMENT_BITFLAG_MEDICAL | DEPARTMENT_BITFLAG_SCIENCE
@@ -105,10 +114,47 @@
materials = list(MAT_STEEL = 500, MAT_GLASS = 500)
build_path = /obj/item/surgical/hemostat
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_TOOLS + RND_SUBCATEGORY_TOOLS_MEDICAL,
)
departmental_flags = DEPARTMENT_BITFLAG_MEDICAL | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/fixovein
name = "FixOVein"
id = "fixovein"
build_type = AUTOLATHE | PROTOLATHE
materials = list(MAT_STEEL = 500, MAT_GLASS = 500)
build_path = /obj/item/surgical/FixOVein
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_TOOLS + RND_SUBCATEGORY_TOOLS_MEDICAL,
)
departmental_flags = DEPARTMENT_BITFLAG_MEDICAL | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/bonegel
name = "bone gel"
id = "bonegel"
build_type = AUTOLATHE | PROTOLATHE
materials = list(MAT_STEEL = 500, MAT_GLASS = 500)
build_path = /obj/item/surgical/bonegel
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_TOOLS + RND_SUBCATEGORY_TOOLS_MEDICAL,
)
departmental_flags = DEPARTMENT_BITFLAG_MEDICAL | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/bioregen
name="bioregenerator"
desc="A special tool used in surgeries which can pull toxins from and restore oxygen to organic tissue as well as recreate missing biological structures to allow otherwise irreperable flesh to be mended."
id = "bioregen"
build_type = PROTOLATHE
materials = list(MAT_STEEL = 1500, MAT_GLASS = 1000, MAT_SILVER = 500)
build_path = /obj/item/surgical/bioregen
category = list(
RND_CATEGORY_TOOLS + RND_SUBCATEGORY_TOOLS_MEDICAL_ADVANCED,
)
departmental_flags = DEPARTMENT_BITFLAG_MEDICAL | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/defibrillator
name = "Defibrillator"
desc = "A portable defibrillator, used for resuscitating recently deceased crew."
@@ -124,10 +170,11 @@
/datum/design_techweb/penlight
name = "Penlight"
id = "penlight"
build_type = PROTOLATHE
build_type = AUTOLATHE | PROTOLATHE
materials = list(MAT_STEEL = 100, MAT_GLASS = 100)
build_path = /obj/item/flashlight/pen
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_TOOLS + RND_SUBCATEGORY_TOOLS_MEDICAL
)
departmental_flags = DEPARTMENT_BITFLAG_MEDICAL | DEPARTMENT_BITFLAG_SCIENCE
@@ -139,6 +186,249 @@
materials = list(MAT_STEEL = 500, MAT_GLASS = 500)
build_path = /obj/item/implanter
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_TOOLS + RND_SUBCATEGORY_TOOLS_MEDICAL,
)
departmental_flags = DEPARTMENT_BITFLAG_MEDICAL | DEPARTMENT_BITFLAG_SCIENCE
// Surgical devices
/datum/design_techweb/scalpel_laser1
name = "Basic Laser Scalpel"
desc = "A scalpel augmented with a directed laser, for more precise cutting without blood entering the field. This one looks basic and could be improved."
id = "scalpel_laser1"
build_type = PROTOLATHE
// req_tech = list(TECH_BIO = 2, TECH_MATERIAL = 2, TECH_MAGNET = 2)
materials = list(MAT_STEEL = 12500, MAT_GLASS = 7500)
build_path = /obj/item/surgical/scalpel/laser1
category = list(
RND_CATEGORY_TOOLS + RND_SUBCATEGORY_TOOLS_MEDICAL
)
departmental_flags = DEPARTMENT_BITFLAG_MEDICAL | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/scalpel_laser2
name = "Improved Laser Scalpel"
desc = "A scalpel augmented with a directed laser, for more precise cutting without blood entering the field. This one looks somewhat advanced."
id = "scalpel_laser2"
build_type = PROTOLATHE
// req_tech = list(TECH_BIO = 3, TECH_MATERIAL = 4, TECH_MAGNET = 4)
materials = list(MAT_STEEL = 12500, MAT_GLASS = 7500, MAT_SILVER = 2500)
build_path = /obj/item/surgical/scalpel/laser2
category = list(
RND_CATEGORY_TOOLS + RND_SUBCATEGORY_TOOLS_MEDICAL
)
departmental_flags = DEPARTMENT_BITFLAG_MEDICAL | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/scalpel_laser3
name = "Advanced Laser Scalpel"
desc = "A scalpel augmented with a directed laser, for more precise cutting without blood entering the field. This one looks to be the pinnacle of precision energy cutlery!"
id = "scalpel_laser3"
build_type = PROTOLATHE
// req_tech = list(TECH_BIO = 4, TECH_MATERIAL = 6, TECH_MAGNET = 5)
materials = list(MAT_STEEL = 12500, MAT_GLASS = 7500, MAT_SILVER = 2000, MAT_GOLD = 1500)
build_path = /obj/item/surgical/scalpel/laser3
category = list(
RND_CATEGORY_TOOLS + RND_SUBCATEGORY_TOOLS_MEDICAL
)
departmental_flags = DEPARTMENT_BITFLAG_MEDICAL | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/scalpel_manager
name = "Incision Management System"
desc = "A true extension of the surgeon's body, this marvel instantly and completely prepares an incision allowing for the immediate commencement of therapeutic steps."
id = "scalpel_manager"
build_type = PROTOLATHE
// req_tech = list(TECH_BIO = 4, TECH_MATERIAL = 7, TECH_MAGNET = 5, TECH_DATA = 4)
materials = list (MAT_STEEL = 12500, MAT_GLASS = 7500, MAT_SILVER = 1500, MAT_GOLD = 1500, MAT_DIAMOND = 750)
build_path = /obj/item/surgical/scalpel/manager
category = list(
RND_CATEGORY_TOOLS + RND_SUBCATEGORY_TOOLS_MEDICAL
)
departmental_flags = DEPARTMENT_BITFLAG_MEDICAL | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/saw_manager
name = "Energetic Bone Diverter"
desc = "A strange development following the I.M.S., this heavy tool can split and open, or close and shut, intentional holes in bones."
id = "advanced_saw"
build_type = PROTOLATHE
// req_tech = list(TECH_BIO = 4, TECH_MATERIAL = 7, TECH_MAGNET = 6, TECH_DATA = 5)
materials = list (MAT_STEEL = 12500, MAT_PLASTIC = 800, MAT_SILVER = 1500, MAT_GOLD = 1500, MAT_OSMIUM = 1000)
build_path = /obj/item/surgical/circular_saw/manager
category = list(
RND_CATEGORY_TOOLS + RND_SUBCATEGORY_TOOLS_MEDICAL
)
departmental_flags = DEPARTMENT_BITFLAG_MEDICAL | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/organ_ripper
name = "Organ Ripper"
desc = "A modern and horrifying take on an ancient practice, this tool is capable of rapidly removing an organ from a hopefully willing patient, without damaging it."
id = "organ_ripper"
build_type = PROTOLATHE
// req_tech = list(TECH_BIO = 3, TECH_MATERIAL = 5, TECH_MAGNET = 4, TECH_ILLEGAL = 3)
materials = list (MAT_STEEL = 12500, MAT_PLASTIC = 8000, MAT_OSMIUM = 2500)
build_path = /obj/item/surgical/scalpel/ripper
category = list(
RND_CATEGORY_TOOLS + RND_SUBCATEGORY_TOOLS_MEDICAL
)
departmental_flags = DEPARTMENT_BITFLAG_MEDICAL | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/bone_clamp
name = "Bone Clamp"
desc = "A miracle of modern science, this tool rapidly knits together bone, without the need for bone gel."
id = "bone_clamp"
build_type = PROTOLATHE
// req_tech = list(TECH_BIO = 4, TECH_MATERIAL = 5, TECH_MAGNET = 4, TECH_DATA = 4)
materials = list (MAT_STEEL = 12500, MAT_GLASS = 7500, MAT_SILVER = 2500)
build_path = /obj/item/surgical/bone_clamp
category = list(
RND_CATEGORY_TOOLS + RND_SUBCATEGORY_TOOLS_MEDICAL
)
departmental_flags = DEPARTMENT_BITFLAG_MEDICAL | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/medical_analyzer
name = "health analyzer"
desc = "A hand-held body scanner able to distinguish vital signs of the subject."
id = "medical_analyzer"
build_type = PROTOLATHE
// req_tech = list(TECH_MAGNET = 2, TECH_BIO = 2)
materials = list(MAT_STEEL = 500, MAT_GLASS = 500)
build_path = /obj/item/healthanalyzer
category = list(
RND_CATEGORY_TOOLS + RND_SUBCATEGORY_TOOLS_MEDICAL
)
departmental_flags = DEPARTMENT_BITFLAG_MEDICAL | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/improved_analyzer
name = "improved health analyzer"
desc = "A prototype version of the regular health analyzer, able to distinguish the location of more serious injuries as well as accurately determine radiation levels."
id = "improved_analyzer"
build_type = PROTOLATHE
// req_tech = list(TECH_MAGNET = 5, TECH_BIO = 6)
materials = list(MAT_STEEL = 2000, MAT_GLASS = 1000, MAT_SILVER = 1000, MAT_GOLD = 1500)
build_path = /obj/item/healthanalyzer/improved
category = list(
RND_CATEGORY_TOOLS + RND_SUBCATEGORY_TOOLS_MEDICAL
)
departmental_flags = DEPARTMENT_BITFLAG_MEDICAL | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/advanced_analyzer
name = "advanced health analyzer"
desc = "An even more advanced handheld health scanner, complete with a full biosign monitor and on-board radiation and neurological analysis suites."
id = "advanced_analyzer"
build_type = PROTOLATHE
// req_tech = list(TECH_MAGNET = 7, TECH_BIO = 7, TECH_DATA = 5)
materials = list(MAT_STEEL = 2000, MAT_GLASS = 4000, MAT_SILVER = 3500, MAT_GOLD = 2500, MAT_DIAMOND = 1250)
build_path = /obj/item/healthanalyzer/advanced
category = list(
RND_CATEGORY_TOOLS + RND_SUBCATEGORY_TOOLS_MEDICAL
)
departmental_flags = DEPARTMENT_BITFLAG_MEDICAL | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/phasic_analyzer
name = "phasic health analyzer"
desc = "State of the art handheld health scanner, containing not only a full biosign monitor, on-board radiation, and neurological analysis suites, but also a chemical-analysis suite."
id = "phasic_analyzer"
build_type = PROTOLATHE
materials = list(MAT_STEEL = 2000, MAT_GLASS = 4000, MAT_SILVER = 3500, MAT_GOLD = 2500, MAT_DIAMOND = 2500, MAT_PHORON = 1250)
build_path = /obj/item/healthanalyzer/phasic
category = list(
RND_CATEGORY_TOOLS + RND_SUBCATEGORY_TOOLS_MEDICAL
)
departmental_flags = DEPARTMENT_BITFLAG_MEDICAL | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/gene_scanner
name = "Gene Scanner"
id = "gene_scanner"
build_type = PROTOLATHE
// req_tech = list(TECH_DATA = 1, TECH_BIO = 2)
materials = list(MAT_STEEL = 30, MAT_GLASS = 20)
build_path = /obj/item/gene_scanner
category = list(
RND_CATEGORY_TOOLS + RND_SUBCATEGORY_TOOLS_MEDICAL
)
departmental_flags = DEPARTMENT_BITFLAG_MEDICAL | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/roller
name = "roller bed"
desc = "A collapsed roller bed that can be carried around."
id = "medicalbed"
build_type = AUTOLATHE | PROTOLATHE
materials = list(MAT_STEEL = 4000, MAT_GLASS = 2000)
build_path = /obj/item/roller
category = list(
RND_CATEGORY_TOOLS + RND_SUBCATEGORY_TOOLS_MEDICAL
)
departmental_flags = DEPARTMENT_BITFLAG_MEDICAL | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/advanced_roller
name = "advanced roller bed"
desc = "A more advanced version of the regular roller bed, with inbuilt surgical stabilisers and an improved folding system."
id = "roller_bed"
build_type = PROTOLATHE
// req_tech = list(TECH_BIO = 3, TECH_MATERIAL = 3, TECH_MAGNET = 3)
materials = list(MAT_STEEL = 4000, MAT_GLASS = 2000, MAT_PHORON = 2000)
build_path = /obj/item/roller/adv
category = list(
RND_CATEGORY_TOOLS + RND_SUBCATEGORY_TOOLS_MEDICAL
)
departmental_flags = DEPARTMENT_BITFLAG_MEDICAL | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/sleevemate
name = "SleeveMate 3700"
id = "sleevemate"
build_type = PROTOLATHE
// req_tech = list(TECH_MATERIAL = 3, TECH_MAGNET = 2, TECH_BIO = 2)
materials = list(MAT_STEEL = 4000, MAT_GLASS = 4000)
build_path = /obj/item/sleevemate
category = list(
RND_CATEGORY_TOOLS + RND_SUBCATEGORY_TOOLS_MEDICAL
)
departmental_flags = DEPARTMENT_BITFLAG_MEDICAL | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/protohypospray
name = "prototype hypospray"
desc = "This prototype hypospray is a sterile, air-needle autoinjector for rapid administration of drugs to patients."
id = "protohypospray"
build_type = PROTOLATHE
// req_tech = list(TECH_MATERIAL = 4, TECH_ENGINEERING = 3, TECH_POWER = 2, TECH_BIO = 4, TECH_ILLEGAL = 2)
materials = list(MAT_STEEL = 500, MAT_GLASS = 1500, MAT_SILVER = 2000, MAT_GOLD = 1500, MAT_URANIUM = 1000)
build_path = /obj/item/reagent_containers/hypospray/science
category = list(
RND_CATEGORY_TOOLS + RND_SUBCATEGORY_TOOLS_MEDICAL
)
departmental_flags = DEPARTMENT_BITFLAG_MEDICAL | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/syringe_gun
name = "syringe gun"
desc = "A spring loaded rifle designed to fit syringes, designed to incapacitate unruly patients from a distance."
id = "syringe_gun"
build_type = PROTOLATHE
materials = list(MAT_STEEL = 2000)
build_path = /obj/item/gun/launcher/syringe
category = list(
RND_CATEGORY_TOOLS + RND_SUBCATEGORY_TOOLS_MEDICAL_ADVANCED
)
departmental_flags = DEPARTMENT_BITFLAG_MEDICAL | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/syringe_cartridge
name = "syringe gun cartridge"
desc = "An impact-triggered compressed gas cartridge that can be fitted to a syringe for rapid injection."
id = "syringe_cartridge"
build_type = PROTOLATHE
materials = list(MAT_STEEL = 150, MAT_GLASS = 500)
build_path = /obj/item/syringe_cartridge
category = list(
RND_CATEGORY_TOOLS + RND_SUBCATEGORY_TOOLS_MEDICAL_ADVANCED
)
departmental_flags = DEPARTMENT_BITFLAG_MEDICAL | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/body_record_disk
name = "Body Design Disk"
desc = "Portable Body Record Storage Disk."
id = "body_record_disk"
materials = list(MAT_STEEL = 2500)
build_path = /obj/item/disk/body_record
build_type = PROTOLATHE
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_EQUIPMENT + RND_SUBCATEGORY_EQUIPMENT_MEDICAL
)
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_MEDICAL
@@ -0,0 +1,10 @@
/datum/design_techweb/pickaxe
name = "pickaxe"
id = "pickaxe"
build_type = AUTOLATHE
materials = list(MAT_STEEL = 2500)
build_path = /obj/item/pickaxe
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_TOOLS + RND_SUBCATEGORY_TOOLS_CARGO
)
@@ -15,6 +15,7 @@
// Cartridges
/datum/design_techweb/pda_cartridge
desc = "A cartridge containing PDA software."
// req_tech = list(TECH_ENGINEERING = 2, TECH_POWER = 3)
build_type = PROTOLATHE
materials = list(MAT_STEEL = 50, MAT_GLASS = 50)
@@ -57,11 +58,6 @@
build_path = /obj/item/cartridge/security
departmental_flags = DEPARTMENT_BITFLAG_SECURITY | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/pda_cartridge/janitor
id = "cart_janitor"
build_path = /obj/item/cartridge/janitor
departmental_flags = DEPARTMENT_BITFLAG_SERVICE | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/pda_cartridge/science
id = "cart_science"
build_path = /obj/item/cartridge/signal/science
@@ -330,3 +326,108 @@
RND_CATEGORY_EQUIPMENT + RND_SUBCATEGORY_EQUIPMENT_SCIENCE
)
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/sticky_tape
name = "tape role"
desc = "A roll of sticky tape. Possibly for taping ducks... or was that ducts?"
id = "sticky_tape"
build_type = AUTOLATHE | PROTOLATHE
materials = list(MAT_PLASTIC = 500)
build_path = /obj/item/tape_roll
category = list(
RND_CATEGORY_TOOLS + RND_SUBCATEGORY_TOOLS_MISC
)
departmental_flags = ALL
// Assemblies
/datum/design_techweb/assembly_igniter
name = "igniter"
desc = "A small electronic device able to ignite combustable substances."
build_type = AUTOLATHE | PROTOLATHE
id = "igniter"
materials = list(MAT_STEEL = 625, MAT_GLASS = 60)
build_path = /obj/item/assembly/igniter
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_CONSTRUCTION + RND_SUBCATEGORY_CONSTRUCTION_ASSEMBLIES
)
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_ENGINEERING
/datum/design_techweb/assembly_infrared_emitter
name = "infrared emitter"
desc = "Emits a visible or invisible beam and is triggered when the beam is interrupted."
build_type = AUTOLATHE | PROTOLATHE
id = "infrared_emitter"
materials = list(MAT_STEEL = 1250, MAT_GLASS = 625)
build_path = /obj/item/assembly/infra
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_CONSTRUCTION + RND_SUBCATEGORY_CONSTRUCTION_ASSEMBLIES
)
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_ENGINEERING
/datum/design_techweb/assembly_prox_sensor
name = "proximity sensor"
desc = "Used for scanning and alerting when someone enters a certain proximity."
build_type = AUTOLATHE | PROTOLATHE
id = "prox_sensor"
materials = list(MAT_STEEL = 1000, MAT_GLASS = 250)
build_path = /obj/item/assembly/prox_sensor
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_CONSTRUCTION + RND_SUBCATEGORY_CONSTRUCTION_ASSEMBLIES
)
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_ENGINEERING
/datum/design_techweb/assembly_signaler
name = "remote signaling device"
desc = "Used to remotely activate devices. Tap against another secured signaler to transfer configuration."
build_type = AUTOLATHE | PROTOLATHE
id = "signaler"
materials = list(MAT_STEEL = 1250, MAT_GLASS = 250)
build_path = /obj/item/assembly/signaler
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_CONSTRUCTION + RND_SUBCATEGORY_CONSTRUCTION_ASSEMBLIES
)
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_ENGINEERING
/datum/design_techweb/assembly_timer
name = "timer"
desc = "Used to time things. Works well with contraptions which has to count down. Tick tock."
build_type = AUTOLATHE | PROTOLATHE
id = "timer"
materials = list(MAT_STEEL = 625, MAT_GLASS = 60)
build_path = /obj/item/assembly/timer
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_CONSTRUCTION + RND_SUBCATEGORY_CONSTRUCTION_ASSEMBLIES
)
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_ENGINEERING
// Pai card
/datum/design_techweb/sleevecard
name = "sleevecard"
desc = "This upgraded pAI module has enough capacity to run a whole mind of human-level intelligence."
build_type = AUTOLATHE | PROTOLATHE
id = "sleevecard"
materials = list(MAT_STEEL = 5000, MAT_GLASS = 5000)
build_path = /obj/item/paicard/sleevecard
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_TOOLS + RND_SUBCATEGORY_TOOLS_MEDICAL
)
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_MEDICAL
/datum/design_techweb/camera_assembly
name = "camera assembly"
desc = "A pre-fabricated security camera kit, ready to be assembled and mounted to a surface."
build_type = AUTOLATHE | PROTOLATHE
id = "camera_assembly"
materials = list(MAT_STEEL = 875, MAT_GLASS = 375)
build_path = /obj/item/camera_assembly
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_TOOLS + RND_SUBCATEGORY_MACHINE_ENGINEERING
)
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_ENGINEERING
@@ -16,6 +16,10 @@
id = "rigmodule_belt_basic"
materials = list(MAT_PLASTEEL = 12000, MAT_GOLD = 3000, MAT_GRAPHITE = 3000, MAT_OSMIUM = 1000, MAT_PLASTIC = 5000)
build_path = /obj/item/rig/robotics
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_MODSUIT_MODULES
)
// Station Suits
/datum/design_techweb/mechfab/modsuit/eva_controller
@@ -24,6 +28,9 @@
id = "eva_rig_module"
materials = list(MAT_PLASTEEL = 16000, MAT_GOLD = 3000, MAT_GRAPHITE = 4500, MAT_OSMIUM = 1000, MAT_PLASTIC = 4500, MAT_LEAD = 2000, MAT_STEEL = 2000)
build_path = /obj/item/rig/eva
category = list(
RND_CATEGORY_MODSUIT_MODULES
)
/datum/design_techweb/mechfab/modsuit/eva_ce_controller
name = "Advanced EVA Suit Control Module"
@@ -31,6 +38,9 @@
id = "advanced_eva_rig_module"
materials = list(MAT_PLASTEEL = 16000, MAT_GOLD = 6000, MAT_GRAPHITE = 4500, MAT_OSMIUM = 4000, MAT_PLASTIC = 8000, MAT_LEAD = 2000, MAT_PHORON = 6000, MAT_STEEL = 3000, MAT_TITANIUM = 2000)
build_path = /obj/item/rig/ce
category = list(
RND_CATEGORY_MODSUIT_MODULES
)
/datum/design_techweb/mechfab/modsuit/ami_controller
name = "AMI Suit Control Module"
@@ -38,6 +48,9 @@
id = "ami_rig_module"
materials = list(MAT_PLASTEEL = 12000, MAT_GOLD = 3000, MAT_GRAPHITE = 3000, MAT_OSMIUM = 2000, MAT_PLASTIC = 6000, MAT_LEAD = 2000, MAT_PHORON = 12000)
build_path = /obj/item/rig/hazmat
category = list(
RND_CATEGORY_MODSUIT_MODULES
)
/datum/design_techweb/mechfab/modsuit/industrial_controller
name = "Industrial Suit Control Module"
@@ -45,6 +58,9 @@
id = "industrial_rig_module"
materials = list(MAT_PLASTEEL = 14000, MAT_GOLD = 4000, MAT_GRAPHITE = 5000, MAT_OSMIUM = 1000, MAT_PLASTIC = 5000, MAT_STEEL = 10000, MAT_TITANIUM = 2000)
build_path = /obj/item/rig/industrial
category = list(
RND_CATEGORY_MODSUIT_MODULES
)
/datum/design_techweb/mechfab/modsuit/hazard_controller
name = "Hazard Suit Control Module"
@@ -52,6 +68,9 @@
id = "hazard_rig_module"
materials = list(MAT_PLASTEEL = 14000, MAT_GOLD = 4000, MAT_GRAPHITE = 5000, MAT_OSMIUM = 1000, MAT_PLASTIC = 5000, MAT_STEEL = 10000, MAT_TITANIUM = 2000)
build_path = /obj/item/rig/hazard
category = list(
RND_CATEGORY_MODSUIT_MODULES
)
/datum/design_techweb/mechfab/modsuit/rescue_controller
name = "Rescue Suit Control Module"
@@ -59,13 +78,20 @@
id = "medical_rig_module"
materials = list(MAT_PLASTEEL = 12000, MAT_GOLD = 6000, MAT_GRAPHITE = 3000, MAT_OSMIUM = 4000, MAT_PLASTIC = 10000, MAT_LEAD = 2000)
build_path = /obj/item/rig/medical
category = list(
RND_CATEGORY_MODSUIT_MODULES
)
/datum/design_techweb/mechfab/modsuit/zero_controller
name = "Zero Suit Control Module"
desc = "A very bare bones and stylish suit designed for pilots with advanced holographic interfaces for the task."
id = "zero_rig_module"
materials = list(MAT_PLASTEEL = 12000, MAT_GOLD = 3000, MAT_GRAPHITE = 3000, MAT_OSMIUM = 1000, MAT_PLASTIC = 5000)
build_path =/obj/item/rig/zero
build_path = /obj/item/rig/zero
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_MODSUIT_MODULES
)
///Modsuit Modules
/datum/design_techweb/mechfab/modsuit/modules
@@ -231,6 +257,7 @@
materials = list(MAT_PLASTEEL = 1000, MAT_PLASTIC = 500, MAT_PHORON = 500, MAT_GRAPHITE = 100)
build_path = /obj/item/rig_module/device/paperdispenser
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_MODSUIT_MODULES + RND_SUBCATEGORY_MODSUIT_MODULES_SERVICE
)
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_SERVICE
@@ -243,6 +270,7 @@
materials = list(MAT_PLASTEEL = 1000, MAT_PLASTIC = 500, MAT_PHORON = 500, MAT_GRAPHITE = 100)
build_path = /obj/item/rig_module/device/pen
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_MODSUIT_MODULES + RND_SUBCATEGORY_MODSUIT_MODULES_SERVICE
)
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_SERVICE
@@ -1,6 +1,7 @@
// Hard drives
/datum/design_techweb/modularcomponent
desc = "A component for a modular computer. Used to upgrade and extend the computer's features."
build_type = PROTOLATHE
category = list(
RND_CATEGORY_MODULAR_COMPUTERS + RND_SUBCATEGORY_MODULAR_COMPUTERS_PARTS
@@ -4,6 +4,7 @@
build_type = AUTOLATHE | PROTOLATHE
materials = list(MAT_GLASS = 500)
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_EQUIPMENT + RND_SUBCATEGORY_EQUIPMENT_CHEMISTRY,
)
build_path = /obj/item/reagent_containers/glass/beaker
@@ -15,6 +16,7 @@
build_type = AUTOLATHE | PROTOLATHE
materials = list(MAT_GLASS = 1000)
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_EQUIPMENT + RND_SUBCATEGORY_EQUIPMENT_CHEMISTRY,
)
build_path = /obj/item/reagent_containers/glass/beaker/large
@@ -26,6 +28,7 @@
build_type = AUTOLATHE | PROTOLATHE
materials = list(MAT_GLASS = 100)
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_EQUIPMENT + RND_SUBCATEGORY_EQUIPMENT_CHEMISTRY,
)
build_path = /obj/item/reagent_containers/glass/beaker/vial
@@ -6,6 +6,7 @@
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/prosfab/pros
desc = "A prosthetic bodypart, requires surgical attachment to a body to function."
category = list(
RND_CATEGORY_PROSFAB + RND_SUBCATEGORY_PROSFAB_EXTERNAL
)
@@ -190,6 +191,7 @@
//////////////////// Cyborg Parts ////////////////////
/datum/design_techweb/prosfab/cyborg
desc = "An internal component used to assemble or repair cyborg units. Requires installation in a cyborg to function."
category = list(
RND_CATEGORY_MECHFAB_CYBORG + RND_SUBCATEGORY_MECHFAB_CYBORG_COMPONENTS
)
@@ -619,6 +621,7 @@
//////////////////// Cyborg Parts ////////////////////
/datum/design_techweb/prosfab/paiparts
desc = "Component parts for a pAI card. Used to repair a broken pAI companion."
category = list(
RND_CATEGORY_PROSFAB_PAI
)
@@ -0,0 +1,305 @@
/datum/design_techweb/board/atm
SET_CIRCUIT_DESIGN_NAMEDESC("atm")
id = "bankmachine"
build_path = /obj/item/circuitboard/atm
category = list(
RND_CATEGORY_MACHINE + RND_SUBCATEGORY_MACHINE_SERVICE
)
departmental_flags = DEPARTMENT_BITFLAG_ENGINEERING | DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_SERVICE | DEPARTMENT_BITFLAG_CARGO
/datum/design_techweb/board/fax
SET_CIRCUIT_DESIGN_NAMEDESC("fax machine")
id = "fax"
build_path = /obj/item/circuitboard/fax
category = list(
RND_CATEGORY_MACHINE + RND_SUBCATEGORY_MACHINE_SERVICE
)
departmental_flags = DEPARTMENT_BITFLAG_ENGINEERING | DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_SERVICE | DEPARTMENT_BITFLAG_CARGO
/datum/design_techweb/board/photocopier
SET_CIRCUIT_DESIGN_NAMEDESC("photocopier")
id = "photocopier"
build_path = /obj/item/circuitboard/photocopier
category = list(
RND_CATEGORY_MACHINE + RND_SUBCATEGORY_MACHINE_SERVICE
)
departmental_flags = DEPARTMENT_BITFLAG_ENGINEERING | DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_SERVICE | DEPARTMENT_BITFLAG_CARGO
/datum/design_techweb/board/papershredder
SET_CIRCUIT_DESIGN_NAMEDESC("papershredder")
id = "papershredder"
build_path = /obj/item/circuitboard/papershredder
category = list(
RND_CATEGORY_MACHINE + RND_SUBCATEGORY_MACHINE_SERVICE
)
departmental_flags = DEPARTMENT_BITFLAG_ENGINEERING | DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_SERVICE | DEPARTMENT_BITFLAG_CARGO
/datum/design_techweb/board/guest_pass
SET_CIRCUIT_DESIGN_NAMEDESC("guestpass console")
id = "guestpass"
build_path = /obj/item/circuitboard/guestpass
category = list(
RND_CATEGORY_MACHINE + RND_SUBCATEGORY_MACHINE_SERVICE
)
departmental_flags = DEPARTMENT_BITFLAG_ENGINEERING | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/pda_cartridge/janitor
id = "cart_janitor"
build_path = /obj/item/cartridge/janitor
departmental_flags = DEPARTMENT_BITFLAG_SERVICE | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/ashtray
name = "ashtray"
desc = "An ashtray."
id = "ashtray"
build_type = PROTOLATHE
materials = list(MAT_STEEL = 250)
build_path = /obj/item/material/ashtray
category = list(
RND_CATEGORY_TOOLS + RND_SUBCATEGORY_TOOLS_SERVICE
)
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_SERVICE
/datum/design_techweb/glasstray
name = "glass ashtray"
desc = "An shinier ashtray."
id = "glasstray"
build_type = PROTOLATHE
materials = list(MAT_GLASS = 250)
build_path = /obj/item/material/ashtray/glass
category = list(
RND_CATEGORY_TOOLS + RND_SUBCATEGORY_TOOLS_SERVICE
)
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_SERVICE
// glasses
/datum/design_techweb/watercooler_bottle
name = "water-cooler bottle"
desc = "A bottle for a water-cooler."
id = "watercooler_bottle"
build_type = AUTOLATHE | PROTOLATHE
materials = list(MAT_PLASTIC = 2500)
build_path = /obj/item/reagent_containers/glass/cooler_bottle
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_TOOLS + RND_SUBCATEGORY_TOOLS_SERVICE
)
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_SERVICE
/datum/design_techweb/barglass_square
name = "half-pint glass"
desc = "Your standard drinking glass."
id = "barglass_square"
build_type = AUTOLATHE | PROTOLATHE
materials = list(MAT_GLASS = 75)
build_path = /obj/item/reagent_containers/food/drinks/glass2/square
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_TOOLS + RND_SUBCATEGORY_TOOLS_SERVICE
)
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_SERVICE
/datum/design_techweb/barglass_rocks
name = "rocks glass"
desc = "Your standard drinking glass."
id = "barglass_rocks"
build_type = AUTOLATHE | PROTOLATHE
materials = list(MAT_GLASS = 50)
build_path = /obj/item/reagent_containers/food/drinks/glass2/rocks
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_TOOLS + RND_SUBCATEGORY_TOOLS_SERVICE
)
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_SERVICE
/datum/design_techweb/barglass_milkshake
name = "milkshake glass"
desc = "Your standard drinking glass."
id = "barglass_milkshake"
build_type = AUTOLATHE | PROTOLATHE
materials = list(MAT_GLASS = 40)
build_path = /obj/item/reagent_containers/food/drinks/glass2/shake
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_TOOLS + RND_SUBCATEGORY_TOOLS_SERVICE
)
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_SERVICE
/datum/design_techweb/barglass_cocktail
name = "cocktail glass"
desc = "Your standard drinking glass."
id = "barglass_cocktail"
build_type = AUTOLATHE | PROTOLATHE
materials = list(MAT_GLASS = 40)
build_path = /obj/item/reagent_containers/food/drinks/glass2/cocktail
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_TOOLS + RND_SUBCATEGORY_TOOLS_SERVICE
)
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_SERVICE
/datum/design_techweb/barglass_shot
name = "shot glass"
desc = "Your standard drinking glass."
id = "barglass_shot"
build_type = AUTOLATHE | PROTOLATHE
materials = list(MAT_GLASS = 15)
build_path = /obj/item/reagent_containers/food/drinks/glass2/shot
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_TOOLS + RND_SUBCATEGORY_TOOLS_SERVICE
)
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_SERVICE
/datum/design_techweb/barglass_pint
name = "pint glass"
desc = "Your standard drinking glass."
id = "barglass_pint"
build_type = AUTOLATHE | PROTOLATHE
materials = list(MAT_GLASS = 150)
build_path = /obj/item/reagent_containers/food/drinks/glass2/pint
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_TOOLS + RND_SUBCATEGORY_TOOLS_SERVICE
)
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_SERVICE
/datum/design_techweb/barglass_mug
name = "glass mug"
desc = "Your standard drinking glass."
id = "barglass_mug"
build_type = AUTOLATHE | PROTOLATHE
materials = list(MAT_GLASS = 100)
build_path = /obj/item/reagent_containers/food/drinks/glass2/mug
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_TOOLS + RND_SUBCATEGORY_TOOLS_SERVICE
)
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_SERVICE
/datum/design_techweb/barglass_wine
name = "wine glass"
desc = "Your standard drinking glass."
id = "barglass_wine"
build_type = AUTOLATHE | PROTOLATHE
materials = list(MAT_GLASS = 60)
build_path = /obj/item/reagent_containers/food/drinks/glass2/wine
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_TOOLS + RND_SUBCATEGORY_TOOLS_SERVICE
)
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_SERVICE
/datum/design_techweb/barglass_metaglass
name = "metamorphic glass"
desc = "This glass changes shape and form depending on the drink inside... fancy!"
id = "barglass_metaglass"
build_type = AUTOLATHE | PROTOLATHE
materials = list(MAT_GLASS = 625)
build_path = /obj/item/reagent_containers/food/drinks/metaglass
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_TOOLS + RND_SUBCATEGORY_TOOLS_SERVICE
)
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_SERVICE
/datum/design_techweb/barglass_metapint
name = "metamorphic pint glass"
desc = "This glass changes shape and form depending on the drink inside... fancy!"
id = "barglass_metapint"
build_type = AUTOLATHE | PROTOLATHE
materials = list(MAT_GLASS = 625)
build_path = /obj/item/reagent_containers/food/drinks/metaglass/metapint
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_TOOLS + RND_SUBCATEGORY_TOOLS_SERVICE
)
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_SERVICE
/datum/design_techweb/barglass_carafe
name = "glass carafe"
desc = "Your standard drinking glass."
id = "barglass_carafe"
build_type = AUTOLATHE | PROTOLATHE
materials = list(MAT_GLASS = 60)
build_path = /obj/item/reagent_containers/food/drinks/glass2/carafe
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_TOOLS + RND_SUBCATEGORY_TOOLS_SERVICE
)
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_SERVICE
/datum/design_techweb/barglass_pitcher
name = "plastic pitcher"
id = "barglass_pitcher"
build_type = AUTOLATHE | PROTOLATHE
materials = list(MAT_PLASTIC = 60)
build_path = /obj/item/reagent_containers/food/drinks/glass2/pitcher
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_TOOLS + RND_SUBCATEGORY_TOOLS_SERVICE
)
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_SERVICE
/datum/design_techweb/barglass_coffeemug
name = "coffee mug"
id = "barglass_coffeemug"
build_type = AUTOLATHE | PROTOLATHE
materials = list(MAT_GLASS = 50)
build_path = /obj/item/reagent_containers/food/drinks/glass2/coffeemug
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_TOOLS + RND_SUBCATEGORY_TOOLS_SERVICE
)
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_SERVICE
/datum/design_techweb/barglass_jar
name = "glass jar"
desc = "A small empty jar."
id = "barglass_jar"
build_type = AUTOLATHE | PROTOLATHE
materials = list(MAT_GLASS = 250)
build_path = /obj/item/glass_jar
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_TOOLS + RND_SUBCATEGORY_TOOLS_SERVICE
)
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_SERVICE
/datum/design_techweb/idcard
name = "ID Card"
id = "idcard"
build_type = AUTOLATHE | PROTOLATHE
materials = list(MAT_STEEL = 100, MAT_GLASS = 100, MAT_PLASTIC = 300)
build_path = /obj/item/card/id
category = list(
RND_CATEGORY_TOOLS + RND_SUBCATEGORY_TOOLS_SERVICE
)
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_SERVICE | DEPARTMENT_BITFLAG_COMMAND
/datum/design_techweb/cleaver
name = "butcher's cleaver"
desc = "A huge thing used for chopping and chopping up meat. This includes clowns and clown-by-products."
id = "cleaver"
build_type = AUTOLATHE | PROTOLATHE
materials = list(MAT_STEEL = 800)
build_path = /obj/item/material/knife/butch
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_TOOLS + RND_SUBCATEGORY_TOOLS_SERVICE
)
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_SERVICE
/datum/design_techweb/rollingpin
name = "rolling pin"
desc = "A simple tool for rolling dough flat."
id = "rollingpin"
build_type = AUTOLATHE | PROTOLATHE
materials = list(MAT_WOOD = 1000)
build_path = /obj/item/material/kitchen/rollingpin
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_TOOLS + RND_SUBCATEGORY_TOOLS_SERVICE
)
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_SERVICE
@@ -7,6 +7,7 @@
materials = list(MAT_STEEL = 80)
build_path = /obj/item/stock_parts/matter_bin
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_STOCK_PARTS + RND_SUBCATEGORY_STOCK_PARTS_1
)
lathe_time_factor = 0.2
@@ -76,6 +77,7 @@
materials = list(MAT_STEEL = 30)
build_path = /obj/item/stock_parts/manipulator
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_STOCK_PARTS + RND_SUBCATEGORY_STOCK_PARTS_1
)
lathe_time_factor = 0.2
@@ -145,6 +147,7 @@
materials = list(MAT_STEEL = 50, MAT_GLASS = 50)
build_path = /obj/item/stock_parts/capacitor
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_STOCK_PARTS + RND_SUBCATEGORY_STOCK_PARTS_1
)
lathe_time_factor = 0.2
@@ -214,6 +217,7 @@
materials = list(MAT_STEEL = 50, MAT_GLASS = 20)
build_path = /obj/item/stock_parts/scanning_module
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_STOCK_PARTS + RND_SUBCATEGORY_STOCK_PARTS_1
)
lathe_time_factor = 0.2
@@ -284,6 +288,7 @@
materials = list(MAT_STEEL = 10, MAT_GLASS = 20)
build_path = /obj/item/stock_parts/micro_laser
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_STOCK_PARTS + RND_SUBCATEGORY_STOCK_PARTS_1
)
lathe_time_factor = 0.2
@@ -353,6 +358,7 @@
materials = list(MAT_STEEL = 700, MAT_GLASS = 50)
build_path = /obj/item/cell/empty
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_STOCK_PARTS + RND_SUBCATEGORY_STOCK_PARTS_1
)
departmental_flags = ALL
@@ -398,10 +404,11 @@
/datum/design_techweb/device_cell
name = "Device Cell"
id = "device_cell"
build_type = PROTOLATHE
build_type = PROTOLATHE | AUTOLATHE
materials = list(MAT_STEEL = 350, MAT_GLASS = 25)
build_path = /obj/item/cell/device/empty
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_STOCK_PARTS + RND_SUBCATEGORY_STOCK_PARTS_1
)
departmental_flags = ALL
@@ -409,10 +416,11 @@
/datum/design_techweb/weapon_cell
name = "Weapon Cell"
id = "weapon_cell"
build_type = PROTOLATHE
build_type = PROTOLATHE | AUTOLATHE
materials = list(MAT_STEEL = 700, MAT_GLASS = 50)
build_path = /obj/item/cell/device/weapon/empty
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_STOCK_PARTS + RND_SUBCATEGORY_STOCK_PARTS_1
)
departmental_flags = DEPARTMENT_BITFLAG_SECURITY | DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_CARGO
@@ -656,3 +664,52 @@
RND_CATEGORY_STOCK_PARTS + RND_SUBCATEGORY_STOCK_PARTS_5
)
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_ENGINEERING
//Misc parts
/datum/design_techweb/console_screen
name = "console screen"
build_type = PROTOLATHE | AUTOLATHE
id = "console_screen"
materials = list(MAT_GLASS = 250)
build_path = /obj/item/stock_parts/console_screen
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_STOCK_PARTS + RND_SUBCATEGORY_STOCK_PARTS_1
)
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_ENGINEERING
/datum/design_techweb/motor
name = "motor"
build_type = PROTOLATHE | AUTOLATHE
id = "motor"
materials = list(MAT_STEEL = 75, MAT_GLASS = 15)
build_path = /obj/item/stock_parts/motor
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_STOCK_PARTS + RND_SUBCATEGORY_STOCK_PARTS_1
)
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_ENGINEERING
/datum/design_techweb/gear
name = "gear"
build_type = PROTOLATHE | AUTOLATHE
id = "gear"
materials = list(MAT_STEEL = 65)
build_path = /obj/item/stock_parts/gear
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_STOCK_PARTS + RND_SUBCATEGORY_STOCK_PARTS_1
)
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_ENGINEERING
/datum/design_techweb/spring
name = "spring"
build_type = PROTOLATHE | AUTOLATHE
id = "spring"
materials = list(MAT_STEEL = 50)
build_path = /obj/item/stock_parts/spring
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_STOCK_PARTS + RND_SUBCATEGORY_STOCK_PARTS_1
)
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_ENGINEERING
+472 -202
View File
@@ -1,3 +1,262 @@
/datum/design_techweb/prybar
name = "prybar"
desc = "A steel bar with a wedge, designed specifically for opening unpowered doors in an emergency."
id = "prybar"
build_type = AUTOLATHE | PROTOLATHE
materials = list(MAT_STEEL = 40)
build_path = /obj/item/tool/prybar
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_TOOLS + RND_SUBCATEGORY_TOOLS_MISC
)
departmental_flags = ALL
/datum/design_techweb/crowbar
name = "crowbar"
desc = "A steel bar with a wedge, designed specifically for opening unpowered doors in an emergency."
id = "crowbar"
build_type = AUTOLATHE | PROTOLATHE
materials = list(MAT_STEEL = 60)
build_path = /obj/item/tool/crowbar
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_TOOLS + RND_SUBCATEGORY_TOOLS_ENGINEERING
)
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_ENGINEERING
/datum/design_techweb/multitool
name = "multitool"
desc = "Used for pulsing wires to test which to cut."
id = "multitool"
build_type = AUTOLATHE | PROTOLATHE
materials = list(MAT_STEEL = 60, MAT_GLASS = 25)
build_path = /obj/item/multitool
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_TOOLS + RND_SUBCATEGORY_TOOLS_ENGINEERING
)
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_ENGINEERING
/datum/design_techweb/mini_welding_tool
name = "emergency welding tool"
desc = "A miniature welder used during emergencies."
id = "mini_welding_tool"
build_type = AUTOLATHE | PROTOLATHE
materials = list(MAT_STEEL = 50, MAT_GLASS = 30)
build_path = /obj/item/weldingtool/mini
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_TOOLS + RND_SUBCATEGORY_TOOLS_ENGINEERING
)
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_ENGINEERING
/datum/design_techweb/welding_tool
name = "welding tool"
desc = "Used to repair machinery, or cut through plating."
id = "welding_tool"
build_type = AUTOLATHE | PROTOLATHE
materials = list(MAT_STEEL = 90, MAT_GLASS = 40)
build_path = /obj/item/weldingtool
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_TOOLS + RND_SUBCATEGORY_TOOLS_ENGINEERING
)
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_ENGINEERING
/datum/design_techweb/large_welding_tool
name = "industrial welding tool"
desc = "A slightly larger welder with a larger tank."
id = "large_welding_tool"
build_type = PROTOLATHE
materials = list(MAT_STEEL = 500, MAT_GLASS = 250)
build_path = /obj/item/weldingtool/largetank
category = list(
RND_CATEGORY_TOOLS + RND_SUBCATEGORY_TOOLS_ENGINEERING
)
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_ENGINEERING
/datum/design_techweb/screwdriver
name = "screwdriver"
desc = "You can be totally screwwy with this."
id = "screwdriver"
build_type = AUTOLATHE | PROTOLATHE
materials = list(MAT_STEEL = 90)
build_path = /obj/item/tool/screwdriver
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_TOOLS + RND_SUBCATEGORY_TOOLS_ENGINEERING
)
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_ENGINEERING
/datum/design_techweb/wirecutters
name = "wirecutters"
desc = "This cuts wires."
id = "wirecutters"
build_type = AUTOLATHE | PROTOLATHE
materials = list(MAT_STEEL = 100)
build_path = /obj/item/tool/wirecutters
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_TOOLS + RND_SUBCATEGORY_TOOLS_ENGINEERING
)
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_ENGINEERING
/datum/design_techweb/wrench
name = "wrench"
desc = "A wrench with many common uses."
id = "wrench"
build_type = AUTOLATHE | PROTOLATHE
materials = list(MAT_STEEL = 200)
build_path = /obj/item/tool/wrench
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_TOOLS + RND_SUBCATEGORY_TOOLS_ENGINEERING
)
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_ENGINEERING
/datum/design_techweb/minihoe
name = "mini hoe"
desc = "It's used for removing weeds or scratching your back."
id = "spade"
build_type = AUTOLATHE | PROTOLATHE
materials = list(MAT_STEEL = 625)
build_path = /obj/item/material/minihoe
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_TOOLS + RND_SUBCATEGORY_TOOLS_BOTANY
)
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_SERVICE
/datum/design_techweb/extinguisher
name = "fire extinguisher"
desc = "A traditional red fire extinguisher."
id = "fire_extinguisher"
build_type = AUTOLATHE | PROTOLATHE
materials = list(MAT_STEEL = 120)
build_path = /obj/item/extinguisher
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_TOOLS + RND_SUBCATEGORY_TOOLS_MISC
)
departmental_flags = ALL
/datum/design_techweb/bounced_radio
name = "station bounced radio"
desc = "Used to talk to people when headsets don't function. Range is limited."
id = "bounced_radio"
build_type = AUTOLATHE | PROTOLATHE
materials = list(MAT_STEEL = 90, MAT_GLASS = 30)
build_path = /obj/item/radio/off
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_TOOLS + RND_SUBCATEGORY_TOOLS_MISC
)
departmental_flags = ALL
/datum/design_techweb/destination_tagger
name = "destination tagger"
desc = "Used to set the destination of properly wrapped packages."
id = "desttagger"
build_type = AUTOLATHE | PROTOLATHE
materials = list(MAT_STEEL = 250, MAT_GLASS = 125)
build_path = /obj/item/destTagger
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_TOOLS + RND_SUBCATEGORY_TOOLS_CARGO
)
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_CARGO
/datum/design_techweb/flashlight
name = "flashlight"
desc = "A hand-held emergency light."
id = "flashlight"
build_type = AUTOLATHE | PROTOLATHE
materials = list(MAT_STEEL = 60, MAT_GLASS = 25)
build_path = /obj/item/flashlight
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_TOOLS + RND_SUBCATEGORY_TOOLS_MISC
)
departmental_flags = ALL
/datum/design_techweb/maglight
name = "maglight"
desc = "A very, very heavy duty flashlight."
id = "maglight"
build_type = AUTOLATHE | PROTOLATHE
materials = list(MAT_STEEL = 250, MAT_GLASS = 60)
build_path = /obj/item/flashlight/maglight
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_TOOLS + RND_SUBCATEGORY_TOOLS_MISC
)
departmental_flags = ALL
/datum/design_techweb/taperecorder
name = "tape recorder"
desc = "A device that can record to cassette tapes, and play them. It automatically translates the content in playback."
id = "taperecorder"
build_type = AUTOLATHE | PROTOLATHE
materials = list(MAT_STEEL = 75, MAT_GLASS = 40)
build_path = /obj/item/taperecorder
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_TOOLS + RND_SUBCATEGORY_TOOLS_MISC
)
departmental_flags = ALL
/datum/design_techweb/recordingtape
name = "recorder cassette tape"
desc = "A magnetic tape that can hold up to ten minutes of content."
id = "recordingcassette"
build_type = AUTOLATHE | PROTOLATHE
materials = list(MAT_STEEL = 25, MAT_GLASS = 15)
build_path = /obj/item/rectape/random
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_TOOLS + RND_SUBCATEGORY_TOOLS_MISC
)
departmental_flags = ALL
/datum/design_techweb/hatchet
name = "hatchet"
desc = "A very sharp axe blade upon a short fibremetal handle. It has a long history of chopping things, but now it is used for chopping wood."
id = "hatchet"
build_type = AUTOLATHE | PROTOLATHE
materials = list(MAT_PLASTEEL = 500)
build_path = /obj/item/material/knife/machete/hatchet
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_TOOLS + RND_SUBCATEGORY_TOOLS_BOTANY
)
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_SERVICE
/datum/design_techweb/bucket
name = "bucket"
desc = "It's a bucket."
id = "bucket"
build_type = AUTOLATHE | PROTOLATHE
materials = list(MAT_STEEL = 200)
build_path = /obj/item/reagent_containers/glass/bucket
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_TOOLS + RND_SUBCATEGORY_TOOLS_JANITORIAL
)
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_SERVICE
/datum/design_techweb/mop
name = "mop"
desc = "The world of janitalia wouldn't be complete without a mop."
id = "mop"
build_type = AUTOLATHE | PROTOLATHE
materials = list(MAT_STEEL = 250)
build_path = /obj/item/mop
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_TOOLS + RND_SUBCATEGORY_TOOLS_JANITORIAL
)
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_SERVICE
/datum/design_techweb/advmop
name = "advanced mop"
desc = "An advanced mop with pressured water jets that break away the toughest stains."
@@ -26,8 +285,8 @@
name = "spray bottle"
desc = "A spray bottle, with an unscrewable top."
id = "spraybottle"
build_type = PROTOLATHE
materials = list(MAT_STEEL = 300, MAT_GLASS = 300)
build_type = AUTOLATHE | PROTOLATHE
materials = list(MAT_PLASTIC = 2000)
build_path = /obj/item/reagent_containers/spray
category = list(
RND_CATEGORY_TOOLS + RND_SUBCATEGORY_TOOLS_JANITORIAL
@@ -38,7 +297,7 @@
name = "mechanical trap"
desc = "A mechanically activated leg trap. Low-tech, but reliable. Looks like it could really hurt if you set it off."
id = "beartrap"
build_type = PROTOLATHE
build_type = AUTOLATHE | PROTOLATHE
materials = list(MAT_STEEL = 18750)
build_path = /obj/item/beartrap
category = list(
@@ -88,7 +347,7 @@
name = "Rapid Pipe Dispenser"
desc = "A counterpart to the rapid construction device that allows creating and placing atmospheric and disposal pipes."
id = "rapidpipedispenser"
build_type = PROTOLATHE
build_type = AUTOLATHE | PROTOLATHE
// req_tech = list(TECH_ENGINEERING = 4, TECH_MATERIAL = 2)
materials = list(MAT_STEEL = 4000, MAT_GLASS = 2000)
build_path = /obj/item/pipe_dispenser
@@ -328,198 +587,6 @@
RND_CATEGORY_TOOLS + RND_SUBCATEGORY_TOOLS_SERVICE
)
departmental_flags = DEPARTMENT_BITFLAG_SERVICE | DEPARTMENT_BITFLAG_SCIENCE
// Surgical devices
/datum/design_techweb/scalpel_laser1
name = "Basic Laser Scalpel"
desc = "A scalpel augmented with a directed laser, for more precise cutting without blood entering the field. This one looks basic and could be improved."
id = "scalpel_laser1"
build_type = PROTOLATHE
// req_tech = list(TECH_BIO = 2, TECH_MATERIAL = 2, TECH_MAGNET = 2)
materials = list(MAT_STEEL = 12500, MAT_GLASS = 7500)
build_path = /obj/item/surgical/scalpel/laser1
category = list(
RND_CATEGORY_TOOLS + RND_SUBCATEGORY_TOOLS_MEDICAL
)
departmental_flags = DEPARTMENT_BITFLAG_MEDICAL | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/scalpel_laser2
name = "Improved Laser Scalpel"
desc = "A scalpel augmented with a directed laser, for more precise cutting without blood entering the field. This one looks somewhat advanced."
id = "scalpel_laser2"
build_type = PROTOLATHE
// req_tech = list(TECH_BIO = 3, TECH_MATERIAL = 4, TECH_MAGNET = 4)
materials = list(MAT_STEEL = 12500, MAT_GLASS = 7500, MAT_SILVER = 2500)
build_path = /obj/item/surgical/scalpel/laser2
category = list(
RND_CATEGORY_TOOLS + RND_SUBCATEGORY_TOOLS_MEDICAL
)
departmental_flags = DEPARTMENT_BITFLAG_MEDICAL | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/scalpel_laser3
name = "Advanced Laser Scalpel"
desc = "A scalpel augmented with a directed laser, for more precise cutting without blood entering the field. This one looks to be the pinnacle of precision energy cutlery!"
id = "scalpel_laser3"
build_type = PROTOLATHE
// req_tech = list(TECH_BIO = 4, TECH_MATERIAL = 6, TECH_MAGNET = 5)
materials = list(MAT_STEEL = 12500, MAT_GLASS = 7500, MAT_SILVER = 2000, MAT_GOLD = 1500)
build_path = /obj/item/surgical/scalpel/laser3
category = list(
RND_CATEGORY_TOOLS + RND_SUBCATEGORY_TOOLS_MEDICAL
)
departmental_flags = DEPARTMENT_BITFLAG_MEDICAL | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/scalpel_manager
name = "Incision Management System"
desc = "A true extension of the surgeon's body, this marvel instantly and completely prepares an incision allowing for the immediate commencement of therapeutic steps."
id = "scalpel_manager"
build_type = PROTOLATHE
// req_tech = list(TECH_BIO = 4, TECH_MATERIAL = 7, TECH_MAGNET = 5, TECH_DATA = 4)
materials = list (MAT_STEEL = 12500, MAT_GLASS = 7500, MAT_SILVER = 1500, MAT_GOLD = 1500, MAT_DIAMOND = 750)
build_path = /obj/item/surgical/scalpel/manager
category = list(
RND_CATEGORY_TOOLS + RND_SUBCATEGORY_TOOLS_MEDICAL
)
departmental_flags = DEPARTMENT_BITFLAG_MEDICAL | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/saw_manager
name = "Energetic Bone Diverter"
desc = "A strange development following the I.M.S., this heavy tool can split and open, or close and shut, intentional holes in bones."
id = "advanced_saw"
build_type = PROTOLATHE
// req_tech = list(TECH_BIO = 4, TECH_MATERIAL = 7, TECH_MAGNET = 6, TECH_DATA = 5)
materials = list (MAT_STEEL = 12500, MAT_PLASTIC = 800, MAT_SILVER = 1500, MAT_GOLD = 1500, MAT_OSMIUM = 1000)
build_path = /obj/item/surgical/circular_saw/manager
category = list(
RND_CATEGORY_TOOLS + RND_SUBCATEGORY_TOOLS_MEDICAL
)
departmental_flags = DEPARTMENT_BITFLAG_MEDICAL | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/organ_ripper
name = "Organ Ripper"
desc = "A modern and horrifying take on an ancient practice, this tool is capable of rapidly removing an organ from a hopefully willing patient, without damaging it."
id = "organ_ripper"
build_type = PROTOLATHE
// req_tech = list(TECH_BIO = 3, TECH_MATERIAL = 5, TECH_MAGNET = 4, TECH_ILLEGAL = 3)
materials = list (MAT_STEEL = 12500, MAT_PLASTIC = 8000, MAT_OSMIUM = 2500)
build_path = /obj/item/surgical/scalpel/ripper
category = list(
RND_CATEGORY_TOOLS + RND_SUBCATEGORY_TOOLS_MEDICAL
)
departmental_flags = DEPARTMENT_BITFLAG_MEDICAL | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/bone_clamp
name = "Bone Clamp"
desc = "A miracle of modern science, this tool rapidly knits together bone, without the need for bone gel."
id = "bone_clamp"
build_type = PROTOLATHE
// req_tech = list(TECH_BIO = 4, TECH_MATERIAL = 5, TECH_MAGNET = 4, TECH_DATA = 4)
materials = list (MAT_STEEL = 12500, MAT_GLASS = 7500, MAT_SILVER = 2500)
build_path = /obj/item/surgical/bone_clamp
category = list(
RND_CATEGORY_TOOLS + RND_SUBCATEGORY_TOOLS_MEDICAL
)
departmental_flags = DEPARTMENT_BITFLAG_MEDICAL | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/medical_analyzer
name = "health analyzer"
desc = "A hand-held body scanner able to distinguish vital signs of the subject."
id = "medical_analyzer"
build_type = PROTOLATHE
// req_tech = list(TECH_MAGNET = 2, TECH_BIO = 2)
materials = list(MAT_STEEL = 500, MAT_GLASS = 500)
build_path = /obj/item/healthanalyzer
category = list(
RND_CATEGORY_TOOLS + RND_SUBCATEGORY_TOOLS_MEDICAL
)
departmental_flags = DEPARTMENT_BITFLAG_MEDICAL | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/improved_analyzer
name = "improved health analyzer"
desc = "A prototype version of the regular health analyzer, able to distinguish the location of more serious injuries as well as accurately determine radiation levels."
id = "improved_analyzer"
build_type = PROTOLATHE
// req_tech = list(TECH_MAGNET = 5, TECH_BIO = 6)
materials = list(MAT_STEEL = 2000, MAT_GLASS = 1000, MAT_SILVER = 1000, MAT_GOLD = 1500)
build_path = /obj/item/healthanalyzer/improved
category = list(
RND_CATEGORY_TOOLS + RND_SUBCATEGORY_TOOLS_MEDICAL
)
departmental_flags = DEPARTMENT_BITFLAG_MEDICAL | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/advanced_analyzer
name = "advanced health analyzer"
desc = "An even more advanced handheld health scanner, complete with a full biosign monitor and on-board radiation and neurological analysis suites."
id = "advanced_analyzer"
build_type = PROTOLATHE
// req_tech = list(TECH_MAGNET = 7, TECH_BIO = 7, TECH_DATA = 5)
materials = list(MAT_STEEL = 2000, MAT_GLASS = 4000, MAT_SILVER = 3500, MAT_GOLD = 2500, MAT_DIAMOND = 1250)
build_path = /obj/item/healthanalyzer/advanced
category = list(
RND_CATEGORY_TOOLS + RND_SUBCATEGORY_TOOLS_MEDICAL
)
departmental_flags = DEPARTMENT_BITFLAG_MEDICAL | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/phasic_analyzer
name = "phasic health analyzer"
desc = "State of the art handheld health scanner, containing not only a full biosign monitor, on-board radiation, and neurological analysis suites, but also a chemical-analysis suite."
id = "phasic_analyzer"
build_type = PROTOLATHE
materials = list(MAT_STEEL = 2000, MAT_GLASS = 4000, MAT_SILVER = 3500, MAT_GOLD = 2500, MAT_DIAMOND = 2500, MAT_PHORON = 1250)
build_path = /obj/item/healthanalyzer/phasic
category = list(
RND_CATEGORY_TOOLS + RND_SUBCATEGORY_TOOLS_MEDICAL
)
departmental_flags = DEPARTMENT_BITFLAG_MEDICAL | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/gene_scanner
name = "Gene Scanner"
id = "gene_scanner"
build_type = PROTOLATHE
// req_tech = list(TECH_DATA = 1, TECH_BIO = 2)
materials = list(MAT_STEEL = 30, MAT_GLASS = 20)
build_path = /obj/item/gene_scanner
category = list(
RND_CATEGORY_TOOLS + RND_SUBCATEGORY_TOOLS_MEDICAL
)
departmental_flags = DEPARTMENT_BITFLAG_MEDICAL | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/advanced_roller
name = "advanced roller bed"
desc = "A more advanced version of the regular roller bed, with inbuilt surgical stabilisers and an improved folding system."
id = "roller_bed"
build_type = PROTOLATHE
// req_tech = list(TECH_BIO = 3, TECH_MATERIAL = 3, TECH_MAGNET = 3)
materials = list(MAT_STEEL = 4000, MAT_GLASS = 2000, MAT_PHORON = 2000)
build_path = /obj/item/roller/adv
category = list(
RND_CATEGORY_TOOLS + RND_SUBCATEGORY_TOOLS_MEDICAL
)
departmental_flags = DEPARTMENT_BITFLAG_MEDICAL | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/sleevemate
name = "SleeveMate 3700"
id = "sleevemate"
build_type = PROTOLATHE
// req_tech = list(TECH_MATERIAL = 3, TECH_MAGNET = 2, TECH_BIO = 2)
materials = list(MAT_STEEL = 4000, MAT_GLASS = 4000)
build_path = /obj/item/sleevemate
category = list(
RND_CATEGORY_TOOLS + RND_SUBCATEGORY_TOOLS_MEDICAL
)
departmental_flags = DEPARTMENT_BITFLAG_MEDICAL | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/protohypospray
name = "prototype hypospray"
desc = "This prototype hypospray is a sterile, air-needle autoinjector for rapid administration of drugs to patients."
id = "protohypospray"
build_type = PROTOLATHE
// req_tech = list(TECH_MATERIAL = 4, TECH_ENGINEERING = 3, TECH_POWER = 2, TECH_BIO = 4, TECH_ILLEGAL = 2)
materials = list(MAT_STEEL = 500, MAT_GLASS = 1500, MAT_SILVER = 2000, MAT_GOLD = 1500, MAT_URANIUM = 1000)
build_path = /obj/item/reagent_containers/hypospray/science
category = list(
RND_CATEGORY_TOOLS + RND_SUBCATEGORY_TOOLS_MEDICAL
)
departmental_flags = DEPARTMENT_BITFLAG_MEDICAL | DEPARTMENT_BITFLAG_SCIENCE
// Mining digging devices
/datum/design_techweb/drill
@@ -896,7 +963,7 @@
build_path = /obj/item/mail_scanner
build_type = PROTOLATHE
category = list(
RND_CATEGORY_TOOLS
RND_CATEGORY_TOOLS + RND_SUBCATEGORY_TOOLS_CARGO
)
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_CARGO
@@ -907,7 +974,7 @@
build_path = /obj/item/holosign_creator/combifan
build_type = PROTOLATHE
category = list(
RND_CATEGORY_TOOLS
RND_CATEGORY_TOOLS + RND_SUBCATEGORY_TOOLS_ATMOSPHERICS
)
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_ENGINEERING
@@ -942,10 +1009,211 @@
build_path = /obj/item/holosign_creator/medical
build_type = PROTOLATHE
category = list(
RND_CATEGORY_TOOLS
RND_CATEGORY_TOOLS + RND_SUBCATEGORY_TOOLS_MEDICAL
)
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_MEDICAL
/datum/design_techweb/handcuffs
name = "handcuffs"
desc = "Use this to keep prisoners in line."
id = "handcuffs"
materials = list(MAT_STEEL = 625)
build_path = /obj/item/handcuffs
build_type = AUTOLATHE | PROTOLATHE
category = list(
RND_CATEGORY_TOOLS + RND_SUBCATEGORY_TOOLS_SECURITY
)
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_SECURITY
/datum/design_techweb/legcuffs
name = "legcuffs"
desc = "Use this to keep prisoners in line."
id = "legcuffs"
materials = list(MAT_STEEL = 625)
build_path = /obj/item/handcuffs/legcuffs
build_type = AUTOLATHE | PROTOLATHE
category = list(
RND_CATEGORY_TOOLS + RND_SUBCATEGORY_TOOLS_SECURITY
)
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_SECURITY
/datum/design_techweb/legcuffs_fuzzy
name = "fuzzy legcuffs"
desc = "Use this to keep... 'prisoners' in line."
id = "legcuffs_fuzzy"
materials = list(MAT_STEEL = 625)
build_path = /obj/item/handcuffs/legcuffs/fuzzy
build_type = AUTOLATHE | PROTOLATHE
category = list(
RND_CATEGORY_HACKED,
RND_CATEGORY_TOOLS + RND_SUBCATEGORY_TOOLS_SECURITY
)
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_SECURITY
/datum/design_techweb/kitchen_knife
name = "kitchen knife"
desc = "A general purpose " + JOB_CHEF + "'s knife."
id = "kitchen_knife"
materials = list(MAT_STEEL = 375)
build_path = /obj/item/material/knife
build_type = AUTOLATHE | PROTOLATHE
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_TOOLS + RND_SUBCATEGORY_TOOLS_SERVICE
)
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_SERVICE
/datum/design_techweb/fork
name = "fork"
desc = "It's a fork. Sure is pointy."
id = "fork"
materials = list(MAT_STEEL = 75)
build_path = /obj/item/material/kitchen/utensil/fork
build_type = AUTOLATHE | PROTOLATHE
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_TOOLS + RND_SUBCATEGORY_TOOLS_SERVICE
)
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_SERVICE
/datum/design_techweb/spoon
name = "spoon"
desc = "It's a spoon."
id = "spoon"
materials = list(MAT_STEEL = 75)
build_path = /obj/item/material/kitchen/utensil/spoon
build_type = AUTOLATHE | PROTOLATHE
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_TOOLS + RND_SUBCATEGORY_TOOLS_SERVICE
)
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_SERVICE
/datum/design_techweb/plastic_knife
name = "plastic knife"
desc = "A simple plastic knife."
id = "plastic_knife"
materials = list(MAT_PLASTIC = 75)
build_path = /obj/item/material/knife/plastic
build_type = AUTOLATHE | PROTOLATHE
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_TOOLS + RND_SUBCATEGORY_TOOLS_SERVICE
)
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_SERVICE
/datum/design_techweb/plastic_fork
name = "plastic fork"
desc = "It's a plastic fork. Sure is pointy."
id = "plastic_fork"
materials = list(MAT_PLASTIC = 75)
build_path = /obj/item/material/kitchen/utensil/fork/plastic
build_type = AUTOLATHE | PROTOLATHE
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_TOOLS + RND_SUBCATEGORY_TOOLS_SERVICE
)
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_SERVICE
/datum/design_techweb/plastic_spoon
name = "plastic spoon"
desc = "It's a plastic spoon."
id = "plastic_spoon"
materials = list(MAT_PLASTIC = 75)
build_path = /obj/item/material/kitchen/utensil/spoon/plastic
build_type = AUTOLATHE | PROTOLATHE
category = list(
RND_CATEGORY_INITIAL,
RND_CATEGORY_TOOLS + RND_SUBCATEGORY_TOOLS_SERVICE
)
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_SERVICE
/datum/design_techweb/barbedwire
name = "barbedwire"
desc = "A coil of wire."
id = "barbedwire"
materials = list(MAT_STEEL = 10000)
build_path = /obj/item/material/barbedwire
build_type = AUTOLATHE | PROTOLATHE
category = list(
RND_CATEGORY_HACKED,
RND_CATEGORY_TOOLS + RND_SUBCATEGORY_TOOLS_SERVICE
)
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_SERVICE
/datum/design_techweb/snarewire
name = "snare wire"
desc = "A coil of plastic snares."
id = "snarewire"
materials = list(MAT_PLASTIC = 10000)
build_path = /obj/item/material/barbedwire/plastic
build_type = AUTOLATHE | PROTOLATHE
category = list(
RND_CATEGORY_HACKED,
RND_CATEGORY_TOOLS + RND_SUBCATEGORY_TOOLS_SERVICE
)
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_SERVICE
/datum/design_techweb/rcd_loaded
name = "rapid construction device"
desc = "A device used to rapidly build and deconstruct. Reload with compressed matter cartridges."
id = "rcd_loaded"
materials = list(MAT_STEEL = 62500)
build_path = /obj/item/rcd
build_type = AUTOLATHE | PROTOLATHE
category = list(
RND_CATEGORY_TOOLS + RND_SUBCATEGORY_TOOLS_ENGINEERING_ADVANCED
)
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_ENGINEERING
/datum/design_techweb/rcd_ammo
name = "compressed matter cartridge"
desc = "Highly compressed matter for the RCD."
id = "rcd_ammo"
materials = list(MAT_STEEL = 30000, MAT_GLASS = 15000)
build_path = /obj/item/rcd_ammo
build_type = AUTOLATHE | PROTOLATHE
category = list(
RND_CATEGORY_TOOLS + RND_SUBCATEGORY_TOOLS_ENGINEERING_ADVANCED
)
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_ENGINEERING
/datum/design_techweb/rsf
name = "Rapid-Service-Fabricator"
desc = "A device used to rapidly deploy service items."
id = "rsf"
materials = list(MAT_STEEL = 31250)
build_path = /obj/item/rsf
build_type = AUTOLATHE | PROTOLATHE
category = list(
RND_CATEGORY_TOOLS + RND_SUBCATEGORY_TOOLS_SERVICE
)
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_SERVICE
/datum/design_techweb/rms
name = "Rapid Material Synthesizer"
desc = "A device used to rapidly synthesize materials."
id = "rms"
materials = list(MAT_STEEL = 62500, MAT_GLASS = 15000)
build_path = /obj/item/rms
build_type = AUTOLATHE | PROTOLATHE
category = list(
RND_CATEGORY_TOOLS + RND_SUBCATEGORY_TOOLS_ENGINEERING_ADVANCED
)
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_ENGINEERING
/datum/design_techweb/electric_welding_tool
name = "electric welding tool"
desc = "A welder which runs off of electricity."
id = "electric_welding_tool"
build_type = AUTOLATHE | PROTOLATHE
materials = list(MAT_STEEL = 90, MAT_GLASS = 40)
build_path = /obj/item/weldingtool/electric/unloaded
category = list(
RND_CATEGORY_TOOLS + RND_SUBCATEGORY_TOOLS_ENGINEERING
)
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_ENGINEERING
/datum/design_techweb/marker_beacon
name = "Marker Beacons"
desc = "Prismatic path illumination devices. Used by explorers and miners to mark paths and warn of danger."
@@ -997,11 +1265,12 @@
/datum/design_techweb/shovel
name = "Shovel"
id = "shovel"
materials = list(MAT_STEEL = 50)
materials = list(MAT_STEEL = 4000)
build_path = /obj/item/shovel
build_type = PROTOLATHE | AUTOLATHE
category = list(
RND_CATEGORY_TOOLS
RND_CATEGORY_INITIAL,
RND_CATEGORY_TOOLS + RND_SUBCATEGORY_TOOLS_MINING
)
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_CARGO
@@ -1012,7 +1281,8 @@
build_path = /obj/item/ice_pick
build_type = PROTOLATHE | AUTOLATHE
category = list(
RND_CATEGORY_TOOLS
RND_CATEGORY_INITIAL,
RND_CATEGORY_TOOLS + RND_SUBCATEGORY_TOOLS_MINING
)
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_CARGO
@@ -179,46 +179,6 @@
)
departmental_flags = DEPARTMENT_BITFLAG_SECURITY | DEPARTMENT_BITFLAG_SCIENCE
// Ballistic ammo
/datum/design_techweb/ammo_9mmAdvanced
name = "9mm magazine"
id = "ammo_9mm"
desc = "A 21 round magazine for an advanced 9mm SMG."
// req_tech = list(TECH_COMBAT = 4, TECH_MATERIAL = 3)
build_type = PROTOLATHE
materials = list(MAT_STEEL = 3750, MAT_SILVER = 100) // Requires silver for proprietary magazines! Or something.
build_path = /obj/item/ammo_magazine/m9mmAdvanced
category = list(
RND_CATEGORY_WEAPONS + RND_SUBCATEGORY_WEAPONS_AMMO
)
departmental_flags = DEPARTMENT_BITFLAG_SECURITY | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/stunshell
name = "stun shells"
desc = "A stunning shell for a shotgun."
id = "stunshell"
// req_tech = list(TECH_COMBAT = 3, TECH_MATERIAL = 3)
build_type = PROTOLATHE
materials = list(MAT_STEEL = 4000)
build_path = /obj/item/ammo_magazine/ammo_box/b12g/stunshell
category = list(
RND_CATEGORY_WEAPONS + RND_SUBCATEGORY_WEAPONS_AMMO
)
departmental_flags = DEPARTMENT_BITFLAG_SECURITY | DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/empshell
name = "emp shells"
desc = "An electromagnetic shell for a shotgun."
id = "empshell"
// req_tech = list(TECH_COMBAT = 4, TECH_MAGNET = 3)
build_type = PROTOLATHE
materials = list(MAT_STEEL = 4000, MAT_URANIUM = 1000)
build_path = /obj/item/ammo_magazine/ammo_box/b12g/emp
category = list(
RND_CATEGORY_WEAPONS + RND_SUBCATEGORY_WEAPONS_AMMO
)
departmental_flags = DEPARTMENT_BITFLAG_SECURITY | DEPARTMENT_BITFLAG_SCIENCE
// Other weapons
/datum/design_techweb/rapidsyringe
name = "Rapid Syringe Gun"
@@ -251,9 +211,10 @@
id = "chemsprayer"
// req_tech = list(TECH_MATERIAL = 3, TECH_ENGINEERING = 3, TECH_BIO = 2)
build_type = PROTOLATHE
materials = list(MAT_STEEL = 5000, MAT_GLASS = 1000)
materials = list(MAT_STEEL = 5000, MAT_STEEL = 2000)
build_path = /obj/item/reagent_containers/spray/chemsprayer
category = list(
RND_CATEGORY_HACKED,
RND_CATEGORY_WEAPONS + RND_SUBCATEGORY_WEAPONS_RANGED
)
departmental_flags = DEPARTMENT_BITFLAG_MEDICAL | DEPARTMENT_BITFLAG_SCIENCE
@@ -960,7 +921,6 @@
id = "riflescope"
// req_tech = list(TECH_ILLEGAL = 2, TECH_MATERIAL = 2)
build_type = PROTOLATHE
build_type = PROTOLATHE
materials = list(MAT_STEEL = 4000, MAT_GLASS = 4000)
build_path = /obj/item/binoculars/scope
category = list(
@@ -973,7 +933,6 @@
id = "slimebaton"
// req_tech = list(TECH_MATERIAL = 2, TECH_BIO = 2, TECH_POWER = 3, TECH_COMBAT = 3)
build_type = PROTOLATHE
build_type = PROTOLATHE
materials = list(MAT_STEEL = 5000)
build_path = /obj/item/melee/baton/slime
category = list(
@@ -986,7 +945,6 @@
id = "slimetaser"
// req_tech = list(TECH_MATERIAL = 3, TECH_BIO = 3, TECH_POWER = 4, TECH_COMBAT = 4)
build_type = PROTOLATHE
build_type = PROTOLATHE
materials = list(MAT_STEEL = 5000)
build_path = /obj/item/gun/energy/taser/xeno
category = list(
@@ -1000,7 +958,6 @@
id = "monkey_gun"
// req_tech = list(TECH_BIO = 6, TECH_BLUESPACE = 5)
build_type = PROTOLATHE
build_type = PROTOLATHE
materials = list(MAT_STEEL = 3500, MAT_GLASS = 3500, MAT_PHORON = 1500, MAT_DIAMOND = 1500)
build_path = /obj/item/xenobio/monkey_gun
category = list(
@@ -1008,6 +965,135 @@
)
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE
/datum/design_techweb/knuckledusters
name = "knuckle dusters"
desc = "A pair of brass knuckles. Generally used to enhance the user's punches."
id = "knuckledusters"
build_type = AUTOLATHE
materials = list(MAT_STEEL = 625)
build_path = /obj/item/clothing/accessory/knuckledusters
category = list(
RND_CATEGORY_HACKED,
RND_CATEGORY_INITIAL,
RND_CATEGORY_WEAPONS + RND_SUBCATEGORY_WEAPONS_MELEE
)
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_SECURITY
/datum/design_techweb/tacknife
name = "tactical knife"
desc = "A steel knife made for combat."
id = "tacknife"
build_type = AUTOLATHE
materials = list(MAT_STEEL = 800)
build_path = /obj/item/material/knife/tacknife
category = list(
RND_CATEGORY_HACKED,
RND_CATEGORY_INITIAL,
RND_CATEGORY_WEAPONS + RND_SUBCATEGORY_WEAPONS_MELEE
)
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_SECURITY
/* Unbalanced material weapons
/datum/design_techweb/claymore
name = "claymore"
desc = "A very large sword."
id = "claymore"
build_type = AUTOLATHE
materials = list(MAT_STEEL = 10000)
build_path = /obj/item/material/sword
category = list(
RND_CATEGORY_HACKED,
RND_CATEGORY_INITIAL,
RND_CATEGORY_WEAPONS + RND_SUBCATEGORY_WEAPONS_MELEE
)
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_SECURITY
/datum/design_techweb/gladius
name = "gladius"
desc = "An ancient short sword, designed to stab and cut."
id = "gladius"
build_type = AUTOLATHE
materials = list(MAT_STEEL = 5000)
build_path = /obj/item/material/sword/gladius
category = list(
RND_CATEGORY_HACKED,
RND_CATEGORY_INITIAL,
RND_CATEGORY_WEAPONS + RND_SUBCATEGORY_WEAPONS_MELEE
)
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_SECURITY
/datum/design_techweb/katana
name = "katana"
desc = "An ancient short sword, designed to slice and dice."
id = "katana"
build_type = AUTOLATHE
materials = list(MAT_STEEL = 6000)
build_path = /obj/item/material/sword/katana
category = list(
RND_CATEGORY_HACKED,
RND_CATEGORY_INITIAL,
RND_CATEGORY_WEAPONS + RND_SUBCATEGORY_WEAPONS_MELEE
)
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_SECURITY
/datum/design_techweb/rapier
name = "rapier"
desc = "A slender, fancy and sharply pointed sword."
id = "rapier"
build_type = AUTOLATHE
materials = list(MAT_STEEL = 6000)
build_path = /obj/item/material/sword/rapier
category = list(
RND_CATEGORY_HACKED,
RND_CATEGORY_INITIAL,
RND_CATEGORY_WEAPONS + RND_SUBCATEGORY_WEAPONS_MELEE
)
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_SECURITY
/datum/design_techweb/sabre
name = "sabre"
desc = "A sharp curved sword, a favored weapon of pirates far in the past."
id = "sabre"
build_type = AUTOLATHE
materials = list(MAT_STEEL = 7400)
build_path = /obj/item/material/sword/sabre
category = list(
RND_CATEGORY_HACKED,
RND_CATEGORY_INITIAL,
RND_CATEGORY_WEAPONS + RND_SUBCATEGORY_WEAPONS_MELEE
)
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_SECURITY
/datum/design_techweb/longsword
name = "longsword"
desc = "a more elegant weapon from a more civilised age"
id = "longsword"
build_type = AUTOLATHE
materials = list(MAT_STEEL = 8000)
build_path = /obj/item/material/twohanded/longsword
category = list(
RND_CATEGORY_HACKED,
RND_CATEGORY_INITIAL,
RND_CATEGORY_WEAPONS + RND_SUBCATEGORY_WEAPONS_MELEE
)
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_SECURITY
// has no wielded sprite
/datum/design_techweb/battleaxe
name = "battleaxe"
desc = "A one handed battle axe, still a deadly weapon."
id = "battleaxe"
build_type = AUTOLATHE
materials = list(MAT_STEEL = 7000)
build_path = /obj/item/material/sword/battleaxe
category = list(
RND_CATEGORY_HACKED,
RND_CATEGORY_INITIAL,
RND_CATEGORY_WEAPONS + RND_SUBCATEGORY_WEAPONS_MELEE
)
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_SECURITY
*/
/datum/design_techweb/anomaly_gun
name = "Handheld Anomalous Particle Releaser"
id = "anom_gun"
@@ -27,4 +27,42 @@
return EXPERIMENT_PROG_INT("Destroy bluespace crystal.", \
traits & EXPERIMENT_TRAIT_DESTRUCTIVE ? scanned[target] : seen_instances.len, required_atoms[target])
/// Mech parts to start off robotics
/datum/experiment/scanning/random/destruct_ripley_parts
name = "Mechatronics Part Analysis"
description = "Destructively analyze one of several basic mechatronics parts."
possible_types = list(
/obj/item/circuitboard/mecha/ripley/main = 1,
/obj/item/circuitboard/mecha/ripley/peripherals = 1,
/obj/item/mecha_parts/chassis/ripley = 1,
/obj/item/mecha_parts/part/ripley_torso = 1,
/obj/item/mecha_parts/part/ripley_left_arm = 1,
/obj/item/mecha_parts/part/ripley_right_arm = 1,
/obj/item/mecha_parts/part/ripley_left_leg = 1,
/obj/item/mecha_parts/part/ripley_right_leg = 1
)
total_requirement = 2
allowed_experimentors = DESTRUCTIVE_DEVICES
traits = EXPERIMENT_TRAIT_DESTRUCTIVE
exp_tag = EXPERIMENT_TAG_PHYSICAL
/datum/experiment/scanning/random/destruct_ripley_parts/serialize_progress_stage(atom/target, list/seen_instances)
return EXPERIMENT_PROG_INT("Destroy basic mechatronics components.", \
traits & EXPERIMENT_TRAIT_DESTRUCTIVE ? scanned[target] : seen_instances.len, required_atoms[target])
/// Basic circuitboard
/datum/experiment/scanning/destruct_circuitboard
name = "Circuitboard Analysis"
description = "Destructively analyze some basic circuitry to assist in planning your own complex assemblies."
required_atoms = list(
/obj/item/circuitboard = 1
)
allowed_experimentors = DESTRUCTIVE_DEVICES
traits = EXPERIMENT_TRAIT_DESTRUCTIVE
exp_tag = EXPERIMENT_TAG_PHYSICAL
/datum/experiment/scanning/destruct_circuitboard/serialize_progress_stage(atom/target, list/seen_instances)
return EXPERIMENT_PROG_INT("Destroy a circuitboard.", \
traits & EXPERIMENT_TRAIT_DESTRUCTIVE ? scanned[target] : seen_instances.len, required_atoms[target])
#undef DESTRUCTIVE_DEVICES
@@ -210,13 +210,6 @@
get_asset_datum(/datum/asset/spritesheet_batched/research_designs)
)
/obj/machinery/rnd/production/attack_hand(mob/user)
. = ..()
if(.)
return
tgui_interact(user)
/obj/machinery/rnd/production/tgui_interact(mob/user, datum/tgui/ui)
ui = SStgui.try_update_ui(user, src, ui)
if(!ui)
@@ -235,6 +228,8 @@
for(var/datum/design_techweb/design in cached_designs)
if(!(isnull(allowed_department_flags) || (design.departmental_flags & allowed_department_flags)))
continue
if(!hacked && (RND_CATEGORY_HACKED in design.category))
continue
var/cost = list()
@@ -242,14 +237,15 @@
for(var/mat_id in design.materials)
cost[mat_id] = OPTIMAL_COST(design.materials[mat_id] * coefficient)
var/icon_size = spritesheet.icon_size_id(design.id)
var/css_id = sanitize_css_class_name(design.id)
var/size = spritesheet.icon_size_id(css_id)
designs[design.id] = list(
"name" = design.name,
"desc" = design.get_description(),
"cost" = cost,
"id" = design.id,
"categories" = design.category,
"icon" = "[icon_size == size32x32 ? "" : "[icon_size] "][design.id]"
"icon" = "[size == size32x32 ? "" : "[size] "][css_id]"
)
data["designs"] = designs
@@ -6,6 +6,10 @@
circuit = /obj/item/circuitboard/circuit_imprinter
allowed_buildtypes = IMPRINTER
/obj/machinery/rnd/production/circuit_imprinter/Initialize(mapload)
. = ..()
wires = new /datum/wires/circuit_imprinter(src)
/obj/machinery/rnd/production/circuit_imprinter/compute_efficiency()
var/rating = 0
for(var/obj/item/stock_parts/manipulator/manip in component_parts)
@@ -406,14 +406,15 @@
for(var/mat_id in materials)
cost[mat_id] = OPTIMAL_COST(materials[mat_id] * component_coeff)
var/icon_size = spritesheet.icon_size_id(design.id)
var/css_id = sanitize_css_class_name(design.id)
var/size = spritesheet.icon_size_id(css_id)
designs[design.id] = list(
"name" = design.name,
"desc" = design.get_description(),
"cost" = cost,
"id" = design.id,
"categories" = design.category,
"icon" = "[icon_size == size32x32 ? "" : "[icon_size] "][design.id]",
"icon" = "[size == size32x32 ? "" : "[size] "][css_id]",
"constructionTime" = get_construction_time_w_coeff(design.construction_time)
)
@@ -5,3 +5,7 @@
circuit = /obj/item/circuitboard/machine/protolathe
production_animation = "protolathe_n"
allowed_buildtypes = PROTOLATHE
/obj/machinery/rnd/production/protolathe/Initialize(mapload)
. = ..()
wires = new /datum/wires/protolathe(src)
+3 -2
View File
@@ -283,10 +283,11 @@ Nothing else in the console has ID requirements.
for (var/design_id in SSresearch.techweb_designs)
var/datum/design_techweb/design = SSresearch.techweb_designs[design_id] || SSresearch.error_design
var/compressed_id = "[compress_id(design.id)]"
var/size = spritesheet.icon_size_id(design.id)
var/css_id = sanitize_css_class_name(design.id)
var/size = spritesheet.icon_size_id(css_id)
design_cache[compressed_id] = list(
design.name,
"[size == size32x32 ? "" : "[size] "][design.id]"
"[size == size32x32 ? "" : "[size] "][css_id]"
)
// Ensure id cache is included for decompression
+20
View File
@@ -15,6 +15,8 @@
var/datum/techweb/stored_research
///The item loaded inside the machine, used by experimentors and destructive analyzers only.
var/datum/weakref/loaded_item
/// Wires for hacking, not every rnd machine has this set
var/datum/wires/protolathe/wires = null
/obj/machinery/rnd/Initialize(mapload)
. = ..()
@@ -27,6 +29,12 @@
if(stored_research)
log_research("[src] disconnected from techweb [stored_research] (destroyed).")
stored_research = null
QDEL_NULL(wires)
return ..()
/obj/machinery/rnd/tgui_status(mob/user)
if(disabled)
return STATUS_CLOSE
return ..()
///Called when attempting to connect the machine to a techweb, forgetting the old.
@@ -45,10 +53,22 @@
/obj/machinery/rnd/proc/reset_busy()
busy = FALSE
/obj/machinery/rnd/attack_hand(mob/user)
. = ..()
if(.)
return
if(wires && panel_open)
return wires.Interact(user)
if(disabled)
return
tgui_interact(user)
/obj/machinery/rnd/attackby(obj/item/W, mob/user, attack_modifier, click_parameters)
add_fingerprint(user)
if(default_deconstruction_screwdriver(user, W))
if(wires && panel_open)
wires.Interact(user)
return
if(default_deconstruction_crowbar(user, W))
return
@@ -11,18 +11,20 @@
"tank_management",
"shutoff_monitor",
// "thermomachine",
// "space_heater",
"space_heater",
// "scrubber",
// "generic_tank",
// "oxygen_tank",
// "plasma_tank",
// "plasmaman_tank_belt",
// "plasmarefiller",
// "extinguisher",
"fire_extinguisher",
// "pocketfireextinguisher",
// "gas_filter",
// "plasmaman_gas_filter",
// "pipe_painter",
"atmoscontrol",
"area_atmos",
)
/datum/techweb_node/gas_compression
@@ -48,7 +50,7 @@
// "turbine_stator",
// "atmos_thermal",
// "pneumatic_seal",
// "large_welding_tool",
"large_welding_tool",
)
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = TECHWEB_TIER_1_POINTS)
announce_channels = list(CHANNEL_ENGINEERING)
@@ -83,10 +85,8 @@
"gyrotron_control",
"fusion_core",
"fusion_injector",
"rapidpipedispenser",
// "adv_fire_extinguisher",
// "bolter_wrench",
// "rpd_loaded",
// "engine_goggles",
// "crystallizer",
)
@@ -8,7 +8,7 @@
// "healthanalyzer",
// "autopsyscanner",
// "genescanner",
// "medical_kiosk",
"medical_kiosk",
// "chem_master",
// "ph_meter",
// "scigoggles",
@@ -88,10 +88,10 @@
"plant_analyzer",
// "seed_extractor",
// "watering_can",
// "spade",
"spade",
// "cultivator",
// "secateurs",
// "hatchet",
"hatchet",
)
/datum/techweb_node/hydroponics
@@ -1,6 +1,5 @@
/datum/techweb_node/programming
id = TECHWEB_NODE_PROGRAMMING
starting_node = TRUE
display_name = "Programming"
description = "Dedicate an entire shift to program a fridge to greet you when opened."
prereq_ids = list(TECHWEB_NODE_ROBOTICS)
@@ -14,6 +13,9 @@
"assembly-device",
"circuit-bug",
)
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = TECHWEB_TIER_1_POINTS)
discount_experiments = list(/datum/experiment/scanning/destruct_circuitboard = TECHWEB_TIER_1_POINTS)
announce_channels = list(CHANNEL_SCIENCE)
/datum/techweb_node/circuit_shells
id = TECHWEB_NODE_CIRCUIT_SHELLS
@@ -23,7 +25,7 @@
design_ids = list(
"assembly-implant",
"ic_printer_upgrade_adv",
"ic_printer_upgrade_clone",
"ic_printer_upgrade_clone"
)
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = TECHWEB_TIER_1_POINTS)
announce_channels = list(CHANNEL_SCIENCE)
@@ -1,7 +1,6 @@
/datum/techweb_node/augmentation
id = TECHWEB_NODE_AUGMENTATION
starting_node = TRUE
display_name = "Augmentation"
description = "For those who prefer shiny metal over squishy flesh."
prereq_ids = list(TECHWEB_NODE_ROBOTICS)
@@ -50,6 +49,7 @@
"platform_armour",
)
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = TECHWEB_TIER_1_POINTS)
announce_channels = list(CHANNEL_SCIENCE)
/datum/techweb_node/cybernetics
id = TECHWEB_NODE_CYBERNETICS
@@ -90,7 +90,6 @@
"borg_language_module",
"borg_taser_module",
"sflash",
// "cyborgrecharger",
// "advanced_l_arm",
// "advanced_r_arm",
// "advanced_l_leg",
@@ -247,6 +246,7 @@
design_ids = list(
"prot_orch",
"prot_refact",
"protean_reconstitutor",
)
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = TECHWEB_TIER_5_POINTS)
announce_channels = list(CHANNEL_SCIENCE, CHANNEL_MEDICAL)
@@ -11,22 +11,24 @@
"basic_micro_laser",
"micro_manipulator",
"basic_cell",
"high_cell",
"device_cell",
"weapon_cell",
"high_mech_cell",
"potato_cell",
"smes_magnetic_coil",
// "basic_scanning",
// "condenser",
// "igniter",
// "infrared_emitter",
// "prox_sensor",
// "signaler",
// "timer",
"igniter",
"infrared_emitter",
"prox_sensor",
"signaler",
"timer",
// "voice_analyzer",
// "health_sensor",
// "sflash",
"console_screen",
"motor",
"gear",
"spring"
)
/datum/techweb_node/parts_upg
@@ -40,8 +42,8 @@
"adv_capacitor",
"adv_sensor",
"high_micro_laser",
"super_cell",
"super_mech_cell",
"high_cell",
"high_mech_cell",
"rped",
"smes_cap_basic",
"smes_trans_basic",
@@ -60,9 +62,9 @@
"super_capacitor",
"phasic_sensor",
"ultra_micro_laser",
"hyper_cell",
"super_cell",
"super_mech_cell",
"super_device",
"hyper_device",
"arped",
"smes_cap_ultra",
"smes_trans_ultra",
@@ -80,7 +82,6 @@
"pbrped",
"hyper_mani",
"hyper_matter_bin",
"hyper_mani",
"hyper_capacitor",
"hyper_sensor",
"hyper_micro_laser",
@@ -109,6 +110,8 @@
"comm_monitor",
"comm_server",
"ntnet_relay",
"pda_multicaster",
"comm_traffic",
"s-ansible",
"s-filter",
"s-amplifier",
@@ -152,19 +155,26 @@
"tscanner",
"rcon_console",
"powermonitor",
"solarcontrol",
"circuit_imprinter",
"airlock_cycling",
"partslathe",
"securedoor",
// "circuit_imprinter_offstation",
// "solarcontrol",
"solarcontrol",
"solar_tracker",
// "solar_panel",
// "solar_tracker",
// "power_control",
// "airalarm_electronics",
// "airlock_board",
// "firealarm_electronics",
"power_control",
"intercom",
"airalarm_electronics",
"airlock_board",
"geiger",
"firealarm_electronics",
"camera_assembly",
"status_display",
"ai_status_display",
"newscaster",
"timeclock",
"keycard_auth",
// "firelock_board",
// "trapdoor_electronics",
// "blast",
@@ -175,16 +185,21 @@
// "decal_painter",
// "rwd",
// "cable_coil",
// "welding_helmet",
// "welding_tool",
// "mini_welding_tool",
// "multitool",
// "wrench",
// "crowbar",
// "screwdriver",
// "wirecutters",
// "light_bulb",
// "light_tube",
"welding_helmet",
"welding_tool",
"mini_welding_tool",
"multitool",
"wrench",
"prybar",
"crowbar",
"screwdriver",
"wirecutters",
"light_bulb",
"light_tube",
"large_light_bulb",
"large_light_tube",
"floor_light",
"electrochromic",
// "crossing_signal",
// "guideway_sensor",
// "manuunloader",
@@ -195,6 +210,17 @@
// "manusorter",
// "manurouter",
// "mailsorter",
"automatic_pipe_layer",
)
/datum/techweb_node/emerge_power
id = TECHWEB_NODE_EMERGPOWER
starting_node = TRUE
display_name = "Emergency Power"
description = "Restarting the station power grid one step at a time."
design_ids = list(
"dtype_rtg",
"ctype_rtg",
)
/datum/techweb_node/energy_manipulation
@@ -218,10 +244,12 @@
// "portable_smes",
// "power_connector",
// "emitter",
// "grounding_rod",
// "cell_charger",
// "recharger",
// "welding_goggles",
"grounding_rod",
"gyrotron",
"supermatter_core_manager",
"supermatter_injector_control",
"welding_goggles",
"electric_welding_tool",
// "tray_goggles",
// "geigercounter",
)
@@ -246,7 +274,7 @@
// "holosignbar",
// "holobarrier_jani",
// "holobarrier_med",
// "holopad",
"holopad",
// "vendatray",
// "holodisk",
// "modular_shield_generator",
@@ -277,8 +305,9 @@
// "rangedanalyzer",
// "rtd_loaded",
// "mech_rcd",
// "rcd_loaded",
// "rcd_ammo",
"rcd_loaded",
"rcd_ammo",
"rms",
// "weldingmask",
// "magboots",
)
@@ -0,0 +1,72 @@
/datum/techweb_node/material_sheets
id = TECHWEB_NODE_MATERIALSHEETS
starting_node = TRUE
display_name = "Material Printing"
description = "Autolathe material printing framework."
design_ids = list(
MAT_IRON,
MAT_STEEL,
"rods",
MAT_SILVER,
MAT_GOLD,
MAT_TIN,
MAT_COPPER,
MAT_DIAMOND,
MAT_PHORON,
MAT_URANIUM,
MAT_TITANIUM,
MAT_PLASTIC,
MAT_PAINITE,
MAT_VOPAL,
MAT_QUARTZ,
MAT_VALHOLLIDE,
MAT_VERDANTIUM,
MAT_MORPHIUM,
MAT_GLAMOUR,
MAT_EAGATE,
MAT_SANDSTONE,
MAT_MARBLE,
MAT_SUPERMATTER,
MAT_PLASTEEL,
MAT_DURASTEEL,
MAT_PLASTITANIUM,
MAT_LEAD,
MAT_PLATINUM,
MAT_METALHYDROGEN,
MAT_DEUTERIUM,
MAT_TRITIUM,
MAT_OSMIUM,
MAT_GRAPHITE,
MAT_BRONZE,
MAT_ALUMINIUM,
MAT_GLASS,
MAT_PGLASS,
MAT_TITANIUMGLASS,
MAT_PLASTITANIUMGLASS,
MAT_WOOD,
MAT_SIFWOOD,
MAT_HARDWOOD,
MAT_BIRCHWOOD,
MAT_PINEWOOD,
MAT_OAKWOOD,
MAT_ACACIAWOOD,
MAT_REDWOOD,
MAT_ALGAE,
MAT_WAX,
MAT_CARDBOARD,
MAT_SNOW,
MAT_SNOWBRICK,
MAT_FLINT,
MAT_CONCRETE,
MAT_CHITIN,
MAT_FUR,
MAT_WOOL,
MAT_RESIN,
MAT_LEATHER,
MAT_COTTON,
MAT_SMOLEBRICKS,
MAT_LOG,
MAT_SIFLOG,
MAT_HARDLOG,
MAT_WOODEN_STICK
)
@@ -1,7 +1,6 @@
// Main Mecha Tree
/datum/techweb_node/mech_assembly
id = TECHWEB_NODE_MECH_ASSEMBLY
starting_node = TRUE
display_name = "Exosuit Assembly"
description = "Development of mechanical exosuits designed to contend with artificial gravity while transporting cargo."
prereq_ids = list(TECHWEB_NODE_ROBOTICS)
@@ -61,6 +60,9 @@
"weasel_right_leg",
"weasel_head",
)
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = TECHWEB_TIER_1_POINTS)
discount_experiments = list(/datum/experiment/scanning/random/destruct_ripley_parts = TECHWEB_TIER_1_POINTS)
announce_channels = list(CHANNEL_SCIENCE)
/datum/techweb_node/mech_equipment
id = TECHWEB_NODE_MECH_EQUIPMENT
@@ -6,7 +6,7 @@
design_ids = list(
"operating",
"scan_console",
// "medicalbed",
"medicalbed",
// "defibmountdefault",
"defibrillator",
// "surgical_drapes",
@@ -14,6 +14,8 @@
"retractor",
"hemostat",
"cautery",
"fixovein",
"bonegel",
"circular_saw",
"surgicaldrill",
"bonesetter",
@@ -36,6 +38,13 @@
// "jerrycan",
// "reflex_hammer",
// "blood_scanner",
"sleevecard",
"body_record_disk",
"scanner_console",
"body_scanner",
"sleeper_console",
"sleeper",
"bioprinter",
)
/datum/techweb_node/chem_synthesis
@@ -107,6 +116,9 @@
// "defibmount",
// "medicalbed_emergency",
// "piercesyringe",
"syringe_gun",
"syringe_cartridge",
"bioregen"
)
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = TECHWEB_TIER_3_POINTS)
required_experiments = list(/datum/experiment/scanning/points/easy_cytology)
@@ -5,21 +5,15 @@
description = "Refinement and processing of alloys and ores to enhance their utility and value."
design_ids = list(
"autolathe",
// "pickaxe",
// "shovel",
"pickaxe",
"shovel",
"iceaxe",
// "conveyor_switch",
// "conveyor_belt",
// "mass_driver",
// "recycler",
// "stack_machine",
// "stack_console",
// "rglass",
// "plasmaglass",
// "plasmareinforcedglass",
// "plasteel",
// "titaniumglass",
// "plastitanium",
// "plastitaniumglass",
)
/datum/techweb_node/mining
@@ -42,7 +36,8 @@
// "b_smelter",
// "b_refinery",
// "ore_redemption",
// "mining_equipment_vendor",
"mining_equipment_vendor",
"survey_equipment_vendor",
// "mech_mscanner",
// "superresonator",
// "mech_drill",
@@ -51,7 +46,6 @@
// "beacon",
// "telesci_gps",
// "mod_visor_meson",
// "mesons",
)
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = TECHWEB_TIER_1_POINTS)
announce_channels = list(CHANNEL_SUPPLY)
@@ -121,15 +115,3 @@
)
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = TECHWEB_TIER_1_POINTS)
announce_channels = list(CHANNEL_SUPPLY)
/datum/techweb_node/snow_clearing
id = TECHWEB_NODE_DEBRISREMOVAL
display_name = "Debris Removal"
description = "Development of tools for removing rocks, snow, ice, and many other forms of loose debris."
prereq_ids = list(TECHWEB_NODE_MATERIAL_PROC)
design_ids = list(
"shovel",
"iceaxe",
)
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = TECHWEB_TIER_1_POINTS)
announce_channels = list(CHANNEL_SUPPLY)
@@ -1,14 +1,14 @@
/datum/techweb_node/mod_suit
id = TECHWEB_NODE_MOD_SUIT
starting_node = TRUE
display_name = "RIG Suit"
description = "Specialized back mounted power suits with various different modules."
prereq_ids = list(TECHWEB_NODE_ROBOTICS)
starting_node = TRUE
design_ids = list(
"rigmodule_belt_basic",
"zero_rig_module",
"rig_device_pen",
"rig_device_paperdispenser",
"suit_cooling_unit",
// "suit_storage_unit",
// "mod_shell",
// "mod_chestplate",
@@ -34,7 +34,6 @@
"rig_device_plasmacutter",
"rig_device_healthanalyzer",
"rig_gun_sizegun",
"rig_siphon",
"rig_component_datajack",
// "modlink_scryer",
// "mod_clamp",
@@ -9,15 +9,18 @@
"rdconsole",
"bomb_tester",
"tech_disk",
// "rdservercontrol",
// "doppler_array",
"rdservercontrol",
"doppler_array",
// "experimentor",
"destructive_analyzer",
// "destructive_scanner",
"artifact_harvester",
"artifact_scanpad",
// "laptop",
// "portadrive_basic",
// "portadrive_advanced",
// "portadrive_super",
"electropack",
)
/datum/techweb_node/protolathe_boards
@@ -62,7 +65,6 @@
"belt_holding_utility",
"bluespacebeaker",
"bsflare",
"bluespace_crystal",
"beacon",
"beacon_locator",
"chameleon",
@@ -77,7 +79,6 @@
"shelter_capsule_kitchen",
"shelter_capsule_pocketdorm",
"shelter_capsule_luxuryrecroom",
// "ore_silo",
// "plumbing_receiver",
// "adv_watering_can",
// "bluespace_coffeepot",
@@ -4,7 +4,9 @@
display_name = "Potential Recreational Applications"
description = "Devices made for rest and recreation purposes."
design_ids = list(
// TODO: Leash & Collar
"holocollar",
"leash",
"vr_sleeper",
// Compliance
// Mouse Ray
)
@@ -11,16 +11,181 @@
"dartgun_ammo_m",
// "toy_armblade",
// "toygun",
// "c38_rubber",
// "c38_rubber_mag",
// "c38_sec",
// "c38_mag",
// "capbox",
// "foam_dart",
// "sec_beanbag_slug",
// "sec_dart",
// "sec_Islug",
// "sec_rshot",
"knuckledusters",
"tacknife",
/* Unbalanced material weapons
"claymore",
"gladius",
"katana",
"rapier",
"sabre",
"longsword",
// "battleaxe", // No wielded sprite
*/
)
// Basic pistol rounds
/datum/techweb_node/pistol_ammo
id = TECHWEB_NODE_PISTOL_AMMO
starting_node = TRUE
display_name = "Pistol Ammunition"
description = "The smallest of small arms come in a variety of flavors!"
design_ids = list(
// 44
"pistol_mag_44",
"pistol_mag_44_rubber",
// 45
"pistol_mag_45",
"pistol_mag_45_practice",
"pistol_mag_45_rubber",
"pistol_mag_45_flash",
"pistol_mag_45_piercing",
"pistol_mag_45_hollow",
// 9mm
"pistol_mag_9mm",
"pistol_mag_9mm_rubber",
"pistol_mag_9mm_practice",
"pistol_mag_9mm_flash",
)
// Only works with a few pistols
/datum/techweb_node/pistol_special
id = TECHWEB_NODE_PISTOL_SPECIAL
starting_node = TRUE
display_name = "Specialty Pistol Ammunition"
description = "Special bangs for those special bucks."
design_ids = list(
// concealable
"pistol_mag_compact_9mm",
"pistol_mag_compact_9mm_rubber",
"pistol_mag_compact_9mm_practice",
"pistol_mag_compact_9mm_flash",
// 10mm
"pistol_mag_10m",
"pistol_mag_10m_rubber",
"pistol_mag_10m_emp",
"pistol_mag_10m_practice",
)
// Basic rifles
/datum/techweb_node/rifle_ammo
id = TECHWEB_NODE_RIFLE_AMMO
starting_node = TRUE
display_name = "Rifle Ammunition"
description = "Shoot for the moon, even if you miss you'll probably hit the intern anyway."
design_ids = list(
// military
"rifle_mag_545",
"rifle_mag_545_pierce",
"rifle_mag_545_practice",
"rifle_mag_545_hunting",
"rifle_mag_762",
"rifle_mag_762_pierce",
// SMG
"smg_mag_9mm",
"smg_mag_10m",
"smg_mag_10m_practice",
"smg_mag_10m_rubber",
"smg_mag_10m_emp",
)
// Only works with a few specific guns
/datum/techweb_node/rifle_ammo_special
id = TECHWEB_NODE_RIFLE_SPECIAL
starting_node = TRUE
display_name = "Specialty Rifle Ammunition"
description = "Sometimes you just need more gun."
design_ids = list(
// Extended
"rifle_mag_762_ext",
"rifle_mag_762_ext_pierce",
// Rattle em boys!
"uzi_mag_45",
"tommy_mag_45",
"tommy_mag_45_pierce",
"tommy_drum_45",
"tommy_drum_45_pierce",
// big guns
"machinegun_box_545",
"machinegun_box_545_pierce",
"machinegun_box_545_hunting",
"rifle_145_sabot",
// P90
"pistol_mag_topmount_9mm",
"pistol_mag_topmount_9mm_rubber",
"pistol_mag_topmount_9mm_practice",
"pistol_mag_topmount_9mm_flash",
"pistol_mag_topmount_9mm_piercing",
"pistol_mag_ext_topmount_9mm_piercing",
// M1
"rifle_enblock_762",
"rifle_enblock_762_pierce",
)
// Shotgun shells
/datum/techweb_node/shotgun_ammo
id = TECHWEB_NODE_SHOTGUN_AMMO
starting_node = TRUE
display_name = "Shotgun Ammunition"
description = "Why aim when you can just shoot more bullet per bullet?"
design_ids = list(
// Ammoboxes
"ammobox_12g_slug",
"ammobox_12g_blank",
"ammobox_12g_beanbag",
"ammobox_12g_flash",
"ammobox_12g_pellet",
"ammobox_12g_stunshell",
"ammobox_12g_emp",
"ammobox_12g_flechette",
"ammobox_12g_practice",
/* Single shells available, but probably not needed
"ammo_12g_slug",
"ammo_12g_blank",
"ammo_12g_beanbag",
"ammo_12g_flash",
"ammo_12g_pellet",
"ammo_12g_stun",
"ammo_12g_emp",
"ammo_12g_flechette",
"ammo_12g_practice",
*/
// Auto shotgun drums
"shotgun_mag_12g_drum",
"shotgun_mag_12g_drum_beanbag",
"shotgun_mag_12g_drum_pellet",
"shotgun_mag_12g_drum_flash",
)
// Faster reloading
/datum/techweb_node/speedloaders
id = TECHWEB_NODE_SPEEDLOADERS
starting_node = TRUE
display_name = "Speedloaders"
description = "Trying to reload bullet by bullet in the middle of a gunfight is probably a bad idea."
design_ids = list(
// Revolvers
"loader_357",
"loader_357_flash",
"loader_357_stun",
"loader_357_rubber",
"loader_45",
"loader_45_rubber",
"loader_38",
"loader_38_rubber",
"loader_44",
"loader_44_rubber",
// Shotty
"loader_12g_beanbag",
"loader_12g_slug",
"loader_12g_buck",
// Stripperclips
"loader_545",
"loader_545_practice",
"loader_762",
"loader_762_practice",
)
/datum/techweb_node/sec_equip
@@ -30,12 +195,17 @@
prereq_ids = list(TECHWEB_NODE_BASIC_ARMS)
design_ids = list(
"seccamera",
"engcamera",
"crgcamera",
"xenobiocamera",
"sec_data",
"prisonmanage",
"pointdefense",
"pointdefense_control",
// "mining",
// "rdcamera",
"handcuffs",
"legcuffs",
"legcuffs_fuzzy",
"dna_analyzer",
// "security_photobooth",
// "photobooth",
// "scanner_gate",
@@ -101,8 +271,6 @@
"smg",
"ammo_9mm",
"magnetic_ammo",
"stunshell",
"empshell",
"ptrshell",
"monkey_gun",
// "c38_hotshot",
@@ -114,7 +282,6 @@
// "c38_true_strike",
// "c38_true_strike_mag",
// "techshotshell",
// "flechetteshell",
)
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = TECHWEB_TIER_4_POINTS)
// discount_experiments = list(/datum/experiment/ordnance/explosive/highyieldbomb = TECHWEB_TIER_4_POINTS)
@@ -12,22 +12,22 @@
"juke_remote",
"mail_scanner",
"floor_painter",
// "fax",
"fax",
// "sec_pen",
// "handlabel",
// "roll",
// "universal_scanner",
// "desttagger",
"desttagger",
// "packagewrap",
// "sticky_tape",
"sticky_tape",
// "toner_large",
// "toner",
// "boxcutter",
// "bounced_radio",
// "radio_headset",
"bounced_radio",
"radio_headset",
// "earmuffs",
// "recorder",
// "tape",
"taperecorder",
"recordingcassette",
// "toy_balloon",
// "pet_carrier",
// "chisel",
@@ -35,16 +35,20 @@
// "camera_film",
// "camera",
// "razor",
// "bucket",
// "mop",
"bucket",
"mop",
// "pushbroom",
// "normtrash",
// "wirebrush",
// "flashlight",
"flashlight",
"maglight",
// "water_balloon",
// "ticket_machine",
// "radio_entertainment",
// "photocopier",
"photocopier",
"papershredder",
"ashtray",
"glasstray"
)
/datum/techweb_node/sanitation
@@ -57,8 +61,10 @@
"light_replacer",
"spraybottle",
"beartrap",
"barbedwire",
"snarewire",
// "buffer",
// "vacuum",
"washing"
)
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = TECHWEB_TIER_2_POINTS)
discount_experiments = list(/datum/experiment/scanning/random/janitor_trash = TECHWEB_TIER_2_POINTS)
@@ -71,6 +77,9 @@
prereq_ids = list(TECHWEB_NODE_OFFICE_EQUIP)
design_ids = list(
"med_data",
"med_pcu",
// "skill_data",
"skill_pcu",
"ordercomp",
"supplycomp",
"crewconsole",
@@ -78,6 +87,7 @@
"comconsole",
"idcardconsole",
"jukebox",
"request",
// PDAs
"pda",
"cart_basic",
@@ -105,9 +115,15 @@
"gps_sci",
"gps_exp",
// "automated_announcement",
// "bankmachine",
"bankmachine",
// "account_console",
// "idcard",
"idcard",
"idrestore_console",
"guestpass",
"stockexchange",
"stationalert_engineering",
"stationalert_security",
"stationalert_all",
// "c-reader",
// "libraryconsole",
// "libraryscanner",
@@ -123,7 +139,7 @@
// "telescreen_interrogation",
// "telescreen_prison",
// "telescreen_bar",
// "telescreen_entertainment",
"telescreen_entertainment",
)
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = TECHWEB_TIER_1_POINTS)
announce_channels = list(CHANNEL_SERVICE)
@@ -217,21 +233,36 @@
// "oven_tray",
// "servingtray",
// "tongs",
// "spoon",
// "fork",
// "kitchen_knife",
// "plastic_spoon",
// "plastic_fork",
// "plastic_knife",
"rollingpin",
"spoon",
"fork",
"kitchen_knife",
"plastic_spoon",
"plastic_fork",
"plastic_knife",
"cleaver",
// "shaker",
// "drinking_glass",
// "shot_glass",
// "coffee_cartridge",
// "coffeemaker",
// "coffeepot",
// "syrup_bottle",
// "foodtray",
// "restaurant_portal",
"watercooler_bottle",
"barglass_square",
"barglass_rocks",
"barglass_milkshake",
"barglass_cocktail",
"barglass_shot",
"barglass_pint",
"barglass_mug",
"barglass_wine",
"barglass_metaglass",
"barglass_metapint",
"barglass_carafe",
"barglass_pitcher",
"barglass_coffeemug",
"barglass_jar"
)
/datum/techweb_node/food_proc
@@ -244,9 +275,10 @@
"fryer_board",
"cerealmaker_board",
"candymachine_board",
"honey_extractor",
// "food_replicator",
"borgos1",
// "range",
"range",
// "souppot",
// "processor",
// "gibber",
@@ -258,7 +290,7 @@
// "sheetifier",
// "fat_sucker",
// "dish_drive",
// "roastingstick",
// "roastingstick"
)
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = TECHWEB_TIER_2_POINTS)
announce_channels = list(CHANNEL_SERVICE)
@@ -273,3 +305,14 @@
)
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = TECHWEB_TIER_3_POINTS)
announce_channels = list(CHANNEL_SERVICE)
/datum/techweb_node/rapid_service_fabricator
id = TECHWEB_NODE_RSF
display_name = "rapid service fabricator"
description = "A device used to rapidly deploy service items."
prereq_ids = list(TECHWEB_NODE_CAFETERIA_EQUIP)
design_ids = list(
"rsf",
)
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = TECHWEB_TIER_3_POINTS)
announce_channels = list(CHANNEL_SERVICE)
@@ -33,3 +33,42 @@
*/
/datum/techweb/disk
id = "D1SK"
GLOBAL_LIST_EMPTY(autounlock_techwebs)
/**
* Techweb node that automatically unlocks a given buildtype.
* Saved in GLOB.autounlock_techwebs and used to prevent
* creating new ones each time it's needed.
*/
/datum/techweb/autounlocking
///The buildtype we will automatically unlock.
var/allowed_buildtypes = ALL
/datum/techweb/autounlocking/New()
. = ..()
for(var/id in SSresearch.techweb_designs)
var/datum/design_techweb/design = SSresearch.techweb_designs[id]
if(!(design.build_type & allowed_buildtypes))
continue
if(RND_CATEGORY_INITIAL in design.category)
add_design_by_id(id)
/datum/techweb/autounlocking/add_design(datum/design_techweb/design, custom = FALSE, list/add_to)
if(!(design.build_type & allowed_buildtypes))
return FALSE
return ..()
/datum/techweb/autounlocking/autolathe
allowed_buildtypes = AUTOLATHE
/*
/datum/techweb/autounlocking/limbgrower
allowed_buildtypes = LIMBGROWER
/datum/techweb/autounlocking/biogenerator
allowed_buildtypes = BIOGENERATOR
/datum/techweb/autounlocking/smelter
allowed_buildtypes = SMELTER
*/
@@ -147,6 +147,7 @@
name = T_BOARD("asteroid belt scanning computer")
build_path = /obj/machinery/computer/roguezones
origin_tech = list(TECH_DATA = 3, TECH_BLUESPACE = 1)
hidden = TRUE // Might have issues on maps without belters?
/obj/item/paper/rogueminer
name = "R-38 Scanner Console Guide"
@@ -9,3 +9,42 @@
failed = TRUE
if(failed)
TEST_FAIL("Mech Construction - A construction datum had incorrect data.")
/datum/unit_test/all_machine_circuits_must_be_printable/Run()
// get a list of all construction frames that automatically populate their circuitboard, we don't need to test for these
var/list/prepopulated_circuits = list()
for(var/datum/frame/frame_types/path as anything in subtypesof(/datum/frame/frame_types))
var/obj/item/circuitboard/circuit = initial(path.circuit)
if(!circuit)
continue
prepopulated_circuits |= circuit
// Get all machines with circuitboards
var/list/all_circuitboard_machines = list()
for(var/obj/machinery/path as anything in subtypesof(/obj/machinery))
var/obj/item/circuitboard/circuit = initial(path.circuit)
if(!circuit)
continue
all_circuitboard_machines |= circuit
// Check all circuits that are need has a techweb design
all_circuitboard_machines -= prepopulated_circuits
for(var/id in SSresearch.techweb_designs)
var/datum/design_techweb/design = SSresearch.techweb_designs[id]
if(!(design.build_path in subtypesof(/obj/item/circuitboard)))
continue
all_circuitboard_machines -= design.build_path
var/failed = FALSE
if(length(all_circuitboard_machines))
for(var/obj/item/circuitboard/circuit as anything in all_circuitboard_machines)
if(ispath(circuit))
if(initial(circuit.hidden)) // Intentionally not meant to show up on station
continue
TEST_NOTICE(src, "[circuit] - Missing a circuit from techweb. Ensure a techweb entry exists, or [circuit.build_path] will not be constructable in round.")
else
TEST_NOTICE(src, "[circuit] - is a LEGACY STRING and must be converted to a path!!!")
failed = TRUE
if(failed)
TEST_FAIL("missing circuitboard print recipies.")
+40
View File
@@ -14,3 +14,43 @@
if(length(failures))
TEST_FAIL("[length(failures)] material\s had missing name strings: [english_list(failures)].")
/datum/unit_test/all_sheets_must_be_printable_from_autolathe
/datum/unit_test/all_sheets_must_be_printable_from_autolathe/Run()
// Get the materials all the sheets can be broken down into
var/list/needed_materials = list()
for(var/path in subtypesof(/obj/item/stack))
var/obj/item/stack/material/sheet = new path()
var/list/get_mats = sheet.get_material_composition()
for(var/mat in get_mats)
needed_materials |= mat
qdel(sheet)
// Then get the sheets those materials are represented by
var/list/required_sheets = list()
for(var/datum/material/mat in needed_materials)
if(!mat || !mat.stack_type)
continue
required_sheets |= mat.stack_type
// Get all material sheet printing recipies in the autolathe
var/list/sheet_print_designs = list()
for(var/id in SSresearch.techweb_designs)
var/datum/design_techweb/design = SSresearch.techweb_designs[id]
if(!(design.build_type & AUTOLATHE))
continue
if(!(design.build_path in subtypesof(/obj/item/stack/material)))
continue
sheet_print_designs |= design.build_path
// Check all sheets for EXISTANCE
var/failed = FALSE
for(var/sheet in required_sheets)
if(sheet in sheet_print_designs)
continue
failed = TRUE
TEST_NOTICE(src, "[sheet] - Missing an autolathe design, all material sheets must be printable, or materials can get stuck in the lathe forever")
if(failed)
TEST_FAIL("materials missing autolathe print recipies.")
+57 -3
View File
@@ -35,21 +35,30 @@
TEST_NOTICE(src, "TECHWEB NODE - [node.type] did not have any research_costs set.")
failed = TRUE
// Must have category set
if(!length(node.category))
TEST_NOTICE(src, "TECHWEB NODE - [node.type] did not have a category set.")
failed = TRUE
// Must have valid designs
if(!node.design_ids)
if(!length(node.design_ids))
TEST_NOTICE(src, "TECHWEB NODE - [node.type] does not have any design_ids.")
failed = TRUE
else
for(var/design in node.design_ids)
if(design in used_designs)
TEST_NOTICE(src, "TECHWEB NODE - [node.type] has an already in use design_id: \"[design]\"")
failed = TRUE
used_designs += design
if(!SSresearch.techweb_designs[design])
if(!(design in SSresearch.techweb_designs))
TEST_NOTICE(src, "TECHWEB NODE - [node.type] has a non-existant design_id: \"[design]\"")
failed = TRUE
// Must have valid prereqs
if(node.prereq_ids.len)
for(var/req in node.prereq_ids)
if(!SSresearch.techweb_nodes[req])
if(!(req in SSresearch.techweb_nodes))
TEST_NOTICE(src, "TECHWEB NODE - [node.type] has a non-existant prereq_id: \"[req]\"")
failed = TRUE
@@ -82,6 +91,25 @@
TEST_NOTICE(src, "TECHWEB NODE - [node.type] costs less to make then the previous node, must always be at least the same or more expensive. ours lowest is \[[current_cost]\], prereq lowest is \[[prereq_currentcost]\]. Lesser costs than the previous node is only allowed if the node has a required experiment.")
failed = TRUE
// forbid designs with RND_CATEGORY_INITIAL in non-starting nodes
for(var/design_id in node.design_ids)
var/datum/design_techweb/design = SSresearch.techweb_designs[design_id]
if((RND_CATEGORY_INITIAL in design.category))
TEST_NOTICE(src, "TECHWEB NODE - [node.type]'s [design_id] is flagged as RND_CATEGORY_INITIAL in a non-starting techweb node.")
failed = TRUE
else
// if we have prereqs we did something wrong
if(length(node.prereq_ids))
TEST_NOTICE(src, "TECHWEB NODE - [node.type] is a starting node, but has prereq_ids assigned.")
failed = TRUE
// starting nodes need to have all design inside it flagged with RND_CATEGORY_INITIAL
for(var/design_id in node.design_ids)
var/datum/design_techweb/design = SSresearch.techweb_designs[design_id]
if(!(RND_CATEGORY_INITIAL in design.category))
TEST_NOTICE(src, "TECHWEB NODE - [node.type]'s [design_id] was part of a starting node, but is not category tagged RND_CATEGORY_INITIAL.")
failed = TRUE
// Each design
var/used_design_paths = list()
for(var/design_id in SSresearch.techweb_designs)
@@ -89,6 +117,13 @@
if(design.id == DESIGN_ID_IGNORE)
continue
/* Later
// Must have desc
if(!design.desc)
TEST_NOTICE(src, "TECHWEB DESIGN - [design.type] did not have a description.")
failed = TRUE
*/
// Must all be accessible by science
if(!(design.departmental_flags & DEPARTMENT_BITFLAG_SCIENCE))
TEST_NOTICE(src, "TECHWEB DESIGN - [design.type] was not flagged for science department, all designs must be accessible by science.")
@@ -98,10 +133,29 @@
if(!(design.id in used_designs))
TEST_NOTICE(src, "TECHWEB DESIGN - WARNING [design.type] is orphaned and not accessible from any techweb node. Is this intended?")
// Design must have materials
if(!length(design.materials))
TEST_NOTICE(src, "TECHWEB DESIGN - [design.type] has no materials assigned.")
failed = TRUE
else
for(var/mat in design.materials)
var/datum/material/mat_datum = get_material_by_name(mat)
if(!mat_datum)
TEST_NOTICE(src, "TECHWEB DESIGN - [design.type] had a non-existant material assigned \"[mat]\".")
failed = TRUE
else
var/amount = design.materials[mat]
if(!amount)
TEST_NOTICE(src, "TECHWEB DESIGN - [design.type] assigned material \"[mat]\" had no amount specified, or a negative amount.")
failed = TRUE
// Design must produce something
if(!design.build_path)
TEST_NOTICE(src, "TECHWEB DESIGN - [design.type] did not have a build_path.")
failed = TRUE
else if(design.build_path in subtypesof(/obj/machinery))
TEST_NOTICE(src, "TECHWEB DESIGN - [design.type] had a buildpath that directly prints a machine: \"[design.build_path]\"")
failed = TRUE
// Design must be a unique path produced
if(design.build_path in used_design_paths)