-
Posts
4,559 -
Joined
-
Last visited
Content Type
Profiles
Forums
Developer Articles
KSP2 Release Notes
Everything posted by blowfish
-
The F100 will exist regardless - that's just the basic jet. The F404 is smaller. It looks ok in the configuration you've got, but attach it to any of the fuselage parts and the fact that it's not the same size will become painfully obvious.
-
Okay, there's no real problem here, just a misunderstanding. As of 2.3.0 the rescaled engines are only created if PP is present. My reasoning was that they're non-standard sizes, so what could you possibly attach them to if you don't have it? Maybe you can convince me to reverse course on this, but for now, just create an empty ProceduralParts folder in your GameData folder and you'll see the engines again.
-
Could you post your output log? I'm away from my KSP computer right now, so I can't test myself, but if I identify the error I can probably fix it remotely, and if not I'll be back in about 16 hours. - - - Updated - - - Wait a minute, I may have misjudged the problem. The F404 uses a different model in the presence of VSR, but it should exist either way, provided you have Procedural Parts. If you don't have that, how were you using it, since it's a non-standard size? Post your output log either way though.
-
[1.2.2] B9 Aerospace | Release 6.2.1 (Old Thread)
blowfish replied to bac9's topic in KSP1 Mod Releases
Wow, nice job. I think this is the best way to do it, yeah. Flashblade updated the wings' deflectionLiftCoefficient (and I think mass) according to these rules. Not sure about cost (but I'll check the commit log when I get the chance) Is there any sort of consistency between LFO and LF/Structural parts? There aren't many data points here recall the dry cost between the structural fuselage and Mk1 LF fuselage being rather nonsensical. - - - Updated - - - Visual only would be possible, but I don't have access to the original source files so it's out of my control for the moment.- 4,460 replies
-
[1.3.1] Ferram Aerospace Research: v0.15.9.1 "Liepmann" 4/2/18
blowfish replied to ferram4's topic in KSP1 Mod Releases
I have an idea of how to fix this ... basically giving FAR an override for a particular animation which gives it a minimum normalized time for re-voxelization. I'll try to implement this in the next week and submit a pull request.- 14,073 replies
-
- aerodynamics
- ferram aerospace research
-
(and 1 more)
Tagged with:
-
[1.1.2] Kerbin-Side (v1.1.0) & Supplements
blowfish replied to AlphaAsh's topic in KSP1 Mod Releases
Install Air Race and Kerbal Konstructs. As I recall, there's nothing in Air Race that depends explicitly on Kerbinside, though of course you'll have difficulty accessing the other race site without a runway there.- 2,488 replies
-
- launchsites
- bases
-
(and 1 more)
Tagged with:
-
Yeah, I think I messed up the MM patches. It should be fixed in the latest from Github.
-
[1.2.2] B9 Aerospace | Release 6.2.1 (Old Thread)
blowfish replied to bac9's topic in KSP1 Mod Releases
Unfortunately there's no mechanism for that currently. You'd need to have a plugin that updates the temperature, and even then, it would only be omni-directional.- 4,460 replies
-
You can use part.FindModuleImplementing<ModuleEngines>(); (returns the first engine module) or part.FindModulesImplementing<ModuleEngines>(); (returns all engine modules). If you're looking for a particular engine module, e.g. on a multi-mode engine, or whichever engine module is active, you probably want to use the latter then sort through the list.
-
Raptor's Craft Download Catalog - Tested & Proven
blowfish replied to Raptor9's topic in KSP1 The Spacecraft Exchange
With the larger Mk4 system parts and reduced basic jet thrust I doubt it would work now anyway (not that the craft file would be compatible with the new parts anyway). -
I think I figured it out. The PartPrefab->Part process is done using the Unity.Object.Instantiate method, which does use the serialization process, which is how fields are copied (it doesn't load from config again). I fixed the problem by having TankType be a subclass of MonoBehaviour and attaching it to a GameObject properly. Still not sure why it failed with the [serializable] attribute though...
-
I think I figured it out. TankType was an indirect subclass of MonoBehaviour, and apparently Unity doesn't like MonoBehaviour instances to be initialized with new. Changing that fixed this part. New, related question: I have a TankType field in a part module, which doesn't seem to be surviving the part instantiation process (prefab -> actual part). Does it need to be one of Unity's serializable types in order to get copied? EDIT: TankType has the [serializable] attribute, which means that Unity should be able to serialize it anyway...
-
@PART[*]:HAS[@MODULE[ModuleEngines*]] { @MODULE[ModuleEngines*] { @heatProduction *= 0.66 @atmosphereCurve { @key,0 = 0 @key,0 *= 1.33 @key,1 = 1 @key,1 *= 1.33 } } } @PART[*]:HAS[@MODULE[ModuleEngines*]] { @MODULE[ModuleEngines*] { @heatProduction *= 0.66 @atmosphereCurve { @key,*,1 *= 1.33 } } } I usually tackle these things on my own, but this one is besting me. Any thoughts? I don't think FloatCurve values can be edited with simple math. It's two or four numbers separated by spaces, and I don't believe MM knows what to do with that. As Starwaster mentioned, you might be able to do something with variables, though I don't know how you'd isolate the individual values in the first place.
-
So this is seriously mystifying me. How can a dictionary element be null right after I've assigned it to something that is definitely not null? private static Dictionary<string, TankType> tankTypes = new Dictionary<string,TankType>(); ... foreach (ConfigNode node in GameDatabase.Instance.GetConfigNodes("MINIMFT_TANK_TYPE")) { TankType t = new TankType(); t.Load(node); tankTypes.Add(t.tankName, t); Debug.Log("Loaded TankType " + t.tankName); // works fine Debug.Log("Is null: " + (tankTypes[t.tankName] == null).ToString()); // true????? }
-
[1.2.2] Stock Part Revamp, Update 1.9.6. Released Source Files!
blowfish replied to Ven's topic in KSP1 Mod Development
Nozzle geometry is slightly complicated. Afterburning/supersonic engines typically have two major parts to the nozzle: The inner convergent section (which is the inner ring you're seeing on the TU-22M, which is mechanically actuated to assure nozzle choking (among other things, such as opening as much as possible at ground idle to minimize thrust). It's usually less prominent though, see for instance this picture of the SR-71's J58 engines. The outer divergent section is usually pressure actuated (equilibrium is where exit pressure = ambient pressure), and is much more visible. Both are usually made of two sets of overlapping flaps, see for instance this picture of the F-18's engines. There may or may not be flaps connecting the inner and outer sections (there clearly aren't on the Tu-22M photo you found, but are on the F-18 photo I just linked. -
[1.2.2] B9 Aerospace | Release 6.2.1 (Old Thread)
blowfish replied to bac9's topic in KSP1 Mod Releases
The download is only about 80 MB. 735 MB is the size of the entire repository, which includes every version of everything since the repository was created.- 4,460 replies
-
If the exception is at PartLoader.ReplaceTextures, then it has nothing to do with modules (and likely everything to do with textures/texture replacements). But if removing the second module really does fix it... If you'd be willing to kick the Unity files my way I would be happy to investigate it further.
-
Yeah, the system I was thinking of involved registering events, but that of course requires hard linking and thus recompiling on MM version changes, which is reasonable to want to avoid. Reflection might be work - one option might be to look through all LoadingSytem -derived types for a static method with a particular signature (e.g. MMOnReload()) or something like that, though LoadingSystem might be a bit heavy for some of the things people might be doing with this (and looking through all types seems excessive). Another option is the route blizzy78's toolbar takes, which is to have a bit of code that you copy into your project.