Jump to content

Passive Part Upgrades in R&D


Recommended Posts

Forgive me if this is a stupid question or if this has been already brought up and discussed before, but I have been mulling over this idea for the past couple of weeks and would like to hear the opinions of people who actually know the possibilities of the game mechanics.

Is it possible to add passive upgrades for either all parts or parts of specific groups? For example, increasing the temperature tolerance by 25 degrees of all wings.

My reasoning is this. I use the community tech tree, which expands the career mode a lot, but even though I use plenty of part adding mods, I deliberately avoided the "end game" technologies, like the Future Propulsion or the Alcubiere Drive, because they are in my opinion overpowered and game-breaking. I was thinking how to utilise all those costly high-tech research nodes, which are currently empty in my game, without introducing anything game-breaking or superfluous, and came up with an idea of passive bonuses. 

There could be multiple, very costly (science-wise) technologies, which would:
1) Increase the maximum temperature by a miniscule amount, like by 25 °C at level 1, 50 °C at level 2 and 75 °C at level 3.
2) Very slightly decrease the weight of a specific group of parts, say all the fuselage parts (fuel itself not included) are lighter by 2 %.
3) Struts and other structural parts get their maximum force durability increased by a couple of percent.
4) Nosecones and cockpits get their drag decreased, again very slightly.
And so on and so forth; the possibilities are limitless.

I think this idea is not at all unrealistic as new materials are being developed constantly to either improve the properties of existing designs or allow the construction of new ones. In terms of playability it would create sort of end game goals that are quite attractive without being game-breaking, while at the same time not depriving the players of the "good stuff" until the very end of the game. As a career mode freak myself who loves to keep adding new planets and moons through mods, I would particularly welcome the drive and motivation to gather science from everywhere.

Soooo... my question is, what is your opinion on it, and more importantly so; would it be even possible to implement via mods?

Link to comment
Share on other sites

The stock Part Upgrade mechanism can be used to implement some of your ideas (not sure about drag changes). The stock game doesn't use this at all and I'm only aware of one mod that makes use of it. I've written my own patches for a couple parts to get improved crash tolerance and some early engines get performance improvements at later tech nodes.

This is a recent discussion on the topic:

 

Link to comment
Share on other sites

Thank you for pointing me in the right direction. I hadn't even known there was a part upgrade feature at all.

I took couple of hours to browse through various related topics and came upon this one. I used the featured example as a template for my own upgrades, but I can't make it work. Strangely enough, the max temperature limit increases accordingly, but when I want to change maximum thrust or mass of the part, the changes are completely ignored and remain the same as default. My config file looks like this:

@PART[nuclearEngineLightbulb]
{
	@MODULE[ModuleEnginesFX]
	{		
		showUpgradesInModuleInfo = true
		UPGRADES
		{
			UPGRADE
			{
				name__ = LVT45-GenRocketry-Thrust
				techRequired__ = generalRocketry							
				maxThrust = 600
			}
			UPGRADE
			{
				name__ = LVT45-AdvRocketry-Thrust
				techRequired__ = advRocketry 				
				maxThrust = 900
			}
		}
	}
	MODULE
    {
        name = PartStatsUpgradeModule
        showUpgradesInModuleInfo = true
		UPGRADES
        {
            UPGRADE 
            {
                name__ = LVT45-GenRocketry-Thrust
                techRequired__ = generalRocketry
				IsAdditiveUpgrade__ = True	
                PartStats
                {
					maxTemp = 2500
				}
            }
			UPGRADE 
            {
                name__ = LVT45-AdvRocketry-Thrust
                techRequired__ = advRocketry
				IsAdditiveUpgrade__ = True	
				PartStats
                {
					maxTemp = 2900
				}
            }
        }
    }	
}

PARTUPGRADE
{
	name = LVT45-GenRocketry-Thrust
	partIcon = liquidEngine2
	techRequired = generalRocketry
	entryCost = 10000
	title = LV-T45 Thrust Upgrade
	description = The LV-T45 engine now generates 400 kN of thrust and has a max temp of 2500.
}
PARTUPGRADE
{
	name = LVT45-AdvRocketry-Thrust
	partIcon = liquidEngine2
	techRequired = advRocketry
	entryCost = 50000
	title = LV-T45 Thrust Upgrade
	description = The LV-T45 engine now generates 900 kN of thrust and has a max temp of 2900.
}

I've overwritten the name of the part to be upgraded (Lightbulb is an engine from AtomicAge mod by Porkjet I believe) and updated the module name accordingly (ModuleEngines to ModuleEnginesFX) to fit the module name in the Lightbulb config. Everything else I left untouched for testing purposes. Any suggestions what else has to be changed?

Edited by Aelipse
Link to comment
Share on other sites

@Aelipse I compared your config against an engine upgrade config that is working in my save. I saw 1 bug and 1 difference that I don't know matters.

  1. You have "techRequired__" instead of just "techRequired" I think this is your bug preventing it from working.
  2. I have an extra field in my config: The ExclusiveWith__ = thrust. This probably came from whatever source I used for my config, but as I read the description it's appears it's needed when you have multiple upgrades to only keep the last one that applies.

I only included the part of the config that should be affected.

Spoiler

@PART[nuclearEngineLightbulb]
{
    @MODULE[ModuleEnginesFX]
    {
        showUpgradesInModuleInfo = true
        UPGRADES
        {
            UPGRADE
            {
                name__ = LVT45-GenRocketry-Thrust
                techRequired = generalRocketry
                ExclusiveWith__ = thrust
                maxThrust = 600
            }
            UPGRADE
            {
                name__ = LVT45-AdvRocketry-Thrust
                techRequired = advRocketry 
                ExclusiveWith__ = thrust
                maxThrust = 900
                }
            }
        }

 

 

Link to comment
Share on other sites

  • 3 weeks later...

I have been slowly working on a set of configs I like to refer to as "PartKaizen" or "KaizenKensai". So far I have SAS and most LFO engines with multiple upgrades. (The engine upgrades include thrust/ISP and curves)

Eventually I want to have many more parts with upgrades, and am considering adding one or more lines on the CTT for these upgrades (have to unlock with science points) to be unlocked.

Obvious choices are antenna (range,Tx rate, EC Consumption), part (mass, strength, heat) and so on.

 

Link to comment
Share on other sites

  • 3 years later...

Since this is the first thread that comes up on google when searching for a solution i will post what i did to get it to work here.

First install procedural parts nad your other mods and run the game once so module manager makes some cfg files.

Then open "ModuleManager.ConfigCache" found in the gamedata folder with something like notepad++.

search for ProceduralParts/Parts/TechTree/Upgrades.cfg, you'll get a number of results and in the sections underneath you'll find a line that reads "techRequired = ...." replace whatever is after the = sign with "start" (minus the "")

Link to comment
Share on other sites

This thread is quite old. Please consider starting a new thread rather than reviving this one.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...