mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2025-12-11 18:22:14 +00:00
2383 lines
65 KiB
Plaintext
2383 lines
65 KiB
Plaintext
|
|
//Current rate: 135000 research points in 90 minutes
|
|
|
|
//Base Nodes
|
|
/datum/techweb_node/base
|
|
id = "base"
|
|
starting_node = TRUE
|
|
display_name = "Basic Research Technology"
|
|
description = "NT default research technologies."
|
|
// Default research tech, prevents bricking
|
|
design_ids = list(
|
|
"basic_capacitor",
|
|
"basic_cell",
|
|
"basic_matter_bin",
|
|
"basic_micro_laser",
|
|
"basic_scanning",
|
|
"bepis",
|
|
"blast",
|
|
"bounced_radio",
|
|
"bowl",
|
|
"bucket",
|
|
"c-reader",
|
|
"c38_rubber",
|
|
"camera_assembly",
|
|
"camera_film",
|
|
"camera",
|
|
"capbox",
|
|
"chisel",
|
|
"circuit_imprinter_offstation",
|
|
"circuit_imprinter",
|
|
"circuit",
|
|
"circuitgreen",
|
|
"circuitred",
|
|
"coffee_cartridge",
|
|
"coffeemaker",
|
|
"coffeepot",
|
|
"condenser",
|
|
"conveyor_belt",
|
|
"conveyor_switch",
|
|
"custom_vendor_refill",
|
|
"design_disk",
|
|
"destructive_analyzer",
|
|
"destructive_scanner",
|
|
"desttagger",
|
|
"doppler_array",
|
|
"drinking_glass",
|
|
"earmuffs",
|
|
"electropack",
|
|
"experi_scanner",
|
|
"experimentor",
|
|
"extinguisher",
|
|
"fax",
|
|
"fishing_rod",
|
|
"flashlight",
|
|
"fluid_ducts",
|
|
"foam_dart",
|
|
"fork",
|
|
"gas_filter",
|
|
"handcuffs_s",
|
|
"handlabel",
|
|
"health_sensor",
|
|
"holodisk",
|
|
"igniter",
|
|
"infrared_emitter",
|
|
"intercom_frame",
|
|
"kitchen_knife",
|
|
"laptop",
|
|
"light_bulb",
|
|
"light_replacer",
|
|
"light_tube",
|
|
"mechfab",
|
|
"micro_mani",
|
|
"miniature_power_cell",
|
|
"newscaster_frame",
|
|
"oven_tray",
|
|
"packagewrap",
|
|
"pet_carrier",
|
|
"plasmaglass",
|
|
"plasmaman_gas_filter",
|
|
"plasmareinforcedglass",
|
|
"plasteel",
|
|
"plastic_fork",
|
|
"plastic_knife",
|
|
"plastic_spoon",
|
|
"plastitanium",
|
|
"plastitaniumglass",
|
|
"plate",
|
|
"prox_sensor",
|
|
"radio_headset",
|
|
"rdconsole",
|
|
"rdserver",
|
|
"rdservercontrol",
|
|
"receiver",
|
|
"recorder",
|
|
"rglass",
|
|
"roll",
|
|
"sec_38",
|
|
"sec_beanbag_slug",
|
|
"sec_dart",
|
|
"sec_Islug",
|
|
"sec_rshot",
|
|
"servingtray",
|
|
"shaker",
|
|
"shot_glass",
|
|
"signaler",
|
|
"slime_scanner",
|
|
"solar_panel",
|
|
"solar_tracker",
|
|
"space_heater",
|
|
"spoon",
|
|
"status_display_frame",
|
|
"sticky_tape",
|
|
"tablet",
|
|
"tape",
|
|
"tech_disk",
|
|
"timer",
|
|
"titaniumglass",
|
|
"toner_large",
|
|
"toner",
|
|
"toy_armblade",
|
|
"toy_balloon",
|
|
"toygun",
|
|
"trapdoor_electronics",
|
|
"turbine_part_compressor",
|
|
"turbine_part_rotor",
|
|
"turbine_part_stator",
|
|
"turret_control",
|
|
"voice_analyzer",
|
|
"watering_can",
|
|
)
|
|
|
|
/datum/techweb_node/mmi
|
|
id = "mmi"
|
|
starting_node = TRUE
|
|
display_name = "Man Machine Interface"
|
|
description = "A slightly Frankensteinian device that allows human brains to interface natively with software APIs."
|
|
design_ids = list(
|
|
"mmi",
|
|
)
|
|
|
|
/datum/techweb_node/cyborg
|
|
id = "cyborg"
|
|
starting_node = TRUE
|
|
display_name = "Cyborg Construction"
|
|
description = "Sapient robots with preloaded tool modules and programmable laws."
|
|
design_ids = list(
|
|
"borg_chest",
|
|
"borg_head",
|
|
"borg_l_arm",
|
|
"borg_l_leg",
|
|
"borg_r_arm",
|
|
"borg_r_leg",
|
|
"borg_suit",
|
|
"borg_upgrade_rename",
|
|
"borg_upgrade_restart",
|
|
"borgupload",
|
|
"cyborgrecharger",
|
|
"robocontrol",
|
|
"sflash",
|
|
|
|
//SKYRAT EDIT START - RESEARCH DESIGNS
|
|
"affection_module",
|
|
//SKYRAT EDIT END - RESEARCH DESIGNS
|
|
)
|
|
|
|
/datum/techweb_node/mech
|
|
id = "mecha"
|
|
starting_node = TRUE
|
|
display_name = "Mechanical Exosuits"
|
|
description = "Mechanized exosuits that are several magnitudes stronger and more powerful than the average human."
|
|
design_ids = list(
|
|
"mech_hydraulic_clamp",
|
|
"mech_recharger",
|
|
"mecha_tracking",
|
|
"mechacontrol",
|
|
"mechapower",
|
|
"ripley_chassis",
|
|
"ripley_left_arm",
|
|
"ripley_left_leg",
|
|
"ripley_main",
|
|
"ripley_peri",
|
|
"ripley_right_arm",
|
|
"ripley_right_leg",
|
|
"ripley_torso",
|
|
"ripleyupgrade",
|
|
)
|
|
|
|
/datum/techweb_node/mod_basic
|
|
id = "mod"
|
|
starting_node = TRUE
|
|
display_name = "Basic Modular Suits"
|
|
description = "Specialized back mounted power suits with various different modules."
|
|
design_ids = list(
|
|
"mod_boots",
|
|
"mod_chestplate",
|
|
"mod_gauntlets",
|
|
"mod_helmet",
|
|
"mod_paint_kit",
|
|
"mod_shell",
|
|
"mod_plating_standard",
|
|
"mod_storage",
|
|
"mod_welding",
|
|
"mod_mouthhole",
|
|
"mod_flashlight",
|
|
"mod_longfall",
|
|
"mod_thermal_regulator",
|
|
"mod_plasma",
|
|
"mod_sign_radio",
|
|
)
|
|
|
|
/datum/techweb_node/mech_tools
|
|
id = "mech_tools"
|
|
starting_node = TRUE
|
|
display_name = "Basic Exosuit Equipment"
|
|
description = "Various tools fit for basic mech units"
|
|
design_ids = list(
|
|
"mech_drill",
|
|
"mech_extinguisher",
|
|
"mech_mscanner",
|
|
)
|
|
|
|
/datum/techweb_node/basic_tools
|
|
id = "basic_tools"
|
|
starting_node = TRUE
|
|
display_name = "Basic Tools"
|
|
description = "Basic mechanical, electronic, surgical and botanical tools."
|
|
design_ids = list(
|
|
"airlock_painter",
|
|
"analyzer",
|
|
"boxcutter",
|
|
"cable_coil",
|
|
"cable_coil",
|
|
"crowbar",
|
|
"cultivator",
|
|
"decal_painter",
|
|
"hatchet",
|
|
"mop",
|
|
"multitool",
|
|
"normtrash",
|
|
"pipe_painter",
|
|
"plant_analyzer",
|
|
"plunger",
|
|
"pushbroom",
|
|
"razor",
|
|
"screwdriver",
|
|
"secateurs",
|
|
"shovel",
|
|
"spade",
|
|
"spraycan",
|
|
"tile_sprayer",
|
|
"tscanner",
|
|
"welding_helmet",
|
|
"welding_tool",
|
|
"wirebrush",
|
|
"wirecutters",
|
|
"wrench",
|
|
|
|
//SKYRAT EDIT START - RESEARCH DESIGNS
|
|
"bowl",
|
|
"drinking_glass",
|
|
"shot_glass",
|
|
//SKYRAT EDIT END - RESEARCH DESIGNS
|
|
)
|
|
|
|
/datum/techweb_node/basic_medical
|
|
id = "basic_medical"
|
|
starting_node = TRUE
|
|
display_name = "Basic Medical Equipment"
|
|
description = "Basic medical tools and equipment."
|
|
design_ids = list(
|
|
"beaker",
|
|
"biopsy_tool",
|
|
"blood_filter",
|
|
"bonesetter",
|
|
"cautery",
|
|
"circular_saw",
|
|
"cybernetic_eyes",
|
|
"cybernetic_heart",
|
|
"cybernetic_liver",
|
|
"cybernetic_lungs",
|
|
"cybernetic_stomach",
|
|
"defibmountdefault",
|
|
"dropper",
|
|
"hemostat",
|
|
"large_beaker",
|
|
"mmi_m",
|
|
"operating",
|
|
"petri_dish",
|
|
"pillbottle",
|
|
"plumbing_rcd",
|
|
"plumbing_rcd_service",
|
|
"plumbing_rcd_sci",
|
|
"portable_chem_mixer",
|
|
"retractor",
|
|
"scalpel",
|
|
"stethoscope",
|
|
"surgical_drapes",
|
|
"surgical_tape",
|
|
"surgicaldrill",
|
|
"swab",
|
|
"syringe",
|
|
"xlarge_beaker",
|
|
|
|
//SKYRAT EDIT START - RESEARCH DESIGNS
|
|
"engi_plumbing",
|
|
"hospital_gown",
|
|
//SKYRAT EDIT END - RESEARCH DESIGNS
|
|
)
|
|
|
|
/datum/techweb_node/basic_circuitry
|
|
id = "basic_circuitry"
|
|
starting_node = TRUE
|
|
display_name = "Basic Integrated Circuits"
|
|
description = "Research on how to fully exploit the power of integrated circuits"
|
|
design_ids = list(
|
|
"circuit_multitool",
|
|
"comp_access_checker",
|
|
"comp_arithmetic",
|
|
"comp_binary_convert",
|
|
"comp_clock",
|
|
"comp_comparison",
|
|
"comp_concat",
|
|
"comp_concat_list",
|
|
"comp_decimal_convert",
|
|
"comp_delay",
|
|
"comp_direction",
|
|
"comp_element_find",
|
|
"comp_filter_list",
|
|
"comp_foreach",
|
|
"comp_format",
|
|
"comp_format_assoc",
|
|
"comp_get_column",
|
|
"comp_gps",
|
|
"comp_health",
|
|
"comp_hear",
|
|
"comp_id_access_reader",
|
|
"comp_id_getter",
|
|
"comp_id_info_reader",
|
|
"comp_index",
|
|
"comp_index_assoc",
|
|
"comp_index_table",
|
|
"comp_laserpointer",
|
|
"comp_length",
|
|
"comp_light",
|
|
"comp_list_add",
|
|
"comp_list_assoc_literal",
|
|
"comp_list_clear",
|
|
"comp_list_literal",
|
|
"comp_list_remove",
|
|
"comp_logic",
|
|
"comp_matscanner",
|
|
"comp_mmi",
|
|
"comp_module",
|
|
"comp_multiplexer",
|
|
"comp_not",
|
|
"comp_ntnet_receive",
|
|
"comp_ntnet_send",
|
|
"comp_pinpointer",
|
|
"comp_pressuresensor",
|
|
"comp_radio",
|
|
"comp_random",
|
|
"comp_reagents",
|
|
"comp_router",
|
|
"comp_select_query",
|
|
"comp_self",
|
|
"comp_set_variable_trigger",
|
|
"comp_soundemitter",
|
|
"comp_species",
|
|
"comp_speech",
|
|
"comp_speech",
|
|
"comp_split",
|
|
"comp_string_contains",
|
|
"comp_tempsensor",
|
|
"comp_textcase",
|
|
"comp_timepiece",
|
|
"comp_tonumber",
|
|
"comp_tostring",
|
|
"comp_trigonometry",
|
|
"comp_typecast",
|
|
"comp_typecheck",
|
|
"comp_view_sensor",
|
|
"compact_remote_shell",
|
|
"component_printer",
|
|
"integrated_circuit",
|
|
"module_duplicator",
|
|
"usb_cable",
|
|
)
|
|
|
|
/////////////////////////Biotech/////////////////////////
|
|
|
|
/datum/techweb_node/biotech
|
|
id = "biotech"
|
|
display_name = "Biological Technology"
|
|
description = "What makes us tick." //the MC, silly!
|
|
prereq_ids = list("base")
|
|
design_ids = list(
|
|
"beer_dispenser",
|
|
"blood_pack",
|
|
"chem_dispenser",
|
|
"chem_heater",
|
|
"chem_mass_spec",
|
|
//SKYRAT EDIT - RESEARCH DESIGNS
|
|
"anesthetic_machine",
|
|
"smartdartgun",
|
|
//SKYRAT EDIT - END
|
|
"chem_master",
|
|
"chem_pack",
|
|
"defibmount",
|
|
"defibrillator",
|
|
"genescanner",
|
|
"healthanalyzer",
|
|
"med_spray_bottle",
|
|
"medical_kiosk",
|
|
"medigel",
|
|
"medipen_refiller",
|
|
"pandemic",
|
|
"soda_dispenser",
|
|
)
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 2500)
|
|
required_experiments = list(/datum/experiment/dissection/human)
|
|
|
|
|
|
// SKYRAT EDIT BEGIN - MATERIAL MEAT WAS REMOVED
|
|
/datum/techweb_node/adv_biotech
|
|
id = "adv_biotech"
|
|
display_name = "Advanced Biotechnology"
|
|
description = "Advanced Biotechnology"
|
|
prereq_ids = list("biotech")
|
|
design_ids = list(
|
|
"crewpinpointer",
|
|
"defibrillator_compact",
|
|
"harvester",
|
|
"healthanalyzer_advanced",
|
|
"holobarrier_med",
|
|
"limbgrower",
|
|
"meta_beaker",
|
|
"ph_meter",
|
|
"piercesyringe",
|
|
"plasmarefiller",
|
|
"smoke_machine",
|
|
|
|
//SKYRAT EDIT START - RESEARCH DESIGNS
|
|
"monkey_helmet",
|
|
"brute2medicell",
|
|
"burn2medicell",
|
|
"toxin2medicell",
|
|
"oxy2medicell",
|
|
"relocatemedicell",
|
|
"tempmedicell",
|
|
"bodymedicell",
|
|
"clotmedicell",
|
|
//SKYRAT EDIT END -
|
|
)
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 5000)
|
|
required_experiments = list(/datum/experiment/dissection/nonhuman)
|
|
// ORIGINAL: discount_experiments = list(/datum/experiment/scanning/random/material/meat = 4000)
|
|
discount_experiments = list(/datum/experiment/scanning/random/material/silver = 4000)
|
|
// SKYRAT EDIT END - MATERIAL MEAT WAS REMOVED
|
|
|
|
|
|
/datum/techweb_node/xenoorgan_biotech
|
|
id = "xenoorgan_bio"
|
|
display_name = "Xeno-organ Biology"
|
|
description = "Plasmaman, Ethereals, Lizardpeople... What makes our non-human crewmembers tick?"
|
|
prereq_ids = list("adv_biotech")
|
|
design_ids = list(
|
|
"limbdesign_ethereal",
|
|
"limbdesign_felinid",
|
|
"limbdesign_lizard",
|
|
"limbdesign_plasmaman",
|
|
)
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 6500)
|
|
discount_experiments = list(
|
|
/datum/experiment/scanning/random/cytology/easy = 1000,
|
|
/datum/experiment/scanning/points/slime/hard = 5000,
|
|
/datum/experiment/dissection/xenomorph = 5000,
|
|
)
|
|
|
|
/datum/techweb_node/bio_process
|
|
id = "bio_process"
|
|
display_name = "Biological Processing"
|
|
description = "From slimes to kitchens."
|
|
prereq_ids = list("biotech")
|
|
design_ids = list(
|
|
"deepfryer",
|
|
"dish_drive",
|
|
"fat_sucker",
|
|
"gibber",
|
|
"gibber",
|
|
"griddle",
|
|
"microwave",
|
|
"monkey_recycler",
|
|
"oven",
|
|
"processor",
|
|
"reagentgrinder",
|
|
"smartfridge",
|
|
)
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 4000)
|
|
discount_experiments = list(/datum/experiment/scanning/random/cytology = 3000) //Big discount to reinforce doing it.
|
|
|
|
/////////////////////////Advanced Surgery/////////////////////////
|
|
|
|
/datum/techweb_node/imp_wt_surgery
|
|
id = "imp_wt_surgery"
|
|
display_name = "Improved Wound-Tending Surgery"
|
|
description = "Who would have known being more gentle with a hemostat decreases patient pain?"
|
|
prereq_ids = list("biotech")
|
|
design_ids = list(
|
|
"surgery_heal_brute_upgrade",
|
|
"surgery_heal_burn_upgrade",
|
|
)
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 1000)
|
|
|
|
|
|
/datum/techweb_node/adv_surgery
|
|
id = "adv_surgery"
|
|
display_name = "Advanced Surgery"
|
|
description = "When simple medicine doesn't cut it."
|
|
prereq_ids = list("imp_wt_surgery")
|
|
design_ids = list(
|
|
"surgery_heal_brute_upgrade_femto",
|
|
"surgery_heal_burn_upgrade_femto",
|
|
"surgery_heal_combo",
|
|
"surgery_lobotomy",
|
|
"surgery_wing_reconstruction",
|
|
)
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 1500)
|
|
|
|
/datum/techweb_node/exp_surgery
|
|
id = "exp_surgery"
|
|
display_name = "Experimental Surgery"
|
|
description = "When evolution isn't fast enough."
|
|
prereq_ids = list("adv_surgery")
|
|
design_ids = list(
|
|
"surgery_cortex_folding",
|
|
"surgery_cortex_imprint",
|
|
"surgery_heal_combo_upgrade",
|
|
"surgery_ligament_hook",
|
|
"surgery_ligament_reinforcement",
|
|
"surgery_muscled_veins",
|
|
"surgery_nerve_ground",
|
|
"surgery_nerve_splice",
|
|
"surgery_pacify",
|
|
"surgery_vein_thread",
|
|
"surgery_viral_bond",
|
|
)
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 7500)
|
|
discount_experiments = list(/datum/experiment/scanning/random/plants/traits = 4500)
|
|
|
|
/datum/techweb_node/alien_surgery
|
|
id = "alien_surgery"
|
|
display_name = "Alien Surgery"
|
|
description = "Abductors did nothing wrong."
|
|
prereq_ids = list("exp_surgery", "alientech")
|
|
design_ids = list(
|
|
"surgery_brainwashing",
|
|
"surgery_heal_combo_upgrade_femto",
|
|
"surgery_zombie",
|
|
)
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 10000)
|
|
|
|
/////////////////////////data theory tech/////////////////////////
|
|
|
|
/datum/techweb_node/datatheory //Computer science
|
|
id = "datatheory"
|
|
display_name = "Data Theory"
|
|
description = "Big Data, in space!"
|
|
prereq_ids = list("base")
|
|
design_ids = list(
|
|
"bounty_pad",
|
|
"bounty_pad_control",
|
|
)
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 2500)
|
|
|
|
|
|
/////////////////////////engineering tech/////////////////////////
|
|
|
|
/datum/techweb_node/engineering
|
|
id = "engineering"
|
|
display_name = "Industrial Engineering"
|
|
description = "A refresher course on modern engineering technology."
|
|
prereq_ids = list("base")
|
|
design_ids = list(
|
|
"adv_capacitor",
|
|
"adv_matter_bin",
|
|
"adv_scanning",
|
|
"airalarm_electronics",
|
|
"airlock_board",
|
|
"apc_control",
|
|
"atmos_control",
|
|
"atmosalerts",
|
|
"autolathe",
|
|
"cell_charger",
|
|
"crystallizer",
|
|
"electrolyzer",
|
|
"emergency_oxygen",
|
|
"emergency_oxygen_engi",
|
|
"firealarm_electronics",
|
|
"firelock_board",
|
|
"grounding_rod",
|
|
"high_cell",
|
|
"high_micro_laser",
|
|
"mesons",
|
|
"nano_mani",
|
|
"oxygen_tank",
|
|
"pacman",
|
|
"plasma_tank",
|
|
"plasmaman_tank_belt",
|
|
"pneumatic_seal",
|
|
"power_control",
|
|
"powermonitor",
|
|
"recharger",
|
|
"recycler",
|
|
"rped",
|
|
"scanner_gate",
|
|
"solarcontrol",
|
|
"stack_console",
|
|
"stack_machine",
|
|
"tesla_coil",
|
|
"thermomachine",
|
|
"w-recycler",
|
|
"emitter",
|
|
"welding_goggles",
|
|
"anomaly_refinery",
|
|
"tank_compressor",
|
|
"atmos_thermal",
|
|
)
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 12500)
|
|
discount_experiments = list(/datum/experiment/scanning/random/material/easy = 7500)
|
|
|
|
/datum/techweb_node/adv_engi
|
|
id = "adv_engi"
|
|
display_name = "Advanced Engineering"
|
|
description = "Pushing the boundaries of physics, one chainsaw-fist at a time."
|
|
prereq_ids = list("engineering", "emp_basic")
|
|
design_ids = list(
|
|
"HFR_core",
|
|
"HFR_corner",
|
|
"HFR_fuel_input",
|
|
"HFR_interface",
|
|
"HFR_moderator_input",
|
|
"HFR_waste_output",
|
|
"engine_goggles",
|
|
"forcefield_projector",
|
|
"magboots",
|
|
"rcd_loaded",
|
|
"rcd_ammo",
|
|
"rpd_loaded",
|
|
"sheetifier",
|
|
"weldingmask",
|
|
|
|
//SKYRAT EDIT START - RESEARCH DESIGNS
|
|
"engine_goggles_prescription",
|
|
"mesons_prescription",
|
|
"multi_cell_charger",
|
|
"tray_goggles_prescription",
|
|
"plumbing_chem",
|
|
"plumbing_eng",
|
|
"plumbing_sci"
|
|
//SKYRAT EDIT END - RESEARCH DESIGNS
|
|
)
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 15000)
|
|
discount_experiments = list(
|
|
/datum/experiment/scanning/random/material/medium/one = 4000,
|
|
/datum/experiment/ordnance/gaseous/bz = 10000,
|
|
)
|
|
|
|
/datum/techweb_node/anomaly
|
|
id = "anomaly_research"
|
|
display_name = "Anomaly Research"
|
|
description = "Unlock the potential of the mysterious anomalies that appear on station."
|
|
prereq_ids = list("adv_engi", "practical_bluespace")
|
|
design_ids = list(
|
|
"anomaly_neutralizer",
|
|
"reactive_armour",
|
|
)
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 5000)
|
|
|
|
/datum/techweb_node/high_efficiency
|
|
id = "high_efficiency"
|
|
display_name = "High Efficiency Parts"
|
|
description = "Finely-tooled manufacturing techniques allowing for picometer-perfect precision levels."
|
|
prereq_ids = list("engineering", "datatheory")
|
|
design_ids = list(
|
|
"pico_mani",
|
|
"super_matter_bin",
|
|
)
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 7500)
|
|
discount_experiments = list(/datum/experiment/scanning/points/machinery_tiered_scan/tier2_lathes = 5000)
|
|
|
|
/datum/techweb_node/adv_power
|
|
id = "adv_power"
|
|
display_name = "Advanced Power Manipulation"
|
|
description = "How to get more zap."
|
|
prereq_ids = list("engineering")
|
|
design_ids = list(
|
|
"hyper_cell",
|
|
"power_turbine_console",
|
|
"smes",
|
|
"super_capacitor",
|
|
"super_cell",
|
|
"turbine_compressor",
|
|
"turbine_rotor",
|
|
"turbine_stator",
|
|
)
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 3500)
|
|
discount_experiments = list(/datum/experiment/scanning/points/machinery_pinpoint_scan/tier2_capacitors = 2500)
|
|
|
|
/////////////////////////Bluespace tech/////////////////////////
|
|
/datum/techweb_node/bluespace_basic //Bluespace-memery
|
|
id = "bluespace_basic"
|
|
display_name = "Basic Bluespace Theory"
|
|
description = "Basic studies into the mysterious alternate dimension known as bluespace."
|
|
prereq_ids = list("base")
|
|
design_ids = list(
|
|
"beacon",
|
|
"bluespace_crystal",
|
|
"telesci_gps",
|
|
"xenobioconsole",
|
|
)
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 2500)
|
|
|
|
/datum/techweb_node/bluespace_travel
|
|
id = "bluespace_travel"
|
|
display_name = "Bluespace Travel"
|
|
description = "Application of Bluespace for static teleportation technology."
|
|
prereq_ids = list("practical_bluespace")
|
|
design_ids = list(
|
|
"bluespace_pod",
|
|
"launchpad",
|
|
"launchpad_console",
|
|
"quantumpad",
|
|
"tele_hub",
|
|
"tele_station",
|
|
"teleconsole",
|
|
)
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 5000)
|
|
discount_experiments = list(/datum/experiment/scanning/points/machinery_tiered_scan/tier3_bluespacemachines = 4000)
|
|
|
|
/datum/techweb_node/micro_bluespace
|
|
id = "micro_bluespace"
|
|
display_name = "Miniaturized Bluespace Research"
|
|
description = "Extreme reduction in space required for bluespace engines, leading to portable bluespace technology."
|
|
prereq_ids = list("bluespace_travel", "practical_bluespace", "high_efficiency")
|
|
design_ids = list(
|
|
"bluespace_matter_bin",
|
|
"bluespacebodybag",
|
|
"femto_mani",
|
|
"quantum_keycard",
|
|
"swapper",
|
|
"triphasic_scanning",
|
|
"wormholeprojector",
|
|
)
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 10000)
|
|
discount_experiments = list(/datum/experiment/scanning/points/machinery_tiered_scan/tier3_variety = 5000)
|
|
/* /datum/experiment/exploration_scan/random/condition) this should have a point cost but im not even sure the experiment works properly lmao*/
|
|
|
|
/datum/techweb_node/advanced_bluespace
|
|
id = "bluespace_storage"
|
|
display_name = "Advanced Bluespace Storage"
|
|
description = "With the use of bluespace we can create even more advanced storage devices than we could have ever done"
|
|
prereq_ids = list("micro_bluespace", "janitor")
|
|
design_ids = list(
|
|
"bag_holding",
|
|
)
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 5000)
|
|
|
|
/datum/techweb_node/practical_bluespace
|
|
id = "practical_bluespace"
|
|
display_name = "Applied Bluespace Research"
|
|
description = "Using bluespace to make things faster and better."
|
|
prereq_ids = list("bluespace_basic", "engineering")
|
|
design_ids = list(
|
|
"bluespacebeaker",
|
|
"bluespacesyringe",
|
|
"bluespace_coffeepot",
|
|
"bs_rped",
|
|
"minerbag_holding",
|
|
"ore_silo",
|
|
"phasic_scanning",
|
|
"plumbing_receiver",
|
|
"roastingstick",
|
|
)
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 5000)
|
|
discount_experiments = list(/datum/experiment/scanning/points/machinery_pinpoint_scan/tier2_scanmodules = 3500)
|
|
|
|
/datum/techweb_node/bluespace_power
|
|
id = "bluespace_power"
|
|
display_name = "Bluespace Power Technology"
|
|
description = "Even more powerful.. power!"
|
|
prereq_ids = list("adv_power", "practical_bluespace")
|
|
design_ids = list(
|
|
"bluespace_cell",
|
|
"quadratic_capacitor",
|
|
)
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 4000)
|
|
discount_experiments = list(/datum/experiment/scanning/points/machinery_pinpoint_scan/tier3_cells = 3000)
|
|
|
|
/datum/techweb_node/regulated_bluespace
|
|
id = "regulated_bluespace"
|
|
display_name = "Regulated Bluespace Research"
|
|
description = "Bluespace technology using stable and balanced procedures. Required by galactic convention for public use."
|
|
prereq_ids = list("base")
|
|
design_ids = list(
|
|
"spaceship_navigation_beacon",
|
|
)
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 2500)
|
|
|
|
/datum/techweb_node/unregulated_bluespace
|
|
id = "unregulated_bluespace"
|
|
display_name = "Unregulated Bluespace Research"
|
|
description = "Bluespace technology using unstable or unbalanced procedures, prone to damaging the fabric of bluespace. Outlawed by galactic conventions."
|
|
prereq_ids = list("bluespace_travel", "syndicate_basic")
|
|
design_ids = list(
|
|
"desynchronizer",
|
|
)
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 2500)
|
|
|
|
|
|
/////////////////////////plasma tech/////////////////////////
|
|
/datum/techweb_node/basic_plasma
|
|
id = "basic_plasma"
|
|
display_name = "Basic Plasma Research"
|
|
description = "Research into the mysterious and dangerous substance, plasma."
|
|
prereq_ids = list("engineering")
|
|
design_ids = list(
|
|
"mech_generator",
|
|
)
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 2500)
|
|
|
|
/datum/techweb_node/adv_plasma
|
|
id = "adv_plasma"
|
|
display_name = "Advanced Plasma Research"
|
|
description = "Research on how to fully exploit the power of plasma."
|
|
prereq_ids = list("basic_plasma")
|
|
design_ids = list(
|
|
"mech_plasma_cutter",
|
|
)
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 2500)
|
|
|
|
/////////////////////////integrated circuits tech/////////////////////////
|
|
|
|
/datum/techweb_node/adv_shells
|
|
id = "adv_shells"
|
|
display_name = "Advanced Shell Research"
|
|
description = "Grants access to more complicated shell designs."
|
|
prereq_ids = list("basic_circuitry", "engineering")
|
|
design_ids = list(
|
|
"assembly_shell",
|
|
"bot_shell",
|
|
"comp_mod_action",
|
|
"controller_shell",
|
|
"dispenser_shell",
|
|
"door_shell",
|
|
"gun_shell",
|
|
"keyboard_shell",
|
|
"module_shell",
|
|
"money_bot_shell",
|
|
"scanner_gate_shell",
|
|
"scanner_shell",
|
|
)
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 2500)
|
|
|
|
/datum/techweb_node/bci_shells
|
|
id = "bci_shells"
|
|
display_name = "Brain-Computer Interfaces"
|
|
description = "Grants access to biocompatable shell designs and components."
|
|
prereq_ids = list("adv_shells")
|
|
design_ids = list(
|
|
"bci_implanter",
|
|
"bci_shell",
|
|
"comp_bar_overlay",
|
|
"comp_bci_action",
|
|
"comp_counter_overlay",
|
|
"comp_object_overlay",
|
|
"comp_target_intercept",
|
|
"comp_thought_listener",
|
|
"comp_vox",
|
|
)
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 500)
|
|
|
|
/datum/techweb_node/movable_shells_tech
|
|
id = "movable_shells"
|
|
display_name = "Movable Shell Research"
|
|
description = "Grants access to movable shells."
|
|
prereq_ids = list("adv_shells", "robotics")
|
|
design_ids = list(
|
|
"comp_pathfind",
|
|
"comp_pull",
|
|
"drone_shell",
|
|
)
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 3000)
|
|
|
|
/datum/techweb_node/server_shell_tech
|
|
id = "server_shell"
|
|
display_name = "Server Technology Research"
|
|
description = "Grants access to a server shell that has a very high capacity for components."
|
|
prereq_ids = list("adv_shells", "computer_hardware_basic")
|
|
design_ids = list(
|
|
"server_shell",
|
|
)
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 3000)
|
|
|
|
/////////////////////////robotics tech/////////////////////////
|
|
/datum/techweb_node/robotics
|
|
id = "robotics"
|
|
display_name = "Basic Robotics Research"
|
|
description = "Programmable machines that make our lives lazier."
|
|
prereq_ids = list("base")
|
|
design_ids = list(
|
|
"paicard",
|
|
"borg_upgrade_snacks", // SKYRAT ADDITION - BETTER BORG SNACK DISPENSORS
|
|
)
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 2500)
|
|
|
|
/datum/techweb_node/adv_robotics
|
|
id = "adv_robotics"
|
|
display_name = "Advanced Robotics Research"
|
|
description = "Machines using actual neural networks to simulate human lives."
|
|
prereq_ids = list("neural_programming", "robotics")
|
|
design_ids = list(
|
|
"mmi_posi",
|
|
)
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 2500)
|
|
|
|
/datum/techweb_node/adv_bots
|
|
id = "adv_bots"
|
|
display_name = "Advanced Bots Research"
|
|
description = "Grants access to a special launchpad designed for bots."
|
|
prereq_ids = list("robotics")
|
|
design_ids = list(
|
|
"botpad",
|
|
"botpad_remote",
|
|
)
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 2500)
|
|
|
|
/datum/techweb_node/exodrone_tech
|
|
id = "exodrone"
|
|
display_name = "Exploration Drone Research"
|
|
description = "Technology for exploring far away locations."
|
|
prereq_ids = list("robotics")
|
|
design_ids = list(
|
|
"exodrone_console",
|
|
"exodrone_launcher",
|
|
"exoscanner",
|
|
"exoscanner_console",
|
|
)
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 2500)
|
|
|
|
/datum/techweb_node/neural_programming
|
|
id = "neural_programming"
|
|
display_name = "Neural Programming"
|
|
description = "Study into networks of processing units that mimic our brains."
|
|
prereq_ids = list("biotech", "datatheory")
|
|
design_ids = list(
|
|
"skill_station",
|
|
)
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 2500)
|
|
|
|
/datum/techweb_node/cyborg_upg_util
|
|
id = "cyborg_upg_util"
|
|
display_name = "Cyborg Upgrades: Utility"
|
|
description = "Utility upgrades for cyborgs."
|
|
prereq_ids = list("adv_robotics")
|
|
design_ids = list(
|
|
"borg_upgrade_advancedmop",
|
|
"borg_upgrade_broomer",
|
|
"borg_upgrade_expand",
|
|
"borg_upgrade_prt",
|
|
"borg_upgrade_selfrepair",
|
|
"borg_upgrade_thrusters",
|
|
"borg_upgrade_trashofholding",
|
|
|
|
//SKYRAT EDIT START - RESEARCH DESIGNS
|
|
"borg_upgrade_clamp",
|
|
"borg_upgrade_brush",
|
|
//SKYRAT EDIT END - RESEARCH DESIGNS
|
|
)
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 2000)
|
|
|
|
/datum/techweb_node/cyborg_upg_util/New()
|
|
. = ..()
|
|
if(!CONFIG_GET(flag/disable_secborg))
|
|
design_ids += "borg_upgrade_disablercooler"
|
|
|
|
/datum/techweb_node/cyborg_upg_engiminer
|
|
id = "cyborg_upg_engiminer"
|
|
display_name = "Cyborg Upgrades: Engineering & Mining"
|
|
description = "Engineering and Mining upgrades for cyborgs."
|
|
prereq_ids = list("adv_engi", "basic_mining")
|
|
design_ids = list(
|
|
"borg_upgrade_circuitapp",
|
|
"borg_upgrade_diamonddrill",
|
|
"borg_upgrade_holding",
|
|
"borg_upgrade_lavaproof",
|
|
"borg_upgrade_rped",
|
|
"advanced_materials", // SKYRAT ADDITION - ADVANCED MATERIALS UPGRADE
|
|
"inducer_module", // SKYRAT ADDITION - INDUCER MODULE UPGRADE
|
|
)
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 2000)
|
|
|
|
/datum/techweb_node/cyborg_upg_med
|
|
id = "cyborg_upg_med"
|
|
display_name = "Cyborg Upgrades: Medical"
|
|
description = "Medical upgrades for cyborgs."
|
|
prereq_ids = list("adv_biotech")
|
|
design_ids = list(
|
|
"borg_upgrade_beakerapp",
|
|
"borg_upgrade_defibrillator",
|
|
"borg_upgrade_expandedsynthesiser",
|
|
"borg_upgrade_piercinghypospray",
|
|
//"borg_upgrade_pinpointer", // SKYRAT EDIT REMOVAL
|
|
"borg_upgrade_surgicalprocessor",
|
|
|
|
//SKYRAT EDIT START - RESEARCH DESIGNS
|
|
"borg_upgrade_surgicaltools",
|
|
//SKYRAT EDIT END - RESEARCH DESIGNS
|
|
)
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 2000)
|
|
|
|
/datum/techweb_node/ai_basic
|
|
id = "ai_basic"
|
|
display_name = "Artificial Intelligence"
|
|
description = "AI unit research."
|
|
prereq_ids = list("adv_robotics")
|
|
design_ids = list(
|
|
"aicore",
|
|
"borg_ai_control",
|
|
"intellicard",
|
|
"mecha_tracking_ai_control",
|
|
"aifixer",
|
|
"aiupload",
|
|
"reset_module",
|
|
"asimov_module",
|
|
"default_module",
|
|
"nutimov_module",
|
|
"paladin_module",
|
|
"robocop_module",
|
|
"corporate_module",
|
|
"drone_module",
|
|
"oxygen_module",
|
|
"safeguard_module",
|
|
"protectstation_module",
|
|
"quarantine_module",
|
|
"freeform_module",
|
|
"remove_module",
|
|
)
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 2500)
|
|
|
|
/datum/techweb_node/ai_adv
|
|
id = "ai_adv"
|
|
display_name = "Advanced Artificial Intelligence"
|
|
description = "State of the art lawsets to be used for AI research."
|
|
prereq_ids = list("ai_basic")
|
|
design_ids = list(
|
|
"asimovpp_module",
|
|
"paladin_devotion_module",
|
|
"dungeon_master_module",
|
|
"painter_module",
|
|
"ten_commandments_module",
|
|
"hippocratic_module",
|
|
"maintain_module",
|
|
"liveandletlive_module",
|
|
"reporter_module",
|
|
"hulkamania_module",
|
|
"peacekeeper_module",
|
|
"overlord_module",
|
|
"tyrant_module",
|
|
"antimov_module",
|
|
"balance_module",
|
|
"thermurderdynamic_module",
|
|
"damaged_module",
|
|
"freeformcore_module",
|
|
"onehuman_module",
|
|
"purge_module",
|
|
)
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 3000)
|
|
|
|
//Any kind of point adjustment needs to happen before SSresearch sets up the whole node tree, it gets cached
|
|
/datum/techweb_node/ai/New()
|
|
. = ..()
|
|
if(HAS_TRAIT(SSstation, STATION_TRAIT_UNIQUE_AI))
|
|
research_costs[TECHWEB_POINT_TYPE_GENERIC] *= 3
|
|
|
|
/////////////////////////EMP tech/////////////////////////
|
|
/datum/techweb_node/emp_basic //EMP tech for some reason
|
|
id = "emp_basic"
|
|
display_name = "Electromagnetic Theory"
|
|
description = "Study into usage of frequencies in the electromagnetic spectrum."
|
|
prereq_ids = list("base")
|
|
design_ids = list(
|
|
"holosign",
|
|
"holosignsec",
|
|
"holosignengi",
|
|
"holosignatmos",
|
|
"holosignrestaurant",
|
|
"holosignbar",
|
|
"inducer",
|
|
"tray_goggles",
|
|
"holopad",
|
|
//SKYRAT EDIT - ADDITION MEDIGUNS
|
|
"gownmedicell",
|
|
"bedmedicell",
|
|
//SKYRAT EDIT END
|
|
"vendatray",
|
|
)
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 2500)
|
|
|
|
/datum/techweb_node/emp_adv
|
|
id = "emp_adv"
|
|
display_name = "Advanced Electromagnetic Theory"
|
|
description = "Determining whether reversing the polarity will actually help in a given situation."
|
|
prereq_ids = list("emp_basic")
|
|
design_ids = list(
|
|
"ultra_micro_laser",
|
|
)
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 3000)
|
|
discount_experiments = list(/datum/experiment/scanning/points/machinery_pinpoint_scan/tier2_microlaser = 1500)
|
|
|
|
/datum/techweb_node/emp_super
|
|
id = "emp_super"
|
|
display_name = "Quantum Electromagnetic Technology" //bs
|
|
description = "Even better electromagnetic technology."
|
|
prereq_ids = list("emp_adv")
|
|
design_ids = list(
|
|
"quadultra_micro_laser",
|
|
)
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 15000)
|
|
discount_experiments = list(
|
|
/datum/experiment/scanning/points/machinery_pinpoint_scan/tier3_microlaser = 4000,
|
|
/datum/experiment/ordnance/gaseous/noblium = 10000,
|
|
)
|
|
|
|
/////////////////////////Clown tech/////////////////////////
|
|
/datum/techweb_node/clown
|
|
id = "clown"
|
|
display_name = "Clown Technology"
|
|
description = "Honk?!"
|
|
prereq_ids = list("base")
|
|
design_ids = list(
|
|
"air_horn",
|
|
"borg_transform_clown",
|
|
"honk_chassis",
|
|
"honk_head",
|
|
"honk_left_arm",
|
|
"honk_left_leg",
|
|
"honk_right_arm",
|
|
"honk_right_leg",
|
|
"honk_torso",
|
|
"honker_main",
|
|
"honker_peri",
|
|
"honker_targ",
|
|
"implant_trombone",
|
|
"mech_banana_mortar",
|
|
"mech_honker",
|
|
"mech_mousetrap_mortar",
|
|
"mech_punching_face",
|
|
)
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 2500)
|
|
|
|
////////////////////////Computer tech////////////////////////
|
|
/datum/techweb_node/comptech
|
|
id = "comptech"
|
|
display_name = "Computer Consoles"
|
|
description = "Computers and how they work."
|
|
prereq_ids = list("datatheory")
|
|
design_ids = list(
|
|
"cargo",
|
|
"cargorequest",
|
|
"comconsole",
|
|
"crewconsole",
|
|
"idcard",
|
|
"libraryconsole",
|
|
"mining",
|
|
"rdcamera",
|
|
"seccamera",
|
|
)
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 2000)
|
|
|
|
/datum/techweb_node/computer_hardware_basic //Modular computers are shitty and nearly useless so until someone makes them actually useful this can be easy to get.
|
|
id = "computer_hardware_basic"
|
|
display_name = "Computer Hardware"
|
|
description = "How computer hardware is made."
|
|
prereq_ids = list("comptech")
|
|
design_ids = list(
|
|
"bat_advanced",
|
|
"bat_control",
|
|
"bat_micro",
|
|
"bat_nano",
|
|
"bat_normal",
|
|
"bat_super",
|
|
"cardslot",
|
|
"portadrive_advanced",
|
|
"portadrive_basic",
|
|
"portadrive_super",
|
|
)
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 1000) //they are really shitty
|
|
|
|
/datum/techweb_node/computer_board_gaming
|
|
id = "computer_board_gaming"
|
|
display_name = "Arcade Games"
|
|
description = "For the slackers on the station."
|
|
prereq_ids = list("comptech")
|
|
design_ids = list(
|
|
"arcade_battle",
|
|
"arcade_orion",
|
|
"slotmachine",
|
|
)
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 3250)
|
|
discount_experiments = list(/datum/experiment/physical/arcade_winner = 3000)
|
|
|
|
/datum/techweb_node/comp_recordkeeping
|
|
id = "comp_recordkeeping"
|
|
display_name = "Computerized Recordkeeping"
|
|
description = "Organized record databases and how they're used."
|
|
prereq_ids = list("comptech")
|
|
design_ids = list(
|
|
"account_console",
|
|
"automated_announcement",
|
|
"med_data",
|
|
"prisonmanage",
|
|
"secdata",
|
|
"vendor",
|
|
)
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 1000)
|
|
|
|
/datum/techweb_node/telecomms
|
|
id = "telecomms"
|
|
display_name = "Telecommunications Technology"
|
|
description = "Subspace transmission technology for near-instant communications devices."
|
|
prereq_ids = list("comptech", "bluespace_basic")
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 2500)
|
|
design_ids = list(
|
|
"comm_monitor",
|
|
"comm_server",
|
|
"ntnet_relay",
|
|
"s_amplifier",
|
|
"s_analyzer",
|
|
"s_ansible",
|
|
"s_broadcaster",
|
|
"s_bus",
|
|
"s_crystal",
|
|
"s_filter",
|
|
"s_hub",
|
|
"s_messaging",
|
|
"s_processor",
|
|
"s_receiver",
|
|
"s_relay",
|
|
"s_server",
|
|
"s_transmitter",
|
|
"s_treatment",
|
|
)
|
|
|
|
/datum/techweb_node/integrated_hud
|
|
id = "integrated_HUDs"
|
|
display_name = "Integrated HUDs"
|
|
description = "The usefulness of computerized records, projected straight onto your eyepiece!"
|
|
prereq_ids = list("comp_recordkeeping", "emp_basic")
|
|
design_ids = list(
|
|
"diagnostic_hud",
|
|
"health_hud",
|
|
"scigoggles",
|
|
"security_hud",
|
|
|
|
//SKYRAT EDIT START - RESEARCH DESIGNS
|
|
"health_hud_prescription",
|
|
"security_hud_prescription",
|
|
"diagnostic_hud_prescription",
|
|
"health_hud_aviator",
|
|
"security_hud_aviator",
|
|
"diagnostic_hud_aviator",
|
|
"meson_hud_aviator",
|
|
"science_hud_aviator",
|
|
"health_hud_projector",
|
|
"security_hud_projector",
|
|
"diagnostic_hud_projector",
|
|
"meson_hud_projector",
|
|
"science_hud_projector",
|
|
"permit_glasses",
|
|
//SKYRAT EDIT END - RESEARCH DESIGNS
|
|
)
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 1500)
|
|
|
|
/datum/techweb_node/nvg_tech
|
|
id = "NVGtech"
|
|
display_name = "Night Vision Technology"
|
|
description = "Allows seeing in the dark without actual light!"
|
|
prereq_ids = list("integrated_HUDs", "adv_engi", "emp_adv")
|
|
design_ids = list(
|
|
"diagnostic_hud_night",
|
|
"health_hud_night",
|
|
"night_visision_goggles",
|
|
"nvgmesons",
|
|
"nv_scigoggles",
|
|
"security_hud_night",
|
|
)
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 5000)
|
|
|
|
////////////////////////Medical////////////////////////
|
|
/datum/techweb_node/genetics
|
|
id = "genetics"
|
|
display_name = "Genetic Engineering"
|
|
description = "We have the technology to change him."
|
|
prereq_ids = list("biotech")
|
|
design_ids = list(
|
|
"dna_disk",
|
|
"dnascanner",
|
|
"scan_console",
|
|
"self_actualization_device", // SKYRAT EDIT ADDITION: Added the Self-Actualization Device
|
|
)
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 2500)
|
|
|
|
/datum/techweb_node/cryotech
|
|
id = "cryotech"
|
|
display_name = "Cryostasis Technology"
|
|
description = "Smart freezing of objects to preserve them!"
|
|
prereq_ids = list("adv_engi", "biotech")
|
|
design_ids = list(
|
|
"cryo_grenade",
|
|
"cryotube",
|
|
"splitbeaker",
|
|
"stasis",
|
|
)
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 2000)
|
|
|
|
/datum/techweb_node/subdermal_implants
|
|
id = "subdermal_implants"
|
|
display_name = "Subdermal Implants"
|
|
description = "Electronic implants buried beneath the skin."
|
|
prereq_ids = list("biotech")
|
|
design_ids = list(
|
|
"c38_trac",
|
|
"implant_chem",
|
|
"implant_tracking",
|
|
"implantcase",
|
|
"implanter",
|
|
"locator",
|
|
)
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 2500)
|
|
|
|
/datum/techweb_node/cyber_organs
|
|
id = "cyber_organs"
|
|
display_name = "Cybernetic Organs"
|
|
description = "We have the technology to rebuild him."
|
|
prereq_ids = list("biotech")
|
|
design_ids = list(
|
|
"cybernetic_ears",
|
|
"cybernetic_eyes_improved",
|
|
"cybernetic_heart_tier2",
|
|
"cybernetic_liver_tier2",
|
|
"cybernetic_lungs_tier2",
|
|
"cybernetic_stomach_tier2",
|
|
)
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 1000)
|
|
|
|
/datum/techweb_node/cyber_organs_upgraded
|
|
id = "cyber_organs_upgraded"
|
|
display_name = "Upgraded Cybernetic Organs"
|
|
description = "We have the technology to upgrade him."
|
|
prereq_ids = list("adv_biotech", "cyber_organs")
|
|
design_ids = list(
|
|
"cybernetic_ears_u",
|
|
"cybernetic_heart_tier3",
|
|
"cybernetic_liver_tier3",
|
|
"cybernetic_lungs_tier3",
|
|
"cybernetic_stomach_tier3",
|
|
)
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 1500)
|
|
|
|
/datum/techweb_node/cyber_implants
|
|
id = "cyber_implants"
|
|
display_name = "Cybernetic Implants"
|
|
description = "Electronic implants that improve humans."
|
|
prereq_ids = list("adv_biotech", "datatheory")
|
|
design_ids = list(
|
|
"ci-breather",
|
|
"ci-diaghud",
|
|
"ci-gloweyes",
|
|
"ci-medhud",
|
|
"ci-nutriment",
|
|
"ci-sechud",
|
|
"ci-welding",
|
|
)
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 2500)
|
|
|
|
/datum/techweb_node/adv_cyber_implants
|
|
id = "adv_cyber_implants"
|
|
display_name = "Advanced Cybernetic Implants"
|
|
description = "Upgraded and more powerful cybernetic implants."
|
|
prereq_ids = list("neural_programming", "cyber_implants","integrated_HUDs")
|
|
design_ids = list(
|
|
"ci-nutrimentplus",
|
|
"ci-reviver",
|
|
"ci-surgery",
|
|
"ci-toolset",
|
|
)
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 2500)
|
|
|
|
/datum/techweb_node/combat_cyber_implants
|
|
id = "combat_cyber_implants"
|
|
display_name = "Combat Cybernetic Implants"
|
|
description = "Military grade combat implants to improve performance."
|
|
prereq_ids = list("adv_cyber_implants","weaponry","NVGtech","high_efficiency")
|
|
// SKYRAT EDIT - REMOVED: X-rays+Thermals from here
|
|
design_ids = list(
|
|
"ci-antidrop",
|
|
"ci-antistun",
|
|
"ci-thrusters",
|
|
)
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 2500)
|
|
|
|
////////////////////////Tools////////////////////////
|
|
|
|
/datum/techweb_node/basic_mining
|
|
id = "basic_mining"
|
|
display_name = "Mining Technology"
|
|
description = "Better than Efficiency V."
|
|
prereq_ids = list("engineering", "basic_plasma")
|
|
design_ids = list(
|
|
"cargoexpress",
|
|
"cooldownmod",
|
|
"damagemod",
|
|
"drill",
|
|
"mining_equipment_vendor",
|
|
"ore_redemption",
|
|
"plasmacutter",
|
|
"rangemod",
|
|
"superresonator",
|
|
"triggermod",
|
|
"mecha_kineticgun",
|
|
)//e a r l y g a m e)
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 2500)
|
|
|
|
/datum/techweb_node/adv_mining
|
|
id = "adv_mining"
|
|
display_name = "Advanced Mining Technology"
|
|
description = "Efficiency Level 127" //dumb mc references
|
|
prereq_ids = list("basic_mining", "adv_power", "adv_plasma")
|
|
design_ids = list(
|
|
"drill_diamond",
|
|
"hypermod",
|
|
"jackhammer",
|
|
"plasmacutter_adv",
|
|
|
|
//SKYRAT EDIT START - RESEARCH DESIGNS
|
|
"ripleyupgradef"
|
|
//SKYRAT EDIT END - RESEARCH DESIGNS
|
|
)
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 7500)
|
|
discount_experiments = list(/datum/experiment/scanning/random/material/hard/one = 5000)
|
|
|
|
/datum/techweb_node/janitor
|
|
id = "janitor"
|
|
display_name = "Advanced Sanitation Technology"
|
|
description = "Clean things better, faster, stronger, and harder!"
|
|
prereq_ids = list("adv_engi")
|
|
design_ids = list(
|
|
"advmop",
|
|
"beartrap",
|
|
"blutrash",
|
|
"buffer",
|
|
"vacuum",
|
|
"holobarrier_jani",
|
|
"light_replacer_blue",
|
|
"paint_remover",
|
|
"spraybottle",
|
|
)
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 4000)
|
|
discount_experiments = list(/datum/experiment/scanning/random/janitor_trash = 3000) //75% discount for scanning some trash, seems fair right?
|
|
|
|
/datum/techweb_node/botany
|
|
id = "botany"
|
|
display_name = "Botanical Engineering"
|
|
description = "Botanical tools"
|
|
prereq_ids = list("adv_engi", "biotech")
|
|
design_ids = list(
|
|
"biogenerator",
|
|
"flora_gun",
|
|
//SKYRAT EDIT - ADDITION MEDIGUNS
|
|
"salvemedicell",
|
|
//SKYRAT EDIT END
|
|
"hydro_tray",
|
|
"portaseeder",
|
|
"seed_extractor",
|
|
"adv_watering_can",
|
|
)
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 4000)
|
|
discount_experiments = list(/datum/experiment/scanning/random/plants/wild = 3000)
|
|
|
|
/datum/techweb_node/exp_tools
|
|
id = "exp_tools"
|
|
display_name = "Experimental Tools"
|
|
description = "Highly advanced tools."
|
|
prereq_ids = list("adv_engi")
|
|
design_ids = list(
|
|
"exwelder",
|
|
"gene_shears",
|
|
"handdrill",
|
|
"jawsoflife",
|
|
"laserscalpel",
|
|
"mechanicalpinches",
|
|
"rangedanalyzer",
|
|
"searingtool",
|
|
)
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 7500)
|
|
discount_experiments = list(/datum/experiment/scanning/random/material/hard/one = 5000)
|
|
|
|
/datum/techweb_node/sec_basic
|
|
id = "sec_basic"
|
|
display_name = "Basic Security Equipment"
|
|
description = "Standard equipment used by security."
|
|
prereq_ids = list("base")
|
|
design_ids = list(
|
|
"bola_energy",
|
|
"evidencebag",
|
|
"pepperspray",
|
|
"seclite",
|
|
"zipties",
|
|
"inspector",
|
|
)
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 1000)
|
|
|
|
/datum/techweb_node/rcd_upgrade
|
|
id = "rcd_upgrade"
|
|
display_name = "Rapid Device Upgrade Designs"
|
|
description = "Unlocks new designs that improve rapid devices."
|
|
prereq_ids = list("adv_engi")
|
|
design_ids = list(
|
|
"rcd_upgrade_frames",
|
|
"rcd_upgrade_furnishing",
|
|
"rcd_upgrade_simple_circuits",
|
|
"rpd_upgrade_unwrench",
|
|
)
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 2500)
|
|
|
|
/datum/techweb_node/adv_rcd_upgrade
|
|
id = "adv_rcd_upgrade"
|
|
display_name = "Advanced RCD Designs Upgrade"
|
|
description = "Unlocks new RCD designs."
|
|
design_ids = list(
|
|
"rcd_upgrade_silo_link",
|
|
)
|
|
prereq_ids = list(
|
|
"bluespace_travel",
|
|
"rcd_upgrade",
|
|
)
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 10000)
|
|
discount_experiments = list(/datum/experiment/scanning/random/material/hard/two = 5000)
|
|
|
|
/////////////////////////weaponry tech/////////////////////////
|
|
/datum/techweb_node/weaponry
|
|
id = "weaponry"
|
|
display_name = "Weapon Development Technology"
|
|
description = "Our researchers have found new ways to weaponize just about everything now."
|
|
prereq_ids = list("engineering")
|
|
design_ids = list(
|
|
"pin_testing",
|
|
"tele_shield",
|
|
"ammoworkbench_disk_lethal", //SKYRAT EDIT ADDITION
|
|
)
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 20000)
|
|
discount_experiments = list(/datum/experiment/ordnance/explosive/pressurebomb = 10000)
|
|
|
|
/datum/techweb_node/adv_weaponry
|
|
id = "adv_weaponry"
|
|
display_name = "Advanced Weapon Development Technology"
|
|
description = "Our weapons are breaking the rules of reality by now."
|
|
prereq_ids = list("adv_engi", "weaponry")
|
|
design_ids = list(
|
|
"pin_loyalty",
|
|
"ammo_workbench", //SKYRAT EDIT ADDITION
|
|
)
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 10000)
|
|
|
|
/datum/techweb_node/electric_weapons
|
|
id = "electronic_weapons"
|
|
display_name = "Electric Weapons"
|
|
description = "Weapons using electric technology"
|
|
prereq_ids = list("weaponry", "adv_power" , "emp_basic")
|
|
design_ids = list(
|
|
"ioncarbine",
|
|
"stunrevolver",
|
|
|
|
//SKYRAT EDIT START - RESEARCH DESIGNS
|
|
"medigunspeed",
|
|
//SKYRAT EDIT END - RESEARCH DESIGNS
|
|
)
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 2500)
|
|
|
|
/datum/techweb_node/radioactive_weapons
|
|
id = "radioactive_weapons"
|
|
display_name = "Radioactive Weaponry"
|
|
description = "Weapons using radioactive technology."
|
|
prereq_ids = list("adv_engi", "adv_weaponry")
|
|
design_ids = list(
|
|
"nuclear_gun",
|
|
)
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 2500)
|
|
|
|
/datum/techweb_node/beam_weapons
|
|
id = "beam_weapons"
|
|
display_name = "Beam Weaponry"
|
|
description = "Various basic beam weapons"
|
|
prereq_ids = list("adv_weaponry")
|
|
design_ids = list(
|
|
"temp_gun",
|
|
"xray_laser",
|
|
)
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 2500)
|
|
|
|
/datum/techweb_node/adv_beam_weapons
|
|
id = "adv_beam_weapons"
|
|
display_name = "Advanced Beam Weaponry"
|
|
description = "Various advanced beam weapons"
|
|
prereq_ids = list("beam_weapons")
|
|
design_ids = list(
|
|
"beamrifle",
|
|
)
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 2500)
|
|
|
|
/datum/techweb_node/explosive_weapons
|
|
id = "explosive_weapons"
|
|
display_name = "Explosive & Pyrotechnical Weaponry"
|
|
description = "If the light stuff just won't do it."
|
|
prereq_ids = list("adv_weaponry")
|
|
design_ids = list(
|
|
"adv_grenade",
|
|
"large_grenade",
|
|
"pyro_grenade",
|
|
)
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 2500)
|
|
|
|
/datum/techweb_node/exotic_ammo
|
|
id = "exotic_ammo"
|
|
display_name = "Exotic Ammunition"
|
|
description = "They won't know what hit em."
|
|
prereq_ids = list("weaponry")
|
|
design_ids = list(
|
|
"c38_hotshot",
|
|
"c38_iceblox",
|
|
"techshotshell",
|
|
)
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 2500)
|
|
|
|
/datum/techweb_node/gravity_gun
|
|
id = "gravity_gun"
|
|
display_name = "One-point Bluespace-gravitational Manipulator"
|
|
description = "Fancy wording for gravity gun."
|
|
prereq_ids = list("adv_weaponry", "bluespace_travel")
|
|
design_ids = list(
|
|
"gravitygun",
|
|
"mech_gravcatapult",
|
|
)
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 2500)
|
|
|
|
//MODsuit tech
|
|
|
|
/datum/techweb_node/mod_advanced
|
|
id = "mod_advanced"
|
|
display_name = "Advanced Modular Suits"
|
|
description = "More advanced modules, to improve modular suits."
|
|
prereq_ids = list("robotics")
|
|
design_ids = list(
|
|
"mod_visor_diaghud",
|
|
"mod_gps",
|
|
"mod_reagent_scanner",
|
|
"mod_clamp",
|
|
"mod_drill",
|
|
"mod_orebag",
|
|
)
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 2500)
|
|
|
|
/datum/techweb_node/mod_engineering
|
|
id = "mod_engineering"
|
|
display_name = "Engineering Modular Suits"
|
|
description = "Engineering suits, for powered engineers."
|
|
prereq_ids = list("mod_advanced", "engineering")
|
|
design_ids = list(
|
|
"mod_plating_engineering",
|
|
"mod_visor_meson",
|
|
"mod_t_ray",
|
|
"mod_magboot",
|
|
"mod_tether",
|
|
"mod_constructor",
|
|
"mod_mister_atmos",
|
|
)
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 2500)
|
|
|
|
/datum/techweb_node/mod_advanced_engineering
|
|
id = "mod_advanced_engineering"
|
|
display_name = "Advanced Engineering Modular Suits"
|
|
description = "Advanced Engineering suits, for advanced powered engineers."
|
|
prereq_ids = list("mod_engineering", "adv_engi")
|
|
design_ids = list(
|
|
"mod_plating_atmospheric",
|
|
"mod_jetpack",
|
|
"mod_rad_protection",
|
|
"mod_emp_shield",
|
|
"mod_storage_expanded",
|
|
)
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 3500)
|
|
|
|
/datum/techweb_node/mod_medical
|
|
id = "mod_medical"
|
|
display_name = "Medical Modular Suits"
|
|
description = "Medical suits for quick rescue purposes."
|
|
prereq_ids = list("mod_advanced", "biotech")
|
|
design_ids = list(
|
|
"mod_plating_medical",
|
|
"mod_visor_medhud",
|
|
"mod_health_analyzer",
|
|
"mod_quick_carry",
|
|
"mod_injector",
|
|
"mod_organ_thrower",
|
|
"mod_dna_lock",
|
|
"mod_patienttransport",
|
|
)
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 2500)
|
|
|
|
/datum/techweb_node/mod_advanced_medical
|
|
id = "mod_advanced_medical"
|
|
display_name = "Advanced Medical Modular Suits"
|
|
description = "Advanced medical suits for quicker rescue purposes."
|
|
prereq_ids = list("mod_medical", "adv_biotech")
|
|
design_ids = list(
|
|
"mod_defib",
|
|
"mod_threadripper",
|
|
"mod_surgicalprocessor",
|
|
)
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 3500)
|
|
|
|
/datum/techweb_node/mod_security
|
|
id = "mod_security"
|
|
display_name = "Security Modular Suits"
|
|
description = "Security suits for space crime handling."
|
|
prereq_ids = list("mod_advanced", "sec_basic")
|
|
design_ids = list(
|
|
"mod_plating_security",
|
|
"mod_visor_sechud",
|
|
"mod_stealth",
|
|
"mod_mag_harness",
|
|
"mod_pathfinder",
|
|
"mod_holster",
|
|
"mod_sonar",
|
|
"mod_projectile_dampener",
|
|
"mod_criminalcapture",
|
|
)
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 2500)
|
|
|
|
/datum/techweb_node/mod_entertainment
|
|
id = "mod_entertainment"
|
|
display_name = "Entertainment Modular Suits"
|
|
description = "Powered suits for protection against low-humor environments."
|
|
prereq_ids = list("mod_advanced", "clown")
|
|
design_ids = list(
|
|
"mod_plating_cosmohonk",
|
|
"mod_bikehorn",
|
|
"mod_microwave_beam",
|
|
"mod_waddle",
|
|
)
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 2500)
|
|
|
|
/datum/techweb_node/mod_anomaly
|
|
id = "mod_anomaly"
|
|
display_name = "Anomalock Modular Suits"
|
|
description = "Modules for modular suits that require anomaly cores to function."
|
|
prereq_ids = list("mod_advanced", "anomaly_research")
|
|
design_ids = list(
|
|
"mod_antigrav",
|
|
"mod_teleporter",
|
|
)
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 2500)
|
|
|
|
/datum/techweb_node/mod_anomaly_engi
|
|
id = "mod_anomaly_engi"
|
|
display_name = "Engineering Anomalock Modular Suits"
|
|
description = "Advanced modules for modular suits, using anomaly cores to become even better engineers."
|
|
prereq_ids = list("mod_advanced_engineering", "mod_anomaly")
|
|
design_ids = list(
|
|
"mod_kinesis",
|
|
)
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 1000)
|
|
|
|
////////////////////////mech technology////////////////////////
|
|
/datum/techweb_node/adv_mecha
|
|
id = "adv_mecha"
|
|
display_name = "Advanced Exosuits"
|
|
description = "For when you just aren't Gundam enough."
|
|
prereq_ids = list("adv_robotics")
|
|
design_ids = list(
|
|
"mech_repair_droid",
|
|
)
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 7500)
|
|
discount_experiments = list(/datum/experiment/scanning/random/material/medium/three = 5000)
|
|
|
|
/datum/techweb_node/odysseus
|
|
id = "mecha_odysseus"
|
|
display_name = "EXOSUIT: Odysseus"
|
|
description = "Odysseus exosuit designs"
|
|
prereq_ids = list("base")
|
|
design_ids = list(
|
|
"odysseus_chassis",
|
|
"odysseus_head",
|
|
"odysseus_left_arm",
|
|
"odysseus_left_leg",
|
|
"odysseus_main",
|
|
"odysseus_peri",
|
|
"odysseus_right_arm",
|
|
"odysseus_right_leg",
|
|
"odysseus_torso",
|
|
)
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 2500)
|
|
|
|
/datum/techweb_node/clarke
|
|
id = "mecha_clarke"
|
|
display_name = "EXOSUIT: Clarke"
|
|
description = "Clarke exosuit designs"
|
|
prereq_ids = list("engineering")
|
|
design_ids = list(
|
|
"clarke_chassis",
|
|
"clarke_head",
|
|
"clarke_left_arm",
|
|
"clarke_main",
|
|
"clarke_peri",
|
|
"clarke_right_arm",
|
|
"clarke_torso",
|
|
)
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 2500)
|
|
|
|
/datum/techweb_node/gygax
|
|
id = "mech_gygax"
|
|
display_name = "EXOSUIT: Gygax"
|
|
description = "Gygax exosuit designs"
|
|
prereq_ids = list("adv_mecha", "adv_mecha_armor")
|
|
design_ids = list(
|
|
"gygax_armor",
|
|
"gygax_chassis",
|
|
"gygax_head",
|
|
"gygax_left_arm",
|
|
"gygax_left_leg",
|
|
"gygax_main",
|
|
"gygax_peri",
|
|
"gygax_right_arm",
|
|
"gygax_right_leg",
|
|
"gygax_targ",
|
|
"gygax_torso",
|
|
)
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 5000)
|
|
discount_experiments = list(/datum/experiment/scanning/points/machinery_tiered_scan/tier3_mechbay = 5000)
|
|
|
|
/datum/techweb_node/durand
|
|
id = "mech_durand"
|
|
display_name = "EXOSUIT: Durand"
|
|
description = "Durand exosuit designs"
|
|
prereq_ids = list("adv_mecha", "adv_mecha_armor")
|
|
design_ids = list(
|
|
"durand_armor",
|
|
"durand_chassis",
|
|
"durand_head",
|
|
"durand_left_arm",
|
|
"durand_left_leg",
|
|
"durand_main",
|
|
"durand_peri",
|
|
"durand_right_arm",
|
|
"durand_right_leg",
|
|
"durand_targ",
|
|
"durand_torso",
|
|
)
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 5000)
|
|
discount_experiments = list(/datum/experiment/scanning/points/machinery_tiered_scan/tier3_mechbay = 3500)
|
|
|
|
/datum/techweb_node/phazon
|
|
id = "mecha_phazon"
|
|
display_name = "EXOSUIT: Phazon"
|
|
description = "Phazon exosuit designs"
|
|
prereq_ids = list("adv_mecha", "adv_mecha_armor" , "micro_bluespace")
|
|
design_ids = list(
|
|
"phazon_armor",
|
|
"phazon_chassis",
|
|
"phazon_head",
|
|
"phazon_left_arm",
|
|
"phazon_left_leg",
|
|
"phazon_main",
|
|
"phazon_peri",
|
|
"phazon_right_arm",
|
|
"phazon_right_leg",
|
|
"phazon_targ",
|
|
"phazon_torso",
|
|
)
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 5000)
|
|
discount_experiments = list(/datum/experiment/scanning/points/machinery_tiered_scan/tier3_mechbay = 2500)
|
|
/datum/techweb_node/savannah_ivanov
|
|
id = "mecha_savannah_ivanov"
|
|
display_name = "EXOSUIT: Savannah-Ivanov"
|
|
description = "Savannah-Ivanov exosuit designs"
|
|
prereq_ids = list("adv_mecha", "weaponry", "exp_tools")
|
|
design_ids = list(
|
|
"savannah_ivanov_armor",
|
|
"savannah_ivanov_chassis",
|
|
"savannah_ivanov_head",
|
|
"savannah_ivanov_left_arm",
|
|
"savannah_ivanov_left_leg",
|
|
"savannah_ivanov_main",
|
|
"savannah_ivanov_peri",
|
|
"savannah_ivanov_right_arm",
|
|
"savannah_ivanov_right_leg",
|
|
"savannah_ivanov_targ",
|
|
"savannah_ivanov_torso",
|
|
)
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 2500)
|
|
discount_experiments = list(/datum/experiment/scanning/points/machinery_tiered_scan/tier3_mechbay = 3000)
|
|
|
|
/datum/techweb_node/adv_mecha_tools
|
|
id = "adv_mecha_tools"
|
|
display_name = "Advanced Exosuit Equipment"
|
|
description = "Tools for high level mech suits"
|
|
prereq_ids = list("adv_mecha")
|
|
design_ids = list(
|
|
"mech_rcd",
|
|
"mech_thrusters",
|
|
)
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 2500)
|
|
|
|
/datum/techweb_node/med_mech_tools
|
|
id = "med_mech_tools"
|
|
display_name = "Medical Exosuit Equipment"
|
|
description = "Tools for high level mech suits"
|
|
prereq_ids = list("adv_biotech")
|
|
design_ids = list(
|
|
"mech_medi_beam",
|
|
"mech_sleeper",
|
|
"mech_syringe_gun",
|
|
)
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 2500)
|
|
|
|
/datum/techweb_node/mech_armor
|
|
id = "adv_mecha_armor"
|
|
display_name = "Exosuit Heavy Armor Research"
|
|
description = "Recreating heavy armor with new rapid fabrication techniques."
|
|
prereq_ids = list("adv_mecha", "bluespace_power")
|
|
design_ids = list(
|
|
"mech_ccw_armor",
|
|
"mech_proj_armor",
|
|
)
|
|
required_experiments = list(/datum/experiment/scanning/random/mecha_damage_scan)
|
|
discount_experiments = list(/datum/experiment/scanning/random/mecha_destroyed_scan = 5000)
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 10000)
|
|
|
|
/datum/techweb_node/mech_scattershot
|
|
id = "mecha_tools"
|
|
display_name = "Exosuit Weapon (LBX AC 10 \"Scattershot\")"
|
|
description = "An advanced piece of mech weaponry"
|
|
prereq_ids = list("adv_mecha")
|
|
design_ids = list(
|
|
"mech_scattershot",
|
|
"mech_scattershot_ammo",
|
|
)
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 2500)
|
|
|
|
/datum/techweb_node/mech_carbine
|
|
id = "mech_carbine"
|
|
display_name = "Exosuit Weapon (FNX-99 \"Hades\" Carbine)"
|
|
description = "An advanced piece of mech weaponry"
|
|
prereq_ids = list("exotic_ammo")
|
|
design_ids = list(
|
|
"mech_carbine",
|
|
"mech_carbine_ammo",
|
|
)
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 2500)
|
|
|
|
/datum/techweb_node/mech_ion
|
|
id = "mmech_ion"
|
|
display_name = "Exosuit Weapon (MKIV Ion Heavy Cannon)"
|
|
description = "An advanced piece of mech weaponry"
|
|
prereq_ids = list("electronic_weapons", "emp_adv")
|
|
design_ids = list(
|
|
"mech_ion",
|
|
)
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 2500)
|
|
|
|
/datum/techweb_node/mech_tesla
|
|
id = "mech_tesla"
|
|
display_name = "Exosuit Weapon (MKI Tesla Cannon)"
|
|
description = "An advanced piece of mech weaponry"
|
|
prereq_ids = list("electronic_weapons", "adv_power")
|
|
design_ids = list(
|
|
"mech_tesla",
|
|
)
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 2500)
|
|
|
|
/datum/techweb_node/mech_laser
|
|
id = "mech_laser"
|
|
display_name = "Exosuit Weapon (CH-PS \"Immolator\" Laser)"
|
|
description = "A basic piece of mech weaponry"
|
|
prereq_ids = list("beam_weapons")
|
|
design_ids = list(
|
|
"mech_laser",
|
|
)
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 2500)
|
|
|
|
/datum/techweb_node/mech_laser_heavy
|
|
id = "mech_laser_heavy"
|
|
display_name = "Exosuit Weapon (CH-LC \"Solaris\" Laser Cannon)"
|
|
description = "An advanced piece of mech weaponry"
|
|
prereq_ids = list("adv_beam_weapons")
|
|
design_ids = list(
|
|
"mech_laser_heavy",
|
|
)
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 2500)
|
|
|
|
/datum/techweb_node/mech_disabler
|
|
id = "mech_disabler"
|
|
display_name = "Exosuit Weapon (CH-DS \"Peacemaker\" Mounted Disabler)"
|
|
description = "A basic piece of mech weaponry"
|
|
prereq_ids = list("adv_mecha")
|
|
design_ids = list(
|
|
"mech_disabler",
|
|
)
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 2500)
|
|
|
|
/datum/techweb_node/mech_grenade_launcher
|
|
id = "mech_grenade_launcher"
|
|
display_name = "Exosuit Weapon (SGL-6 Grenade Launcher)"
|
|
description = "An advanced piece of mech weaponry"
|
|
prereq_ids = list("explosive_weapons")
|
|
design_ids = list(
|
|
"mech_grenade_launcher",
|
|
"mech_grenade_launcher_ammo",
|
|
)
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 2500)
|
|
|
|
/datum/techweb_node/mech_missile_rack
|
|
id = "mech_missile_rack"
|
|
display_name = "Exosuit Weapon (BRM-6 Missile Rack)"
|
|
description = "An advanced piece of mech weaponry"
|
|
prereq_ids = list("explosive_weapons")
|
|
design_ids = list(
|
|
"mech_missile_rack",
|
|
"mech_missile_rack_ammo",
|
|
)
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 2500)
|
|
|
|
/datum/techweb_node/clusterbang_launcher
|
|
id = "clusterbang_launcher"
|
|
display_name = "Exosuit Module (SOB-3 Clusterbang Launcher)"
|
|
description = "An advanced piece of mech weaponry"
|
|
prereq_ids = list("explosive_weapons")
|
|
design_ids = list(
|
|
"clusterbang_launcher",
|
|
"clusterbang_launcher_ammo",
|
|
)
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 2500)
|
|
|
|
/datum/techweb_node/mech_teleporter
|
|
id = "mech_teleporter"
|
|
display_name = "Exosuit Module (Teleporter Module)"
|
|
description = "An advanced piece of mech Equipment"
|
|
prereq_ids = list("micro_bluespace")
|
|
design_ids = list(
|
|
"mech_teleporter",
|
|
)
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 2500)
|
|
|
|
/datum/techweb_node/mech_wormhole_gen
|
|
id = "mech_wormhole_gen"
|
|
display_name = "Exosuit Module (Localized Wormhole Generator)"
|
|
description = "An advanced piece of mech weaponry"
|
|
prereq_ids = list("bluespace_travel")
|
|
design_ids = list(
|
|
"mech_wormhole_gen",
|
|
)
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 2500)
|
|
|
|
/datum/techweb_node/mech_lmg
|
|
id = "mech_lmg"
|
|
display_name = "Exosuit Weapon (\"Ultra AC 2\" LMG)"
|
|
description = "An advanced piece of mech weaponry"
|
|
prereq_ids = list("adv_mecha")
|
|
design_ids = list(
|
|
"mech_lmg",
|
|
"mech_lmg_ammo",
|
|
)
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 2500)
|
|
|
|
/datum/techweb_node/mech_diamond_drill
|
|
id = "mech_diamond_drill"
|
|
display_name = "Exosuit Diamond Drill"
|
|
description = "A diamond drill fit for a large exosuit"
|
|
prereq_ids = list("adv_mining")
|
|
design_ids = list(
|
|
"mech_diamond_drill",
|
|
)
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 2500)
|
|
|
|
////////////////////////Alien technology////////////////////////
|
|
/datum/techweb_node/alientech //AYYYYYYYYLMAOO tech
|
|
id = "alientech"
|
|
display_name = "Alien Technology"
|
|
description = "Things used by the greys."
|
|
prereq_ids = list("biotech","engineering")
|
|
boost_item_paths = list(
|
|
/obj/item/abductor,
|
|
/obj/item/cautery/alien,
|
|
/obj/item/circuitboard/machine/abductor,
|
|
/obj/item/circular_saw/alien,
|
|
/obj/item/crowbar/abductor,
|
|
/obj/item/gun/energy/alien,
|
|
/obj/item/gun/energy/shrink_ray,
|
|
/obj/item/hemostat/alien,
|
|
/obj/item/melee/baton/abductor,
|
|
/obj/item/multitool/abductor,
|
|
/obj/item/retractor/alien,
|
|
/obj/item/scalpel/alien,
|
|
/obj/item/screwdriver/abductor,
|
|
/obj/item/surgicaldrill/alien,
|
|
/obj/item/weldingtool/abductor,
|
|
/obj/item/wirecutters/abductor,
|
|
/obj/item/wrench/abductor,
|
|
)
|
|
design_ids = list(
|
|
"alienalloy",
|
|
)
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 5000)
|
|
hidden = TRUE
|
|
|
|
/datum/techweb_node/alientech/on_research() //Unlocks the Zeta shuttle for purchase
|
|
SSshuttle.shuttle_purchase_requirements_met[SHUTTLE_UNLOCK_ALIENTECH] = TRUE
|
|
|
|
/datum/techweb_node/alien_bio
|
|
id = "alien_bio"
|
|
display_name = "Alien Biological Tools"
|
|
description = "Advanced biological tools."
|
|
prereq_ids = list("alientech", "adv_biotech")
|
|
design_ids = list(
|
|
"alien_cautery",
|
|
"alien_drill",
|
|
"alien_hemostat",
|
|
"alien_retractor",
|
|
"alien_saw",
|
|
"alien_scalpel",
|
|
//SKYRAT EDIT START - RESEARCH DESIGNS
|
|
"brute3medicell",
|
|
"burn3medicell",
|
|
"oxy3medicell",
|
|
"toxin3medicell",
|
|
//SKYRAT EDIT END - RESEARCH DESIGNS
|
|
)
|
|
|
|
boost_item_paths = list(
|
|
/obj/item/abductor,
|
|
/obj/item/cautery/alien,
|
|
/obj/item/circuitboard/machine/abductor,
|
|
/obj/item/circular_saw/alien,
|
|
/obj/item/crowbar/abductor,
|
|
/obj/item/gun/energy/alien,
|
|
/obj/item/gun/energy/shrink_ray,
|
|
/obj/item/hemostat/alien,
|
|
/obj/item/melee/baton/abductor,
|
|
/obj/item/multitool/abductor,
|
|
/obj/item/retractor/alien,
|
|
/obj/item/scalpel/alien,
|
|
/obj/item/screwdriver/abductor,
|
|
/obj/item/surgicaldrill/alien,
|
|
/obj/item/weldingtool/abductor,
|
|
/obj/item/wirecutters/abductor,
|
|
/obj/item/wrench/abductor,
|
|
)
|
|
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 12500)
|
|
discount_experiments = list(/datum/experiment/scanning/points/slime/hard = 10000)
|
|
hidden = TRUE
|
|
|
|
/datum/techweb_node/alien_engi
|
|
id = "alien_engi"
|
|
display_name = "Alien Engineering"
|
|
description = "Alien engineering tools"
|
|
prereq_ids = list("alientech", "adv_engi")
|
|
|
|
design_ids = list(
|
|
"alien_crowbar",
|
|
"alien_multitool",
|
|
"alien_screwdriver",
|
|
"alien_welder",
|
|
"alien_wirecutters",
|
|
"alien_wrench",
|
|
)
|
|
|
|
boost_item_paths = list(
|
|
/obj/item/abductor,
|
|
/obj/item/circuitboard/machine/abductor,
|
|
/obj/item/crowbar/abductor,
|
|
/obj/item/gun/energy/shrink_ray,
|
|
/obj/item/melee/baton/abductor,
|
|
/obj/item/multitool/abductor,
|
|
/obj/item/screwdriver/abductor,
|
|
/obj/item/weldingtool/abductor,
|
|
/obj/item/wirecutters/abductor,
|
|
/obj/item/wrench/abductor,
|
|
)
|
|
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 2500)
|
|
hidden = TRUE
|
|
|
|
/datum/techweb_node/syndicate_basic
|
|
id = "syndicate_basic"
|
|
display_name = "Illegal Technology"
|
|
description = "Dangerous research used to create dangerous objects."
|
|
prereq_ids = list("adv_engi", "adv_weaponry", "explosive_weapons")
|
|
design_ids = list(
|
|
"advanced_camera",
|
|
"ai_cam_upgrade",
|
|
"borg_syndicate_module",
|
|
"decloner",
|
|
"donksoft_refill",
|
|
"donksofttoyvendor",
|
|
"largecrossbow",
|
|
"rapidsyringe",
|
|
"suppressor",
|
|
"super_pointy_tape",
|
|
)
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 10000)
|
|
hidden = TRUE
|
|
|
|
/datum/techweb_node/syndicate_basic/New() //Crappy way of making syndicate gear decon supported until there's another way.
|
|
. = ..()
|
|
if(!SSearly_assets.initialized)
|
|
RegisterSignal(SSearly_assets, COMSIG_SUBSYSTEM_POST_INITIALIZE, .proc/register_uplink_items)
|
|
else
|
|
register_uplink_items()
|
|
|
|
/**
|
|
* This needs some clarification: The uplink_items_by_type list is populated on datum/asset/json/uplink/generate.
|
|
* SStraitor doesn't actually initialize. I'm bamboozled.
|
|
*/
|
|
/datum/techweb_node/syndicate_basic/proc/register_uplink_items()
|
|
SIGNAL_HANDLER
|
|
UnregisterSignal(SSearly_assets, COMSIG_SUBSYSTEM_POST_INITIALIZE)
|
|
boost_item_paths = list()
|
|
for(var/datum/uplink_item/item_path as anything in SStraitor.uplink_items_by_type)
|
|
var/datum/uplink_item/item = SStraitor.uplink_items_by_type[item_path]
|
|
if(!item.item || !item.illegal_tech)
|
|
continue
|
|
boost_item_paths |= item.item //allows deconning to unlock.
|
|
|
|
|
|
////////////////////////B.E.P.I.S. Locked Techs////////////////////////
|
|
/datum/techweb_node/light_apps
|
|
id = "light_apps"
|
|
display_name = "Illumination Applications"
|
|
description = "Applications of lighting and vision technology not originally thought to be commercially viable."
|
|
prereq_ids = list("base")
|
|
design_ids = list(
|
|
"bright_helmet",
|
|
"rld_mini",
|
|
)
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 2500)
|
|
hidden = TRUE
|
|
experimental = TRUE
|
|
|
|
/datum/techweb_node/extreme_office
|
|
id = "extreme_office"
|
|
display_name = "Advanced Office Applications"
|
|
description = "Some of our smartest lab guys got together on a Friday and improved our office efficiency by 350%. Here's how."
|
|
prereq_ids = list("base")
|
|
design_ids = list(
|
|
"mauna_mug",
|
|
"rolling_table",
|
|
)
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 2500)
|
|
hidden = TRUE
|
|
experimental = TRUE
|
|
|
|
/datum/techweb_node/spec_eng
|
|
id = "spec_eng"
|
|
display_name = "Specialized Engineering"
|
|
description = "Conventional wisdom has deemed these engineering products 'technically' safe, but far too dangerous to traditionally condone."
|
|
prereq_ids = list("base")
|
|
design_ids = list(
|
|
"eng_gloves",
|
|
"lava_rods",
|
|
)
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 2500)
|
|
hidden = TRUE
|
|
experimental = TRUE
|
|
|
|
/datum/techweb_node/aus_security
|
|
id = "aus_security"
|
|
display_name = "Australicus Security Protocols"
|
|
description = "It is said that security in the Australicus sector is tight, so we took some pointers from their equipment. Thankfully, our sector lacks any signs of these, 'dropbears'."
|
|
prereq_ids = list("base")
|
|
design_ids = list(
|
|
"pin_explorer",
|
|
"stun_boomerang",
|
|
)
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 2500)
|
|
hidden = TRUE
|
|
experimental = TRUE
|
|
|
|
/datum/techweb_node/interrogation
|
|
id = "interrogation"
|
|
display_name = "Enhanced Interrogation Technology"
|
|
description = "By cross-referencing several declassified documents from past dictatorial regimes, we were able to develop an incredibly effective interrogation device. \
|
|
Ethical concerns about loss of free will do not apply to criminals, according to galactic law."
|
|
prereq_ids = list("base")
|
|
design_ids = list(
|
|
"hypnochair",
|
|
)
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 3500)
|
|
hidden = TRUE
|
|
experimental = TRUE
|
|
|
|
/datum/techweb_node/sticky_advanced
|
|
id = "sticky_advanced"
|
|
display_name = "Advanced Sticky Technology"
|
|
description = "Taking a good joke too far? Nonsense!"
|
|
design_ids = list(
|
|
"pointy_tape",
|
|
"super_sticky_tape",
|
|
)
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 2500)
|
|
hidden = TRUE
|
|
experimental = TRUE
|
|
|
|
/datum/techweb_node/tackle_advanced
|
|
id = "tackle_advanced"
|
|
display_name = "Advanced Grapple Technology"
|
|
description = "Nanotrasen would like to remind its researching staff that it is never acceptable to \"glomp\" your coworkers, and further \"scientific trials\" on the subject \
|
|
will no longer be accepted in its academic journals."
|
|
design_ids = list(
|
|
"tackle_dolphin",
|
|
"tackle_rocket",
|
|
)
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 2500)
|
|
hidden = TRUE
|
|
experimental = TRUE
|
|
|
|
/datum/techweb_node/mod_experimental
|
|
id = "mod_experimental"
|
|
display_name = "Experimental Modular Suits"
|
|
description = "Applications of experimentality when creating MODsuits has created these..."
|
|
prereq_ids = list("base")
|
|
design_ids = list(
|
|
"mod_disposal",
|
|
)
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 2500)
|
|
hidden = TRUE
|
|
experimental = TRUE
|
|
|
|
/datum/techweb_node/fishing
|
|
id = "fishing"
|
|
display_name = "Fishing Technology"
|
|
description = "Cutting edge fishing advancements."
|
|
prereq_ids = list("base")
|
|
design_ids = list(
|
|
"fishing_rod_tech"
|
|
)
|
|
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 2500)
|
|
hidden = TRUE
|
|
experimental = TRUE
|
|
|
|
//Helpers for debugging/balancing the techweb in its entirety!
|
|
/proc/total_techweb_points()
|
|
var/list/datum/techweb_node/processing = list()
|
|
for(var/i in subtypesof(/datum/techweb_node))
|
|
processing += new i
|
|
var/datum/techweb/TW = new
|
|
TW.research_points = list()
|
|
for(var/i in processing)
|
|
var/datum/techweb_node/TN = i
|
|
TW.add_point_list(TN.research_costs)
|
|
return TW.research_points
|
|
|
|
/proc/total_techweb_points_printout()
|
|
var/list/datum/techweb_node/processing = list()
|
|
for(var/i in subtypesof(/datum/techweb_node))
|
|
processing += new i
|
|
var/datum/techweb/TW = new
|
|
TW.research_points = list()
|
|
for(var/i in processing)
|
|
var/datum/techweb_node/TN = i
|
|
TW.add_point_list(TN.research_costs)
|
|
return TW.printout_points()
|