Jump to content

[1.2.0][WIP, PLUGIN][0.11.9.8][30/10/2016] KeepFit - Kerbal fitness degradation


timmers_uk

Recommended Posts

I'm a bit torn on the "crew utilize best available activity level on vessel" issue. On the one hand, I'm glad I don't need to micromanage constant crew transfers; it's reasonable to assume that my Kerbals move around the spacecraft on their own. On the other hand, it seems cheesy that I can achieve a "neutral" comfort status for the entirety of a large crew by installing a single Cupola somewhere on the vessel.

Ideally, I would like KeepFit to track the number of seats available at each comfort rating, and automatically assign those statuses to crew based on level of need. For example, with 2 Kerbals on a vessel composed of a Mk2 Lander Cabin and a Cupola, one Kerbal would be "comfy" and the other would be "neutral," regardless of where the Kerbals happen to be located within the craft. The neutral status would be assigned to the Kerbal with the lower fitness level.

Link to comment
Share on other sites

Hmm .... this re-entry is a bit 'spicy', Gee load is going to be a bit high when I open the chutes. Good job I don't have KeepFit enabled on this career ga-

Yeah, so I didn't disable the Gee based Kerbal Killer when KeepFit isn't enabled for the game save.

Which was bad.

For Jeb.

RIP Jeb.

Fixed in 0.4.3.1.

Link to comment
Share on other sites

Would this yet work with G-forces experienced from a rotating vessel during time warp/in background while using the Persistent Rotation mod?

I don't think so, unless the mod is updating the vessel's Gee - you'd know it was I think, if the stick G bar works.

Link to comment
Share on other sites

Timmers,

I have a few config updates/additions for you. Firstly, StockPartChanges.cfg is missing the new Mk3 parts. Here are the values I suggest:


@PART[mk3Cockpit_Shuttle]:NEEDS[KeepFit]:AFTER[KeepFit]
{
MODULE
{
name = KeepFitPartModule
strActivityLevel = CRAMPED
}
}
@PART[mk3CrewCabin]:NEEDS[KeepFit]:AFTER[KeepFit]
{
MODULE
{
name = KeepFitPartModule
strActivityLevel = COMFY
}
}

Next, this is my suggested config for Near Future Spacecraft:


@PART[utilityCabin]:NEEDS[KeepFit]:AFTER[KeepFit]
{
MODULE
{
name = KeepFitPartModule
strActivityLevel = COMFY
}
}
@PART[mk3-9pod]:NEEDS[KeepFit]:AFTER[KeepFit]
{
MODULE
{
name = KeepFitPartModule
strActivityLevel = COMFY
}
}
@PART[inlineCmdPod]:NEEDS[KeepFit]:AFTER[KeepFit]
{
MODULE
{
name = KeepFitPartModule
strActivityLevel = COMFY
}
}

Lastly, here is my suggested config for Stockalike Station Parts:


@PART[crewpod-cupola-375]:NEEDS[KeepFit]:AFTER[KeepFit]
{
MODULE
{
name = KeepFitPartModule
strActivityLevel = COMFY
}
}
@PART[crewtube-25-375-1]:NEEDS[KeepFit]:AFTER[KeepFit]
{
MODULE
{
name = KeepFitPartModule
strActivityLevel = NEUTRAL
}
}
@PART[crewpod-observation-25]:NEEDS[KeepFit]:AFTER[KeepFit]
{
MODULE
{
name = KeepFitPartModule
strActivityLevel = NEUTRAL
}
}
@PART[crewpod-habitation-25]:NEEDS[KeepFit]:AFTER[KeepFit]
{
MODULE
{
name = KeepFitPartModule
strActivityLevel = NEUTRAL
}
}
@PART[crewpod-habitation-375]:NEEDS[KeepFit]:AFTER[KeepFit]
{
MODULE
{
name = KeepFitPartModule
strActivityLevel = NEUTRAL
}
}

Link to comment
Share on other sites

Timmers,

I have a few config updates/additions for you. Firstly, StockPartChanges.cfg is missing the new Mk3 parts. Here are the values I suggest:


@PART[mk3Cockpit_Shuttle]:NEEDS[KeepFit]:AFTER[KeepFit]
{
MODULE
{
name = KeepFitPartModule
strActivityLevel = CRAMPED
}
}
@PART[mk3CrewCabin]:NEEDS[KeepFit]:AFTER[KeepFit]
{
MODULE
{
name = KeepFitPartModule
strActivityLevel = COMFY
}
}

Next, this is my suggested config for Near Future Spacecraft:


@PART[utilityCabin]:NEEDS[KeepFit]:AFTER[KeepFit]
{
MODULE
{
name = KeepFitPartModule
strActivityLevel = COMFY
}
}
@PART[mk3-9pod]:NEEDS[KeepFit]:AFTER[KeepFit]
{
MODULE
{
name = KeepFitPartModule
strActivityLevel = COMFY
}
}
@PART[inlineCmdPod]:NEEDS[KeepFit]:AFTER[KeepFit]
{
MODULE
{
name = KeepFitPartModule
strActivityLevel = COMFY
}
}

Lastly, here is my suggested config for Stockalike Station Parts:


@PART[crewpod-cupola-375]:NEEDS[KeepFit]:AFTER[KeepFit]
{
MODULE
{
name = KeepFitPartModule
strActivityLevel = COMFY
}
}
@PART[crewtube-25-375-1]:NEEDS[KeepFit]:AFTER[KeepFit]
{
MODULE
{
name = KeepFitPartModule
strActivityLevel = NEUTRAL
}
}
@PART[crewpod-observation-25]:NEEDS[KeepFit]:AFTER[KeepFit]
{
MODULE
{
name = KeepFitPartModule
strActivityLevel = NEUTRAL
}
}
@PART[crewpod-habitation-25]:NEEDS[KeepFit]:AFTER[KeepFit]
{
MODULE
{
name = KeepFitPartModule
strActivityLevel = NEUTRAL
}
}
@PART[crewpod-habitation-375]:NEEDS[KeepFit]:AFTER[KeepFit]
{
MODULE
{
name = KeepFitPartModule
strActivityLevel = NEUTRAL
}
}

Blimey thanks for doing that - I'll incorporate them into an update.

- - - Updated - - -

Updated to 0.5.1.1

  • Added excellent configs for 1.0 stock additions, NearFuture and Stockalike Station Parts contributed by @FRaz86.
  • Shortened the partmodule context menu label.
  • Included profession in crew roster ui.

Download etc on first page

Link to comment
Share on other sites

Stupid Question:

I installed (and updated) the mod a while ago. Yesterday i recognized

that some of my busy Kerbs are at 0% Health and Fitness. What will then happen?

Will they "die" in lack of muscles? How can i let them exercise (in a small capsule)?

Thanks in advance.

Link to comment
Share on other sites

Stupid Question:

I installed (and updated) the mod a while ago. Yesterday i recognized

that some of my busy Kerbs are at 0% Health and Fitness. What will then happen?

Will they "die" in lack of muscles? How can i let them exercise (in a small capsule)?

Thanks in advance.

Hmmm... you have a couple of options, 3 if you consider cheating and turning on wimpmode (actually its worth checking KeepFit is fully enabled on the save in any case)

1) Get your weakling crewmember into somewhere that has an activity level of EXERCISING - PorkJet's habitat pack centrifuge has it, as does the MKS inflatable habring.

2) Carefully land your osteoporosis suffering kerbal avoiding high-Gee descents, just like with the MIR long duration Cosmonauts - once landed they automatically move to EXERCISING, and if you recover them, they also start exercising

Another cheaty option would be to modify the MM configs of KeepFit to make the capsule say they are exercising... but, again, cheaty.

If you go for option 2, spaceplane descents are most forgiving IIRC.

Hope that helps.

- - - Updated - - -

Hello,

Do the centrifuges work with this mod and where can I get one?

See above response - RoverDude's OKS Centrifuge works with this mod, as does the one from PorkJet's habitat pack.

Link to comment
Share on other sites

Timmers,

Thank you for your continued work on this mod!

My biggest frustration continues to be the ease with which one can practically circumvent fitness considerations by attaching a single cupola and thus achieving a "neutral" comfort status for an entire spacecraft. There is no real advantage to the hitchhiker or larger habitation modules provided by mods.

I described my ideal solution in a previous post (i.e., tracking the total number of "seats" available at each comfort level throughout the spacecraft and automatically assigning these statuses to crew based on level of need). If this solution is not feasible, then I would at least prefer that Kerbals simply receive the comfort level of the part in which they are currently located. Though somewhat sub-optimal because it requires micro-management to rotate crew between parts, this option would provide a strong incentive to have a greater number of high comfort seats available.

Link to comment
Share on other sites

Timmers,

Thank you for your continued work on this mod!

My biggest frustration continues to be the ease with which one can practically circumvent fitness considerations by attaching a single cupola and thus achieving a "neutral" comfort status for an entire spacecraft. There is no real advantage to the hitchhiker or larger habitation modules provided by mods.

I described my ideal solution in a previous post (i.e., tracking the total number of "seats" available at each comfort level throughout the spacecraft and automatically assigning these statuses to crew based on level of need). If this solution is not feasible, then I would at least prefer that Kerbals simply receive the comfort level of the part in which they are currently located. Though somewhat sub-optimal because it requires micro-management to rotate crew between parts, this option would provide a strong incentive to have a greater number of high comfort seats available.

I'm pretty sure that KeepFit isn't actually currently testing for the best part on the vessel. I'm also sure I found a horrible horrible persistence bug resulting in the activity level on parts being lost on save/load, and defaulting everything down to 'cramped'!

- - - Updated - - -

Updated to 0.6.1.1

  • Added extra toggle to config - useBestPartOnVessel - if set to true KeepFit assumes Kerbals can go to the best location on the vessel to keepfit.
    [* ]Fixed persistence bug which was resulting in vessels losing their components activity levels -

Download on first page

Link to comment
Share on other sites

Awesome, thank you!

Would it be possible for a part's comfort level to appear in the part menu expanded tooltip (i.e., where modules and resources are listed)? Currently it seems that I must actually place a part and right-click on it to see it's comfort level. It's not a huge problem, so if it would require a lot of effort, don't worry about it, but it would be a nice feature if it isn't much trouble.

Link to comment
Share on other sites

Awesome, thank you!

Would it be possible for a part's comfort level to appear in the part menu expanded tooltip (i.e., where modules and resources are listed)? Currently it seems that I must actually place a part and right-click on it to see it's comfort level. It's not a huge problem, so if it would require a lot of effort, don't worry about it, but it would be a nice feature if it isn't much trouble.

I was thinking about that myself. If i can work out how to do it, I will.

Link to comment
Share on other sites

0.7.1.1 Released

  • Added optional support for ConnectedLivingSpace - if CLS is installed, config can be set so that Kerbals are assumed to have access to the 'best' location for ActivityLevel in the space that is accessible to them according to CLS.
  • Switched applauncher icon to DDS.
  • Added activity level description to VAB/SPH parts browser

Downloads on first page as usual

Link to comment
Share on other sites

Wow, that was fast! CLS integration is a great feature, though I think I'll have to continue using the "current location" comfort level until there's a system in place to prevent 5 Kerbals from all getting neutral status from a single cupola.

Honestly, though, this mod is progressing really nicely. More people should know about it. Have you considered making a release thread, perhaps after just a few more UI improvements? :D

Link to comment
Share on other sites

Wow, that was fast! CLS integration is a great feature, though I think I'll have to continue using the "current location" comfort level until there's a system in place to prevent 5 Kerbals from all getting neutral status from a single cupola.

Honestly, though, this mod is progressing really nicely. More people should know about it. Have you considered making a release thread, perhaps after just a few more UI improvements? :D

I really want to redo the UI, as it was my first encounter with unity UI, and it shows. Trouble is that life and work are too busy to give me the good block of time I need for it. Hopefully if I'll get some time next month, hut I'd not want to count on it, safly

Link to comment
Share on other sites

I really want to redo the UI, as it was my first encounter with unity UI, and it shows. Trouble is that life and work are too busy to give me the good block of time I need for it. Hopefully if I'll get some time next month, hut I'd not want to count on it, safly

I completely understand! Real life comes first. Take your time; it's already a fun and interesting mod!

In the config I provided for Stockalike Station Parts, I failed to realize that airlocks can hold crew, so I missed a couple parts. Here they are:

@PART[crewtube-airlock-125]:NEEDS[KeepFit]:AFTER[KeepFit]
{
MODULE
{
name = KeepFitPartModule
strActivityLevel = CRAMPED
}
}
@PART[crewtube-airlock-25]:NEEDS[KeepFit]:AFTER[KeepFit]
{
MODULE
{
name = KeepFitPartModule
strActivityLevel = CRAMPED
}
}

Link to comment
Share on other sites

I completely understand! Real life comes first. Take your time; it's already a fun and interesting mod!

In the config I provided for Stockalike Station Parts, I failed to realize that airlocks can hold crew, so I missed a couple parts. Here they are:

@PART[crewtube-airlock-125]:NEEDS[KeepFit]:AFTER[KeepFit]
{
MODULE
{
name = KeepFitPartModule
strActivityLevel = CRAMPED
}
}
@PART[crewtube-airlock-25]:NEEDS[KeepFit]:AFTER[KeepFit]
{
MODULE
{
name = KeepFitPartModule
strActivityLevel = CRAMPED
}
}

heh thanks ... will include in next update

Link to comment
Share on other sites

[1.0.2] KSP KeepFit 0.7.1.1 - A Kerbal In-mission Fitness Degradation and Gee Loading Addon

TLDR;

A plugin to track kerbal fitness levels and impact their G-tolerance as a result of spending years bunged up in tiny capsules.

http://imgur.com/a/fRw30

Summary of Features

- All Kerbals have a fitness level

- Each capsule has a defined 'activity level' defining the comfort, room, and built-in fitness capabilities for crew in flight.

- All Kerbals are now subscribed to a regime of calistheni caliths ... workouts whilst not on missions to recover their fitness levels.

- All Kerbals fitness levels go up or down based on their opportunities for exercise (not just active vessel).

- In-flight display of Kerbals fitness levels and Gee loading

- Kerbals in active vessel are affected by their current Gee loading

- Separate tracking of short and longer term Gee loading (1 and 5 seconds, and 1 and 5 minute aggregates), with lower tolerances for longer term Gee overload

- Fitness levels impact Gee tolerance

- Visible warning if crew experience dangerous Gee loading

- Excessive Gee May cause Untimely Death of crew!

- Per save configuration settings

- Enable or disable KeepFit without removing addon

- Crew fitness levels, settings, and Gee data saved in main game persistence file - revert friendly!

- 'WimpMode' to turn Fatal Gee into G-Loss of Consciousness (currently notification only).

- Truly Ugly full roster view in Tracking Station and VAB/SPH

- Uncounted undetected bugs!

- Special extra bonus for using Habitat Pack, as Porkworks Centrifuge part is currently the only part configured by default to bestow EXERCISE on crew on missions

How to add the KeepFit part module to your parts

Whilst KeepFit makes a wild stab in the dark at choosing a reasonable fitness level to apply to crewed parts, you probably want to add your own configs for your favourite parts if you feel they shouldn't be assumed to be 'cramped' (by default all crewed parts are cramped, as per the Mercury quote 'You didn't so much get into it as wear it' (though dammit I can't find the original quote now).

Using modulemanager scripts, you add the module which allows the activity level to be defined for a part, which then goes to affect how quickly your crew's fitness degrades. See below for an example. All you have to do is create a .cfg file, and replace the named parts in the example with the part name (from the part.cfg file, not its name in the parts list in the editor), and choose an activity level for strActivityLevel from the available :-

  1. CRAMPED
  2. COMFY
  3. NEUTRAL
  4. EXERCISING

// slightly better
@PART[mk2LanderCabin]
{
MODULE
{
name = KeepFitPartModule
strActivityLevel = COMFY
}
}

// even more palatable
@PART[cupola]
{
MODULE
{
name = KeepFitPartModule
strActivityLevel = NEUTRAL
}
}

Download from :-

- KerbalStuff

- GitHub Release

Source and Legal Notices

This work is licensed under a

This mod includes version checking using
. If you opt-in, it will use the internet to check whether there is a new version available. Data is only read from the internet and no personal information is sent. For a more comprehensive version checking experience, please download the
.

Changes :

  • 0.7.1.1 -
    • Added optional support for ConnectedLivingSpace - if CLS is installed, config can be set so that Kerbals are assumed to have access to the 'best' location for ActivityLevel in the space that is accessible to them according to CLS.
    • Switched applauncher icon to DDS.
    • Added activity level description to VAB/SPH parts browser

    [*] 0.6.1.1 -

    • Added extra toggle to config - useBestPartOnVessel - if set to true KeepFit assumes Kerbals can go to the best location on the vessel to keepfit.
    • Fixed persistence bug which was resulting in vessels losing their components activity levels

    [*] 0.5.1.1 -

    • Added excellent configs for 1.0 stock additions, NearFuture and Stockalike Station Parts contributed by @FRaz86.
    • Shortened the partmodule context menu label.
    • Included profession in crew roster ui.

    [*] 0.4.3.1 - Fixed Gee effects kerbal killer being enabled even when KeepFit has not been enabled for the game save! (I killed Jeb in *my own* career game!)

    [*] 0.4.2.1 - 1.0.2 Compatibility rebuild, no other changes.

    [*] 0.4.1.1 - 1.0.0 Compatibility rebuild

    [*] 0.3.0.1 - 0.90.0 Compatibility, added minimum landed gee (default 0.05g) for landed state to imply 'exercising' - other changes see github

    [*] 0.2.0.6 - MainWindow is no longer an exclusive appLauncher button, so it can be moved around and kept etc, and also hiding mainWindow via the appLauncher no longer hides all the child windows

    [*] 0.2.0.5 - Reworked UI to be almost nice, and confirmed major functionality working

    [*] 0.2.0.4 - Fixed lack of fitness updates whilst in spacecenter scene, changed spacecenter button behavior to show fitness roster window, de spammed the logging on the debug build somewhat, and tidied up the applaunch icon.

    [*] 0.2.0.3 - Added support for ksp-avc/mini-avc, and switched to a compatible versioning scheme

    [*] 0.2-alpha - Updated to use ksp 0.25 for build, removed module manager from package, switched to using app launcher, otherwise just as broken as previously.

    [*]1.0.43 - Removed some unnecessary debug log-spam, and enabled plugin during tracking station + space center scenes, as well as flight, as time passing in these scenes has become 'real' in 0.23.5

    [*]1.0.43 - Many cycles of pain later, appveyor is partially working again, though dumping packages always into the same destination

    [*]1.0.33rc1 - Interim manual build due to build host plosion - removed debug infinite fuel bobbins, modulemanager dll, and toolbar from distribution zip

    [*]1.0.28 - Moved modulemanager dll to the correct place in the installation bundle

    [*]1.0.27 - Scrubbed up the roster window (VAB/SPH/Tracking Station) to use the same style as the in-flight display, made crew displays a togglable dropdown for space, and added an all vessels display to in-flight, plus fixed a save bug

    [*]1.0.26 - Fixed bug resulting in parts not picking up their specified activityLevel correctly

    [*]1.0.25 - Removed egregious 'helloworld' window from KeepFitPartModule in-flight UI

    [*]1.0.17 - 1.0.24 - Battled the beast that is AppVeyor (https://ci.appveyor.com) to get automated build + package generation

    [*]1.0.11 - 1.0.16

    • KeepFitPartModule now contains definition of activityLevel on attached part, vessel takes 'best' activity level among component parts
    • Landed vessels now take activityLevel to EXERCISING
    • In-flight UI inspired by/copied from (ish) Alternate Resource Panel. Now displays Gee loading breakdown + fitness of active vessel crew
    • Fixed it, broke it, fixed it (repeat x99)

Thank you, very useful pagin

Link to comment
Share on other sites

How would one go about disabling Deady Re-entry's G-force thingy in favor of this?

I think you'd need to ask @Starwaster for sure, as that's not my train set - from looking at the configs in the source, there isnt a single 'disable gee effects' config option, though you may be able to set the various crewGee limit numbers so high, it never kicks in?

Link to comment
Share on other sites

Hi, can anyone explain the estimated flight times for the different levels - cramped, comfy, neutral, exercising, for example would a crew of 3 survive a trip to Duna and back in a 'Comfy' state of the 3 man capsule? Is it better to stick a hitch hiker module for interplanetary travel to raise the level to neutral? How fast do they lose fitness level and what kind of accommodation is necessary for the closest two planets? A simple clarification would help a whole lot, thanks!

Link to comment
Share on other sites

This thread is quite old. Please consider starting a new thread rather than reviving this one.

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.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...