Yemo Posted May 22, 2015 Share Posted May 22, 2015 Tried something new, by trying to to stock to stock node games. Tech tree persists on not showing up at all. @RDNode:HAS[#id[advelectrics]] { //id = Offworld1 @title = Offworld Habitation @description = Technology to live and work in space. Recruits are lining up to become Space Miners. @cost = 50 @hideEmpty = False //nodename = Pod1 @anyToUnlock = False @icon = RDicon_rocketry-general @pos = -2200,1800,-1 @scale = 0.6 @Parent { @parentID = basicrocketry @linefrom = RIGHT @lineto = LEFT } } @PART[ServiceBay_125]:FINAL{ @TechRequired = Start}I strongly suggest trying out minor changes first, then check in game if they work.Instead of editing a textfile for hours only to find you that the methology/syntax is wrong.It is like starting serial production without testing a prototype. Quote Link to comment Share on other sites More sharing options...
MatterBeam Posted May 22, 2015 Share Posted May 22, 2015 I strongly suggest trying out minor changes first, then check in game if they work.Instead of editing a textfile for hours only to find you that the methology/syntax is wrong.It is like starting serial production without testing a prototype.Any idea what might be wrong, though? Quote Link to comment Share on other sites More sharing options...
Yemo Posted May 22, 2015 Share Posted May 22, 2015 Any idea what might be wrong, though?Give me two small patches you want to have corrected, eg changing one node in the techtree and adding changing one part to show up there.Or should I use the ones above?Also, using :FINAL is problematic if you want to distribute the mod, and not only use it privately. It is a major source of incompatibility.It is better to just start your mods folder name with some letter from the end of the alphabet...- - - Updated - - -Also you could just take the CTT or the SETIctt configs as examples of techtree modding and work from there. Quote Link to comment Share on other sites More sharing options...
MatterBeam Posted May 22, 2015 Share Posted May 22, 2015 Oh and thanks for the advice. I tried using the same language for one single node (renaming GeneralRocketry) and one single part (moving service bay into General Rocketry).Good:-The tech tree didn't dissapear. All the nodes are in their places.Bad: -The MM patches I wrote don't actually do anything. General Rocketry retains its title and the Service bay was in its original position.@TechTree} @RDNode:HAS[#id[generalrocketry]] { @title = I did it @description = Work, damnit. @cost = 100 }}@PART[ServiceBay_125]:FINAL{ @TechRequired = GeneralRocketry} Quote Link to comment Share on other sites More sharing options...
Yemo Posted May 22, 2015 Share Posted May 22, 2015 Oh and thanks for the advice. I tried using the same language for one single node (renaming GeneralRocketry) and one single part (moving service bay into General Rocketry).Good:-The tech tree didn't dissapear. All the nodes are in their places.Bad: -The MM patches I wrote don't actually do anything. General Rocketry retains its title and the Service bay was in its original position.@TechTree} @RDNode:HAS[#id[generalrocketry]] { @title = I did it @description = Work, damnit. @cost = 100 }}@PART[ServiceBay_125]:FINAL{ @TechRequired = GeneralRocketry} The tech name is generalRocketry, not generalrocketry or GeneralRocketry. Dont use FINAL if you want to distribute the mod. Quote Link to comment Share on other sites More sharing options...
MatterBeam Posted May 22, 2015 Share Posted May 22, 2015 Tried this as well, no effect either, MManager throws error message during loading related to this file:@RDNode:[HAS[#id[generalrocketry]] { @title = I did it @description = Work, damnit. @cost = 100 }@PART[ServiceBay_125]{ @TechRequired = GeneralRocketry} - - - Updated - - -The tech name is generalRocketry, not generalrocketry or GeneralRocketry. Dont use FINAL if you want to distribute the mod....Capitalization matters....? Quote Link to comment Share on other sites More sharing options...
Yemo Posted May 22, 2015 Share Posted May 22, 2015 Also, there should be no [ in front of HAS, take a look at the CTT and SETIctt files. Quote Link to comment Share on other sites More sharing options...
MatterBeam Posted May 22, 2015 Share Posted May 22, 2015 Also, there should be no [ in front of HAS, take a look at the CTT and SETIctt files.That was a typo, this is the code I tested last.... to no effect.@TechTree} @RDNode:HAS[#id[generalRocketry]] { @title = I did it @description = Work, damnit. @cost = 100 }}@PART[ServiceBay_25]{ @TechRequired = generalRocketry}At least now, the module manager does not display an error message during loading. Quote Link to comment Share on other sites More sharing options...
Yemo Posted May 22, 2015 Share Posted May 22, 2015 Can you upload a screenshot of your GameData folder? Quote Link to comment Share on other sites More sharing options...
MatterBeam Posted May 22, 2015 Share Posted May 22, 2015 Can you upload a screenshot of your GameData folder?http://imgur.com/gallery/z7YwUMQ/newThis mod is supposed tohave MKS and Near Future Electrical and propulsion as dependencies, so that's all that's installed (Kerbaltek is HyperEdit for testing). Quote Link to comment Share on other sites More sharing options...
Yemo Posted May 22, 2015 Share Posted May 22, 2015 Have you tried modding the techtree without any other mods installed, except for module manager?Is Rocktest the folder containing your configs?Are your configs named whatever.cfg? Quote Link to comment Share on other sites More sharing options...
MatterBeam Posted May 22, 2015 Share Posted May 22, 2015 (edited) Have you tried modding the techtree without any other mods installed, except for module manager?Is Rocktest the folder containing your configs?Are your configs named whatever.cfg?Rocktest contains the Tree1.cfg file with the MM patches noted before.I'll try running without mods.Edit:Yup, tested with only my patch, modulemanager and nothing else: No effect on the generalRocketry node whatsoever. This is really frustrating. Four days now I'm trying to crack this mystery. Edited May 22, 2015 by TruthQuark Quote Link to comment Share on other sites More sharing options...
Yemo Posted May 22, 2015 Share Posted May 22, 2015 Just noticed that the bracket right below @TechTree goes into the wrong direction.- - - Updated - - -Edit: As said above, you could just use the configs from CTT or SETIctt as a basis... Quote Link to comment Share on other sites More sharing options...
MatterBeam Posted May 22, 2015 Share Posted May 22, 2015 Just noticed that the bracket right below @TechTree goes into the wrong direction.- - - Updated - - -Edit: As said above, you could just use the configs from CTT or SETIctt as a basis...BLOODY HELL IT FRIKKEN WORKED. FOUR DAYS.OVER 5 HOURS.ALL BECAUSE OF ONE ******* BRACKET.And because capitalization. Quote Link to comment Share on other sites More sharing options...
Yemo Posted May 22, 2015 Share Posted May 22, 2015 BLOODY HELL IT FRIKKEN WORKED. FOUR DAYS.OVER 5 HOURS.ALL BECAUSE OF ONE ******* BRACKET.And because capitalization.The first stuff to do when editing configs and something does not work, is clicking behind the last bracket to see if it corresponds to the right one.Welcome to coding, where syntax matters ;-).What text editor do you use? Quote Link to comment Share on other sites More sharing options...
MatterBeam Posted May 22, 2015 Share Posted May 22, 2015 (edited) The first stuff to do when editing configs and something does not work, is clicking behind the last bracket to see if it corresponds to the right one.Welcome to coding, where syntax matters ;-).What text editor do you use?Notepad++Now I'm going to use Cntrl+H to replace away all my problems.Edit: Applying the 'correct' syntax causes the tree to disappear as usual.Edit: Here's the tech tree I'm trying to implement:TechTree{ RDNode { id = start title = Tools from the Bunker description = This is what we've salvaged from the bunkers. cost = 0 hideEmpty = False nodeName = start anyToUnlock = False icon = RDicon_start pos = -2600,1200,-1 scale = 0.6 } RDNode { id = Flight1 title = Flight description = We found a plane relatively intact. We'll refurbish it for a cost. cost = 10 hideEmpty = False nodeName = Flight1 anyToUnlock = False icon = RDicon_stability pos = -2400,1400,-1 scale = 0.6 Parent { parentID = start lineFrom = RIGHT lineTo = LEFT } } RDNode { id = Structural1 title = Basic Structures description = We don't need the Bunker anymore. Let's dismantle it. cost = 10 hideEmpty = False nodeName = Structural1 anyToUnlock = False icon = RDicon_stability pos = -2400,1200,-1 scale = 0.6 Parent { parentID = start lineFrom = RIGHT lineTo = LEFT } } RDNode { id = Electrical1 title = Battery Technology description = I bet these are more useful in your hands than in these flashlights. cost = 10 hideEmpty = False nodeName = Electrical1 anyToUnlock = False icon = RDicon_rocketry-general pos = -2400,1000,-1 scale = 0.6 Parent { parentID = start lineFrom = RIGHT lineTo = LEFT } } RDNode { id = Flight2 title = Supersonic Flight description = A half-molten jet engine buried in sand? Perfect for taking to the skies. cost = 50 hideEmpty = False nodeName = Flight2 anyToUnlock = False icon = RDicon_rocketry-general pos = -2200,1400,-1 scale = 0.6 Parent { parentID = Flight1 lineFrom = RIGHT lineTo = LEFT } } RDNode { id = Landing1 title = Landing description = We threw table legs and some hydraulic pistons at the R&D team, and they returned with these. cost = 30 hideEmpty = False nodeName = Flight2 anyToUnlock = False icon = RDicon_rocketry-general pos = -2300,1300,-1 scale = 0.6 Parent { parentID = Structural1 lineFrom = RIGHT lineTo = LEFT } } RDNode { id = Landing2 title = Heavy Landing description = If you put enough of these together, you can land anything. cost = 75 hideEmpty = False nodeName = Landing2 anyToUnlock = False icon = RDicon_rocketry-general pos = -2100,1300,-1 scale = 0.6 Parent { parentID = Landing1 lineFrom = RIGHT lineTo = LEFT } } RDNode { id = Structural2 title = Better Structures description = Engineers were the most valued people underground. Let's see them put their skills to use. cost = 50 hideEmpty = False nodeName = Structural2 anyToUnlock = False icon = RDicon_rocketry-general pos = -2200,1200,-1 scale = 0.6 Parent { parentID = Structural1 lineFrom = RIGHT lineTo = LEFT } } RDNode { id = Electrical2 title = Solar Energy description = Relics of our kind's last-ditch efforts to save the planet. cost = 50 hideEmpty = False nodeName = Electrical2 anyToUnlock = False icon = RDicon_rocketry-general pos = -2200,1000,-1 scale = 0.6 Parent { parentID = Electrical1 lineFrom = RIGHT lineTo = LEFT } } RDNode { id = Science1 title = Scientific Experiments description = Going over the notes we brought with us into the bunkers again and again isn't going to teach us anything new. We need fresh data. cost = 50 hideEmpty = False nodeName = Science1 anyToUnlock = False icon = RDicon_rocketry-general pos = -2200,800,-1 scale = 0.6 Parent { parentID = Electrical1 lineFrom = RIGHT lineTo = LEFT } } RDNode { id = Science2 title = Laboratory Experiments description = We've put our equipment in a sealed container. Now to find scientist willing to follow you into space... cost = 100 hideEmpty = False nodeName = Science2 anyToUnlock = False icon = RDicon_rocketry-general pos = -2000,800,-1 scale = 0.6 Parent { parentID = Science1 lineFrom = RIGHT lineTo = LEFT } } RDNode { id = Probe1 title = Salvaged Computers description = We've wiped the files of all 'bunker entertainment', despite protests. cost = 50 hideEmpty = False nodeName = Probe1 anyToUnlock = False icon = RDicon_rocketry-general pos = -2000,600,-1 scale = 0.6 Parent { parentID = Electrical1 lineFrom = RIGHT lineTo = LEFT } } RDNode { id = Control1 title = Controls Mechanisms description = These used to be toys. cost = 50 hideEmpty = False nodeName = Control1 anyToUnlock = False icon = RDicon_rocketry-general pos = -2000,400,-1 scale = 0.6 Parent { parentID = Electrical1 lineFrom = RIGHT lineTo = LEFT } } RDNode { id = Control2 title = Salvaged Computers description = Our pilots complain that 'more gyroscopes' is not a substitute for a stable design. cost = 100 hideEmpty = False nodeName = Probe1 anyToUnlock = False icon = RDicon_rocketry-general pos = -2000,600,-1 scale = 0.6 Parent { parentID = Electrical1 lineFrom = RIGHT lineTo = LEFT } } RDNode { id = Flight3 title = Large Aircraft description = This passenger plane met a terrible fate. Let's make the best of it. cost = 100 hideEmpty = False nodeName = Flight3 anyToUnlock = False icon = RDicon_rocketry-general pos = -2000,1400,-1 scale = 0.6 Parent { parentID = Flight2 lineFrom = RIGHT lineTo = LEFT } } RDNode { id = Rocket1 title = Large Aircraft description = We're going to need engines better suited for space travel. Try these. cost = 100 hideEmpty = False nodeName = Rocket1 anyToUnlock = False icon = RDicon_rocketry-general pos = -2000,1600,-1 scale = 0.6 Parent { parentID = Flight2 lineFrom = RIGHT lineTo = LEFT } } RDNode { id = Structural3 title = Large Aircraft description = We've got a wealth of scrap lying just under the surface. With the right tools, we can make just about anything. cost = 100 hideEmpty = False nodeName = Rocket1 anyToUnlock = False icon = RDicon_rocketry-general pos = -2000,1200,-1 scale = 0.6 Parent { parentID = Structural2 lineFrom = RIGHT lineTo = LEFT } } RDNode { id = Electrical3 title = Nuclear power description = Hot, radioactive and heavy. Just what you need on your delicate spacecraft. cost = 100 hideEmpty = False nodeName = Electrical3 anyToUnlock = False icon = RDicon_rocketry-general pos = -2000,1000,-1 scale = 0.6 Parent { parentID = Electrical2 lineFrom = RIGHT lineTo = LEFT } } RDNode { id = Probe2 title = Advanced Probes description = You'd be amazed at what a few bored geeks can do to a circuit board after a hundred years underground. cost = 100 hideEmpty = False nodeName = Probe2 anyToUnlock = False icon = RDicon_rocketry-general pos = -2000,600,-1 scale = 0.6 Parent { parentID = Probe1 lineFrom = RIGHT lineTo = LEFT } } RDNode { id = Rocket2 title = Heavy Rockets description = By changing the scale on these diagrams, we can build bigger things. cost = 200 hideEmpty = False nodeName = Rocket2 anyToUnlock = False icon = RDicon_rocketry-general pos = -1800,1600,-1 scale = 0.6 Parent { parentID = Rocket1 lineFrom = RIGHT lineTo = LEFT } } RDNode { id = Rocket3 title = Advanced Rockets description = I think we know what we're doing by now. cost = 400 hideEmpty = False nodeName = Rocket3 anyToUnlock = False icon = RDicon_rocketry-general pos = -1600,1600,-1 scale = 0.6 Parent { parentID = Rocket2 lineFrom = RIGHT lineTo = LEFT } } RDNode { id = Rocket4 title = Huge Rockets description = I'm just an Engineer. I'll leave refuelling these beasts in your hands. cost = 800 hideEmpty = False nodeName = Rocket4 anyToUnlock = False icon = RDicon_rocketry-general pos = -1400,1600,-1 scale = 0.6 Parent { parentID = Rocket3 lineFrom = RIGHT lineTo = LEFT } } RDNode { id = Probe3 title = High Performance Computing description = We've copied the Bunker's AI over to these computers. Nothing will go wrong once we put a rocket under its control, I promise. cost = 200 hideEmpty = False nodeName = Rocket4 anyToUnlock = False icon = RDicon_rocketry-general pos = -1800,600,-1 scale = 0.6 Parent { parentID = Probe2 lineFrom = RIGHT lineTo = LEFT } } RDNode { id = Rocket5 title = Electric Rockets description = Silent, efficient electric propulsion. The best solution to start saving fuel, don't you think? cost = 200 hideEmpty = False nodeName = Rocket4 anyToUnlock = False icon = RDicon_rocketry-general pos = -1800,1200,-1 scale = 0.6 Parent { parentID = Electrical3 lineFrom = RIGHT lineTo = LEFT } Parent { parentID = Structural2 lineFrom = RIGHT lineTo = LEFT } } RDNode { id = Rocket6 title = Advanced Electric Propulsion description = Our newly formed 'Space Engineers' corp tell me that this is the technology of the future. cost = 400 hideEmpty = False nodeName = Rocket5 anyToUnlock = False icon = RDicon_rocketry-general pos = -1600,1200,-1 scale = 0.6 Parent { parentID = Rocket5 lineFrom = RIGHT lineTo = LEFT } } RDNode { id = Rocket7 title = Plasma Rockets description = We had to shut down power to the facility to test these. The Space Engineers tell me it's well worth it. cost = 800 hideEmpty = False nodeName = Rocket6 anyToUnlock = False icon = RDicon_rocketry-general pos = -1400,1200,-1 scale = 0.6 Parent { parentID = Rocket6 lineFrom = RIGHT lineTo = LEFT } } RDNode { id = Electrical4 title = Advanced Nuclear Reactors description = It wasn't hard to find nuclear cores still active after all these years. Just follow the trail of molten, radioactive slag. cost = 200 hideEmpty = False nodeName = Electrical4 anyToUnlock = False icon = RDicon_rocketry-general pos = -1800,1000,-1 scale = 0.6 Parent { parentID = Electrical3 lineFrom = RIGHT lineTo = LEFT } } RDNode { id = Rocket8 title = Tiny Rockets description = These rockets are very small...but it is one way to save on fuel. cost = 150 hideEmpty = False nodeName = Rocket8 anyToUnlock = False icon = RDicon_rocketry-general pos = -1800,1600,-1 scale = 0.6 Parent { parentID = Rocket1 lineFrom = RIGHT lineTo = LEFT } } RDNode { id = Pod1 title = Space Pods description = Aeroplane cockpits are fragile and it's a lot of hassle making them space-worthy. These pods were made from the ground-up as orbital vehicles. cost = 150 hideEmpty = False nodeName = Pod1 anyToUnlock = False icon = RDicon_rocketry-general pos = -1900,1500,-1 scale = 0.6 Parent { parentID = Rocket1 lineFrom = RIGHT lineTo = LEFT } } RDNode { id = Pod2 title = Command Modules description = These are better suited for space travel, but they're unlikely to survive a landing. cost = 250 hideEmpty = False nodeName = Pod1 anyToUnlock = False icon = RDicon_rocketry-general pos = -1700,1500,-1 scale = 0.6 Parent { parentID = Pod1 lineFrom = RIGHT lineTo = LEFT } } RDNode { id = Offworld1 title = Offworld Habitation description = Technology to live and work in space. Recruits are lining up to become Space Miners. cost = 50 hideEmpty = False nodeName = Pod1 anyToUnlock = False icon = RDicon_rocketry-general pos = -2200,1800,-1 scale = 0.6 Parent { parentID = Flight1 lineFrom = RIGHT lineTo = LEFT } } RDNode { id = Offworld2 title = Colonization technology description = I think it's time to move on from this dead planet. cost = 100 hideEmpty = False nodeName = offworld2 anyToUnlock = False icon = RDicon_rocketry-general pos = -2000,1800,-1 scale = 0.6 Parent { parentID = Offworld1 lineFrom = RIGHT lineTo = LEFT } }@PART[spotLight1] {@TechRequired = Start}@PART[spotLight2] {@TechRequired = Start}@PART[ServiceBay_125] {@TechRequired = Start}@PART[heatPipe] {@TechRequired = Start}@PART[JetEngine] {@TechRequired = Flight1}@PART[turboFanEngine] {@TechRequired = Flight1}@PART[Mark2Cockpit] {@TechRequired = Flight1}@PART[Mark1Cockpit] {@TechRequired = Flight1}@PART[fuelLine] {@TechRequired = Flight1}@PART[fuelTankSmallFlat] {@TechRequired = Flight1}@PART[fuelTankSmall] {@TechRequired = Flight1}@PART[fuelTank] {@TechRequired = Flight1}@PART[MK1Fuselage] {@TechRequired = Flight1}@PART[fuelTank_long] {@TechRequired = Flight1}@PART[GearFixed] {@TechRequired = Flight1}@PART[GearFree] {@TechRequired = Flight1}@PART[radialDrogue] {@TechRequired = Flight1}@PART[parachuteRadial] {@TechRequired = Flight1}@PART[parachuteDrogue] {@TechRequired = Flight1}@PART[parachuteSingle] {@TechRequired = Flight1}@PART[telescopicLadderBay] {@TechRequired = Flight1}@PART[SmallGearBay] {@TechRequired = Flight1}@PART[dockingPort3] {@TechRequired = Flight1}@PART[parachuteLarge] {@TechRequired = Flight1}@PART[basicFin] {@TechRequired = Flight1}@PART[standardNoseCone] {@TechRequired = Flight1}@PART[rocketNoseCone] {@TechRequired = Flight1}@PART[airbrake1] {@TechRequired = Flight1}@PART[winglet] {@TechRequired = Flight1}@PART[wingConnector4] {@TechRequired = Flight1}@PART[wingConnector5] {@TechRequired = Flight1}@PART[structuralWing4] {@TechRequired = Flight1}@PART[delta_small] {@TechRequired = Flight1}@PART[noseCone] {@TechRequired = Flight1}@PART[wingConnector3] {@TechRequired = Flight1}@PART[structuralWing3] {@TechRequired = Flight1}@PART[pointyNoseConeA] {@TechRequired = Flight1}@PART[pointyNoseConeB] {@TechRequired = Flight1}@PART[StandardCtrlSrf] {@TechRequired = Flight1}@PART[smallCtrlSrf] {@TechRequired = Flight1}@PART[wingStrake] {@TechRequired = Flight1}@PART[wingConnector] {@TechRequired = Flight1}@PART[wingConnector2] {@TechRequired = Flight1}@PART[structuralWing] {@TechRequired = Flight1}@PART[structuralWing2] {@TechRequired = Flight1}@PART[sweptWing1] {@TechRequired = Flight1}@PART[sweptWing2] {@TechRequired = Flight1}@PART[elevon2] {@TechRequired = Flight1}@PART[tailfin] {@TechRequired = Flight1}@PART[winglet3] {@TechRequired = Flight1}@PART[deltaWing] {@TechRequired = Flight1}@PART[sweptWing] {@TechRequired = Flight1}@PART[R8winglet] {@TechRequired = Flight1}@PART[elevon3] {@TechRequired = Flight1}@PART[airplaneTail] {@TechRequired = Flight1}@PART[airplaneTailB] {@TechRequired = Flight1}@PART[CircularIntake] {@TechRequired = Flight1}@PART[MK1IntakeFuselage] {@TechRequired = Flight1}@PART[elevon5] {@TechRequired = Flight1}@PART[airScoop] {@TechRequired = Flight1}@PART[nacelleBody] {@TechRequired = Flight1}@PART[ramAirIntake] {@TechRequired = Flight1}@PART[smallHardpoint] {@TechRequired = Flight1}@PART[Mk1FuselageStructural] {@TechRequired = Flight1}@PART[mk2SpacePlaneAdapter] {@TechRequired = Structural1}@PART[radialDecoupler2] {@TechRequired = Structural1}@PART[structuralIBeam3] {@TechRequired = Structural1}@PART[strutCube] {@TechRequired = Structural1}@PART[strutOcto] {@TechRequired = Structural1}@PART[structuralIBeam2] {@TechRequired = Structural1}@PART[trussPiece1x] {@TechRequired = Structural1}@PART[structuralPanel1] {@TechRequired = Structural1}@PART[strutConnector] {@TechRequired = Structural1}@PART[structuralIBeam1] {@TechRequired = Structural1}@PART[adapterSmallMiniShort] {@TechRequired = Structural1}@PART[adapterSmallMiniTall] {@TechRequired = Structural1}@PART[stackDecouplerMini] {@TechRequired = Structural1}@PART[stackDecoupler] {@TechRequired = Structural1}@PART[stackBiCoupler] {@TechRequired = Structural1}@PART[stackSeparatorMini] {@TechRequired = Structural1}@PART[largeAdapter2] {@TechRequired = Structural1}@PART[largeAdapter] {@TechRequired = Structural1}@PART[decoupler1-2] {@TechRequired = Structural1}@PART[radialDecoupler] {@TechRequired = Structural1}@PART[batteryPack] {@TechRequired = Electrical1}@PART[batteryBankMini] {@TechRequired = Electrical1}@PART[ksp_r_largeBatteryPack] {@TechRequired = Electrical1}@PART[FuelCell] {@TechRequired = Electrical1}@PART[batteryBank] {@TechRequired = Electrical1}@PART[batteryBankLarge] {@TechRequired = Electrical1}@PART[battery-125] {@TechRequired = Electrical1}@PART[battery-375] {@TechRequired = Electrical1}@PART[battery-25] {@TechRequired = Electrical1}@PART[FuelCellArray] {@TechRequired = Electrical1}@PART[MKS_DockingPort] {@TechRequired = Offworld1}@PART[MKS_RadialTank] {@TechRequired = Offworld1}@PART[OKS_Storage_ILM] {@TechRequired = Offworld1}@PART[OKS_AgModule] {@TechRequired = Offworld1}@PART[OKS_HabRing] {@TechRequired = Offworld1}@PART[OKS_Workspace] {@TechRequired = Offworld1}@PART[RadialDrill] {@TechRequired = Offworld1}@PART[ISRU] {@TechRequired = Offworld1}@PART[OKS_PDU] {@TechRequired = Offworld1}@PART[SmallTank] {@TechRequired = Offworld1}@PART[LargeTank] {@TechRequired = Offworld1}@PART[crewCabin] {@TechRequired = Offworld1}@PART[OKS_ColonyHub] {@TechRequired = Offworld1}@PART[OKS_Kerbitat] {@TechRequired = Offworld1}@PART[MK3_FuelRefinery] {@TechRequired = Offworld1}@PART[MK3_Refinery] {@TechRequired = Offworld1}@PART[MK3_Fabricator] {@TechRequired = Offworld1}@PART[MKS_EL_LaunchPad] {@TechRequired = Offworld1}@PART[OKS_Aeroponics] {@TechRequired = Offworld1}@PART[MKS_OctoLander] {@TechRequired = Offworld1}@PART[MKS_PDU] {@TechRequired = Offworld1}@PART[MKS_ModuleBase] {@TechRequired = Offworld1}@PART[MKS_MobileBase] {@TechRequired = Offworld1}@PART[MKS_Workspace] {@TechRequired = Offworld1}@PART[MKS_Storage_ILM] {@TechRequired = Offworld1}@PART[MKS_HabDome] {@TechRequired = Offworld1}@PART[MKS_AgModule] {@TechRequired = Offworld1}@PART[MKS_ExpandoTube_Mini] {@TechRequired = Offworld1}@PART[MKS_ExpandoTube4] {@TechRequired = Offworld1}@PART[MKS_ExpandoTube_XL] {@TechRequired = Offworld1}@PART[OKS_Cap] {@TechRequired = Offworld1}@PART[OKS_Hub] {@TechRequired = Offworld1}@PART[OKS_LgHub] {@TechRequired = Offworld1}@PART[OKS_Tube] {@TechRequired = Offworld1}@PART[OKS_Tube_Lg] {@TechRequired = Offworld1}@PART[MKS_RigidTube] {@TechRequired = Offworld1}@PART[MKS_FlexOTube] {@TechRequired = Offworld1}@PART[nuclear-recycler-25] {@TechRequired = Offworld2}@PART[MKS_DRILL_01] {@TechRequired = Offworld2}@PART[MKS_DRILL_02] {@TechRequired = Offworld2}@PART[MKS_Kerbitat] {@TechRequired = Offworld2}@PART[MKS_ColonyHub] {@TechRequired = Offworld2}@PART[MK3_Akademy] {@TechRequired = Offworld2}@PART[MKS_LogisticsHub] {@TechRequired = Offworld2}@PART[MKS_Aeroponics] {@TechRequired = Offworld2}@PART[MKS_EL_OrbitalDock] {@TechRequired = Offworld2}@PART[RAPIER] {@TechRequired = Flight2}@PART[mk2Cockpit_Standard] {@TechRequired = Flight2}@PART[mk2Cockpit_Inline] {@TechRequired = Flight2}@PART[mk2CargoBayS] {@TechRequired = Flight2}@PART[dockingPortLateral] {@TechRequired = Flight2}@PART[mk2CargoBayL] {@TechRequired = Flight2}@PART[mk2CrewCabin] {@TechRequired = Flight2}@PART[dockingPort2] {@TechRequired = Flight2}@PART[mk2DockingPort] {@TechRequired = Flight2}@PART[mk2FuselageShortLFO] {@TechRequired = Flight2}@PART[mk2FuselageShortLiquid] {@TechRequired = Flight2}@PART[mk2FuselageShortMono] {@TechRequired = Flight2}@PART[mk2_1m_Bicoupler] {@TechRequired = Flight2}@PART[mk2_1m_AdapterLong] {@TechRequired = Flight2}@PART[mk2FuselageLongLFO] {@TechRequired = Flight2}@PART[mk2Fuselage] {@TechRequired = Flight2}@PART[IntakeRadialLong] {@TechRequired = Flight2}@PART[wingShuttleStrake] {@TechRequired = Flight2}@PART[wingShuttleElevon2] {@TechRequired = Flight2}@PART[radialEngineBody] {@TechRequired = Flight2}@PART[wingShuttleRudder] {@TechRequired = Flight2}@PART[wingShuttleDelta] {@TechRequired = Flight2}@PART[shockConeIntake] {@TechRequired = Flight2}@PART[wingShuttleElevon1] {@TechRequired = Flight2}@PART[AdvancedCanard] {@TechRequired = Flight2}@PART[CanardController] {@TechRequired = Flight2}@PART[structuralPylon] {@TechRequired = Flight2}@PART[ladder1] {@TechRequired = Landing1}@PART[miniLandingLeg] {@TechRequired = Landing1}@PART[telescopicLadder] {@TechRequired = Landing1}@PART[landingLeg1] {@TechRequired = Landing1}@PART[roverWheel2] {@TechRequired = Landing1}@PART[roverWheel1] {@TechRequired = Landing1}@PART[GrapplingDevice] {@TechRequired = Structural2}@PART[noseConeAdapter] {@TechRequired = Structural2}@PART[adapterLargeSmallQuad] {@TechRequired = Structural2}@PART[structuralMiniNode] {@TechRequired = Structural2}@PART[launchClamp1] {@TechRequired = Structural2}@PART[adapterLargeSmallBi] {@TechRequired = Structural2}@PART[adapterLargeSmallTri] {@TechRequired = Structural2}@PART[stackTriCoupler] {@TechRequired = Structural2}@PART[stationHub] {@TechRequired = Structural2}@PART[stackSeparator] {@TechRequired = Structural2}@PART[stackPoint1] {@TechRequired = Structural2}@PART[stackQuadCoupler] {@TechRequired = Structural2}@PART[solarPanels5] {@TechRequired = Electrical2}@PART[solarPanels4] {@TechRequired = Electrical2}@PART[solarPanels3] {@TechRequired = Electrical2}@PART[solarPanels2] {@TechRequired = Electrical2}@PART[solarPanels1] {@TechRequired = Electrical2}@PART[battery-rad-125] {@TechRequired = Electrical2}@PART[largeSolarPanel] {@TechRequired = Electrical2}@PART[battery-0625] {@TechRequired = Electrical2}@PART[GooExperiment] {@TechRequired = Science1}@PART[science_module] {@TechRequired = Science1}@PART[sensorThermometer] {@TechRequired = Science1}@PART[sensorBarometer] {@TechRequired = Science1}@PART[sensorAccelerometer] {@TechRequired = Science1}@PART[sensorGravimeter] {@TechRequired = Science1}@PART[SurfaceScanner] {@TechRequired = Science1}@PART[OrbitalScanner] {@TechRequired = Science1}@PART[probeCoreSphere] {@TechRequired = Probe1}@PART[probeCoreOcto] {@TechRequired = Probe1}@PART[probeCoreHex] {@TechRequired = Probe1}@PART[roverBody] {@TechRequired = Probe1}@PART[longAntenna] {@TechRequired = Probe1}@PART[sasModule] {@TechRequired = Control1}@PART[advSasModule] {@TechRequired = Control1}@PART[asasmodule1-2] {@TechRequired = Control1}@PART[avionicsNoseCone] {@TechRequired = Control1}@PART[mk3Cockpit_Shuttle] {@TechRequired = Flight3}@PART[mk3CargoBayM] {@TechRequired = Flight3}@PART[mk3CargoBayL] {@TechRequired = Flight3}@PART[mk3CrewCabin] {@TechRequired = Flight3}@PART[mk3CargoBayS] {@TechRequired = Flight3}@PART[airlinerCtrlSrf] {@TechRequired = Flight3}@PART[airlinerTailFin] {@TechRequired = Flight3}@PART[airlinerMainWing] {@TechRequired = Flight3}@PART[adapterMk3-Mk2] {@TechRequired = Flight3}@PART[adapterMk3-Size2] {@TechRequired = Flight3}@PART[adapterMk3-Size2Slant] {@TechRequired = Flight3}@PART[mk3FuselageLFO_25] {@TechRequired = Flight3}@PART[mk3FuselageLF_25] {@TechRequired = Flight3}@PART[mk3FuselageMONO] {@TechRequired = Flight3}@PART[mk3FuselageLFO_50] {@TechRequired = Flight3}@PART[mk3FuselageLF_50] {@TechRequired = Flight3}@PART[mk3FuselageLFO_100] {@TechRequired = Flight3}@PART[mk3FuselageLF_100] {@TechRequired = Flight3}@PART[elevonMk3] {@TechRequired = Flight3}@PART[solidBooster_sm] {@TechRequired = Rocket1}@PART[radialLiquidEngine1-2] {@TechRequired = Rocket1}@PART[liquidEngine] {@TechRequired = Rocket1}@PART[liquidEngine2] {@TechRequired = Rocket1}@PART[dockingPort1] {@TechRequired = Rocket1}@PART[fairingSize1] {@TechRequired = Rocket1}@PART[landingLeg1-2] {@TechRequired = Landing2}@PART[GearLarge] {@TechRequired = Landing2}@PART[wheelMed] {@TechRequired = Landing2}@PART[roverWheel3] {@TechRequired = Landing2}@PART[GearMedium] {@TechRequired = Landing2}@PART[Size3to2Adapter] {@TechRequired = Structural3}@PART[MKS_375_OCTO] {@TechRequired = Structural3}@PART[radialDecoupler1-2] {@TechRequired = Structural3}@PART[trussAdapter] {@TechRequired = Structural3}@PART[trussPiece3x] {@TechRequired = Structural3}@PART[structuralPanel2] {@TechRequired = Structural3}@PART[size3Decoupler] {@TechRequired = Structural3}@PART[stackSeparatorBig] {@TechRequired = Structural3}@PART[radiator-fixed-1] {@TechRequired = Electrical3}@PART[heatInsulator-125-1] {@TechRequired = Electrical3}@PART[heatInsulator-25-1] {@TechRequired = Electrical3}@PART[heatInsulator-375-1] {@TechRequired = Electrical3}@PART[radiator-universal-1] {@TechRequired = Electrical3}@PART[radiator-conformal-1] {@TechRequired = Electrical3}@PART[radiator-conformal-2] {@TechRequired = Electrical3}@PART[radiator-conformal-3] {@TechRequired = Electrical3}@PART[radiator-universal-2] {@TechRequired = Electrical3}@PART[reactor-0625] {@TechRequired = Electrical3}@PART[rtg] {@TechRequired = Electrical3}@PART[rtg-0625] {@TechRequired = Electrical3}@PART[reactor-125] {@TechRequired = Electrical3}@PART[nuclearfuel-0625] {@TechRequired = Electrical3}@PART[nuclearfuel-125] {@TechRequired = Electrical3}@PART[Large_Crewed_Lab] {@TechRequired = Science2}@PART[SurveyScanner] {@TechRequired = Science2}@PART[sensorAtmosphere] {@TechRequired = Science2}@PART[MKS_Antenna] {@TechRequired = Science2}@PART[mk2DroneCore] {@TechRequired = Probe3}@PART[probeStackSmall] {@TechRequired = Probe3}@PART[probeCoreOcto2] {@TechRequired = Probe3}@PART[mediumDishAntenna] {@TechRequired = Probe3}@PART[linearRcs] {@TechRequired = Control2}@PART[RCSBlock] {@TechRequired = Control2}@PART[vernierEngine] {@TechRequired = Control2}@PART[rcsTankMini] {@TechRequired = Control2}@PART[radialRCSTank] {@TechRequired = Control2}@PART[rcsTankRadialLong] {@TechRequired = Control2}@PART[RCSFuelTank] {@TechRequired = Control2}@PART[RCSTank1-2] {@TechRequired = Control2}@PART[solidBooster] {@TechRequired = Rocket2}@PART[liquidEngine1-2] {@TechRequired = Rocket2}@PART[solidBooster1-1] {@TechRequired = Rocket2}@PART[dockingPortLarge] {@TechRequired = Rocket2}@PART[fairingSize2] {@TechRequired = Rocket2}@PART[adapterSize2-Mk2] {@TechRequired = Rocket2}@PART[adapterSize2-Size1] {@TechRequired = Rocket2}@PART[adapterSize2-Size1Slant] {@TechRequired = Rocket2}@PART[liquidEngineMini] {@TechRequired = Rocket3}@PART[liquidEngine2-2] {@TechRequired = Rocket3}@PART[toroidalAerospike] {@TechRequired = Rocket3}@PART[engineLargeSkipper] {@TechRequired = Rocket3}@PART[MassiveBooster] {@TechRequired = Rocket3}@PART[Size2LFB] {@TechRequired = Rocket3}@PART[fuelTank2-2] {@TechRequired = Rocket3}@PART[fuelTank1-2] {@TechRequired = Rocket3}@PART[fuelTank4-2] {@TechRequired = Rocket3}@PART[fuelTank3-2] {@TechRequired = Rocket3}@PART[Size3EngineCluster] {@TechRequired = Rocket4}@PART[Size3AdvancedEngine] {@TechRequired = Rocket4}@PART[Size3LargeTank] {@TechRequired = Rocket4}@PART[Size3MediumTank] {@TechRequired = Rocket4}@PART[Size3SmallTank] {@TechRequired = Rocket4}@PART[nuclearEngine] {@TechRequired = Rocket4}@PART[fairingSize3] {@TechRequired = Rocket4}@PART[HeatShield3] {@TechRequired = Rocket4}@PART[adapterSize3-Mk3] {@TechRequired = Rocket4}@PART[InterstellarGasTank-PB-X50R] {@TechRequired = Rocket4}@PART[InterstellarGasTank_PB-Stack] {@TechRequired = Rocket4}@PART[probeCoreCube] {@TechRequired = Probe3}@PART[probeStackLarge] {@TechRequired = Probe3}@PART[commDish] {@TechRequired = Probe3}@PART[ionArgon-0625] {@TechRequired = Rocket5}@PART[ionArgon-0625-2] {@TechRequired = Rocket5}@PART[ionXenon-0625] {@TechRequired = Rocket5}@PART[ionXenon-0625-2] {@TechRequired = Rocket5}@PART[ionXenon-125] {@TechRequired = Rocket5}@PART[ionXenon-0625-3] {@TechRequired = Rocket5}@PART[ionArgon-125] {@TechRequired = Rocket5}@PART[ionXenon-25] {@TechRequired = Rocket5}@PART[ionEngine] {@TechRequired = Rocket5}@PART[capacitor-rad-0625] {@TechRequired = Rocket5}@PART[capacitor-0625] {@TechRequired = Rocket5}@PART[capacitor-rad-0625-2] {@TechRequired = Rocket5}@PART[capacitor-125] {@TechRequired = Rocket5}@PART[capacitor-25] {@TechRequired = Rocket5}@PART[argon-radial-0625-1] {@TechRequired = Rocket5}@PART[argon-radial-125-1] {@TechRequired = Rocket5}@PART[argon-25-1] {@TechRequired = Rocket5}@PART[argon-25-2] {@TechRequired = Rocket5}@PART[argon-25-3] {@TechRequired = Rocket5}@PART[argon-0625-3] {@TechRequired = Rocket5}@PART[argon-0625-2] {@TechRequired = Rocket5}@PART[argon-125-3] {@TechRequired = Rocket5}@PART[argon-0625-1] {@TechRequired = Rocket5}@PART[argon-125-2] {@TechRequired = Rocket5}@PART[xenon-radial-125-1] {@TechRequired = Rocket5}@PART[argon-125-1] {@TechRequired = Rocket5}@PART[xenon-125-3] {@TechRequired = Rocket5}@PART[xenonTank] {@TechRequired = Rocket5}@PART[xenonTankRadial] {@TechRequired = Rocket5}@PART[xenon-125-2] {@TechRequired = Rocket5}@PART[xenon-125-1] {@TechRequired = Rocket5}@PART[xenon-25-3] {@TechRequired = Rocket5}@PART[xenon-25-2] {@TechRequired = Rocket5}@PART[xenon-25-1] {@TechRequired = Rocket5}@PART[xenonTankLarge] {@TechRequired = Rocket5}@PART[pit-25] {@TechRequired = Rocket6}@PART[pit-125] {@TechRequired = Rocket6}@PART[pit-0625] {@TechRequired = Rocket6}@PART[reactor-25] {@TechRequired = Electrical4}@PART[reactor-375] {@TechRequired = Electrical4}@PART[reactor-25-2] {@TechRequired = Electrical4}@PART[nuclearfuel-25] {@TechRequired = Electrical4}@PART[vasimr-25] {@TechRequired = Rocket7}@PART[vasimr-125] {@TechRequired = Rocket7}@PART[vasimr-0625] {@TechRequired = Rocket7}@PART[mpdt-25] {@TechRequired = Rocket7}@PART[mpdt-125] {@TechRequired = Rocket7}@PART[mpdt-0625] {@TechRequired = Rocket7}@PART[hydrogen-10-1] {@TechRequired = Rocket7}@PART[hydrogen-125-1] {@TechRequired = Rocket7}@PART[hydrogen-125-2] {@TechRequired = Rocket7}@PART[hydrogen-25-2] {@TechRequired = Rocket7}@PART[hydrogen-375-1] {@TechRequired = Rocket7}@PART[hydrogen-25-3] {@TechRequired = Rocket7}@PART[hydrogen-25-1] {@TechRequired = Rocket7}@PART[hydrogen-375-2] {@TechRequired = Rocket7}@PART[hydrogen-375-3] {@TechRequired = Rocket7}@PART[hydrogen-radial-125-1] {@TechRequired = Rocket7}@PART[hydrogen-radial-25-1] {@TechRequired = Rocket7}@PART[hydrogen-radial-375-1] {@TechRequired = Rocket7}@PART[sepMotor1] {@TechRequired = Rocket8}@PART[microEngine] {@TechRequired = Rocket8}@PART[radialEngineMini] {@TechRequired = Rocket8}@PART[omsEngine] {@TechRequired = Rocket8}@PART[smallRadialEngine] {@TechRequired = Rocket8}@PART[liquidEngine3] {@TechRequired = Rocket8}@PART[miniFuelTank] {@TechRequired = Rocket8}@PART[toroidalFuelTank] {@TechRequired = Rocket8}@PART[LaunchEscapeSystem] {@TechRequired = Rocket8}@PART[mk1pod] {@TechRequired = pod1}@PART[Mark1-2Pod] {@TechRequired = pod1}@PART[HeatShield1] {@TechRequired = pod1}@PART[seatExternalCmd] {@TechRequired = start}@PART[landerCabinSmall] {@TechRequired = start}@PART[cupola] {@TechRequired = start}@PART[mk2LanderCabin] {@TechRequired = start}@PART[HeatShield2] {@TechRequired = start}@PART[ServiceBay_250] {@TechRequired = start}If I just delete Squad's tech tree and place this one in its place, the custom nodes appear with correct prices, position and titles. However, they are devoid of parts (all empty) for no discernible reason. Edited May 22, 2015 by TruthQuark Quote Link to comment Share on other sites More sharing options...
MatterBeam Posted May 22, 2015 Share Posted May 22, 2015 I solved the problem with a chance discovery:To make your own custom tech tree work, you have to... copy a version of the stock tech tree into your own .cfgNo need for module manager syntax.It's senseless, but it works. I have custom nodes with parts being placed properly. Quote Link to comment Share on other sites More sharing options...
Praetorian Posted May 24, 2015 Share Posted May 24, 2015 I was hoping that someone could tell me what mods fill the "enhanced survivability" and the "simple command modules" nodes in the tech tree. I would just like to feel like im not wasting tech points with the empty nodes. thank you in advance Quote Link to comment Share on other sites More sharing options...
Kerbas_ad_astra Posted May 24, 2015 Share Posted May 24, 2015 Usually life support stuff goes in "enhanced survivability". USI Survivability Pack throws in airbags and floats as well. I don't have anything in "simple command pods", but at least it's not required for Command Modules, so I don't feel bad about leaving it unresearched. Quote Link to comment Share on other sites More sharing options...
iVG Posted May 24, 2015 Share Posted May 24, 2015 Anybody know what mod goes into the colonization tab, right after all the MKS/OKS stuff which is in Long term habitation? Also ideas for colossal rocketry? Quote Link to comment Share on other sites More sharing options...
RoverDude Posted May 24, 2015 Share Posted May 24, 2015 That will be more MKS stuff that is not yet released. Quote Link to comment Share on other sites More sharing options...
iVG Posted May 24, 2015 Share Posted May 24, 2015 Ahh sweet @roverdude. Also is there a filled community tech tree diagram where I can see all the mods that slot in? For example some of the command pod nodes are empty, colossal rocketry, some of the nuke nodes etc. The list in the OP has only 3-4 mods but there are quite a few of them already that slot themselves pretty nicely that are not listed there. Thank you for your work sir o7 Quote Link to comment Share on other sites More sharing options...
HadToBeMordin Posted May 24, 2015 Share Posted May 24, 2015 Hi all,been a passive watcher for several months and had a lot of fun with the CTT so far. Since I had some ideas for editing the nodes for several stock parts for my personal install (e.g. Why is the Launch Escape System located in the "Landing" node - usually launch escape systems have little to do with what I would refer to as landing and the CTT offers so many new, better fits for that particular part), I've updated the gliffy of CTT v2.1 based on Nertea's file and resized it to include all stock parts (or so I hope, at least).Quick by the way question: Is this something you CTT curators might be open to discussing, or is your philosophy to leave stock exactly as-is and only provide a platform for mods to be sorted into the tree?Planning to improve on it in the future and add modded parts to a certain extent (unfortunately there are some size limits to Gliffy) but for now, if you find it useful, please feel free to include it in the OP.Here's the link to the gliffy (takes quite a while to load): http://www.gliffy.com/go/publish/8187009Here's the tree as a .png image: http://www.gliffy.com/go/publish/image/8187009/L.pngThanks for all the great work, Nertea and team! Quote Link to comment Share on other sites More sharing options...
ev0 Posted May 26, 2015 Share Posted May 26, 2015 I've seen a couple posts about this, but no concrete answer (I think); Will you consider making "hideEmpty = True" the default instead of "False"? CTT has a lot of nodes, several of which are empty for me. On KerbalStuff you have this little snippet:As of version 2.0, you are also responsible for unhiding the tech nodes you wish to use, as well as any that are required to get to that node. This is also done via an MM patch, can be placed in the same file.So it seems like now it's the modder's responsibility to make sure that empty nodes don't show up, unless their part requires an earlier tech node which may not have parts in it. I like this method better than having "hideEmpty = False" as the default. It's a bit more work for modders, but would make everything look much cleaner.I'm also wondering if it's easy enough to use MM to change the position and parent of a node if the node before it is empty (i.e. hideEmpty = True)? That would be awesome. I might play around with this idea:wink: Quote Link to comment Share on other sites More sharing options...
FreeThinker Posted May 26, 2015 Share Posted May 26, 2015 Well, I have taken a different approach. Instead of forcing my player to accept a CTT with many empty nodes, When CTT is not installed, I simply define the CTT nodes I need for KSPI. When CTT is installed, it disables this functionality and let CTT mod define the technodes. This way I'm not interfering with any other mod that relies on CTT. Quote Link to comment Share on other sites More sharing options...
Recommended Posts
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.