Jump to content

Science Revisited - New and improved ways to do science [ALPHA 3]


CaptRobau

Recommended Posts

This mod attempts to correct many of the flaws found in the current implementation of the science system. In a nutshell: it makes science gathering with unmanned more practical, makes the science lab a bit more useful and returning science to Kerbin is no longer the only viable option.

Crew & EVA Reports

The base value of both types of reports has been dropped a bit. This was done so that a certain area isn’t fully ‘scienced’ on the first try. This means you can either transmit the data and collect the remainder then or you can have another spacecraft pick up the remaining science. This also makes often visited places like low Kerbin orbit a bit more interesting, as there might still be some small bits of science left. The most important change is that Crew Reports in low orbits are now biome specific, while EVA Reports no longer are. This removes the annoying get-out-of-the-pod-click-on-EVA-report-and-climb-back-in and replaces it with something that works a little more intuitive.

Ideally I would’ve changed the transmission efficiency of EVAs to 100% as well, as it’s the same sort of information as Crew Reports, but at the moment EVA Reports can’t be edited as well as other experiments. The same goes for Surface Samples, whose 50% efficiency I’d lower if I could.

Experiments

All the experiments now have a base value that is around ¾ of the science cap, to achieve the same effect as the Reports. The experiments have had their values changed the most, to create a more logical increase in reward vs. the amount of data it has to send (and thus how much electricity it costs). The small experiments also transmit at 100% now. Gravimetric or temperature data are after all just numbers, which can be easily transmitted. This gives also more use to probes, as they now have more science to gain from experiments that they can perform. It also cuts down on the necessity to bring all spacecraft back for maximum science. The Temperature Scan now also works in outer space.

Mobile Processing Lab

To make the Lab more competitive with returning experiment results back to Kerbin, the transmission boost has been raised from 1.5 to 5. To make the science lab a bit more difficult to haul around, the mass has been increased to that of two Hitchhiker pods (which are about the same size as one Lab). The Lab now also has an interior, that of the Hitchhiker. There's now place for four Kerbals, although only two are still necessary to enable the Lab's function.

What do these changes accomplish?

-The Science Lab is now worth the effort: a bigger transmission boost makes it a good alternative to returning science to Kerbal

-Transmission is no longer automatically the worst option: the transmission boost and the increased data scalars for the experiments mean that transmission will be the better choice in more situations

-Orbital missions are now more necessary: biome-specific crew reports in near orbit makes an orbiter a better choice than a suborbital craft

-Unmanned missions now have less disadvantages: more science can be transmitted, making probes a good alternative to manned missions

Comments (critiques, suggestions, etc.) are also always welcome.

Download:

Dropbox - Alpha 3

Older Versions:

Dropbox - Alpha 2

Dropbox - Alpha 1

Changelog:


Alpha3
-Added the ScienceDef changes to the ModuleManager file
-The Temperature Scan now works in outer space as well
-Balanced Antenna parts
-Changed the Lab's crew capacity and changed the IVA to the standard Hitchhiker one
-Raised the data scalar for the Mystery Goo and Materials Bay to 0.5
-Also increased their data scales (how much Mit they have to send)
Alpha 2
-I basically started from scratch with this, as the setup from Alpha 1 wasn't working very well

Credits:

Somnambulist - for helping me with ModuleManager stuff

The CFG file

// Rebalanced the antenna in weight, interval and resource costs
@PART[longAntenna]
{
@MODULE[ModuleDataTransmitter]
{
@packetInterval = 0.8
}
}

@PART[mediumDishAntenna]
{
@mass = 0.025

@MODULE[ModuleDataTransmitter]
{
@packetInterval = 0.4
@packetResourceCost = 20.0
}
}

@PART[commDish]
{
@mass = 0.05

@MODULE[ModuleDataTransmitter]
{
@packetInterval = 0.2
@packetResourceCost = 40.0
}
}

@PART[sensorAccelerometer]
{
@MODULE[ModuleScienceExperiment]
{
@xmitDataScalar = 1
}
}

@PART[sensorBarometer]
{
@MODULE[ModuleScienceExperiment]
{
@xmitDataScalar = 1
}
}

@PART[sensorGravimeter]
{
@MODULE[ModuleScienceExperiment]
{
@xmitDataScalar = 1
}
}

@PART[sensorThermometer]
{
@MODULE[ModuleScienceExperiment]
{
@xmitDataScalar = 1
}
}

@PART[avionicsNoseCone]
{
@MODULE[ModuleScienceExperiment]
{
@xmitDataScalar = 1
}
}

@PART[science_module]
{
@MODULE[ModuleScienceExperiment]
{
@xmitDataScalar = 0.5
}
}

@PART[GooExperiment]
{
@MODULE[ModuleScienceExperiment]
{
@xmitDataScalar = 0.5
}
}

// Now carries four and has an interior, but still only needs two Kerbals to operate it. Increased the transmission boost at the cost of heigher weight
@PART[Large_Crewed_Lab]
{
@mass = 5
@CrewCapacity = 4

INTERNAL
{
name = crewCabinInternals
}

@MODULE[ModuleScienceLab]
{
@dataTransmissionBoost = 5
}
}

// SCIENCEDEFS

@EXPERIMENT_DEFINITION[*]:HAS[#id[crewReport]]
{
@baseValue = 3
@scienceCap = 5

@biomeMask = 23
}

@EXPERIMENT_DEFINITION[*]:HAS[#id[evaReport]]
{
@baseValue = 6
@scienceCap = 8

@biomeMask = 7
}

@EXPERIMENT_DEFINITION[*]:HAS[#id[mysteryGoo]]
{
@baseValue = 10
@scienceCap = 13
@dataScale = 1.25
}

@EXPERIMENT_DEFINITION[*]:HAS[#id[surfaceSample]]
{
@baseValue = 30
@scienceCap = 40
@dataScale = 5
}

@EXPERIMENT_DEFINITION[*]:HAS[#id[mobileMaterialsLab]]
{
@aseValue = 24
@scienceCap = 32
@dataScale = 2.5
}

@EXPERIMENT_DEFINITION[*]:HAS[#id[temperatureScan]]
{
@baseValue = 6
@scienceCap = 8
@dataScale = 1

@situationMask = 63
}

@EXPERIMENT_DEFINITION[*]:HAS[#id[barometerScan]]
{
@baseValue = 9
@scienceCap = 12
@dataScale = 1.25
}

@EXPERIMENT_DEFINITION[*]:HAS[#id[seismicScan]]
{
@baseValue = 15
@scienceCap = 20
@dataScale = 5
}

@EXPERIMENT_DEFINITION[*]:HAS[#id[gravityScan]]
{
@baseValue = 20
@scienceCap = 22
@dataScale = 2.5
}

@EXPERIMENT_DEFINITION[*]:HAS[#id[atmosphereAnalysis]]
{
@baseValue = 18
@scienceCap = 24
@dataScale = 10
}

Edited by CaptRobau
Link to comment
Share on other sites

I haven't changed how normal Crew Reports work, so that's the same as 0.23 does it. Although due to the way the Cupola is set up, it might be possible to do a Crew Report with a normal pod and one with the Cupola and it'll count as completely new. I'll see if I can close that exploit.

Link to comment
Share on other sites

[idea] Every day a Kerbal is in a location, it generates a little bit of science, for a max cap of 15 days/kerbal, and each Kerbal can squeeze a little more science from it's experience. Bigger pods have better science (Mk-1 pod=Bad, Mk1-2 pod=okay, Hitchhiker Storage Container=Great) Perhaps this implementation isn't the best, but I'd like to have another purpose for space stations.

Link to comment
Share on other sites

It's a great idea, I'll grant you that. It would help immensely with making orbital flights more useful (now you can just get all the science from with a suborbital hops, as you only need a few seconds to get science). Sadly this doesn't seem to be possible without a custom plugin, which is something I can't do.

Also I think there's no way to make Cupola's get more science without them being a separate kind of experiment. This means that you'll be able to do a Crew Report with a normal pod and one with a Cupola and they'll be counted as different. That's too big of an exploit to keep it the way it is. The only way to get around that is to have Cupola's do Crew Reports and something like an Observation Report that gets you the extra bit of science that will make Cupola's more useful. So instead of a Crew Report worth 5 and a Crew Report (Cupola) worth 8 as it's in ALPHA 1, it'd be something like Crew Report (5) Observation Report (3). So instead of a total of 18, it's now 10 as I originally intended.

Edited by CaptRobau
Link to comment
Share on other sites

[idea] Every day a Kerbal is in a location, it generates a little bit of science, for a max cap of 15 days/kerbal, and each Kerbal can squeeze a little more science from it's experience. Bigger pods have better science (Mk-1 pod=Bad, Mk1-2 pod=okay, Hitchhiker Storage Container=Great) Perhaps this implementation isn't the best, but I'd like to have another purpose for space stations.

A decent idea, but you would have to have a way of activating the process to make it worthwhile outside Kerbins SOI. Maybe call it a psychology report to show how a Kerbal reacts to space over time. Would be only usable once or twice per Kerbal and should have a low science gain unless using pods such as Labs and Storage Containers to prevent overuse early in the tech tree by flyin into orbit, timewarping and returning. Would work better with a life support mod to prevent this, but low returns should be enough to discourage exploitation.

Link to comment
Share on other sites

I just released Alpha 2. I basically threw out the old stuff. It just unbalanced things too much and solved too little. The new approach makes both unmanned probes and the science lab more useful, two of the main gripes people were having with the 0.23 implementation of science. See the OP for how the mod works now.

Link to comment
Share on other sites

Thanks for this CaptRobau, look forward to playing with it over the holiday.

Two suggestions:

Take a look at Starwaster's Probe Science config files. He's using some of the more advanced wildcard and matching features Sarbian added to MM. This makes maintenance much easier and would mean you don't need to overwrite anything in /GameData/Squad/

e.g., to change the base value of all crew reports to 10:


@EXPERIMENT_DEFINITION[*]:HAS[#id[crewReport]]
{
@dataScale = 10
}

Or to modify all command pods regardless if they're a mod or stock:


@PART[*]:HAS[@MODULE[ModuleCommand]
{
}

Including the Hitchhiker's internals adds unneeded bloat. With model nodes you don't actually need to do that. Delete the mesh and textures and just put the following into your internal.cfg to alias the existing textures:


MODEL
{
model = Squad/Spaces/crewCabinInternals/model
}

Link to comment
Share on other sites

So, I gave this mod a try, and while it worked fine for the crew reports, EVA reports, and readouts from the thermometer, barometer, and seismic sensors, the gravity sensor didn't work at all. It would not show the "log gravity data" option.

Link to comment
Share on other sites

So, I gave this mod a try, and while it worked fine for the crew reports, EVA reports, and readouts from the thermometer, barometer, and seismic sensors, the gravity sensor didn't work at all. It would not show the "log gravity data" option.

There's a minor typo in ScienceDegs.cfg. Find this section


EXPERIMENT_DEFINITION
{
id = gravityScan
title = Gravity Scan
baseValue =
scienceCap = 22
dataScale = 2.5

and change it to


EXPERIMENT_DEFINITION
{
id = gravityScan
title = Gravity Scan
baseValue = 20
scienceCap = 22
dataScale = 2.5

@ CaptRobau - I went through my own install and changed your CFGs to use the wildcard matching I mentioned in my earlier post http://pastebin.com/7HmWBQU0. This also includes Starwaster's temperature patch

Edited by somnambulist
Added my updated CFGs
Link to comment
Share on other sites

  • 2 weeks later...

Uploaded Alpha 3:

-Added the ScienceDef changes to the ModuleManager file
-The Temperature Scan now works in outer space as well
-Balanced Antenna parts
-Changed the Lab's crew capacity and changed the IVA to the standard Hitchhiker one
-Raised the data scalar for the Mystery Goo and Materials Bay to 0.5
-Also increased their data scales (how much Mit they have to send)

I didn't add the wildcards for the crew reports and envirosensor as you suggest somnambulist. For some reason it messed up stuff with the Materials Bay/Mystery Goo. I did add the ScienceDef stuff to the ModuleManager cfg.

Link to comment
Share on other sites

If we add this .cfg to a game that already has existing (biome specific, low orbit) eva reports, what happens? Would it basically just open a completely new set of experiments or would they convert somehow?

Edited by boberts314
Link to comment
Share on other sites

  • 11 months later...
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...