Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

One Star Manufacturing Technologies #8453

Draft
wants to merge 1 commit into
base: master
Choose a base branch
from
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions cev_eris.dme
Original file line number Diff line number Diff line change
Expand Up @@ -2641,6 +2641,7 @@
#include "code\modules\research\nodes\combat.dm"
#include "code\modules\research\nodes\engineering.dm"
#include "code\modules\research\nodes\illegal.dm"
#include "code\modules\research\nodes\onestar.dm"
#include "code\modules\research\nodes\power.dm"
#include "code\modules\research\nodes\robotics.dm"
#include "code\modules\sanity\breakdown.dm"
Expand Down
3 changes: 2 additions & 1 deletion code/__DEFINES/research.dm
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@
#define TECH_MAGNET "magnets"
#define TECH_DATA "programming"
#define TECH_COVERT "covert"
#define TECH_ONESTAR "One Star" //not sure how to make it more like the others but if you know feel free to fix :)
#define TECH_ARCANE "arcane"

//used in design to specify which machine can build it
Expand All @@ -29,7 +30,7 @@
#define RESEARCH_BLUESPACE /datum/tech/bluespace
#define RESEARCH_ROBOTICS /datum/tech/robotics
#define RESEARCH_COVERT /datum/tech/covert

#define RESEARCH_ONESTAR /datum/tech/onestar

// Design categories
#define CAT_MISC "Misc"
Expand Down
21 changes: 11 additions & 10 deletions code/game/objects/items/weapons/stock_parts.dm
Original file line number Diff line number Diff line change
Expand Up @@ -201,54 +201,55 @@
spawn_blacklisted = TRUE

//one star stock parts (rating 5)
//these parts are more expensive to make due to their advanced technologies, and to make it less of a viable money cheat for guild

/obj/item/stock_parts/capacitor/one_star
name = "one star capacitor"
desc = "A super-high capacity capacitor used in the construction of a variety of devices."
icon_state = "one_capacitor"
origin_tech = list(TECH_POWER = 5, TECH_MATERIAL = 4)
origin_tech = list(TECH_POWER = 5, TECH_MATERIAL = 4, TECH_ONESTAR = 2)
rating = 5
matter = list(MATERIAL_STEEL = 2, MATERIAL_PLASTIC = 2, MATERIAL_GLASS = 1)
matter = list(MATERIAL_PLASTEEL = 2, MATERIAL_PLATINUM = 2, MATERIAL_PLASMA = 1)
spawn_blacklisted = TRUE
spawn_tags = SPAWN_TAG_STOCK_PARTS_OS

/obj/item/stock_parts/scanning_module/one_star
name = "one star scanning module"
desc = "A compact, high resolution phasic scanning module used in the construction of certain devices."
icon_state = "one_scan_module"
origin_tech = list(TECH_MAGNET = 5)
origin_tech = list(TECH_MAGNET = 5, TECH_ONESTAR = 2)
rating = 5
matter = list(MATERIAL_STEEL = 2, MATERIAL_PLASTIC = 2, MATERIAL_GLASS = 1)
matter = list(MATERIAL_PLASTEEL = 4, MATERIAL_PLATINUM = 2, MATERIAL_PLASMA = 2)
spawn_blacklisted = TRUE
spawn_tags = SPAWN_TAG_STOCK_PARTS_OS

/obj/item/stock_parts/manipulator/one_star
name = "one star manipulator"
desc = "A tiny little manipulator used in the construction of certain devices."
icon_state = "one_mani"
origin_tech = list(TECH_MATERIAL = 5, TECH_DATA = 2)
origin_tech = list(TECH_MATERIAL = 5, TECH_DATA = 2, TECH_ONESTAR = 2)
rating = 5
matter = list(MATERIAL_STEEL = 2, MATERIAL_PLASTIC = 2)
matter = list(MATERIAL_PLASTEEL = 4, MATERIAL_PLATINUM = 2)
spawn_blacklisted = TRUE
spawn_tags = SPAWN_TAG_STOCK_PARTS_OS

/obj/item/stock_parts/micro_laser/one_star
name = "one star micro-laser"
icon_state = "one_laser"
desc = "A tiny laser used in certain devices."
origin_tech = list(TECH_MAGNET = 5)
origin_tech = list(TECH_MAGNET = 5, TECH_ONESTAR = 2)
rating = 5
matter = list(MATERIAL_STEEL = 2, MATERIAL_PLASTIC = 2, MATERIAL_GLASS = 1)
matter = list(MATERIAL_PLASTEEL = 4, MATERIAL_PLATINUM = 2, MATERIAL_PLASMA = 2)
spawn_blacklisted = TRUE
spawn_tags = SPAWN_TAG_STOCK_PARTS_OS

/obj/item/stock_parts/matter_bin/one_star
name = "one star matter bin"
desc = "A container for hold compressed matter awaiting re-construction."
icon_state = "one_matter"
origin_tech = list(TECH_MATERIAL = 5)
origin_tech = list(TECH_MATERIAL = 5, TECH_ONESTAR = 2)
rating = 5
matter = list(MATERIAL_PLASTIC = 3, MATERIAL_GLASS = 1)
matter = list(MATERIAL_PLATINUM = 3, MATERIAL_PLASMA = 2)
spawn_blacklisted = TRUE
spawn_tags = SPAWN_TAG_STOCK_PARTS_OS

Expand Down
4 changes: 2 additions & 2 deletions code/game/objects/items/weapons/tools/crowbars.dm
Original file line number Diff line number Diff line change
Expand Up @@ -29,9 +29,9 @@
desc = "Looks like a classic one, but more durable. Has more space for mods too."
icon_state = "one_star_crowbar"
item_state = "onestar_crowbar"
matter = list(MATERIAL_STEEL = 3, MATERIAL_PLATINUM = 1)
matter = list(MATERIAL_PLASTEEL = 6, MATERIAL_PLATINUM = 2)
tool_qualities = list(QUALITY_PRYING = 25, QUALITY_DIGGING = 10)
origin_tech = list(TECH_ENGINEERING = 1, TECH_MATERIAL = 2)
origin_tech = list(TECH_ENGINEERING = 1, TECH_MATERIAL = 2, TECH_ONESTAR = 1)
degradation = 0.6
workspeed = 1.2
spawn_blacklisted = TRUE
Expand Down
2 changes: 1 addition & 1 deletion code/game/objects/items/weapons/tools/hammer.dm
Original file line number Diff line number Diff line change
Expand Up @@ -113,7 +113,7 @@
force_wielded_multiplier = 1.5
w_class = ITEM_SIZE_HUGE
slot_flags = SLOT_BACK
matter = list(MATERIAL_STEEL = 10, MATERIAL_PLATINUM = 5, MATERIAL_DIAMOND = 5)
matter = list(MATERIAL_PLASTEEL = 12, MATERIAL_PLATINUM = 8, MATERIAL_DIAMOND = 5)
tool_qualities = list(QUALITY_HAMMERING = 50)
suitable_cell = /obj/item/cell/medium
degradation = 0.6
Expand Down
4 changes: 2 additions & 2 deletions code/game/objects/items/weapons/tools/misc.dm
Original file line number Diff line number Diff line change
Expand Up @@ -20,9 +20,9 @@
name = "One Star medmultitool"
desc = "A compact One Star medical multitool. It has all surgery tools."
icon_state = "medmulti"
matter = list(MATERIAL_STEEL = 3, MATERIAL_GLASS = 2, MATERIAL_PLATINUM = 2)
matter = list(MATERIAL_PLASTEEL = 5, MATERIAL_PLASMA = 2, MATERIAL_PLATINUM = 3)
flags = CONDUCT
origin_tech = list(TECH_MATERIAL = 3, TECH_BIO = 4)
origin_tech = list(TECH_MATERIAL = 3, TECH_BIO = 4, TECH_ONESTAR = 2)
tool_qualities = list(QUALITY_CLAMPING = 30, QUALITY_RETRACTING = 30, QUALITY_BONE_SETTING = 30, QUALITY_CAUTERIZING = 30, QUALITY_SAWING = 15, QUALITY_CUTTING = 30, QUALITY_WIRE_CUTTING = 25)

max_upgrades = 2
Expand Down
12 changes: 6 additions & 6 deletions code/game/objects/items/weapons/tools/pickaxe.dm
Original file line number Diff line number Diff line change
Expand Up @@ -50,8 +50,8 @@
desc = "A standard One Star basic tool. There used energy technologies what makes it enough powerful and cheap at the same time."
icon_state = "one_star_pickaxe"
item_state = "pickaxe"
matter = list(MATERIAL_STEEL = 4, MATERIAL_PLATINUM = 2, MATERIAL_DIAMOND = 2)
origin_tech = list(TECH_MATERIAL = 3, TECH_ENGINEERING = 2, TECH_POWER = 3)
matter = list(MATERIAL_PLASTEEL = 6, MATERIAL_PLATINUM = 4, MATERIAL_DIAMOND = 2)
origin_tech = list(TECH_MATERIAL = 3, TECH_ENGINEERING = 2, TECH_POWER = 3, TECH_ONESTAR = 1)
switched_on_force = WEAPON_FORCE_ROBUST
tool_qualities = list(QUALITY_EXCAVATION = 15, QUALITY_PRYING = 25)
switched_off_qualities = list(QUALITY_EXCAVATION = 15, QUALITY_PRYING = 25)
Expand Down Expand Up @@ -86,11 +86,11 @@
desc = "A heavy One Star tool that cracks rocks with blasts, perfect for killing capitalist pigs."
icon_state = "one_star_jackhammer"
item_state = "jackhammer"
matter = list(MATERIAL_STEEL = 7, MATERIAL_PLATINUM = 2)
matter = list(MATERIAL_PLASTEEL = 8, MATERIAL_PLATINUM = 4)
tool_qualities = list(QUALITY_EXCAVATION = 10)
switched_off_qualities = list(QUALITY_EXCAVATION = 10)
switched_on_qualities = list(QUALITY_DIGGING = 55)
origin_tech = list(TECH_MATERIAL = 4, TECH_POWER = 2, TECH_ENGINEERING = 3)
origin_tech = list(TECH_MATERIAL = 4, TECH_POWER = 2, TECH_ENGINEERING = 3, TECH_ONESTAR = 1)
degradation = 0.6
workspeed = 1.8
max_upgrades = 2
Expand Down Expand Up @@ -122,8 +122,8 @@
tool_qualities = list(QUALITY_EXCAVATION = 10, QUALITY_DRILLING = 10)
switched_off_qualities = list(QUALITY_EXCAVATION = 10, QUALITY_DRILLING = 10)
switched_on_qualities = list(QUALITY_DIGGING = 60, QUALITY_DRILLING = 10)
matter = list(MATERIAL_STEEL = 8, MATERIAL_PLATINUM = 2)
origin_tech = list(TECH_MATERIAL = 4, TECH_POWER = 3, TECH_ENGINEERING = 2)
matter = list(MATERIAL_PLASTEEL = 8, MATERIAL_PLATINUM = 4)
origin_tech = list(TECH_MATERIAL = 4, TECH_POWER = 3, TECH_ENGINEERING = 2, TECH_ONESTAR = 1)
degradation = 0.6
workspeed = 1.9
max_upgrades = 2
Expand Down
4 changes: 2 additions & 2 deletions code/game/objects/items/weapons/tools/screwdrivers.dm
Original file line number Diff line number Diff line change
Expand Up @@ -65,9 +65,9 @@
name = "One Star combi driver"
desc = "A One Star combi driver. Does better than the standard combi drivers on the market, but has less slots for tool mods."
icon_state = "one_star_combidriver"
matter = list(MATERIAL_STEEL = 4, MATERIAL_PLATINUM = 2)
matter = list(MATERIAL_PLASTEEL = 6, MATERIAL_PLATINUM = 3)
tool_qualities = list(QUALITY_SCREW_DRIVING = 60, QUALITY_BOLT_TURNING = 60, QUALITY_DRILLING = 25)
origin_tech = list(TECH_ENGINEERING = 3, TECH_MATERIAL = 2)
origin_tech = list(TECH_ENGINEERING = 3, TECH_MATERIAL = 2, TECH_ONESTAR = 1)
degradation = 0.6
workspeed = 1.7
use_power_cost = 0.3
Expand Down
4 changes: 2 additions & 2 deletions code/game/objects/items/weapons/tools/weldingtools.dm
Original file line number Diff line number Diff line change
Expand Up @@ -82,8 +82,8 @@
desc = "An old and legendary One Star welding tool. Very powerful and reliable, but its compact design causes it to suffer from a lack of both fuel storage and efficiency."
icon_state = "one_star_welder"
item_state = "welder"
matter = list(MATERIAL_STEEL = 4, MATERIAL_PLATINUM = 2)
origin_tech = list(TECH_ENGINEERING = 2, TECH_MATERIAL = 3)
matter = list(MATERIAL_PLASTEEL = 6, MATERIAL_PLATINUM = 3)
origin_tech = list(TECH_ENGINEERING = 2, TECH_MATERIAL = 3, TECH_ONESTAR = 1)
switched_on_qualities = list(QUALITY_WELDING = 30, QUALITY_CAUTERIZING = 10, QUALITY_WIRE_CUTTING = 10)
glow_color = COLOR_RED_LIGHT
use_fuel_cost = 0.15
Expand Down
2 changes: 1 addition & 1 deletion code/modules/organs/external/subtypes/robotic_types.dm
Original file line number Diff line number Diff line change
Expand Up @@ -171,7 +171,7 @@
force_icon = 'icons/mob/human_races/cyberlimbs/one_star.dmi'
model = "one_star"
armor = list(melee = 10, bullet = 10, energy = 10, bomb = 50, bio = 100, rad = 100)
matter = list(MATERIAL_STEEL = 1, MATERIAL_PLASTIC = 4, MATERIAL_GOLD = 2)
matter = list(MATERIAL_PLASTEEL = 6, MATERIAL_PLATINUM = 4, MATERIAL_GOLD = 4)
max_damage = 70
min_broken_damage = 45
spawn_blacklisted = TRUE
Expand Down
2 changes: 1 addition & 1 deletion code/modules/research/debug.dm
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,6 @@
origin_tech = list(
TECH_MATERIAL = 19, TECH_ENGINEERING = 19, TECH_PLASMA = 19,
TECH_POWER = 19, TECH_BLUESPACE = 19, TECH_BIO = 19, TECH_COMBAT = 19,
TECH_MAGNET = 19, TECH_DATA = 19, TECH_COVERT = 19, TECH_ARCANE = 19
TECH_MAGNET = 19, TECH_DATA = 19, TECH_COVERT = 19, TECH_ONESTAR = 19, TECH_ARCANE = 19
)
spawn_frequency = 0
19 changes: 19 additions & 0 deletions code/modules/research/designs/prosthesis_implants.dm
Original file line number Diff line number Diff line change
Expand Up @@ -50,6 +50,22 @@
/datum/design/research/item/mechfab/prosthesis_moebius/head
build_path = /obj/item/organ/external/robotic/moebius/reinforced/head

//One Star prosthesis =======================
/datum/design/research/item/mechfab/prosthesis_one_star
category = CAT_PROSTHESIS

/datum/design/research/item/organ/external/robotic/one_star/l_arm
build_path = /obj/item/organ/external/robotic/one_star/l_arm

/datum/design/research/item/organ/external/robotic/one_star/r_arm
build_path = /obj/item/organ/external/robotic/one_star/r_arm

/datum/design/research/item/organ/external/robotic/one_star/l_leg
build_path = /obj/item/organ/external/robotic/one_star/l_leg

/datum/design/research/item/organ/external/robotic/one_star/r_leg
build_path = /obj/item/organ/external/robotic/one_star/r_leg

//Modules ====================================

/datum/design/research/item/mechfab/modules
Expand Down Expand Up @@ -80,6 +96,9 @@
build_path = /obj/item/organ_module/active/multitool/miner
name = "Embedded mining multitool"

/datum/design/research/item/mechfab/modules/multitool/ossurgical
build_path = /obj/item/tool/medmultitool
name = "One Star surgical multitool"
//Implants
/datum/design/research/item/implant
build_type = PROTOLATHE | MECHFAB
Expand Down
20 changes: 20 additions & 0 deletions code/modules/research/designs/stock_parts.dm
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,10 @@
build_path = /obj/item/stock_parts/capacitor/super
sort_string = "CAAAC"

/datum/design/research/item/part/os_capacitor
build_path = /obj/item/stock_parts/capacitor/one_star
sort_string = "CAAAD"

/datum/design/research/item/part/micro_mani
build_path = /obj/item/stock_parts/manipulator
sort_string = "CAABA"
Expand All @@ -31,6 +35,10 @@
build_path = /obj/item/stock_parts/manipulator/pico
sort_string = "CAABC"

/datum/design/research/item/part/os_mani
build_path = /obj/item/stock_parts/manipulator/one_star
sort_string = "CAABD"

/datum/design/research/item/part/basic_matter_bin
build_path = /obj/item/stock_parts/matter_bin
sort_string = "CAACA"
Expand All @@ -43,6 +51,10 @@
build_path = /obj/item/stock_parts/matter_bin/super
sort_string = "CAACC"

/datum/design/research/item/part/os_matter_bin
build_path = /obj/item/stock_parts/matter_bin/one_star
sort_string = "CAACD"

/datum/design/research/item/part/basic_micro_laser
build_path = /obj/item/stock_parts/micro_laser
sort_string = "CAADA"
Expand All @@ -55,6 +67,10 @@
build_path = /obj/item/stock_parts/micro_laser/ultra
sort_string = "CAADC"

/datum/design/research/item/part/os_micro_laser
build_path = /obj/item/stock_parts/micro_laser/one_star
sort_string = "CAADD"

/datum/design/research/item/part/basic_sensor
build_path = /obj/item/stock_parts/scanning_module
sort_string = "CAAEA"
Expand All @@ -67,6 +83,10 @@
build_path = /obj/item/stock_parts/scanning_module/phasic
sort_string = "CAAEC"

/datum/design/research/item/part/os_sensor
build_path = /obj/item/stock_parts/scanning_module/one_star
sort_string = "CAAED"


// Telecomm parts
/datum/design/research/item/part/subspace_ansible
Expand Down
1 change: 1 addition & 0 deletions code/modules/research/experiment.dm
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@ GLOBAL_LIST_EMPTY(explosion_watcher_list)
TECH_MAGNET = 350,
TECH_DATA = 400,
TECH_COVERT = 5000,
TECH_ONESTAR = 4000,
)

var/list/saved_tech_levels = list() // list("materials" = list(1, 4, ...), ...)
Expand Down
65 changes: 65 additions & 0 deletions code/modules/research/nodes/onestar.dm
Original file line number Diff line number Diff line change
@@ -0,0 +1,65 @@
/datum/technology/one_star_basic
name = "Simple One Star Technology"
desc = "Reverse engineered OneStar parts."
tech_type = RESEARCH_ONESTAR

x = 0.1
y = 0.5
icon = "one_star"

cost = 10000

/datum/technology/one_star_engineering
name = "One Star Engineering"
desc = "Advanced engineering technology once thought lost to time."
tech_type = RESEARCH_ONESTAR

x = 0.3
y = 0.2
icon = "one_star"

required_technologies = list(/datum/technology/super_adv_engineering)
required_tech_levels = list(RESEARCH_ENGINEERING = 10)
cost = 5000

unlocks_designs = list( /datum/design/research/item/part/os_capacitor,
/datum/design/research/item/part/os_micro_laser,
/datum/design/research/item/part/os_matter_bin
)

/datum/technology/one_star_biotech
name = "One Star Biotech"
desc = "Advanced biotechnology once thought lost to time."
tech_type = RESEARCH_ONESTAR

x = 0.2
y = 0.4
icon = "medmulti"

required_technologies = list(/datum/technology/top_biotech,
/datum/technology/one_star_basic
)
required_tech_levels = list(RESEARCH_BIOTECH = 10)
cost = 5000

unlocks_designs = list( /datum/design/research/item/part/os_mani,
/datum/design/research/item/part/os_sensor,
/datum/design/research/
)

/datum/technology/one_star_weapons
name = "One Star Weapons"
desc = "Advanced weapons technology once thought lost to time."
tech_type = RESEARCH_ONESTAR

x = 0.3
y = 0.6
icon = "one_star"

required_technologies = list(/datum/technology/one_star_engineering)
required_tech_levels = list(RESEARCH_COMBAT = 10)
cost = 8000

unlocks_designs = list( /datum/design/research/item/,
/datum/design/research/item/,
)
8 changes: 8 additions & 0 deletions code/modules/research/research.dm
Original file line number Diff line number Diff line change
Expand Up @@ -258,6 +258,14 @@ Procs:
shown = FALSE
item_tech_req = TECH_COVERT // research any contractor item and this tech will show up

/datum/tech/onestar
name = "OS Reverse-Engineered Research"
shortname = "One Star Tech"
desc = "The reconstruction of schematics long since lost to time."
rare = 4
shown = FALSE
item_tech_req = TECH_ONESTAR // research any one star item and this tech will show up

/datum/technology
var/name = "name"
var/desc = "description" // Not used because lazy
Expand Down
Loading