[MIRROR] Ordnance experiments tweaks [NO GBP] (#29344)

* Ordnance experiments tweaks [NO GBP] (#85680)

## About The Pull Request

More techweb feedback processing.

1. NT frontier app is much more useful and the partners give discounts
for big nodes. Now you can accelerate the research a lot if you focus on
NT frontier. Find [green text in the
tree](https://www.figma.com/board/IhOqYfG5XFBxcgaRSprWzK/Tech-New?node-id=0-1&t=uDMlvA6QcXgz6umU-1)
to see which nodes can have full discounts.
2. Roboticists now have access to ordnance to be able to work on gas
shells for faster mech weapon unlocks
3. BZ shell was rarely performed on LRP servers due to people not
knowing that you can easily make BZ in a portable pump, so it is no
longer a required experiment on the path to experimental tools and a
discount experiment for exp tools instead
4. Cytology experiment is a discount one to ease the path to Genetics
node
5. Cryostasis prerequisite got removed by accident in one of the techweb
tweaks
6. Atmos techs can download NT frontier and build compressor board in
engi imprinter

## Why It's Good For The Game

Balancing the tree out according to the player's behaviour.

## Changelog

🆑
balance: TechWeb: NT Frontier partners now give full discounts for many
high tier nodes, corresponding to the partner theme, instead of partial
discounts for random nodes
qol: Atmos techs can download NT frontier and build compressor board in
engi imprinter
balance: Roboticists now always have ordnance access for the discount
experiments they need
balance: TechWeb: BZ shell is now a discount experiment for experimental
tools instead of required exp for fusion
balance: TechWeb: Noblium shell is a discount experiment for RCD
upgrades instead of exp tools discount
balance: TechWeb: Vat-grown slime scan is a discount experiment instead
of required one
fix: TechWeb: Cryostasis node properly requires advanced medbay
equipment as it should
/🆑

* Ordnance experiments tweaks [NO GBP]

---------

Co-authored-by: Andrew <mt.forspam@gmail.com>
This commit is contained in:
SkyratBot
2024-08-17 00:49:57 +02:00
committed by GitHub
parent f910bff4de
commit 60b13638d9
9 changed files with 50 additions and 34 deletions
+1 -1
View File
@@ -14,7 +14,7 @@
#define TECHWEB_NODE_BEAM_WEAPONS "beam_weapons"
#define TECHWEB_NODE_BIO_SCAN "bio_scan"
#define TECHWEB_NODE_BITRUNNING "bitrunning"
#define TECHWEB_NODE_BLUESPACE "bluespace"
#define TECHWEB_NODE_MECH_EQUIP_BLUESPACE "mech_equip_bluespace"
#define TECHWEB_NODE_BLUESPACE_THEORY "bluespace_theory"
#define TECHWEB_NODE_BLUESPACE_TRAVEL "bluespace_travel"
#define TECHWEB_NODE_BORG_ENGI "borg_engi"
+2 -2
View File
@@ -957,13 +957,13 @@
ACCESS_ROBOTICS,
ACCESS_SCIENCE,
ACCESS_TECH_STORAGE,
ACCESS_ORDNANCE,
ACCESS_ORDNANCE_STORAGE,
)
extra_access = list(
ACCESS_GENETICS,
ACCESS_XENOBIOLOGY,
ACCESS_MORGUE_SECURE,
ACCESS_ORDNANCE,
ACCESS_ORDNANCE_STORAGE,
)
template_access = list(
ACCESS_CAPTAIN,
@@ -8,7 +8,7 @@
program_open_overlay = "research"
tgui_id = "NtosScipaper"
program_icon = "paper-plane"
download_access = list(ACCESS_ORDNANCE, ACCESS_SCIENCE, ACCESS_AWAY_SCIENCE)
download_access = list(ACCESS_ORDNANCE, ACCESS_SCIENCE, ACCESS_AWAY_SCIENCE, ACCESS_ATMOSPHERICS)
var/datum/techweb/linked_techweb
/// Unpublished, temporary paper datum.
@@ -540,7 +540,7 @@
category = list(
RND_CATEGORY_MACHINE + RND_SUBCATEGORY_MACHINE_RESEARCH
)
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE
departmental_flags = DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_ENGINEERING
/datum/design/board/microwave
name = "Microwave Board"
@@ -1,14 +1,18 @@
/datum/scientific_partner/mining
name = "Mining Corps"
flufftext = "A local group of miners are looking for ways to improve their mining output. They are interested in smaller scale explosives."
accepted_experiments = list(/datum/experiment/ordnance/explosive/lowyieldbomb)
flufftext = "A local group of miners are looking for ways to improve their mining output. They are interested in smaller scale explosives and plasma research."
accepted_experiments = list(
/datum/experiment/ordnance/gaseous/plasma,
/datum/experiment/ordnance/explosive/lowyieldbomb,
/datum/experiment/ordnance/explosive/highyieldbomb,
)
multipliers = list(SCIPAPER_COOPERATION_INDEX = 0.75, SCIPAPER_FUNDING_INDEX = 0.75)
boostable_nodes = list(
TECHWEB_NODE_BLUESPACE_THEORY = TECHWEB_TIER_3_POINTS,
TECHWEB_NODE_NIGHT_VISION = TECHWEB_TIER_2_POINTS,
TECHWEB_NODE_ANOMALY_RESEARCH = TECHWEB_TIER_2_POINTS,
TECHWEB_NODE_MINING = TECHWEB_TIER_1_POINTS,
TECHWEB_NODE_MINING_ADV = TECHWEB_TIER_2_POINTS,
TECHWEB_NODE_LOW_PRESSURE_EXCAVATION = TECHWEB_TIER_2_POINTS,
TECHWEB_NODE_PLASMA_MINING = TECHWEB_TIER_3_POINTS,
TECHWEB_NODE_MINING_ADV = TECHWEB_TIER_4_POINTS,
TECHWEB_NODE_NIGHT_VISION = TECHWEB_TIER_4_POINTS,
TECHWEB_NODE_BORG_ENGI = TECHWEB_TIER_3_POINTS,
)
/datum/scientific_partner/baron
@@ -17,23 +21,26 @@
multipliers = list(SCIPAPER_COOPERATION_INDEX = 0.25, SCIPAPER_FUNDING_INDEX = 2)
boostable_nodes = list(
TECHWEB_NODE_CONSOLES = TECHWEB_TIER_1_POINTS,
TECHWEB_NODE_FUNDIMENTAL_SCI = TECHWEB_TIER_1_POINTS,
TECHWEB_NODE_GAMING = TECHWEB_TIER_2_POINTS,
TECHWEB_NODE_BITRUNNING = TECHWEB_TIER_3_POINTS,
TECHWEB_NODE_PROGRAMMED_SERVER = TECHWEB_TIER_3_POINTS,
)
/datum/scientific_partner/defense
name = "Defense Partnership"
flufftext = "We can work directly for Nanotrasen's \[REDACTED\] division, potentially providing us access with advanced defensive gadgets."
flufftext = "We can work directly for Nanotrasen's \[REDACTED\] division, potentially providing us access with advanced offensive and defensive gadgets."
accepted_experiments = list(
/datum/experiment/ordnance/explosive/lowyieldbomb,
/datum/experiment/ordnance/explosive/highyieldbomb,
/datum/experiment/ordnance/explosive/pressurebomb,
/datum/experiment/ordnance/explosive/hydrogenbomb,
)
boostable_nodes = list(
TECHWEB_NODE_RIOT_SUPRESSION = TECHWEB_TIER_3_POINTS,
TECHWEB_NODE_SEC_EQUIP = TECHWEB_TIER_1_POINTS,
TECHWEB_NODE_EXPLOSIVES = TECHWEB_TIER_2_POINTS,
TECHWEB_NODE_ELECTRIC_WEAPONS = TECHWEB_TIER_2_POINTS,
TECHWEB_NODE_BEAM_WEAPONS = TECHWEB_TIER_3_POINTS,
TECHWEB_NODE_RIOT_SUPRESSION = TECHWEB_TIER_2_POINTS,
TECHWEB_NODE_EXPLOSIVES = TECHWEB_TIER_3_POINTS,
TECHWEB_NODE_MECH_ENERGY_GUNS = TECHWEB_TIER_4_POINTS,
TECHWEB_NODE_MECH_FIREARMS = TECHWEB_TIER_5_POINTS,
TECHWEB_NODE_MECH_HEAVY_ARMS = TECHWEB_TIER_5_POINTS,
)
/datum/scientific_partner/medical
@@ -44,24 +51,27 @@
/datum/experiment/ordnance/gaseous/bz,
)
boostable_nodes = list(
TECHWEB_NODE_CYBER_ORGANS = TECHWEB_TIER_1_POINTS,
TECHWEB_NODE_CYBER_ORGANS_UPGRADED = TECHWEB_TIER_2_POINTS,
TECHWEB_NODE_GENE_ENGINEERING = TECHWEB_TIER_1_POINTS,
TECHWEB_NODE_PASSIVE_IMPLANTS = TECHWEB_TIER_1_POINTS,
TECHWEB_NODE_BIO_SCAN = TECHWEB_TIER_1_POINTS,
TECHWEB_NODE_CHEM_SYNTHESIS = TECHWEB_TIER_2_POINTS,
TECHWEB_NODE_CYBER_ORGANS = TECHWEB_TIER_2_POINTS,
TECHWEB_NODE_CYBER_ORGANS_UPGRADED = TECHWEB_TIER_3_POINTS,
TECHWEB_NODE_MEDBAY_EQUIP_ADV = TECHWEB_TIER_3_POINTS,
TECHWEB_NODE_CYTOLOGY = TECHWEB_TIER_3_POINTS,
TECHWEB_NODE_BORG_MEDICAL = TECHWEB_TIER_3_POINTS,
TECHWEB_NODE_COMBAT_IMPLANTS = TECHWEB_TIER_4_POINTS,
)
/datum/scientific_partner/physics
name = "NT Physics Quarterly"
flufftext = "A prestigious physics journal managed by Nanotrasen. The main journal for publishing cutting-edge physics research conducted by Nanotrasen, given that they aren't classified."
accepted_experiments = list(
/datum/experiment/ordnance/gaseous/bz,
/datum/experiment/ordnance/explosive/hydrogenbomb,
/datum/experiment/ordnance/gaseous/noblium,
/datum/experiment/ordnance/explosive/nobliumbomb,
)
boostable_nodes = list(
TECHWEB_NODE_PARTS_UPG = TECHWEB_TIER_2_POINTS,
TECHWEB_NODE_EXP_TOOLS = TECHWEB_TIER_4_POINTS,
TECHWEB_NODE_PARTS_BLUESPACE = TECHWEB_TIER_3_POINTS,
TECHWEB_NODE_PARTS_ADV = TECHWEB_TIER_1_POINTS,
TECHWEB_NODE_PARTS_ADV = TECHWEB_TIER_3_POINTS,
TECHWEB_NODE_BLUESPACE_TRAVEL = TECHWEB_TIER_3_POINTS,
TECHWEB_NODE_ANOMALY_RESEARCH = TECHWEB_TIER_3_POINTS,
TECHWEB_NODE_TELECOMS = TECHWEB_TIER_5_POINTS,
TECHWEB_NODE_MECH_EQUIP_BLUESPACE = TECHWEB_TIER_5_POINTS,
)
@@ -42,6 +42,12 @@
"pneumatic_seal",
)
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = TECHWEB_TIER_1_POINTS)
experiments_to_unlock = list(
/datum/experiment/ordnance/gaseous/plasma,
/datum/experiment/ordnance/gaseous/nitrous_oxide,
/datum/experiment/ordnance/gaseous/bz,
/datum/experiment/ordnance/gaseous/noblium,
)
/datum/techweb_node/plasma_control
id = TECHWEB_NODE_PLASMA_CONTROL
@@ -77,7 +83,6 @@
"crystallizer",
)
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = TECHWEB_TIER_3_POINTS)
required_experiments = list(/datum/experiment/ordnance/gaseous/bz)
discount_experiments = list(/datum/experiment/ordnance/gaseous/nitrous_oxide = TECHWEB_TIER_3_POINTS)
/datum/techweb_node/exp_tools
@@ -99,7 +104,7 @@
"magboots",
)
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = TECHWEB_TIER_4_POINTS)
discount_experiments = list(/datum/experiment/ordnance/gaseous/noblium = TECHWEB_TIER_4_POINTS)
discount_experiments = list(/datum/experiment/ordnance/gaseous/bz = TECHWEB_TIER_4_POINTS)
/datum/techweb_node/rcd_upgrade
id = TECHWEB_NODE_RCD_UPGRADE
@@ -116,3 +121,4 @@
"rpd_upgrade_unwrench",
)
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = TECHWEB_TIER_5_POINTS)
discount_experiments = list(/datum/experiment/ordnance/gaseous/noblium = TECHWEB_TIER_5_POINTS)
@@ -44,7 +44,7 @@
"limbdesign_plasmaman",
)
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = TECHWEB_TIER_3_POINTS)
required_experiments = list(/datum/experiment/scanning/cytology/slime)
discount_experiments = list(/datum/experiment/scanning/cytology/slime = TECHWEB_TIER_3_POINTS)
/datum/techweb_node/gene_engineering
id = TECHWEB_NODE_GENE_ENGINEERING
@@ -254,7 +254,7 @@
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = TECHWEB_TIER_5_POINTS)
/datum/techweb_node/mech_equip_bluespace
id = TECHWEB_NODE_BLUESPACE
id = TECHWEB_NODE_MECH_EQUIP_BLUESPACE
display_name = "Bluespace Exosuit Equipment"
description = "An array of equipment empowered by bluespace, providing unmatched mobility and utility."
prereq_ids = list(TECHWEB_NODE_MECH_INFILTRATOR, TECHWEB_NODE_BLUESPACE_TRAVEL)
@@ -84,7 +84,7 @@
id = TECHWEB_NODE_CRYOSTASIS
display_name = "Cryostasis"
description = "The result of clown accidentally drinking a chemical, now repurposed for safely preserving crew members in suspended animation."
prereq_ids = list(TECHWEB_NODE_FUSION)
prereq_ids = list(TECHWEB_NODE_MEDBAY_EQUIP_ADV, TECHWEB_NODE_FUSION)
design_ids = list(
"cryotube",
"mech_sleeper",