• Content Count

  • Joined

  • Last visited

Community Reputation

2,113 Excellent

About blowfish

  • Rank
    Senior Rocket Scientist

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

  1. Welcome to the forums! The error you're getting has nothing to do with the version of B9PartSwitch you have installed. The problem appears to be that your GameData/Squad directory is missing some pieces. So in this case the stock resources (LiquidFuel, Oxidizer, etc) are not defined. Try deleting and re-installing GameData/Squad.
  2. @Autochton has transferred ownership of this package to me, the repo can now be found at:
  3. Seems like your installation of RationalResources might be out of date? Try updating that Thanks for posting the log though, allowed me to quickly see what's in your install and what might be wrong
  4. B9PartSwitch v2.10.0 for KSP 1.7.3 Use funds symbol for cost in tooltips Fix vessel size including disabled objects add new upgradeRequired field to SUBTYPEs References the name of a PARTUPGRADE require do unlock the subtype At least one subtype on every switcher must have no tech restriction (i.e. unlocks with the part), otherwise it will complain and remove the restriction from the first subtype All subtypes are unlocked in sandbox regardless of whether upgrades are applied Warning if the upgrade doesn't exist If you attempt to load a craft with a locked subtype you get a warning that it was replaced with the highest priority unlocked subtype Add defaultSubtypePriority to SUBTYPEs Number (float) that determines a subtype's priority as the "default" subtype (i.e. the one that is chosen when you freshly add the part). The subtype with the highest priority that is also unlocked will be chosen If two subtypes have the same priority and both are unlocked, it will choose the first The default value is zero. Add basic implementation of module switching HIGHLY EXPERIMENTAL Subtypes now accept a MODULE node inside is an IDENTIFIER node which is used to identify the module it must have a name which is the same as the module it can have any other fields that are used to identify the module e.g. engineID on ModuleEngines Identifying the module by nodes is not currently supported It accepts a DATA node which provides new data to be loaded into the module It accepts a moduleActive = false value which causes the module to be disabled Not everything will work initially, custom handling will have to be added for some modules Some modules are blacklisted for loading new data and disabling. This list is subject to change. ModulePartVariants ModuleB9PartSwitch ModuleB9PartInfo ModuleB9DisableTransform FSfuelSwitch FSmeshSwitch FStextureSwitch FStextureSwitch2 InterstellarFuelSwitch IntersteallarMeshSwitch InterstellarTextureSwitch Big thanks to @Gotmachine who's initial implementation of module switching this is based on Please talk to me before you attempt to use module switching. Like I said in the changelog not everything will work initially. I'm willing to add additional code to support specific modules, but I'd like to understand the use cases before doing so.
  5. I did. It ends up being pretty complicated, although I got a working prototype. It requires reaching deep into KSP's/Unity's/.NET's internals in a way that I'm still not sure I feel comfortable with. Also some mod plugins do things that are straight up not compatible with it.
  6. For what it's worth you can use any number of spaces as the separator
  7. The documentation isn't complete sadly. But the delimiter is specified by the patch @key,*[0, ] *= 2 The [0, ] part says to modify the entry at index 0 separated by the character after the comma which in this case is a space
  8. I think this happens because the values are tab separated but the patch expects them to be space separated.
  9. I have not implemented themes yet. IIRC there's an open issue for it.
  10. Just appropriate application of :HAS blocks @TechTree:FOR[SomeMod] { @RDNode:HAS[#id[stability]] { @Parent:HAS[#parentID[basicRocketry]] { @parentID = subsonicFlight } } } (replacing :FOR[SomeMod] with an appropriate pass specifier of course)
  11. Unfortunately the only way to do this currently is with multiple patches. Would like to add this at some point in the future ... once a bunch of the core code is rewritten.
  12. And ConfigCache, that will include the final state of all configs in the game database.
  13. Does indeed appear to have been broken recently. I just wrote a fix, should be released soon.
  14. They’re equivalent. However, I’d prefer the 2nd as it’s more common and , means something different in other contexts.