Jump to content


  • Posts

  • Joined

  • Last visited


2,536 Excellent


Profile Information

  • About me
    Praise Radix!
  • Location
    In my sorting pit

Recent Profile Visitors

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

  1. Winchell Chung, alias @nyrath, is in the hospital with a life-threatening illness. If Atomic Rockets or any of his works touched you, I invite you to write something to him in this doc.
  2. How can I work inertially in a rotating reference frame? Is there a sane way to convert between the rotating frame near a planet and the inertial frame above it? How do I even tell whether the present reference frame is inertial or rotating? For context: I'm trying to operate on things stored as orbital elements, and I want them to interact with worldspace in a sensible and consistent way. I'd like to keep it all inertial.
  3. I believe this is not possible as KSP is put together. Consider pruning a dedicated KSP install with minimal parts for plugin testing.
  4. Use Hangar's inbuilt scaling functions on hangar parts, not Tweakscale.
  5. Just make the fiddly terminology a localization string, and then we can change it if we want to.
  6. In this expression, this refers to the VesselModule or PartModule or MonoBehaviour which actually contains it. The problem with this approach is that, firstly, a MonoBehaviour does not have a vessel; and secondly, that the expression does not refer to the active vessel (as specified by your question) but instead to the vessel to which a given module is attached. In other words, the expression will "follow" the vessel with the part, and not the player's focus. Apart from that—I can't seem to find a Vessel.name in the 1.10 API docs, so I'm not sure if it's valid. After reading the API docs a bit more, I'd suggest using GetDisplayName() instead of either name or (as I suggested earlier) GetName(), since in some circumstances GetName() may return a localization token—this is almost certainly not what you're after if you're asking for a vessel's name. There are a few "best practices" violations in this snippet, though as far as I know this is (approximately) the best way to do this kind of thing. I haven't worked with resources for a while, though, so I'm not an authority on that part. Anyways: Thread.Sleep() is not the correct way to do this, for several reasons—not the least of these being that Thread.Sleep() operates in real time, not game time. (If you've ever seen the clock turn red, you know how different these two can be.) Better to put this in a FixedUpdate() (of one of those MonoBehaviour or Part/VesselModules mentioned earlier), and use Time.fixedDeltaTime to get the length of the last physics frame. Note also that we're not using Update() and deltaTime because we expect changes to resources to happen in lockstep with the physics, not the rendering. Rather than getting a read on the resource totals, and then waiting, and then getting another one, you can instead do the following: 1. Read the resource totals; place this in currentAmount. 2. Subtract lastAmount from this, and multiply divide by Time.fixedDeltaTime. This is the rate: the change multiplied by the time it took to make that change. 3. Put currentAmount in lastAmount to use next frame.
  7. I'll take the easy one. FlightGlobals.activeVessel.GetName() I know resources can be kind of a pain, and I haven't done anything with PAWs… but I think it's as simple as setting an attribute.
  8. Something about the asset packs for the particle effects needing to be recompiled, IIRC. The APUs probably have the same issue.
  9. Craft at rest on top of other landed craft are considered landed, I believe.
  10. You can't? I swear I've done that regularly. (Usually when testing rocket accelerator cannons with inert slugs.)
  11. Shadowmage does not handle CKAN registration (and has in the past been somewhat adverse to it). Go to the CKAN team instead.
  12. Normally you'd just put the part on your craft and it'd work… but since you're asking, I gather that does not work for you? So: What is your use-case, what have you tried, and how has it not worked? Screenshots if possible.
  13. Consider a satellite bus. Place your satellites on a bus, then put the bus in the hangar. Also how exactly do you get more than 200 parts in a three-stage lifter? Are you doing structural part interstages or something?
  • Create New...