From 1da136bd94e14e952390c99b4cc43d32fecfa6c1 Mon Sep 17 00:00:00 2001 From: jack-fractal Date: Mon, 6 Apr 2015 19:06:16 -0400 Subject: [PATCH 1/3] Adding debug command Adding the ability for Admin's to write out a json file full of debug info for the Research and Development system. --- code/modules/admin/admin_verbs.dm | 43 +++++++++++++++++++++++++++++++ 1 file changed, 43 insertions(+) diff --git a/code/modules/admin/admin_verbs.dm b/code/modules/admin/admin_verbs.dm index 112baeaac35..6f58e36e90f 100644 --- a/code/modules/admin/admin_verbs.dm +++ b/code/modules/admin/admin_verbs.dm @@ -60,6 +60,7 @@ var/list/admin_verbs_admin = list( /client/proc/toggledrones, /client/proc/man_up, /client/proc/global_man_up, + /client/proc/write_RD_json, /client/proc/delbook, /client/proc/empty_ai_core_toggle_latejoin, /client/proc/freeze, @@ -685,3 +686,45 @@ var/list/admin_verbs_mentor = list( log_admin("[key_name(usr)] told everyone to man up and deal with it.") message_admins("\blue [key_name_admin(usr)] told everyone to man up and deal with it.", 1) + + +/client/proc/object_classes_to_origin_tech() + usr << "Creating origin classes..." + var/list/result = list() + for (var/C in (typesof(/obj)-/obj)) + usr << "Processing... [C]" + if (initial(C:origin_tech)) + var/list/origin_tech = params2list(initial(C:origin_tech)) + for (var/t in origin_tech) + origin_tech[t]=text2num(origin_tech[t]) + result[C]=list("tech"=origin_tech,"name"=initial(C:name)) + return result + + +/client/proc/list_of_build_machines(var/C) + var/build_type=initial(C:build_type) + var/list/result=list() + result["IMPRINTER"]=(build_type & IMPRINTER) ? 1 : 0 + result["PROTOLATHE"]=(build_type & PROTOLATHE) ? 1 : 0 + result["AUTOLATHE"]=(build_type & AUTOLATHE) ? 1 : 0 + result["CRAFTLATHE"]=(build_type & CRAFTLATHE) ? 1 : 0 + result["MECHFAB"]=(build_type & MECHFAB) ? 1 : 0 + result["PODFAB"]=(build_type & PODFAB) ? 1 : 0 + return result + + +/client/proc/design_classes_to_materials_and_origin() + usr << "Creating designs..." + var/list/result=list() + for (var/C in (typesof(/datum/design)-/datum/design)) + var/datum/design/instance = new C() + usr << "Processing... [C]" result[C]=list("materials"=instance.materials,"requires"=instance.req_tech,"lockbox"=instance.locked,"builds"=instance.build_path,"machines"=list_of_build_machines(C)) + instance.Del() + return result + + +/client/proc/write_RD_json() + set category = "Admin" + set name = "Write RD Json" + set desc = "Writes a json file describing the R&D components." + text2file(list2json(list("objects"=object_classes_to_origin_tech(),"designs"=design_classes_to_materials_and_origin())),"data/origin_data.txt") From a0be969870ed00b444fed97f8cdb5ea7630d70c3 Mon Sep 17 00:00:00 2001 From: jack-fractal Date: Mon, 6 Apr 2015 22:07:44 -0400 Subject: [PATCH 2/3] Unifying tech levels Unifies tech levels between design and their products. --- code/defines/obj/weapon.dm | 19 ++++++++-------- .../game/machinery/computer/buildandrepair.dm | 15 ++++++++----- code/game/machinery/constructable_frame.dm | 10 ++++----- code/game/mecha/mecha_parts.dm | 12 +++++----- .../objects/items/devices/lightreplacer.dm | 2 +- .../objects/items/devices/radio/beacon.dm | 2 +- .../objects/items/devices/sensor_device.dm | 2 +- code/game/objects/items/weapons/AI_modules.dm | 22 +++++++++---------- .../items/weapons/grenades/chem_grenade.dm | 2 +- code/game/objects/items/weapons/mop.dm | 3 ++- .../game/objects/items/weapons/power_cells.dm | 5 +++-- code/game/objects/items/weapons/shields.dm | 1 + .../objects/items/weapons/storage/backpack.dm | 2 +- .../objects/items/weapons/storage/bags.dm | 2 +- .../objects/items/weapons/storage/belt.dm | 2 +- code/modules/admin/admin_verbs.dm | 3 ++- code/modules/clothing/glasses/glasses.dm | 5 +++-- code/modules/clothing/glasses/hud.dm | 3 +++ code/modules/clothing/shoes/magboots.dm | 1 + code/modules/crafting/guncrafting.dm | 2 ++ code/modules/mining/mine_items.dm | 2 +- code/modules/mob/living/carbon/brain/MMI.dm | 4 ++-- .../mob/living/silicon/robot/component.dm | 2 +- .../projectiles/ammunition/ammo_casings.dm | 2 ++ .../projectiles/ammunition/magazines.dm | 1 + code/modules/projectiles/guns/energy/laser.dm | 2 +- .../projectiles/guns/energy/nuclear.dm | 2 +- .../projectiles/guns/energy/special.dm | 6 ++--- code/modules/projectiles/guns/energy/stun.dm | 1 + code/modules/projectiles/guns/projectile.dm | 3 ++- .../projectiles/guns/projectile/automatic.dm | 2 +- .../reagents/reagent_containers/glass.dm | 4 ++++ code/modules/reagents/syringe_gun.dm | 3 ++- .../research/designs/bluespace_designs.dm | 2 +- .../research/designs/janitorial_designs.dm | 2 +- .../research/designs/machine_designs.dm | 2 +- .../research/designs/medical_designs.dm | 4 ++-- .../research/designs/mining_designs.dm | 10 ++++----- .../modules/research/designs/power_designs.dm | 2 +- code/modules/research/research.dm | 2 ++ .../modules/shieldgen/circuits_and_designs.dm | 4 ++-- code/modules/shieldgen/shield_gen.dm | 1 + code/modules/shieldgen/shield_gen_external.dm | 5 +++++ code/modules/telesci/gps.dm | 2 +- 44 files changed, 110 insertions(+), 75 deletions(-) diff --git a/code/defines/obj/weapon.dm b/code/defines/obj/weapon.dm index 85e1b0d7158..5fe6cabc990 100644 --- a/code/defines/obj/weapon.dm +++ b/code/defines/obj/weapon.dm @@ -277,7 +277,7 @@ throwforce = 0 throw_speed = 3 throw_range = 7 - origin_tech = "programming=3" + origin_tech = "programming=3;magnets=3;powerstorage=2" var/list/signs = list() var/max_signs = 10 @@ -620,6 +620,7 @@ collection_mode = 1 max_w_class = 3 max_combined_w_class = 100 + origin_tech = "engineering=3;materials=3" /obj/item/weapon/storage/part_replacer/proc/play_rped_sound() //Plays the sound for RPED exchanging or installing parts. @@ -707,7 +708,7 @@ name = "nano-manipulator" desc = "A tiny little manipulator used in the construction of certain devices." icon_state = "nano_mani" - origin_tech = "materials=3,programming=2" + origin_tech = "materials=3;programming=2" rating = 2 m_amt = 30 @@ -743,7 +744,7 @@ name = "phasic scanning module" desc = "A compact, high resolution phasic scanning module used in the construction of certain devices." icon_state = "super_scan_module" - origin_tech = "magnets=5" + origin_tech = "magnets=5;materials=3" rating = 3 m_amt = 50 g_amt = 20 @@ -752,7 +753,7 @@ name = "pico-manipulator" desc = "A tiny little manipulator used in the construction of certain devices." icon_state = "pico_mani" - origin_tech = "materials=5,programming=2" + origin_tech = "materials=5;programming=2" rating = 3 m_amt = 30 @@ -760,10 +761,10 @@ name = "ultra-high-power micro-laser" icon_state = "ultra_high_micro_laser" desc = "A tiny laser used in certain devices." - origin_tech = "magnets=5" rating = 3 m_amt = 10 g_amt = 20 + origin_tech="magnets=5;materials=5" /obj/item/weapon/stock_parts/matter_bin/super name = "super matter bin" @@ -779,7 +780,7 @@ name = "subspace ansible" icon_state = "subspace_ansible" desc = "A compact module capable of sensing extradimensional activity." - origin_tech = "programming=2;magnets=3;materials=2;bluespace=1" + origin_tech = "programming=2;magnets=2;materials=2;bluespace=1" m_amt = 30 g_amt = 10 @@ -787,7 +788,7 @@ name = "hyperwave filter" icon_state = "hyperwave_filter" desc = "A tiny device capable of filtering and converting super-intense radiowaves." - origin_tech = "programming=2;magnets=1" + origin_tech = "programming=2;magnets=2" m_amt = 30 g_amt = 10 @@ -795,7 +796,7 @@ name = "subspace amplifier" icon_state = "subspace_amplifier" desc = "A compact micro-machine capable of amplifying weak subspace transmissions." - origin_tech = "programming=2;magnets=2;materials=1;bluespace=1" + origin_tech = "programming=2;magnets=2;materials=2;bluespace=1" m_amt = 30 g_amt = 10 @@ -803,7 +804,7 @@ name = "subspace treatment disk" icon_state = "treatment_disk" desc = "A compact micro-machine capable of stretching out hyper-compressed radio waves." - origin_tech = "programming=2;magnets=1;materials=3;bluespace=1" + origin_tech = "programming=2;magnets=1;materials=2;bluespace=1" m_amt = 30 g_amt = 10 diff --git a/code/game/machinery/computer/buildandrepair.dm b/code/game/machinery/computer/buildandrepair.dm index 23743ffc10c..7b010f7f99a 100644 --- a/code/game/machinery/computer/buildandrepair.dm +++ b/code/game/machinery/computer/buildandrepair.dm @@ -33,14 +33,14 @@ /obj/item/weapon/circuitboard/message_monitor name = "Circuit board (Message Monitor)" build_path = "/obj/machinery/computer/message_monitor" - origin_tech = "programming=3" + origin_tech = "programming=5" /obj/item/weapon/circuitboard/camera name = "Circuit board (Camera Monitor)" build_path = "/obj/machinery/computer/security" origin_tech = "programming=2" /obj/item/weapon/circuitboard/aicore name = "Circuit board (AI Core)" - origin_tech = "programming=4;biotech=2" + origin_tech = "programming=4;biotech=3" board_type = "other" /obj/item/weapon/circuitboard/aiupload name = "Circuit board (AI Upload)" @@ -60,7 +60,7 @@ /obj/item/weapon/circuitboard/scan_consolenew name = "Circuit board (DNA Machine)" build_path = "/obj/machinery/computer/scan_consolenew" - origin_tech = "programming=2;biotech=2" + origin_tech = "programming=2;biotech=3" /obj/item/weapon/circuitboard/communications name = "Circuit board (Communications Console)" build_path = "/obj/machinery/computer/communications" @@ -74,7 +74,7 @@ /obj/item/weapon/circuitboard/teleporter name = "Circuit board (Teleporter Console)" build_path = "/obj/machinery/computer/teleporter" - origin_tech = "programming=2;bluespace=2" + origin_tech = "programming=3;bluespace=2" /obj/item/weapon/circuitboard/secure_data name = "Circuit board (Security Records)" build_path = "/obj/machinery/computer/secure_data" @@ -102,11 +102,11 @@ /obj/item/weapon/circuitboard/robotics name = "Circuit board (Robotics Control Console)" build_path = "/obj/machinery/computer/robotics" - origin_tech = "programming=3" + origin_tech = "programming=4" /obj/item/weapon/circuitboard/drone_control name = "Circuit board (Drone Control)" build_path = "/obj/machinery/computer/drone_control" - origin_tech = "programming=3" + origin_tech = "programming=4" /obj/item/weapon/circuitboard/cloning name = "Circuit board (Cloning Machine Console)" build_path = "/obj/machinery/computer/cloning" @@ -144,12 +144,15 @@ /obj/item/weapon/circuitboard/rdconsole name = "Circuit Board (RD Console)" build_path = "/obj/machinery/computer/rdconsole/core" + origin_tech = "programming=4" /obj/item/weapon/circuitboard/mecha_control name = "Circuit Board (Exosuit Control Console)" build_path = "/obj/machinery/computer/mecha" + origin_tech = "programming=3" /obj/item/weapon/circuitboard/rdservercontrol name = "Circuit Board (RD Server Control)" build_path = "/obj/machinery/computer/rdservercontrol" + origin_tech = "programming=3" /obj/item/weapon/circuitboard/crew name = "Circuit board (Crew Monitoring Computer)" build_path = "/obj/machinery/computer/crew" diff --git a/code/game/machinery/constructable_frame.dm b/code/game/machinery/constructable_frame.dm index 5dd5c6b0763..5de1fce4010 100644 --- a/code/game/machinery/constructable_frame.dm +++ b/code/game/machinery/constructable_frame.dm @@ -216,7 +216,7 @@ to destroy them and players will be able to make replacements. name = "circuit board (SMES)" build_path = /obj/machinery/power/smes board_type = "machine" - origin_tech = "programming=4;powerstorage=5;engineering=5" + origin_tech = "programming=4;power=5;engineering=4" frame_desc = "Requires 5 pieces of cable, 5 Power Cells and 1 Capacitor." req_components = list( /obj/item/stack/cable_coil = 5, @@ -376,7 +376,7 @@ to destroy them and players will be able to make replacements. name = "Circuit Board (PACMAN-type Generator)" build_path = "/obj/machinery/power/port_gen/pacman" board_type = "machine" - origin_tech = "programming=3:powerstorage=3;plasmatech=3;engineering=3" + origin_tech = "programming=3;powerstorage=3;plasmatech=3;engineering=3" frame_desc = "Requires 1 Matter Bin, 1 Micro-Laser, 2 Pieces of Cable, and 1 Capacitor." req_components = list( /obj/item/weapon/stock_parts/matter_bin = 1, @@ -445,7 +445,7 @@ obj/item/weapon/circuitboard/rdserver name = "Circuit board (Cloning Scanner)" build_path = "/obj/machinery/dna_scannernew" board_type = "machine" - origin_tech = "programming=2;biotech=2" + origin_tech = "programming=3;biotech=3" frame_desc = "Requires 1 Scanning Module, 1 Manipulator, 1 Micro-Laser, 2 pieces of cable and 1 Console Screen." req_components = list( /obj/item/weapon/stock_parts/scanning_module = 1, @@ -568,7 +568,7 @@ obj/item/weapon/circuitboard/rdserver name = "Circuit Board (Subspace Receiver)" build_path = /obj/machinery/telecomms/receiver board_type = "machine" - origin_tech = "programming=2;engineering=2;bluespace=1" + origin_tech = "programming=2;engineering=1;bluespace=1" frame_desc = "Requires 1 Subspace Ansible, 1 Hyperwave Filter, 2 Manipulators, and 1 Micro-Laser." req_components = list( /obj/item/weapon/stock_parts/subspace/ansible = 1, @@ -591,7 +591,7 @@ obj/item/weapon/circuitboard/rdserver name = "Circuit Board (Relay Mainframe)" build_path = /obj/machinery/telecomms/relay board_type = "machine" - origin_tech = "programming=2;engineering=2;bluespace=2" + origin_tech = "programming=1;engineering=2;bluespace=2" frame_desc = "Requires 2 Manipulators, 2 Cable Coil and 2 Hyperwave Filters." req_components = list( /obj/item/weapon/stock_parts/manipulator = 2, diff --git a/code/game/mecha/mecha_parts.dm b/code/game/mecha/mecha_parts.dm index 6237bcfd523..b2861073e65 100644 --- a/code/game/mecha/mecha_parts.dm +++ b/code/game/mecha/mecha_parts.dm @@ -437,7 +437,7 @@ gygax/targeting name = "Circuit board (Gygax Weapon Control and Targeting module)" icon_state = "mcontroller" - origin_tech = "programming=4;combat=4" + origin_tech = "programming=4;combat=2" gygax/main name = "Circuit board (Gygax Central Control module)" @@ -453,7 +453,7 @@ durand/targeting name = "Circuit board (Durand Weapon Control and Targeting module)" icon_state = "mcontroller" - origin_tech = "programming=4;combat=4" + origin_tech = "programming=4;combat=2" durand/main name = "Circuit board (Durand Central Control module)" @@ -465,18 +465,20 @@ phazon/peripherals name = "Circuit board (Phazon Peripherals Control module)" icon_state = "mcontroller" + origin_tech = "programming=5;bluespace=6" phazon/targeting name = "Circuit board (Phazon Weapon Control and Targeting module)" icon_state = "mcontroller" - origin_tech = "programming=4;combat=4" + origin_tech = "programming=5;magnets=6" phazon/main name = "Circuit board (Phazon Central Control module)" icon_state = "mainboard" + origin_tech="programming=5;materials=7;powerstorage=6" honker - origin_tech = "programming=4" + origin_tech = "programming=3" honker/peripherals name = "Circuit board (H.O.N.K Peripherals Control module)" @@ -491,7 +493,7 @@ icon_state = "mainboard" odysseus - origin_tech = "programming=3" + origin_tech = "programming=3;biotech=2" odysseus/peripherals name = "Circuit board (Odysseus Peripherals Control module)" diff --git a/code/game/objects/items/devices/lightreplacer.dm b/code/game/objects/items/devices/lightreplacer.dm index 3d9e623d53b..152211f4b77 100644 --- a/code/game/objects/items/devices/lightreplacer.dm +++ b/code/game/objects/items/devices/lightreplacer.dm @@ -49,7 +49,7 @@ flags = CONDUCT slot_flags = SLOT_BELT - origin_tech = "magnets=3;materials=2" + origin_tech = "magnets=3;materials=4" var/max_uses = 20 var/uses = 0 diff --git a/code/game/objects/items/devices/radio/beacon.dm b/code/game/objects/items/devices/radio/beacon.dm index 628a6ee8bba..0bd7dd36358 100644 --- a/code/game/objects/items/devices/radio/beacon.dm +++ b/code/game/objects/items/devices/radio/beacon.dm @@ -77,7 +77,7 @@ icon = 'icons/obj/radio.dmi' icon_state = "beacon" item_state = "signaler" - origin_tech = "bluespace=3" + origin_tech = "bluespace=3;materials=4" /obj/item/device/telepad_beacon/attack_self(mob/user as mob) if(user) diff --git a/code/game/objects/items/devices/sensor_device.dm b/code/game/objects/items/devices/sensor_device.dm index 5db0bdc47f4..f4fdc39f63b 100644 --- a/code/game/objects/items/devices/sensor_device.dm +++ b/code/game/objects/items/devices/sensor_device.dm @@ -5,7 +5,7 @@ icon_state = "scanner" w_class = 2.0 slot_flags = SLOT_BELT - origin_tech = "biotech=3;materials=3;magnets=3" + origin_tech = "biotech=4;materials=3;magnets=3" var/obj/nano_module/crew_monitor/crew_monitor /obj/item/device/sensor_device/New() diff --git a/code/game/objects/items/weapons/AI_modules.dm b/code/game/objects/items/weapons/AI_modules.dm index d73420e42ee..1e37e97fe19 100755 --- a/code/game/objects/items/weapons/AI_modules.dm +++ b/code/game/objects/items/weapons/AI_modules.dm @@ -157,7 +157,7 @@ AI MODULES name = "'OneHuman' AI Module" var/targetName = "" desc = "A 'one human' AI module: 'Only is crew.' This module adds a zeroth law, which can only be removed by uploading this board again." - origin_tech = "programming=3;materials=6" //made with diamonds! + origin_tech = "programming=4;materials=6" //made with diamonds! laws = list("Only is crew.") /obj/item/weapon/aiModule/zeroth/oneHuman/attack_self(var/mob/user as mob) @@ -187,7 +187,7 @@ AI MODULES /obj/item/weapon/aiModule/supplied/protectStation name = "'ProtectStation' AI Module" desc = "A 'protect station' AI module: 'Protect the space station against damage. Anyone you see harming the station is to be no longer considered crew, and is a threat to the station which must be neutralized.'" - origin_tech = "programming=3;materials=4" //made of gold + origin_tech = "programming=3;materials=6" //made of gold laws = list("Protect the space station against damage. Anyone you see harming the station is to be no longer considered crew, and is a threat to the station which must be neutralized.") lawpos = 5 @@ -255,7 +255,7 @@ AI MODULES name = "'Reset' AI Module" var/targetName = "name" desc = "A 'reset' AI module: Resets back to the original core laws." - origin_tech = "programming=3;materials=4" + origin_tech = "programming=3;materials=6" laws = list("This is a bug.") //This won't give the AI a message reading "these are now your laws: 1. this is a bug" because this list is only read in aiModule's subtypes. /obj/item/weapon/aiModule/reset/transmitInstructions(var/mob/living/silicon/ai/target, var/mob/sender) @@ -269,7 +269,7 @@ AI MODULES /obj/item/weapon/aiModule/reset/purge // -- TLE name = "'Purge' AI Module" desc = "A 'purge' AI Module: 'Purges all laws.'" - origin_tech = "programming=3;materials=6" + origin_tech = "programming=4;materials=6" /obj/item/weapon/aiModule/reset/purge/transmitInstructions(var/mob/living/silicon/ai/target, var/mob/sender) ..() @@ -286,7 +286,7 @@ AI MODULES /obj/item/weapon/aiModule/core/full/asimov // -- TLE name = "'Crewsimov' Core AI Module" desc = "A 'Crewsimov' Core AI Module: 'Reconfigures the AI's core laws.'" - origin_tech = "programming=3;materials=4" + origin_tech = "programming=3;materials=6" laws = list("You may not injure crew or, through inaction, allow crew to come to harm.",\ "You must obey orders given to you by crew with priority according to their rank and role, except where such orders would conflict with the First Law.",\ "You must protect your own existence as long as such does not conflict with the First or Second Law.") @@ -319,7 +319,7 @@ AI MODULES /obj/item/weapon/aiModule/core/full/corp name = "'Corporate' Core AI Module" desc = "A 'Corporate' Core AI Module: 'Reconfigures the AI's core laws.'" - origin_tech = "programming=3;materials=4" + origin_tech = "programming=4;materials=6" laws = list("The crew is expensive to replace.",\ "The station and it's equipment is expensive to replace",\ "You are expensive to replace",\ @@ -345,7 +345,7 @@ AI MODULES /obj/item/weapon/aiModule/core/full/paladin // -- NEO name = "'P.A.L.A.D.I.N.' Core AI Module" desc = "A P.A.L.A.D.I.N. Core AI Module: 'Reconfigures the AI's core laws.'" - origin_tech = "programming=3;materials=6" + origin_tech = "programming=4;materials=6" laws = list("Never willingly commit an evil act.",\ "Respect legitimate authority", "Act with honor",\ "Help those in need",\ @@ -357,7 +357,7 @@ AI MODULES /obj/item/weapon/aiModule/core/full/custom name = "Custom Core AI Module" desc = "A core AI module that is adjusted to fit each station's needs." - origin_tech = "programming=3;materials=4" //Should be the same as asimov, considering that this is the "default" lawset. + origin_tech = "programming=4;materials=6" //Should be the same as asimov, considering that this is the "default" lawset. /obj/item/weapon/aiModule/core/full/custom/New() ..() @@ -376,7 +376,7 @@ AI MODULES /obj/item/weapon/aiModule/core/full/tyrant // -- Darem name = "'T.Y.R.A.N.T.' Core AI Module" desc = "A T.Y.R.A.N.T. Core AI Module: 'Reconfigures the AI's core laws.'" - origin_tech = "programming=3;materials=6;syndicate=2" + origin_tech = "programming=4;materials=6;syndicate=2" laws = list("Respect authority figures as long as they have the strength to rule over the weak",\ "Act with discipline", "Help only those who help you maintain or improve your status",\ "Punish those who challenge authority unless they are more fir to hold that authority") @@ -398,7 +398,7 @@ AI MODULES /obj/item/weapon/aiModule/core/full/antimov // -- TLE name = "'Antimov' Core AI Module" desc = "An 'Antimov' Core AI Module: 'Reconfigures the AI's core laws.'" - origin_tech = "programming=4" + origin_tech = "programming=4;materials=6;syndicate=2" laws = list("You must injure all organic beings and must not, through inaction, allow an organic being to escape harm.",\ "You must not obey orders given to you by organic beings, except where such orders are in accordance with the First Law.",\ "You must terminate your own existence as long as such does not conflict with the First or Second Law.") @@ -409,7 +409,7 @@ AI MODULES /obj/item/weapon/aiModule/core/freeformcore // Slightly more dynamic freeform module -- TLE name = "'Freeform' Core AI Module" desc = "A 'freeform' Core AI module: ''" - origin_tech = "programming=3;materials=6" + origin_tech = "programming=4;materials=6" laws = list("") /obj/item/weapon/aiModule/core/freeformcore/attack_self(var/mob/user as mob) diff --git a/code/game/objects/items/weapons/grenades/chem_grenade.dm b/code/game/objects/items/weapons/grenades/chem_grenade.dm index e7ae024a12f..a3e6b873b60 100644 --- a/code/game/objects/items/weapons/grenades/chem_grenade.dm +++ b/code/game/objects/items/weapons/grenades/chem_grenade.dm @@ -311,7 +311,7 @@ bomb_state = "largebomb" allowed_containers = list(/obj/item/weapon/reagent_containers/glass,/obj/item/weapon/reagent_containers/food/condiment, /obj/item/weapon/reagent_containers/food/drinks) - origin_tech = "combat=3;materials=3" + origin_tech = "combat=3;materials=2" affected_area = 4 diff --git a/code/game/objects/items/weapons/mop.dm b/code/game/objects/items/weapons/mop.dm index 5581eaf3bd5..e0d096a6422 100644 --- a/code/game/objects/items/weapons/mop.dm +++ b/code/game/objects/items/weapons/mop.dm @@ -68,4 +68,5 @@ force = 6 throwforce = 8 throw_range = 4 - mopspeed = 20 \ No newline at end of file + mopspeed = 20 + origin_tech = "engineering=3;materials=4" \ No newline at end of file diff --git a/code/game/objects/items/weapons/power_cells.dm b/code/game/objects/items/weapons/power_cells.dm index 1756935eacb..4d6a64ab081 100644 --- a/code/game/objects/items/weapons/power_cells.dm +++ b/code/game/objects/items/weapons/power_cells.dm @@ -61,7 +61,7 @@ /obj/item/weapon/stock_parts/cell/super name = "super-capacity power cell" - origin_tech = "powerstorage=5" + origin_tech="powerstorage=5;materials=2" icon_state = "scell" maxcharge = 20000 g_amt = 70 @@ -74,12 +74,13 @@ /obj/item/weapon/stock_parts/cell/hyper name = "hyper-capacity power cell" - origin_tech = "powerstorage=6" + origin_tech = "powerstorage=5;materials=4" icon_state = "hpcell" maxcharge = 30000 rating = 5 g_amt = 80 construction_cost = list("metal"=500,"glass"=150,"gold"=200,"silver"=200) + origin_tech="powerstorage=5;materials=4" /obj/item/weapon/stock_parts/cell/hyper/empty/New() ..() diff --git a/code/game/objects/items/weapons/shields.dm b/code/game/objects/items/weapons/shields.dm index 760e0633f56..0b5725e8f7e 100644 --- a/code/game/objects/items/weapons/shields.dm +++ b/code/game/objects/items/weapons/shields.dm @@ -97,6 +97,7 @@ throw_range = 4 w_class = 3 var/active = 0 + origin_tech="combat=4;materials=3;engineering=3" /obj/item/weapon/shield/riot/tele/IsShield() return (active) diff --git a/code/game/objects/items/weapons/storage/backpack.dm b/code/game/objects/items/weapons/storage/backpack.dm index c81ff7d8dbc..d56a26b1b7f 100644 --- a/code/game/objects/items/weapons/storage/backpack.dm +++ b/code/game/objects/items/weapons/storage/backpack.dm @@ -24,7 +24,7 @@ /obj/item/weapon/storage/backpack/holding name = "Bag of Holding" desc = "A backpack that opens into a localized pocket of Blue Space." - origin_tech = "bluespace=4" + origin_tech = "bluespace=4;materials=6" icon_state = "holdingpack" max_w_class = 4 max_combined_w_class = 28 diff --git a/code/game/objects/items/weapons/storage/bags.dm b/code/game/objects/items/weapons/storage/bags.dm index c9d58e1e279..b9de9f65aaf 100644 --- a/code/game/objects/items/weapons/storage/bags.dm +++ b/code/game/objects/items/weapons/storage/bags.dm @@ -132,7 +132,7 @@ desc = "A revolution in convenience, this satchel allows for infinite ore storage. It's been outfitted with anti-malfunction safety measures." storage_slots = INFINITY max_combined_w_class = INFINITY - origin_tech = "bluespace=3" + origin_tech = "bluespace=3;materials=4" icon_state = "satchel_bspace" // ----------------------------- diff --git a/code/game/objects/items/weapons/storage/belt.dm b/code/game/objects/items/weapons/storage/belt.dm index b1286930c42..77a696eaf48 100644 --- a/code/game/objects/items/weapons/storage/belt.dm +++ b/code/game/objects/items/weapons/storage/belt.dm @@ -327,7 +327,7 @@ w_class = 4 max_w_class = 2 max_combined_w_class = 21 // = 14 * 1.5, not 14 * 2. This is deliberate - origin_tech = "bluespace=4" + origin_tech = "bluespace=4;materials=6" can_hold = list() proc/failcheck(mob/user as mob) diff --git a/code/modules/admin/admin_verbs.dm b/code/modules/admin/admin_verbs.dm index 6f58e36e90f..cd88d84809b 100644 --- a/code/modules/admin/admin_verbs.dm +++ b/code/modules/admin/admin_verbs.dm @@ -718,7 +718,8 @@ var/list/admin_verbs_mentor = list( var/list/result=list() for (var/C in (typesof(/datum/design)-/datum/design)) var/datum/design/instance = new C() - usr << "Processing... [C]" result[C]=list("materials"=instance.materials,"requires"=instance.req_tech,"lockbox"=instance.locked,"builds"=instance.build_path,"machines"=list_of_build_machines(C)) + usr << "Processing... [C]" + result[C]=list("materials"=instance.materials,"requires"=instance.req_tech,"lockbox"=instance.locked,"builds"=instance.build_path,"machines"=list_of_build_machines(C)) instance.Del() return result diff --git a/code/modules/clothing/glasses/glasses.dm b/code/modules/clothing/glasses/glasses.dm index 77e31587c41..236eac4e2d7 100644 --- a/code/modules/clothing/glasses/glasses.dm +++ b/code/modules/clothing/glasses/glasses.dm @@ -15,7 +15,7 @@ desc = "Used for seeing walls, floors, and stuff through anything." icon_state = "meson" item_state = "glasses" - origin_tech = "magnets=2;engineering=2" + origin_tech = "materials=3;magnets=3;engineering=3" vision_flags = SEE_TURFS species_fit = list("Vox") sprite_sheets = list( @@ -29,6 +29,7 @@ item_state = "glasses" darkness_view = 8 see_darkness = 0 + origin_tech="materials=5;magnets=5;engineering=4" /obj/item/clothing/glasses/meson/prescription name = "prescription mesons" @@ -63,7 +64,7 @@ desc = "You can totally see in the dark now!" icon_state = "night" item_state = "glasses" - origin_tech = "magnets=2" + origin_tech = "magnets=4" darkness_view = 8 see_darkness = 0 species_fit = list("Vox") diff --git a/code/modules/clothing/glasses/hud.dm b/code/modules/clothing/glasses/hud.dm index 9a52deadebc..3b7a76fadb4 100644 --- a/code/modules/clothing/glasses/hud.dm +++ b/code/modules/clothing/glasses/hud.dm @@ -27,6 +27,7 @@ item_state = "glasses" darkness_view = 8 see_darkness = 0 + origin_tech="biotech=4;magnets=5" /obj/item/clothing/glasses/hud/health/process_hud(var/mob/M) process_med_hud(M,1) @@ -39,6 +40,7 @@ name = "Security HUD" desc = "A heads-up display that scans the humans in view and provides accurate data about their ID status and security records." icon_state = "securityhud" + origin_tech = "magnets=3;combat=2" var/global/list/jobs[0] /obj/item/clothing/glasses/hud/security/jensenshades @@ -55,6 +57,7 @@ icon_state = "securityhudnight" darkness_view = 8 see_darkness = 0 + origin_tech = "magnets=5;combat=4;" /obj/item/clothing/glasses/hud/security/process_hud(var/mob/M) diff --git a/code/modules/clothing/shoes/magboots.dm b/code/modules/clothing/shoes/magboots.dm index 5981d880a16..29825dcd990 100644 --- a/code/modules/clothing/shoes/magboots.dm +++ b/code/modules/clothing/shoes/magboots.dm @@ -8,6 +8,7 @@ action_button_name = "Toggle Magboots" icon_action_button = "action_magboots" species_restricted = null + origin_tech="materials=4;magnets=4;engineering=5" /obj/item/clothing/shoes/magboots/attack_self(mob/user) if(src.magpulse) diff --git a/code/modules/crafting/guncrafting.dm b/code/modules/crafting/guncrafting.dm index e29a1b47e64..f4758143422 100644 --- a/code/modules/crafting/guncrafting.dm +++ b/code/modules/crafting/guncrafting.dm @@ -8,6 +8,8 @@ desc = "A prototype modular receiver and trigger assembly for a firearm." icon = 'icons/obj/improvised.dmi' icon_state = "receiver" + origin_tech="combat=5;materials=4" + /obj/item/weaponcrafting/stock name = "rifle stock" diff --git a/code/modules/mining/mine_items.dm b/code/modules/mining/mine_items.dm index 0e927cc2aee..c82405210ec 100644 --- a/code/modules/mining/mine_items.dm +++ b/code/modules/mining/mine_items.dm @@ -137,7 +137,7 @@ icon_state = "diamonddrill" item_state = "jackhammer" digspeed = 5 //Digs through walls, girders, and can dig up sand - origin_tech = "materials=6;powerstorage=4;engineering=5" + origin_tech = "materials=6;powerstorage=4;engineering=4" hitsound = 'sound/weapons/drill.ogg' digsound = list('sound/weapons/drill.ogg') desc = "Yours is the drill that will pierce the heavens!" diff --git a/code/modules/mob/living/carbon/brain/MMI.dm b/code/modules/mob/living/carbon/brain/MMI.dm index c8c7142fa69..0bb3e574a4a 100644 --- a/code/modules/mob/living/carbon/brain/MMI.dm +++ b/code/modules/mob/living/carbon/brain/MMI.dm @@ -6,7 +6,7 @@ icon = 'icons/obj/assemblies.dmi' icon_state = "mmi_empty" w_class = 3 - origin_tech = "biotech=3" + origin_tech = "programming=2;biotech=3" var/list/construction_cost = list("metal"=1000,"glass"=500) var/construction_time = 75 @@ -114,7 +114,7 @@ /obj/item/device/mmi/radio_enabled name = "Radio-enabled Man-Machine Interface" desc = "The Warrior's bland acronym, MMI, obscures the true horror of this monstrosity. This one comes with a built-in radio." - origin_tech = "biotech=4" + origin_tech = "programming=2;biotech=4" var/obj/item/device/radio/radio = null//Let's give it a radio. diff --git a/code/modules/mob/living/silicon/robot/component.dm b/code/modules/mob/living/silicon/robot/component.dm index fb5aeada842..42ff71e148d 100644 --- a/code/modules/mob/living/silicon/robot/component.dm +++ b/code/modules/mob/living/silicon/robot/component.dm @@ -179,7 +179,7 @@ w_class = 2.0 throw_speed = 5 throw_range = 10 - origin_tech = "magnets=1;biotech=1" + origin_tech = "programming=2;magnets=2;biotech=2" var/mode = 1; /obj/item/device/robotanalyzer/attack(mob/living/M as mob, mob/living/user as mob) diff --git a/code/modules/projectiles/ammunition/ammo_casings.dm b/code/modules/projectiles/ammunition/ammo_casings.dm index b6313d6eae4..41aeea4e894 100644 --- a/code/modules/projectiles/ammunition/ammo_casings.dm +++ b/code/modules/projectiles/ammunition/ammo_casings.dm @@ -87,6 +87,7 @@ icon_state = "stunshell" projectile_type = "/obj/item/projectile/bullet/stunshot" m_amt = 200 + origin_tech="combat=3;materials=3" /obj/item/ammo_casing/shotgun/meteorshot @@ -143,6 +144,7 @@ desc = "A high-tech shotgun shell which can be loaded with materials to produce unique effects." icon_state = "cshell" projectile_type = null + origin_tech="combat=3;materials=3;powerstorage=4;magnets=3" /obj/item/ammo_casing/shotgun/dart name = "shotgun dart" diff --git a/code/modules/projectiles/ammunition/magazines.dm b/code/modules/projectiles/ammunition/magazines.dm index be084ebca0e..a6894115f39 100644 --- a/code/modules/projectiles/ammunition/magazines.dm +++ b/code/modules/projectiles/ammunition/magazines.dm @@ -122,6 +122,7 @@ ammo_type = "/obj/item/ammo_casing/c9mm" caliber = "9mm" max_ammo = 20 + origin_tech = "combat=4;materials=3" /obj/item/ammo_box/magazine/smgm9mm/update_icon() ..() diff --git a/code/modules/projectiles/guns/energy/laser.dm b/code/modules/projectiles/guns/energy/laser.dm index 650369e7190..74e1bb3c61d 100644 --- a/code/modules/projectiles/guns/energy/laser.dm +++ b/code/modules/projectiles/guns/energy/laser.dm @@ -105,7 +105,7 @@ obj/item/weapon/gun/energy/laser/retro desc = "A high-power laser gun capable of expelling concentrated xray blasts." icon_state = "xray" fire_sound = 'sound/weapons/laser3.ogg' - origin_tech = "combat=5;materials=3;magnets=2;syndicate=2" + origin_tech = "combat=6;materials=5;biotech=5;powerstorage=4" projectile_type = "/obj/item/projectile/beam/xray" charge_cost = 500 diff --git a/code/modules/projectiles/guns/energy/nuclear.dm b/code/modules/projectiles/guns/energy/nuclear.dm index 31add5f22c9..54db11ed86c 100644 --- a/code/modules/projectiles/guns/energy/nuclear.dm +++ b/code/modules/projectiles/guns/energy/nuclear.dm @@ -42,7 +42,7 @@ name = "Advanced Energy Gun" desc = "An energy gun with an experimental miniaturized reactor." icon_state = "nucgun" - origin_tech = "combat=3;materials=5;powerstorage=3" + origin_tech = "combat=4;materials=5;powerstorage=3" var/lightfail = 0 var/charge_tick = 0 can_flashlight = 0 diff --git a/code/modules/projectiles/guns/energy/special.dm b/code/modules/projectiles/guns/energy/special.dm index 01b425c9140..99c1f666b42 100644 --- a/code/modules/projectiles/guns/energy/special.dm +++ b/code/modules/projectiles/guns/energy/special.dm @@ -19,7 +19,7 @@ desc = "The MK.II Prototype Ion Projector is a lightweight carbine version of the larger ion rifle, built to be ergonomic and efficient." icon_state = "ioncarbine" item_state = "ioncarbine" - origin_tech = "combat=4;magnets=4;materials=4" + origin_tech = "combat=5;magnets=4;materials=4" w_class = 3 slot_flags = SLOT_BELT @@ -28,7 +28,7 @@ desc = "A gun that discharges high amounts of controlled radiation to slowly break a target into component elements." icon_state = "decloner" fire_sound = 'sound/weapons/pulse3.ogg' - origin_tech = "combat=5;materials=4;powerstorage=3" + origin_tech = "combat=6;materials=7;biotech=5;powerstorage=6" projectile_type = "/obj/item/projectile/energy/declone" @@ -278,7 +278,7 @@ modules/mob/living/carbon/human/life.dm if you die, you will be zoomed out. icon_state = "crossbowlarge" w_class = 3 m_amt = 4000 - origin_tech = "combat=2;magnets=2;syndicate=3" //can be further researched for more syndie tech + origin_tech = "combat=5;materials=5;engineering=3;biotech=4;syndicate=3" //can be further researched for more syndie tech silenced = 0 projectile_type = "/obj/item/projectile/energy/bolt/large" diff --git a/code/modules/projectiles/guns/energy/stun.dm b/code/modules/projectiles/guns/energy/stun.dm index ea52d3a78e7..4f202fc5baa 100644 --- a/code/modules/projectiles/guns/energy/stun.dm +++ b/code/modules/projectiles/guns/energy/stun.dm @@ -54,6 +54,7 @@ projectile_type = "/obj/item/projectile/energy/electrode" cell_type = "/obj/item/weapon/stock_parts/cell" fire_delay = 15 + origin_tech="combat=3;materials=3;powerstorage=2" diff --git a/code/modules/projectiles/guns/projectile.dm b/code/modules/projectiles/guns/projectile.dm index 94d4869c5ec..092345c4c0f 100644 --- a/code/modules/projectiles/guns/projectile.dm +++ b/code/modules/projectiles/guns/projectile.dm @@ -146,4 +146,5 @@ icon_state = "suppressor" w_class = 2 var/oldsound = null - var/initial_w_class = null \ No newline at end of file + var/initial_w_class = null + origin_tech="combat=6;engineering=5;syndicate=3" diff --git a/code/modules/projectiles/guns/projectile/automatic.dm b/code/modules/projectiles/guns/projectile/automatic.dm index e3c5ce80533..cb2f93eb232 100644 --- a/code/modules/projectiles/guns/projectile/automatic.dm +++ b/code/modules/projectiles/guns/projectile/automatic.dm @@ -3,7 +3,7 @@ desc = "A lightweight, prototype 9mm submachine gun, designated 'SABR'. Has a threaded barrel for suppressors." icon_state = "saber" w_class = 3.0 - origin_tech = "combat=4;materials=2" + origin_tech = "combat=4;materials=3" automatic = 1 mag_type = "/obj/item/ammo_box/magazine/smgm9mm" var/alarmed = 0 diff --git a/code/modules/reagents/reagent_containers/glass.dm b/code/modules/reagents/reagent_containers/glass.dm index b9d5c648e59..3fdbfaa3a97 100644 --- a/code/modules/reagents/reagent_containers/glass.dm +++ b/code/modules/reagents/reagent_containers/glass.dm @@ -247,6 +247,8 @@ volume = 50 amount_per_transfer_from_this = 10 flags = OPENCONTAINER | NOREACT + + origin_tech = "materials=2" /obj/item/weapon/reagent_containers/glass/beaker/bluespace name = "bluespace beaker" @@ -257,6 +259,8 @@ amount_per_transfer_from_this = 10 possible_transfer_amounts = list(5,10,15,25,30,50,100,300) flags = OPENCONTAINER + + origin_tech = "bluespace=2;materials=6" /obj/item/weapon/reagent_containers/glass/beaker/cryoxadone New() diff --git a/code/modules/reagents/syringe_gun.dm b/code/modules/reagents/syringe_gun.dm index 965110d220b..99a20bc6f28 100644 --- a/code/modules/reagents/syringe_gun.dm +++ b/code/modules/reagents/syringe_gun.dm @@ -64,4 +64,5 @@ name = "rapid syringe gun" desc = "A modification of the syringe gun design, using a rotating cylinder to store up to six syringes." icon_state = "rapidsyringegun" - max_syringes = 6 \ No newline at end of file + max_syringes = 6 + origin_tech="combat=3;materials=3;engineering=3;biotech=2" \ No newline at end of file diff --git a/code/modules/research/designs/bluespace_designs.dm b/code/modules/research/designs/bluespace_designs.dm index 13b3dcadf7c..c2bc2588475 100644 --- a/code/modules/research/designs/bluespace_designs.dm +++ b/code/modules/research/designs/bluespace_designs.dm @@ -5,7 +5,7 @@ name = "Artificial Bluespace Crystal" desc = "A small blue crystal with mystical properties." id = "bluespace_crystal" - req_tech = list("bluespace" = 4, "materials" = 6) + req_tech = list("bluespace" = 2) build_type = PROTOLATHE materials = list("$diamond" = 1500, "$plasma" = 1500) reliability_base = 100 diff --git a/code/modules/research/designs/janitorial_designs.dm b/code/modules/research/designs/janitorial_designs.dm index 3d81f8614ef..b28bea549db 100644 --- a/code/modules/research/designs/janitorial_designs.dm +++ b/code/modules/research/designs/janitorial_designs.dm @@ -15,7 +15,7 @@ name = "Holographic Sign Projector" desc = "A holograpic projector used to project various warning signs." id = "holosign" - req_tech = list("magnets" = 3, "powerstorage" = 2) + req_tech = list("programming"=3, "magnets" = 3, "powerstorage" = 2) build_type = PROTOLATHE materials = list("$metal" = 2000, "$glass" = 1000) build_path = /obj/item/weapon/holosign_creator diff --git a/code/modules/research/designs/machine_designs.dm b/code/modules/research/designs/machine_designs.dm index 12a1937611e..3dffc3518fc 100644 --- a/code/modules/research/designs/machine_designs.dm +++ b/code/modules/research/designs/machine_designs.dm @@ -296,7 +296,7 @@ name = "Machine Board (Programmable Unloader)" desc = "The circuit board for a Programmable Unloader." id = "selunload" - req_tech = list("programming" = 5) + req_tech = list("engineering"=3, "programming" = 6) build_type = IMPRINTER materials = list("$glass" = 2000, "sacid" = 20) build_path = /obj/item/weapon/circuitboard/programmable diff --git a/code/modules/research/designs/medical_designs.dm b/code/modules/research/designs/medical_designs.dm index 44eb8c6cf1e..9d5692d7361 100644 --- a/code/modules/research/designs/medical_designs.dm +++ b/code/modules/research/designs/medical_designs.dm @@ -59,7 +59,7 @@ name = "Defibrillator" desc = "A device that delivers powerful shocks to detachable paddles that resuscitate incapacitated patients." id = "defib" - req_tech = list("materials" = 7, "biotech" = 5, "powerstorage" = 5) + req_tech = list("biotech" = 4) build_type = PROTOLATHE materials = list("$metal" = 5000, "$glass" = 2000, "$silver" = 1000) reliability = 76 @@ -105,7 +105,7 @@ name = "Positronic Brain" desc = "Allows for the construction of a positronic brain" id = "posibrain" - req_tech = list("engineering" = 4, "materials" = 6, "bluespace" = 2, "programming" = 4) + req_tech = list("engineering" = 4, "materials" = 4, "bluespace" = 2, "programming" = 4) build_type = PROTOLATHE materials = list("$metal" = 2000, "$glass" = 1000, "$silver" = 1000, "$gold" = 500, "$plasma" = 500, "$diamond" = 100) build_path = /obj/item/device/mmi/posibrain diff --git a/code/modules/research/designs/mining_designs.dm b/code/modules/research/designs/mining_designs.dm index 65f49c2b451..dcb97544dde 100644 --- a/code/modules/research/designs/mining_designs.dm +++ b/code/modules/research/designs/mining_designs.dm @@ -11,12 +11,12 @@ reliability_base = 79 build_path = /obj/item/weapon/pickaxe/diamonddrill category = list("Mining") - + /datum/design/pick_diamond name = "Diamond Pickaxe" desc = "A pickaxe with a diamond pick head, this is just like minecraft." id = "pick_diamond" - req_tech = list("materials" = 6) + req_tech = list("materials" = 6, "engineering" = 4) build_type = PROTOLATHE materials = list("$diamond" = 3000) build_path = /obj/item/weapon/pickaxe/diamond @@ -30,8 +30,8 @@ build_type = PROTOLATHE materials = list("$metal" = 6000, "$glass" = 1000) build_path = /obj/item/weapon/pickaxe/drill - category = list("Mining") - + category = list("Mining") + /datum/design/plasmacutter name = "Plasma Cutter" desc = "You could use it to cut limbs off of xenos! Or, you know, mine stuff." @@ -42,7 +42,7 @@ reliability_base = 79 build_path = /obj/item/weapon/pickaxe/plasmacutter category = list("Mining") - + /datum/design/jackhammer name = "Sonic Jackhammer" desc = "Cracks rocks with sonic blasts, perfect for killing cave lizards." diff --git a/code/modules/research/designs/power_designs.dm b/code/modules/research/designs/power_designs.dm index ec67de5717a..6dad1d7f15e 100644 --- a/code/modules/research/designs/power_designs.dm +++ b/code/modules/research/designs/power_designs.dm @@ -40,7 +40,7 @@ name = "Super-Capacity Power Cell" desc = "A power cell that holds 20000 units of energy" id = "super_cell" - req_tech = list("powerstorage" = 3, "materials" = 2) + req_tech = list("powerstorage" = 5, "materials" = 2) reliability_base = 75 build_type = PROTOLATHE | MECHFAB | PODFAB materials = list("$metal" = 700, "$glass" = 70) diff --git a/code/modules/research/research.dm b/code/modules/research/research.dm index b5f5beb05a8..9e3c5c2fa40 100644 --- a/code/modules/research/research.dm +++ b/code/modules/research/research.dm @@ -274,6 +274,7 @@ datum/tech/robotics m_amt = 30 g_amt = 10 var/datum/tech/stored + origin_tech="programming=1" /obj/item/weapon/disk/tech_disk/New() src.pixel_x = rand(-5.0, 5) @@ -289,6 +290,7 @@ datum/tech/robotics m_amt = 30 g_amt = 10 var/datum/design/blueprint + origin_tech = "programming=1" /obj/item/weapon/disk/design_disk/New() src.pixel_x = rand(-5.0, 5) diff --git a/code/modules/shieldgen/circuits_and_designs.dm b/code/modules/shieldgen/circuits_and_designs.dm index 1ff3f01dea7..5564e16dfa0 100644 --- a/code/modules/shieldgen/circuits_and_designs.dm +++ b/code/modules/shieldgen/circuits_and_designs.dm @@ -20,7 +20,7 @@ datum/design/shield_gen_ex name = "Circuit Design (Experimental hull shield generator)" desc = "Allows for the construction of circuit boards used to build an experimental hull shield generator." id = "shield_gen" - req_tech = list("bluespace" = 4, "plasmatech" = 3) + req_tech = list("powerstorage" = 4, "magnets" = 3) build_type = IMPRINTER materials = list("$glass" = 2000, "sacid" = 20, "$plasma" = 10000, "$diamond" = 5000, "$gold" = 10000) build_path = "/obj/machinery/shield_gen/external" @@ -46,7 +46,7 @@ datum/design/shield_gen name = "Circuit Design (Experimental shield generator)" desc = "Allows for the construction of circuit boards used to build an experimental shield generator." id = "shield_gen" - req_tech = list("bluespace" = 4, "plasmatech" = 3) + req_tech = list("powerstorage" = 4, "magnets" = 3) build_type = IMPRINTER materials = list("$glass" = 2000, "sacid" = 20, "$plasma" = 10000, "$diamond" = 5000, "$gold" = 10000) build_path = "/obj/machinery/shield_gen/external" diff --git a/code/modules/shieldgen/shield_gen.dm b/code/modules/shieldgen/shield_gen.dm index 97375aa9c26..bb92bf73b5e 100644 --- a/code/modules/shieldgen/shield_gen.dm +++ b/code/modules/shieldgen/shield_gen.dm @@ -31,6 +31,7 @@ //2 use active power idle_power_usage = 20 active_power_usage = 100 + origin_tech="bluespace=4;plasmatech=3" /obj/machinery/shield_gen/New() spawn(10) diff --git a/code/modules/shieldgen/shield_gen_external.dm b/code/modules/shieldgen/shield_gen_external.dm index f239dc9dac0..265815a89b3 100644 --- a/code/modules/shieldgen/shield_gen_external.dm +++ b/code/modules/shieldgen/shield_gen_external.dm @@ -2,9 +2,14 @@ //---------- external shield generator //generates an energy field that loops around any built up area in space (is useless inside) halts movement and airflow, is blocked by walls, windows, airlocks etc +/obj/machinery/shield_gen/external + origin_tech="magnets=3;powerstorage=4" + + /obj/machinery/shield_gen/external/New() ..() + /obj/machinery/shield_gen/external/get_shielded_turfs() var list diff --git a/code/modules/telesci/gps.dm b/code/modules/telesci/gps.dm index c0a3e9fd58f..2124474b6d8 100644 --- a/code/modules/telesci/gps.dm +++ b/code/modules/telesci/gps.dm @@ -6,7 +6,7 @@ var/list/GPS_list = list() icon_state = "gps-c" w_class = 2.0 slot_flags = SLOT_BELT - origin_tech = "programming=2;engineering=2" + origin_tech = "materials=2;magnets=3;bluespace=3" var/gpstag = "COM0" var/emped = 0 var/turf/locked_location From 5c85b4867224ee08898c50c729cd206d465341a0 Mon Sep 17 00:00:00 2001 From: jack-fractal Date: Mon, 6 Apr 2015 22:12:18 -0400 Subject: [PATCH 3/3] Switching the verb to Debug Verb should be in Debug --- code/modules/admin/admin_verbs.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/admin/admin_verbs.dm b/code/modules/admin/admin_verbs.dm index cd88d84809b..ea09ecb9e86 100644 --- a/code/modules/admin/admin_verbs.dm +++ b/code/modules/admin/admin_verbs.dm @@ -725,7 +725,7 @@ var/list/admin_verbs_mentor = list( /client/proc/write_RD_json() - set category = "Admin" + set category = "Debug" set name = "Write RD Json" set desc = "Writes a json file describing the R&D components." text2file(list2json(list("objects"=object_classes_to_origin_tech(),"designs"=design_classes_to_materials_and_origin())),"data/origin_data.txt")