Jump to content

Bonus Eventus

Members
  • Posts

    502
  • Joined

  • Last visited

Everything posted by Bonus Eventus

  1. So poking around some more I found this thread by @Mihara from 2013 Here @Mihara says quite explicitly: You can't. An InternalModule can pretty easily find a PartModule that lives inside a specific part and make use of it's KSPField indirectly, though. This answers whether or not a PartModule can communicate with an InternalModule. What I need to do now is try to find out if it's feasible to mimic the rotation of the external centrifuge with the internal centrifuge. I'm thinking I can do it by setting a ksp field through fixedupdate. Then retrieving the transform quaternion on start from within the internal centrifuge module and updating the iva origin rotation through fixed update from that transform reference. I'm planning on releasing this as a tiny plugin for mod makers to make centrifuge IVA creation easier. This might be of interest to, @Badsector, @Porkjet, @ShotgunNinja
  2. Thanks! This must have been an old bug because I just checked my unity tags and the tag is set to Icon_Hidden. @Kolago what version of K+ are you using and do you remember what repo you downloaded from? and btw @Kolago thanks for taking the time to report the bug!
  3. @ShotgunNinja any plans to create a part module that can generate radiation, for say nuclear engines or antimatter engines? I'd love to employ shadow shields! One thought / suggestion I had was defining engine radiation separately from cosmic or solar radiation. This allows for shadow shields to only affect part driven radiation. Put simply: Radiation Point Source: parts falling within a given radius have increased radiation levels (inverse square law) Shadow Shield: search through the vessel's part tree to find module shadow shields and calculate occlusion of any radiation point sources. (I'm imagining a collider that's defined in module shadow shield, such as occluder = name of occluder) Jus a suggestion, maybe you already have something like this planned. Great mod btw! I'm hoping to integrate it with Mother when the time comes.
  4. I'm guessing that squad has changed something in a recent update regarding the IconHidden tag. This has to do with the flag object, this tag is used to hide objects from appearing in the part's thumbnail image. The part should still load.
  5. Started my first steps into plugin development. Wanted to check my assumptions about IVA animations so posted this question in the plugin dev forum here: If anyone has any insights please let me know. @Table not at this time. I have ideas about Habs but nothing I'm ready to share. Been thinking about space hangars and factories a lot. I'm trying to decide whether the hangars should be modular or not. What I mean is, should the hangars be assembled in LKO or dependent on one building a factory in LKO first that can manufacture a huge part like the hangar. There's a third option where the hangar is designed as an all in one part that self deploys, allowing it to be shipped via a rocket in one go. (this option would not allow anything to be surface attached in the VAB. It would have to include docking ports, rcs, etc, because of it being animated) EDIT: Can't sleep, so I thought I'd post this update. I learned a lot about the Part system in KSP this week, while I took my first steps into plugin dev. I have discovered that my assumptions were almost right. I need to do some testing, but module centrifuge looks possible at this point. A module in KSP is defined by the class in C# called PartModule. For instance a light in ksp has a module called ModuleLight which is derived from the PartModule class. In programing, this is called Inheritance. C# is an Object Oriented programing language that implements a style of inheritance called Classical Inheritance unlike say javascript which employs Pseudo-classical Inheritance. Inheritance is a deep subject, so I'm not going to go into detail here, but what's important to understand, in terms of modding KSP, is that Classes are Objects. Objects can have parents and children. Objects can also have Instances. Instances are basically clones of an Object. Still with me? Good. The class Part defines what we all know and love parts. All parts in ksp are derived from the Part class. In C# the Part class defines an Object called Part. The Part object has a variable (variables hold data) called Modules. Modules is a child of Part. Part also has a method called AddModule. Methods are like subclasses. The AddModule method takes an argument, moduleName (which takes a datatype of string), defines a way to search for modules by name, and defines how to add modules to the Modules object (Modules is like a list of PartModule objects). Similarly to Modules there's another child object of the Part class called internalModel. And just like with AddModule there is a method of the Part class called AddInternalPart. The hierarchy looks like this: Part AddInternalPart AddModule internalModel Modules I want to write a custom PartModule called ModuleCentrifuge. This is how it looks in C# public class ModuleCentrifuge : PartModule { } ModuleCentrifuge is a PartModule, so we know it will be eventually added to an instance of the Part class. The config file (cfg) which defines our instance of the Part class will also define an instance of ModuleCentrifuge, like so: PART { name = AwesomeCentrifugePart (lots of variables like mass and cost are defined here...) INTERNAL { name = AwesomeCentrifugeInternalSpace } MODULE { name = ModuleCentrifuge (custom variables for our centrifuge module are defined here...) } } I already know I can rotate a part with a PartModule. We do this by accessing the Part class FindModelTransform class. part.FindModelTransform(centrifugeTransformName).Rotate(0, rpm, 0); What I'd like to do is rotate the internalModel at the same time. And it looks like we can! Remember, both PartModule and internalModel are children of the Part class object. I rotate the model transform by using the parent Part method FindModelTransform. As luck would have it Squad has given the internalModel class the same method! part.internalModel.FindModelTransform(internalCentrifugeTransformName).Rotate(0, rpm , 0); However, though i'm confidant I can find and rotate a gameobject transform from within the internalModel object, I have yet to test this hypothesis. It's very possible that this will do something undesired like rotate the mesh of the internalModel, but not the Kerbals in their seats or the internal camera you see out of. It's too early to tell. At least I've proven to myself that internalModel can be accessed by a PartModule. That would have been a huge setback otherwise.
  6. Have you taken a look at Assembly-CSharp IntenalModule class? (I'm using Monodevelop as my IDE) I think what you're looking for is probably in another Internal module like InternalSpace?
  7. Hello everyone, I have a question about IVA animation/rotation. Is it possible to rotate / animate the origin of an InternalModule through a KSPEvent tied to a PartModule? The reason why I'm asking this is one, I'm very new to plugin development (very ignorant about what's possible or not), and two, I don't want to waste time trying to solve the impossible since this is the only reason I have to learn plugin development. For context, let me explain what I'm attempting to do. The plugin I'm trying to write is a PartModule called ModuleCentrifuge. I would like to (ideally) define a KSPField public integer called rotationalVelocity which defines the speed of rotation for the centrifuge animation. It is important that the craft be rotated through animation in a non-physical manner, to avoid physics calculations. A animation is then defined which rotates the part along the y axis (up / down in the VAB) as well as an expected attached internal space Another KSPField public float called ecRate defines the amount of electric charge consumed when the centrifuge rotates. Two KSPEvents are defined which are called "Start Centrifuge" and "Stop Centrifuge" which starts or stops the rotation of both the PartModule and InternalModule The impetus for creating this plugin, is to facilitate proper window view orientation in rotating centrifuge habitat IVAs. Any help / clarity / advice would be very much appreciated! EDIT: After teaching myself enough about both c# and the KSP plugin API, I have determined that, yes, everything I wanted to achieve is possible. Instead of rotational velocity I used rotational degrees per second (well, actually rotations per minute divided by 60). instead of two separate KSPEvents I use one to toggle between start and stop states utilizing Events["nameOfEvent"].guiName = "newGuiName" rotating the external model is accomplished by accessing the parent Part class, part.FindModelTransform(name of transform), assigning the found transform to a variable and then using Transform.Rotate(0, angle, 0) rotating the internalModel is accomplished by accessing the parent Part class child object internalModel which has the same method of FindModelTransform, so part.internalModel.FindModelTransform both the external model and internal model are accessible from within the partModule class, so there's no need to mess around with making a separate instance of internalModel.
  8. James Webb Telescope uses some awesome technology to self-deploy a sun shield
  9. Aerobraking / Aerocapture is a very useful maneuver when trying to get to planetary systems like Jool. I like using the new 5m heat shield for that very purpose. However, I think having a 9m and 18m variant would be really useful. Not sure it should inflate. Folding like an umbrella might be better. http://orig02.deviantart.net/901a/f/2015/288/b/c/kronos_1___wip_4_by_macrebisz-d9d84j9.jpg Nasa folding heat shield concept EDIT: Found this article from NASA on new thermal tech applied to Orion (3D-MAT) http://www.nasa.gov/ames/advancements-in-thermal-protection-materials-change-the-game-for-orion
  10. Been taking the time to play with many of the different life support mods. I'm enjoying Kerbalisim a lot ATM. I like how it makes use of centrifuges. Centrifuges are something I've been trying to solve for a while now. I've concluded I will need to write a plugin which rotates the IVA.
  11. suffered a moderate neck injury, so setbacks It's nearly healed now. Long story short, be careful when doing this with a 55 pound kettle bell...
  12. Well, I'm in the middle of figuring that out. I don't want to be too ambitious. Heres a list of goals/ideas for Mother, I haven't decided on when to do what or even if I'll include them though. A complete structural system for making spacecraft spines. Docking ports Decouplers SAS Adapters Flywheels Radial attachment points Robotics cranes tugs claw arms New solar panels Complete radiator system Orbital docking bay Hangar/Factory Resource tanks of all kinds Hydrogen Argon Ore Water Oxygen Food Rocket Parts Command pods 3.75 7.5 Crew Cabins 3.75 7.5 science labs Ring hab system Radiation Shields I think I want to go in a new direction that guides gameplay/players to have to develope tech stacks and infrastructure to make a mothership. In other words one would have to first build a mining operation and then a space station with factory to then build the mothership in microgravity.
  13. That's just something that spacedock and kerbalstuff both automatically do when the game is updated, since they rely on moders to set the compatibility manually when they upload their files. I think I'll just have to reupload it tomorrow. Edit: Turns out there's a auto update function I hadn't noticed.
  14. Sounds like something went wrong when I committed to the master. I'll look into it when I get home from the office. Thanks for your patience kind ladies/gents! EDIT: @AccidentalDisassembly @jackalope50 Looks like something went horribly wrong when I tried to clean the .DS_Store and Icon files from the mac compressed folder. Not sure why there were duplicates though. I corrected this and updated all repos. Please let me know if the problem persits, and special thanks to @AccidentalDisassembly and @jackalope50 for helping me catch this!
  15. Which repo did you download from? Curse, space dock, GitHub, CKAN?
  16. Ka-Bam! Large spherical xenon tanks embedded in a T202 truss, the new T202 F-2 Xe. Decided to add it now to make building an ELF worthy craft a little easier. Just have to finish the engine shroud, then 1.075 will be done.
  17. I prefer a modular system that will allow you to build whatever you want. The texturing of the ELF is done. The emissive came out pretty good. Forgot to model the fairing though, oops!
  18. I think that's a great idea! Probably won't be very high on the priority list for a while though EDIT: It would be awesome if I could find a way to animate the process like in Portal 2
  19. Mother, will have most of what you're after. (Snacks and cls) The solar panels bug out because of physics, and the number of coliders. I plan to optimize them. If the solar panel is blocked try time accelerating for a bit, this will get them to reset.
  20. Yes, in fact the large hangars pictured above will have lights that ar available as a separate part that is surface attachable.
  21. Mother is mostly focussed on interplanetary travel, the kind of things you would need to go to Jupiter, but I'll keep that in mind
  22. Thanks guys! Mother builds on what I started with Kerbodyne Plus, expanding on those parts. Here's a preview of the new Spacecraft Spine system of structural trusses (WIP).
  23. So long Kerbodyne Plus Development of Kerbodyne Plus will stop after 1.075. Wait, let me finish (please), Kerbodyne Plus will become a new mod called Mother. This might seem kind of drastic, but it's something I've been thinking about for several weeks. When I started K+ in 2014 I had no intention of making it publicly available. Originally, it was something I made just to deal with part counts on Mac. At the time my Mac couldn't handle mods like B9 without crashing. And being that I've made mods for other games in the past, I just naturally started tinkering with KSP. Anyways, a friend of mine encouraged me to share it with the KSP community. I thought it could be fun to develop a project like this with lots of community input, so I made Kerbodyne Plus Alpha 0.1. At that time there was no specific goals for the project. I came up with the name Kerbodyne Plus, partly because I saw mods use plus in the title (read lazy) and I happened to set each part's manufacturer to Kerbodyne. I had no intentions at the time other than to publish it and see what happens. As development progressed so did my ideas about what Kerbodyne Plus should be/was meant to be. I thought the mod should have some stated goals, to keep it moving forward. I also thought that the scope of the project should be well defined. I tried to be realistic as to what I could accomplish. That's how I arrived at not supporting other mods (less work) and the general goal of end game parts (open ended). Fast forward to 2016. With tons of community feedback and learning more about spacecraft design, a vision started to develop. That vision, put simply, is to supply parts that help players build realistic motherships. However, to do that I would need to incorporate/support other life support mods. This conflicts with the stated goals of Kerbodyne Plus. The more I thought about this seeming problem, the more I realized that I had more problems from not incorporating these mods than the imagined work that supporting them would offer. Also, with KSP 1.1 changes to 64 bit Unity 5, performance has increased dramatically, marking a turning point with KSP, where the code is less likely to change drastically. I know this is a bit unexpected, however I think it's a logical and natural change. I know some of you have wanted this for a while (support other mods pls). And after thinking about it I realized I want it to. I hope everyone who supported/supports Kerbodyne Plus will transition to using Mother, but if not thank you for all your encouragement and support. Hello Mother Mother is a mod with a very specific agenda. Make realistic interplanetary motherships. Here's what to expect going forward. Parts will be renamed to avoid conflict with Kerbodyne Plus New parts will include life support (greenhouses, oxygen tanks, water systems, etc) Parts will support other mods Support for KAS Support for Community Resources and Tech Tree KSPI-E progression Module Manager support Custom plugins (Centrifuges!) When will this change happen? Kerbodyne Plus 1.075 will be released as planned, but instead of releasing Kerbodyne Plus 1.1, Mother 1.0 will be released instead. To make the new mod, requires me to adjust folder paths hard coded in each cfg file, setup new repositories, setup different gits, so expect delays. Could be weeks could be months, hard to say before I get my hands dirty. Mother Dev Thread TL;DR Kerbodyne Plus will become the mod Mother. Changing the name because it will now support community mods and be focused on motherships Mother 1.0 will be released instead of Kerbodyne Plus 1.1 Kerbodyne Plus 1.075 will be released as planed Changes won't take place until after 1.075 Thanks for supporting Kerbodyne Plus! Please support my ongoing efforts with Mother.
×
×
  • Create New...