Jump to content

Open Resource System (ORS) - Mod Resource API - version 1.4.2


Fractal_UK

Recommended Posts

Hey WaveFunction... if you're going to fiddle with the KSPI resource distribution at all, what's your stance on working with me to unify a couple of the NFT/KSPI resource overlaps? I'm not sure how reasonable it is (that LF = LH2 thing is tough to work around), but I figured I'd ask.

Link to comment
Share on other sites

Hey WaveFunction... if you're going to fiddle with the KSPI resource distribution at all, what's your stance on working with me to unify a couple of the NFT/KSPI resource overlaps? I'm not sure how reasonable it is (that LF = LH2 thing is tough to work around), but I figured I'd ask.

I think this would be downright lovely.

(Edit)

Nertea, for my own benefit, what kinds of merges and changes would you be thinking of? I have both KSPI and NRS in my Community Resource Pack doc if that helps for reference

Link to comment
Share on other sites

(that LF = LH2 thing is tough to work around)

I believe that came from the fact that on the prototype 0.20 resource flow diagram the KSP devs had water separatable into 'oxium' and 'propellium' which could be compressed into 'oxidizer' and 'liquid fuel' directly which seems to indicate that the liquid fuel is LH2 in the dev's mind.

I know the stock densities don't work out that way though, so it's weird.

Link to comment
Share on other sites

I believe that came from the fact that on the prototype 0.20 resource flow diagram the KSP devs had water separatable into 'oxium' and 'propellium' which could be compressed into 'oxidizer' and 'liquid fuel' directly which seems to indicate that the liquid fuel is LH2 in the dev's mind.

I know the stock densities don't work out that way though, so it's weird.

Yeah, I think that unless any of that is being explicitly uses by KSPI, we ditch it. And if it is being used by KSPI, now seems the best time to discuss getting everything in line since Wave has a breaking change incoming anyway, so this is probably one of those rare chances we have for a reset.

Link to comment
Share on other sites

There are only a couple of specific conflicts, noted as follows.

ArgonGas vs. Argon

My ArgonGas has 1% of the density. I would argue that KSPI's is supposed to be gaseous, because most of the other definitions do specify Lqd in front of them. The reason the densities are so different is probably because of the LH2/LF problem... base your density calculations off one assumption and you get big differences like that. Because well, I've done a lot of work with NFT's argon storage tanks, I would say to use my density (which is based off stock Xenon and should be independant of the LF/LH2 problem). Also correct me if I'm wrong, but KSPI doesn't use argon much except as a plasma engine propellant, and lack significant tankage for it.

(KSPI Nuclear Fuels) vs. EnrichedUranium

Because nuclear fuel type is a key mechanic in KSPI, I don't think it can be unified. However we could unify on DepletedFuel vs DepletedUranium. I don't see any problem with changing mine, provided we agree on a density.

LiquidFuel vs. LiquidHydrogen

The big one, of course. Some of the bits of KSPI are I think highly integrated with this assumption, some are not. Not sure what to do here.

Link to comment
Share on other sites

Switching out KSPI's hydrogen and argon should be a .cfg-level search and replace, because the plugin uses whatever resource is specified in WarpPluginSettings.cfg and checks the density of the selected resource at use. Just scale the tank capacities by the ratio of densities.

Since KSPI has only the one inconveniently-sized argon tank, I'd probably unify on NFT's argon.

Hydrogen is a closer call because I'd like to be able to electrolyze water in KSPI's refinery and run chemical engines on it. Given a decent selection of chemical rockets that would use LiquidHydrogen, I'd switch KSPI to stop using LiquidFuel.

Link to comment
Share on other sites

What about electric charge/mega joules?

I haven't used NFT in some while but I remember the KSPI generators being wildly overpowered for running some of the electrics in NFT

That's more of a balance paradigm thing than compatibility. Given the tech that KSPI is running with, the MW numbers aren't ridiculous; given the tech I am running with, the numbers are fine. I wouldn't even consider unifying these - either way, one of the two mods would feel weird.

Switching out KSPI's hydrogen and argon should be a .cfg-level search and replace, because the plugin uses whatever resource is specified in WarpPluginSettings.cfg and checks the density of the selected resource at use. Just scale the tank capacities by the ratio of densities.

Since KSPI has only the one inconveniently-sized argon tank, I'd probably unify on NFT's argon.

Hydrogen is a closer call because I'd like to be able to electrolyze water in KSPI's refinery and run chemical engines on it. Given a decent selection of chemical rockets that would use LiquidHydrogen, I'd switch KSPI to stop using LiquidFuel.

Good to know. Is the ISRU stuff the only area where there would be a problem?

Link to comment
Share on other sites

To hop into the EC/KW/MW/MJ bit.

There's a lot of confusion and questions on this - specifically in translation of EC to KW or EC to MW. Are there any specific thoughts on this? I think establishing something consistent would be nice, especailly as this is relevant for displays on converters, etc. and right now I have a disjoint with Karbonite's generators and the KSPI generators.

My understanding is that 1EC = 1KW, but how does that relate to KSPI and NFT? Is there a preference in terminology? And if we go with 1EC = 1KW, and a MegaJoule = 1000 EC (or 1MW) then where does that land us?

Link to comment
Share on other sites

Well, here's how I see it: 1 Ec = 1 kJ. 1 Ec/s = 1 kW. So NFT and KSPI are actually quite compatible here, because 1000 Ec = 1000 kJ = 1 MJ. As I think I mentioned somewhere, there's another electrical metric (I think it's Realism Overhaul) which also uses this equivalency. So I don't think there's too much trouble to leave it at is. The problem that's surfaced is that the display in ORS at some point shows a MW value that should really be showing kW (or Ec/s).

Generally KSPI runs all of its tech from the MJ resource because of high numbers, and the fact that having the dedicated resource allows a manager to run it without interfering with anything. I think Fractal at one point said that the Ec system represents the ship's DC electrical, and the MW/MJ system the high-power electrical system.

KSPI reactors also generate Ec when the ship needs it from their own generators, and (I think) the capacity also exists to turn Ec into MJ.

In NFT I try to stay away from specifying power use in kW, MW or anything. It's more player-transparent to show it in Ec/s, when the player may or may not be using other mods that use different names for the same thing.

Aside: As I remember when I was originally setting it, looking at the stock parts such as panels, the PB-ION (pre-buff), the RTG, the lights... 1 Ec/s = 1 kW is approximately correct to RL when you average across everything. If you dig around in my WIP or my release thread, there should be some posts about it if you're curious.

Edited by Nertea
Link to comment
Share on other sites

Well, here's how I see it: 1 Ec = 1 kJ. 1 Ec/s = 1 kW. So NFT and KSPI are actually quite compatible here, because 1000 Ec = 1000 kJ = 1 MJ. As I think I mentioned somewhere, there's another electrical metric (I think it's Realism Overhaul) which also uses this equivalency. So I don't think there's too much trouble to leave it at is. The problem that's surfaced is that the display in ORS at some point shows a MW value that should really be showing kW (or Ec/s).

In NFT I try to stay away from specifying power use in kW, MW or anything. It's more player-transparent to show it in Ec/s, when the player may or may not be using other mods that use different names for the same thing.

Aside: As I remember when I was originally setting it, looking at the stock parts such as panels, the PB-ION (pre-buff), the RTG, the lights... 1 Ec/s = 1 kW is approximately correct to RL when you average across everything. If you dig around in my WIP or my release thread, there should be some posts about it if you're curious.

Excellent. So really, ORS just needs to change MW to Kw when referring to EC/Second.

Link to comment
Share on other sites

As far as most resources go, I'm willing to concede to the resource gurus because changing resources is as easy a search and replace for the most part on my end. Numbers can be rebalanced and hand-waved to achieve the desired results. It is my desire to have KSPI play as nicely as possible with other mods. There are no sacred cows as far am I am concerned.

Don't worry about the refineries and extractors in kspi, I'll adjust them where appropriate.

Link to comment
Share on other sites

There are only a couple of specific conflicts, noted as follows.

ArgonGas vs. Argon

My ArgonGas has 1% of the density. I would argue that KSPI's is supposed to be gaseous, because most of the other definitions do specify Lqd in front of them. The reason the densities are so different is probably because of the LH2/LF problem... base your density calculations off one assumption and you get big differences like that. Because well, I've done a lot of work with NFT's argon storage tanks, I would say to use my density (which is based off stock Xenon and should be independant of the LF/LH2 problem). Also correct me if I'm wrong, but KSPI doesn't use argon much except as a plasma engine propellant, and lack significant tankage for it.

(KSPI Nuclear Fuels) vs. EnrichedUranium

Because nuclear fuel type is a key mechanic in KSPI, I don't think it can be unified. However we could unify on DepletedFuel vs DepletedUranium. I don't see any problem with changing mine, provided we agree on a density.

LiquidFuel vs. LiquidHydrogen

The big one, of course. Some of the bits of KSPI are I think highly integrated with this assumption, some are not. Not sure what to do here.

If I remove ThF4, there would be need need for the generic DepletedFuels. I removed the ugly large argon tank from kspi.

Link to comment
Share on other sites

Hmm, that's good also - we could merge on EnrichedUranium/UF4 as well then. Let me know what you'd like to do.

All of the resources in NFT I mention are in Rover's sheet and their specs are correct also.

Link to comment
Share on other sites

If I remove ThF4, there would be need need for the generic DepletedFuels.

The only real use I know for running the reactors on ThF4 is to get unupgraded fissions to run hot enough to compete with the LV-N. If I care about that, I'm probably using a Sethlans/Akula reactor anyway because it's lighter and its max core temperature is even better than a green reactor on thorium.

Link to comment
Share on other sites

Hmm, that's good also - we could merge on EnrichedUranium/UF4 as well then.

How important is it that the green reactors run on UF4 and the Sethlans/Akula series run on uranium nitride? Using the name EnrichedUranium would suggest a more abstract resource that represents uranium in whatever chemical form is appropriate to the reactor.

Link to comment
Share on other sites

It might be useful to list our resources and talk about how they are used. With everyones cards on the table we can see where everything fits.

RESOURCE_DEFINITION

{

name = ThermalPower //the raw main product of reactors, it is either converted to MW/EC (generators) or Thrust (Thermal engines)

density = 0

flowMode = ALL_VESSEL

transfer = PUMP

}

RESOURCE_DEFINITION

{

name = Megajoules // A managed resource (works even when vessel is not focused) use as the primary electric unit. Converts to and from EC

density = 0

flowMode = ALL_VESSEL

transfer = PUMP

}

RESOURCE_DEFINITION

{

name = ChargedParticles // Special snowflake resource, basicly it just converts more efficiently to electric charge.

density = 0

flowMode = ALL_VESSEL

transfer = NONE

}

RESOURCE_DEFINITION

{

name = Antimatter // Fuel source for AM/AMI reactors. Mostly collected in space with the plugin's own van allen belt model.

density = 0.000000001

flowMode = ALL_VESSEL

transfer = PUMP

isTweakable = true

}

RESOURCE_DEFINITION

{

name = IntakeAtm // Like intake air, but doesn't require oxygen to be present.

density = 0.005

flowMode = ALL_VESSEL

transfer = PUMP

}

RESOURCE_DEFINITION

{

name = UF4 // Fuel source for fission reactors. Can be extracted from land sources.

density = 0.005

flowMode = ALL_VESSEL

transfer = NONE

isTweakable = true

}

RESOURCE_DEFINITION

{

name = ThF4 // Alternate fuel source for fission reactors. Can be extracted as well.

density = 0.0042

flowMode = ALL_VESSEL

transfer = NONE

isTweakable = true

}

RESOURCE_DEFINITION

{

name = UraniumNitride // Fuel source for particle bed reactors. Can be extracted.

density = 0.0143

flowMode = ALL_VESSEL

transfer = PUMP

isTweakable = true

}

RESOURCE_DEFINITION

{

name = Actinides // Intermediate waste product of fission reactors. Can be reprocessed into more fuel plus depletedfuels.

density = 0.005

flowMode = ALL_VESSEL

transfer = NONE

}

RESOURCE_DEFINITION

{

name = DepletedFuel // do nothing waste product of fission.

density = 0.005

flowMode = ALL_VESSEL

transfer = PUMP

}

RESOURCE_DEFINITION

{

name = Science // self explainatory. Some modules produce science.

density = 0

flowMode = ALL_VESSEL

transfer = PUMP

}

RESOURCE_DEFINITION

{

name = VacuumPlasma // Free fuel for plasma engines in vacuum.

density = 0.005

flowMode = ALL_VESSEL

transfer = PUMP

}

RESOURCE_DEFINITION

{

name = Argon // yet another useless fuel mode

density = 0.005

flowMode = ALL_VESSEL

transfer = PUMP

isTweakable = true

}

RESOURCE_DEFINITION

{

name = Aluminium // fuel for the Al rocket.

density = 0.0135

flowMode = ALL_VESSEL

transfer = PUMP

isTweakable = true

}

RESOURCE_DEFINITION

{

name = ExoticMatter // the fuel for warp drive

density = 0

flowMode = ALL_VESSEL

transfer = PUMP

}

RESOURCE_DEFINITION

{

name = Deuterium // Fuel for Fusion reactors, extracted from oceans

density = 0.001

flowMode = ALL_VESSEL

transfer = PUMP

isTweakable = true

}

RESOURCE_DEFINITION

{

name = Lithium // used to make fuel for fusion reactors, another mostly useless fuel mode as well

density = 0.001

flowMode = ALL_VESSEL

transfer = PUMP

isTweakable = true

}

RESOURCE_DEFINITION

{

name = Tritium // fuel for fusion reactors, made by reactor breeding with lithium

density = 0.001

flowMode = ALL_VESSEL

transfer = PUMP

isTweakable = true

}

RESOURCE_DEFINITION

{

name = WasteHeat // the fun killing resource

density = 0

flowMode = ALL_VESSEL

transfer = NONE

}

RESOURCE_DEFINITION

{

name = LqdMethane // fuel for an engine, another fuel mode for all engines, not terribly important

density = 0.00186456

flowMode = STACK_PRIORITY_SEARCH

transfer = PUMP

isTweakable = true

}

RESOURCE_DEFINITION

{

name = Plutonium-238 // no friggen idea

density = 0.001

flowMode = NO_FLOW

transfer = NONE

}

RESOURCE_DEFINITION

{

name = Helium-3 // fuel source from some fusion modes and the AMI reactor, doesn't work properly

density = 0.001

flowMode = ALL_VESSEL

transfer = PUMP

isTweakable = true

}

RESOURCE_DEFINITION

{

name = LqdWater // the one everyone always complains about

density = 0.001

flowMode = ALL_VESSEL

transfer = PUMP

isTweakable = true

}

RESOURCE_DEFINITION

{

name = Alumina // intermediate resource, can be extracted, used to make fuel

density = 0.00399

flowMode = STACK_PRIORITY_SEARCH

transfer = PUMP

isTweakable = true

}

RESOURCE_DEFINITION

{

name = H2Peroxide // intermediate resource to produce monopropellant

density = 0.00145

flowMode = STACK_PRIORITY_SEARCH

transfer = PUMP

isTweakable = true

}

RESOURCE_DEFINITION

{

name = Ammonia // use to make mono-propellant, yet another fuel mode

density = 0.000681

flowMode = STACK_PRIORITY_SEARCH

transfer = PUMP

isTweakable = true

}

RESOURCE_DEFINITION

{

name = LqdHelium // fuel the telescope, basicly

density = 0.000135

flowMode = STACK_PRIORITY_SEARCH

transfer = PUMP

isTweakable = true

}

Link to comment
Share on other sites

The only real use I know for running the reactors on ThF4 is to get unupgraded fissions to run hot enough to compete with the LV-N. If I care about that, I'm probably using a Sethlans/Akula reactor anyway because it's lighter and its max core temperature is even better than a green reactor on thorium.

That was before I got a hold of them.

Link to comment
Share on other sites

This is what I have thus far from reading the thread, just as a recap - let me know if I have any misses in this:

ORS Maps:

MKS Aquifer/Water deprecated. KSPI Water/LqdWater deprecated. Both replaced by Water/Water

Other resources

KSPI Argon deprecated in favor of NFT ArgonGas

Karbonite ScoopedAir deprecated in favor of KSPI IntakeAir

ORS MW label changed to EC

Karbonite MW/KW label changed to EC

KSPI TH4 deprecated

KSPI DepletedFuel deprecated

KSPI UF4 deprecated in favor of NFT EnrichedUranium

KSPI UraniumNitride deprecated in favor of NFT EnrichedUranium

Link to comment
Share on other sites

Here's mine then. Pretty much agree with Rover's notes.

RESOURCE_DEFINITION

{

name = StoredCharge // Capacitor resource. Translates to Ec

unitCost = 0

density = 0

flowMode = NO_FLOW

transfer = NONE

}

RESOURCE_DEFINITION

{

name = EnrichedUranium // Nuclear fuel

density = 0.005

unitCost =75

isTweakable = true

flowMode = NO_FLOW

transfer = NONE

}

RESOURCE_DEFINITION

{

name = DepletedUranium // Depleted fuel to preserve mass when burned, can be recycled

unitCost = 0

density = 0.005

flowMode = NO_FLOW

transfer = NONE

}

RESOURCE_DEFINITION

{

name = ArgonGas // Common electric engine propellant

density = 0.00005

unitCost = 0.25

flowMode = STAGE_PRIORITY_FLOW

transfer = PUMP

isTweakable = true

}

RESOURCE_DEFINITION

{

name = LiquidHydrogen // General propellant, used for high thrust electric engines

density = 0.0004

unitCost = 0.5

flowMode = STACK_PRIORITY_SEARCH

transfer = PUMP

isTweakable = true

}

RESOURCE_DEFINITION

{

name = Polytetrafluoroethylene // Electric RCS propellant, not used atm, might be renamed

unitCost = 1.0

density = 0.000072

flowMode = NO_FLOW

transfer = NONE

}

Link to comment
Share on other sites

Quick update. The Google doc has been changed to include the notes thus far.

CRP will go out in two packs: One with ORS maps, one without.

The maps Will include Uranium (now mapped to NFT's Enriched Uranium) as this is harvestable in KSPI. It will also include Alumina - this is a KSPI-only resource, but easier to have it all in one pack, and that way it's something else for other people to use down the road.

To prevent ORS conflicts with any existing installs, I will be using CRP_* for the ORS keys. That way we're not tied to releases, and eventually KSPI can bundle the CRP stuff as a dependency, no different than FireSpitter or Module Manager.

CRP will have it's own GitHub repo and a much slower release schedule (probably rarely once the first set of resources is done).

The first version will be rolling out this weekend and bundled in all of my pre-releases. With the ORS naming noted above, there should be no conflicts or issues. I'll make sure by dropping this on the latest KSPI-Ex version.

Any other thoughts, consolidations, or changes you folks are thinking of?

Link to comment
Share on other sites

Looks nice guys, I always wanted to see more cross work between KSPI and NFT, we get RoverDude and his massive number of mods/parts also:)

My only concern is what happens when Fractal_UK comes back (and I do hope he does or that he/she is ok since nobody seems to have heard anything).

Edited by Donziboy2
Link to comment
Share on other sites

Minor update - changing the keys back to default because I don't want a window of SCANSat going dark on us ;) I'm bundling the MKS/Karb ones as those I control. I'll wait till Wave is ready for the KSPI ones. I expect the big question is whether or not any other resources (like plutonium, metane, etc.) are being deprecated in KSPI-Exp

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