Jump to content

[1.12.x] L-Tech Continued Release


linuxgurugamer

Recommended Posts

SXEroxv.png

Original thread for the mod is here: https://forum.kerbalspaceprogram.com/index.php?/topic/49319-12-l-tech-scientific-industries-v42/

I was contacted and asked if I could take this over.  After reviewing it, I decided that it is worth doing.

Dependencies

Availability

CKAN when full release is made

Beta Info

  • I am on the lookout for more experiments which I can add to Skylab.  I rewrote the code so that it's all done in a config file now rather than being hard-coded.  So if you have any ideas for new experiments, please let me know

Mod Objectives

  • L-Tech Scientific Industries is a mod designed to add to the career mode of Kerbal Space Program by Providing new ways to generate science

Description

  • Science
    • SkyLab: The SkyLab is a space station module you launch into space, that allows you to use resources to generate science.  The SkyLab requires special resources for its science experiments.   Each experiment requires a different resource, The resources can be loaded directly in the lab  or from a loaded science container.
      Available experiments are:
      • Model Rockets
      • Micro Gravity
      • Habitation
      • Fire/Combustion
    • External Camera: The External Camera is a Experimental Science Device that allows you to take pictures of items ingame,And Gain Science from them.  It can also just take pictures for you to save to look at. The Camera comes in two flavours. Digital and Film-Based. Digital Cameras don't require film to take pictures, and are generally lighter. The Film-Based camera's use film to take their pictures, and are generally heavier, but when cost is factored in they will also be cheaper.  (The pictures are saved in the "<KSPRoot>\Screenshots\LTech" folder.)
      • Note:  To reset the camera after closing the PAW, you can use either the CAMERA_RESET (default to backtic) or CAMERA_NEXT (default to V)
    • Radio Receiver: Radio reception can be tested in a number of biomes.
    • Radiation Sensor:   Radiation measurements can be done in many places.  In Stock, from every planet landed and in space
  • Utility
    • Storage Container: The L-Tech Science container is a all around storage device. It is capable of storing Experiment Resources for the skylab, and storing completed experiments for later processing.
    • Sample Return Bin: The Sample Return Bin is a light inline(?) storage container, capable of storing experiments.
    • While the original mod had an AirBrake, it's essentially a meaningless part, so I've deprecated it.

Pre-Beta Adoption & Upgrade Notes 

Spoiler

The original mod required the use of Snacks (either added by this mod or from the Snacks mod), which was used to create something called Inspiration.  That took time, although the amount of time was ridiculously small (minutes).  This adds a resource called Inspiration, and if Snacks wasn't being used, also added a resource called Snacks.

Then, using the Inspiration, you would be able to run one or more experiments.

From what I can tell, the overall goal of using Snacks -> Inspiration -> Experiment was to make the experiments take time.  Because of this, I'm thinking of changing that as follows:

  1. Remove Inspiration, no need for another resource
  2. Remove Snacks, again, no need for another resource
  3. Make the experiments take time, so you would first start an experiment, wait a period of time, and then have to finish it before getting the results

This would simplify things a bit for the player, and add that time element which the mod was trying for.  

Additionally, I'm toying with the thought that the Skylab can only run one or two experiments can be done at a time, rational being due to space constraints.

 

Questions, comments and suggestions are welcome

Changes made for Adoption
 

Spoiler

 

   Fixed doubled "Picture Picture" experiment name when taking a picture
    Increased mass of seeds & updated descripion
    Added "Biome dependent" to experiment definitions
    Science values adjusted for all skylab experiments
    Science dataScale adjusted for all skylab experiments
    Fixed checks for number of crew needed
    Added enforcement of number of crew needed
    Added check for minimum aggregrated science experience needed in scientists in lab
    Reduced frequency of updates to SkyLabCore PAW to 4x/sec
    Reduced frequency of updates to SkylabExperiment PAW to 4x/sec
    Added check for stock CAMERA_NEXT key (defaults to V), also added check for stock CAMERA_RESET (defaults to BackQuote)
    Fixed nullref when going into options while creating a new game
    Added optional (default is to use) interface with KCT to adjust the research times based on what's been allocated in KCT
    Formula used is:  0.1*(X+1)*LN(1+1/(0.1*(X+1)))
    Fixed name of radial tanks to show what it holds
    Replaced obsolete RequestResource with updated version
    Replaced the obsolete CaptureScreenshot with the updated version
    Reordered the directories & solution file
    Replaced all toolbar code with using the ToolbarController
    Removed all references to blizzy
    Added support for Clickthroughfix
    Moved buttons into PluginData/Buttons
    Moved Settings.cfg into PluginData
    Replaced internal logging code with KSP_Log
    Fixed model reference for the LT_ExtCam1 (old model was deprecated)

    On the Skylab part, replaced crewCabinInternals with the MobileProcessingLabInt, with all 6 seats unlocked
    on the Skylab part, made the "Open experiment GUI" be able to close the GUI as well, text is updated

    Fixed issue of multiple science experiments being overwritten in Skylab:
        Redid the WindowSkylab into a MonoBehaviour
        Now adds WindowSkylab as a Component when open, and destroys it when done
    Added stock settings page
    Added option for alternate skin
    Reduced Insight research rate by 99.9%, from 100 to 0.1

    New Dependencies
        ClickThroughBlocker
        ToolbarController
        SpaceTuxLibrary

    Added LTECH stanza to Skylab experiments,contains all experiment info including UI strings
    Added code to read LTECH stanzas
    In WindowSkylab, DisplayExperiments(), replaced individual hard-coded sections for each experiment with loop using data read from the Skylab Experiments
    Removed Snacks entirely
    Removed Insight completely
    Replaced hard-coded window IDs with generated from WindowHelper

    Thanks to the following modders for remaking all the parts:
        Forum user @CobaltWolf for the following parts:
            Kerb-1    film-based camera
            I-C External camera    no film
            Radiation Sensor, about the size of a lunchbox
            Radio-Spyatron    when opened, about 1-2m in diameter
            Radio receiver
        Forum user @SuicidalInstanity for these:
            L-Tech Skylab
            Science container
            S-125 Sample Return Bin
        Forum user @Angel-125 for the following parts:
            The Clipboard tanks, radial & 2.5m
            The Model rockets tanks, radial & 2.5m
            The Seed tanks, radial & 2.5m

 


 

 

 

Edited by linuxgurugamer
Link to comment
Share on other sites

  • 4 weeks later...

Finally, the first beta:

https://github.com/linuxgurugamer/L-Tech/releases

License: MIT

Version 0.5.1 Beta 1

  • Replaced obsolete RequestResource with updated version
  • Replaced the obsolete CaptureScreenshot with the updated version
  • Reordered the directories & solution file
  • Replaced all toolbar code with using the ToolbarController
  • Removed all references to blizzy
  • Added support for ClickThroughBlocker
  • Moved buttons into PluginData/Buttons
  • Moved Settings.cfg into PluginData
  • Replaced internal logging code with KSP_Log
  • Fixed model reference for the LT_ExtCam1 (old model was deprecated)
  • On the Skylab part, replaced crewCabinInternals with the MobileProcessingLabInt, with all 6 seats unlocked on the Skylab part, made the "Open experiment GUI" be able to close the GUI as well, text is updated
  • Fixed issue of multiple science experiments being overwritten in Skylab:
  • Redid the WindowSkylab into a MonoBehaviour
  • Now adds WindowSkylab as a Component when open, and destroys it when done
  • Added stock settings page
  • Added option for alternate skin
  • New Dependencies
    • ClickThroughBlocker
    • ToolbarController
    • SpaceTuxLibrary
  • Added LTECH stanza to Skylab experiments,contains all experiment info including UI strings
  • Added code to read LTECH stanzas
  • In WindowSkylab, DisplayExperiments(), replaced individual hard-coded sections for each experiment with loop using data read from the Skylab Experiments
  • Removed Snacks entirely
  • Removed Insight completely
  • Replaced hard-coded window IDs with generated from WindowHelper

Thanks to the following modders for remaking all the parts:

  • Forum user @CobaltWolf for the following parts:
    • Kerb-1    film-based camera
    • I-C External camera    no film
    • Radiation Sensor, about the size of a lunchbox
    • Radio-Spyatron    when opened, about 1-2m in diameter
    • Radio receiver
  • Forum user @SuicidalInstanity for these:
    • L-Tech Skylab
    • Science container
    • S-125 Sample Return Bin
  • Forum user @Angel-125 for the following parts:
    • The Clipboard tanks, radial & 2.5m
    • The Model rockets tanks, radial & 2.5m
    • The Seed tanks, radial & 2.5m
       

Known bug/issue

  • If not using HullcamVDS, switching to one of the camera views and then closing the PAW makes it impossible to get back to normal flight view.  Work-around is to change to a different scene and then back.
Edited by linuxgurugamer
Link to comment
Share on other sites

Are there dependencies? This isn't working for me in 1.10.1.

  • all tanks say "clipboards" even if they hold other things
  • neither of the cameras have any sort of activation item on their PAW
  • experiments cannot be transferred into the lab
  • there are no pertinent PAW items in the VAB or in flight for the Sample Return Bin
  • the lab's PAW doesn't contain any science-related options even with a scientist aboard

I feel like I've missed something major ... ?

Spoiler

jXfjrQK.png

 

Link to comment
Share on other sites

2 hours ago, OrbitalManeuvers said:

Are there dependencies? This isn't working for me in 1.10.1.

  • all tanks say "clipboards" even if they hold other things
  • neither of the cameras have any sort of activation item on their PAW
  • experiments cannot be transferred into the lab
  • there are no pertinent PAW items in the VAB or in flight for the Sample Return Bin
  • the lab's PAW doesn't contain any science-related options even with a scientist aboard

I feel like I've missed something major ... ?

  Reveal hidden contents

jXfjrQK.png

 

New Dependencies

  • ClickThroughBlocker
  • ToolbarController
  • SpaceTuxLibrary
Link to comment
Share on other sites

20 minutes ago, linuxgurugamer said:

New Dependencies

  • ClickThroughBlocker
  • ToolbarController
  • SpaceTuxLibrary

Thanks, getting further ... didn't have STL

 

On 7/17/2020 at 1:29 PM, linuxgurugamer said:

(The pictures are saved in the "Modfolder/Plugins/PluginData/LtScience" folder.)

These actually appear to go in <KSPRoot>\Screenshots\LTech.

Edited by OrbitalManeuvers
typo
Link to comment
Share on other sites

These parts looks great, will check out the Skylab in a bit more detail later, but if I wanted to add it to other parts, I would create a patch to add SkylabCore and SkylabExperiment modules + the resources?  Also I went through and noticed the Container and Sample Bins have all white textures, Container.dds is a 4x4 white image.  Wasn't sure if that's a placeholder texture.

Link to comment
Share on other sites

5 hours ago, OrbitalManeuvers said:
On 7/17/2020 at 4:29 PM, linuxgurugamer said:

(The pictures are saved in the "Modfolder/Plugins/PluginData/LtScience" folder.)

These actually appear to go in <KSPRoot>\Screenshots\LTech.

  You are absolutely correct in the location and I'll fix it now

3 hours ago, hemeac said:

These parts looks great, will check out the Skylab in a bit more detail later, but if I wanted to add it to other parts, I would create a patch to add SkylabCore and SkylabExperiment modules + the resources?  Also I went through and noticed the Container and Sample Bins have all white textures, Container.dds is a 4x4 white image.  Wasn't sure if that's a placeholder texture.

Yes, that's needed for earlier versions of KSP which required a placeholder when replacing a texture with another, in this case, Squad/Parts/Science/ScienceBox/Container.

Regarding putting the experiments onto other parts, you are essentially correct.  If you do, would you mind sending me the patches, I'll review and if I think it makes sense for the mod, I'll add it

Edited by linuxgurugamer
Link to comment
Share on other sites

59 minutes ago, linuxgurugamer said:

Regarding putting the experiments onto other parts, you are essentially correct.  If you do, would you mind sending me the patches, I'll review and if I think it makes sense for the mod, I'll add it

Will do.  Been creating a personal tech tree to teach myself how to script with MM, so will keep an eye out for relevant parts/Mods that will benefit from this.  

Link to comment
Share on other sites

Had a chance to look through it and like that the interface is pretty straightforward.  My one thought is it may be good to lockdown on the repeatability of the lab experiments.  At least for me while testing it in science career, I could just redo the same experiments over and over for the same amounts.

Link to comment
Share on other sites

@linuxgurugamer The Radial Tank names say "clipboards" even when they actually hold other resources. The inline tank names seem okay.

This overlaps with OrbitalManeuvers' earlier comment all tanks say "clipboards" even if they hold other things. I checked and have the dependencies installed.

Spoiler image explains it better than the words above. The 2 problematic parts are circled in yellow.

Spoiler

AiwpK7F.png

 

 

Edited by DeadJohn
Link to comment
Share on other sites

2 hours ago, DStaal said:

This looks interesting, but very similar to MOLE.  What's the differentiator at this point?

Not familiar with MOLE, other than it exists.  Maybe someone else can compare them

2 hours ago, DeadJohn said:

@linuxgurugamer The Radial Tank names say "clipboards" even when they actually hold other resources. The inline tank names seem okay.

This overlaps with OrbitalManeuvers' earlier comment all tanks say "clipboards" even if they hold other things. I checked and have the dependencies installed.

Spoiler image explains it better than the words above. The 2 problematic parts are circled in yellow.

Thanks, I'll get it fixed and a new beta

New release, 0.5.1.1

  • Fixed name of radial tanks to show what it holds
Link to comment
Share on other sites

4 hours ago, DStaal said:

This looks interesting, but very similar to MOLE.  What's the differentiator at this point?

I had started looking at M.O.L.E. yesterday and I would describe this a bit as "MOLE" light.  LTech focus as I understand it is on adding a station science component, but doesn't include the proprietary resource system, ISRU chains, and proprietary part switching, not to mention the full parts pack of MOLE.  But if you are already using MOLE and enjoy it, this probably wouldn't add any gameplay functionality that you don't already have.

@linuxgurugamer , one feature request that I had was a connection to the R&D multipliers in KCT.  Perhaps the research multiplier could be utilised as an efficiency multiplier, initially the KSC science team sets up the science experiments in a haphazard manner, meaning it takes longer for the scientists at the station to get the work done, but that improves over time as one invests in research, something like 0.1*(X+1)*LN(1+1/(0.1*(X+1))).

Link to comment
Share on other sites

51 minutes ago, hemeac said:

 

@linuxgurugamer , one feature request that I had was a connection to the R&D multipliers in KCT.  Perhaps the research multiplier could be utilised as an efficiency multiplier, initially the KSC science team sets up the science experiments in a haphazard manner, meaning it takes longer for the scientists at the station to get the work done, but that improves over time as one invests in research, something like 0.1*(X+1)*LN(1+1/(0.1*(X+1))).

Interesting, is X minutes, hours, days?  and I would put a max in there as well, don't want it to become too good.    It's a good idea

Link to comment
Share on other sites

My thought in this case that X was the number of points allocated to Research and/or Development in KCT.  Thus when you start with 0 points allocated, this formula would say that you are researching at 23.98% efficiency of the baseline defined in the config files or alternatively a 4.17x multiplier to the base research time.  With 10 points allocated, the formula notes that research is 71.12% efficiency so the multiplier is just 1.41x.  At 20 points, it is 81.78% efficient, and the theoretical limit is 100% efficient, thus with the increasing costs of acquiring points in KCT, that should provide a natural trade-off.  May provide an incentive to invest in the research section a bit earlier and also have the benefit of presumably not needing to modify the KCT code.  The 0.1 factor could be modified to suit difficulty/balancing.  A 0.4 would start the efficiency at around 50% and by point 10, would be up to 90%.

Regardless, I like the idea of the station science not being instantaneous.  Kerbalism is quite an intriguing idea in theory with taking time to conduct science, but for me, there is a lot of hassle micromanaging kerbals.  I think KCT/LT is enough so it slows down my progression so I am not leaving Kerbin's sphere of influence within a month of me launching my first sounding rocket and combined with a more simplistic life support mod, provides a reason for me to pack enough life support to keep my kerbals in a station for a few weeks 

Link to comment
Share on other sites

On 8/12/2020 at 4:17 PM, hemeac said:

one feature request that I had was a connection to the R&D multipliers in KCT.  Perhaps the research multiplier could be utilised as an efficiency multiplier, initially the KSC science team sets up the science experiments in a haphazard manner, meaning it takes longer for the scientists at the station to get the work done, but that improves over time as one invests in research, something like 0.1*(X+1)*LN(1+1/(0.1*(X+1))).

New Beta, 0.5.1.1 Beta 2

  • Added optional (default is to use) interface with KCT to adjust the research times based on what's been allocated in KCT, thanks @hemeac for the suggestion copied above
    • Must use KCT 1.4.8 or later for this to work
Link to comment
Share on other sites

On 7/17/2020 at 4:29 PM, linuxgurugamer said:

I am on the lookout for more experiments which I can add to Skylab.  I rewrote the code so that it's all done in a config file now rather than being hard-coded.  So if you have any ideas for new experiments, please let me know

I have a idea, but I cant code to save my life, but hear me out.

Plant growing.

Link to comment
Share on other sites

1 hour ago, linuxgurugamer said:

New Beta, 0.5.1.1 Beta 2

  • Added optional (default is to use) interface with KCT to adjust the research times based on what's been allocated in KCT, thanks @hemeac for the suggestion copied above
    • Must use KCT 1.4.8 or later for this to work

Very excited to try this out!

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...