Jump to content

[0.90] Regolith - an open ISRU and Resource framework [0.1.7 - 2015.02.26]


RoverDude

Recommended Posts

Altitude is not part of the equation, but is something that could easily be extended.

Figured you were going with a simple layered approach.

Calculate a location's base resource rate from a simple noise equation and saved seed, add hotspot points from a generated list and modify rate based on size and proximity, add depletion points from a saved list and modify rate based on size/proximity. Adding elevation and biome modifier steps to that would be easy.

Mainly just looking for a way to generate a simple population map of kerbin based on habitability rules and mine from it a "public interest" resource for use creating other resources. Like a "grocery run" part to convert a cash resource and public interest into life support supplies.

Link to comment
Share on other sites

Figured you were going with a simple layered approach.

Calculate a location's base resource rate from a simple noise equation and saved seed, add hotspot points from a generated list and modify rate based on size and proximity, add depletion points from a saved list and modify rate based on size/proximity. Adding elevation and biome modifier steps to that would be easy.

Mainly just looking for a way to generate a simple population map of kerbin based on habitability rules and mine from it a "public interest" resource for use creating other resources. Like a "grocery run" part to convert a cash resource and public interest into life support supplies.

You are making a lot of assumptions about how Regolith works ;) in any case, it will be extensible enough to do what you are looking for. It's a framework designed for other mods to take advantage of. As an example, the AMT mod will extend it heavily in ways that would not be appropriate for Karbonite.

Link to comment
Share on other sites

You are making a lot of assumptions about how Regolith works ;) in any case, it will be extensible enough to do what you are looking for. It's a framework designed for other mods to take advantage of. As an example, the AMT mod will extend it heavily in ways that would not be appropriate for Karbonite.

Meh, just making guesses tinged with a bit of hopefullness. I'll figure something out with however this works.

I've been wanting to throw together a miner/generator partmodule myself that can use respect rate modifiers such as location, but I'm too lazy/burned out from minecraft modding drama to get a dev environment going for KSP.

Link to comment
Share on other sites

I think the problem with attached extractors reading "Not directly attached to asteroid" might be to do with Ferram's Joint Reinforcement mod, and the way it loads in the vessel physics.

I was getting the same message, and if I docked with the claw, then released, it would refuse to dock again.

Link to comment
Share on other sites

Small suggestion, but for smelting down metals and ores, how about a solar furnace instead of an energy expensive laser or somesuch? All that radiated free energy out there just waiting to be collected and concentrated down. Here's what a paltry 2m^2 of collection can accomplish, imagine what you could do with a few hundred m^2.

Link to comment
Share on other sites

example from our solar system. The sun puts about 1500 W/m2 irradiance at the earth's orbit. If you had a 2m diameter dish, you'd be collecting about 3.14m2 * 1500 W/m2 = 4.7kW of power. That's something like a hair-dryer. Sure, you can concentrate that down and get enormous heat fluxes to do smelting, but the overall throughput of the smelter is still only hair-dryer's worth. The result is that you need extremely large collection areas to get decent through-puts. The energy required for smelting iron is pretty significant, so you'd be waiting a long time for the materials on something similar to KSP-size parts (3.75m diameter only gets you 16kW).

Link to comment
Share on other sites

So I've just wrapped up the planetary bits of Regolith :)

It includes four types of resource distribution - crustal, oceanic, atmospheric, and interplanetary.

All resources can be configured with probability and density range down to the biome level. Within the biome, a simplex map is used to generate some deviation, but this is also configurable. So you can have large, gradual curves, or very spiky deposits. This applies to atmospheric and oceanic resources as well - so you can have oceanic hotspots from underground springs, or geyers of gas that can be harvested with atmospheric scoops. Interplanetary resources represent resource bands within a planet's SOI but beyond the atmosphere and can easily be configured and harvested.

The best bit - there is no stored data. No PNG maps or other stored info, everything is pretty much generated on the fly as resource abundance is requested (and it's pretty brisk at under 2ms).

This easily supports new biomes and new planets, generating resource data on the fly from the original configs. Since there's no data stored (it's calculated on the fly), if a new planet is added, the system simply handles it's defaults (if any). Each player will have a unique experience since the seed is random (and done on a per-save basis as a scenario module), but at the same time, this seed can easily be shared, and will instantly affect how resources are laid out.

The configs themselves are extremely tolerant of multiple mods using Regolith simultaneously. There are no keys to duplicate, and it is, by design, impossible to lock someone out of resources via configs. Basically it's really greedy and optimistic, so if multiple mods use the same resource, you will end up with the most generous combination of them both. Again, this is by design.

So at this point, I have all of the bits needed to completely replace ORSX. I am working with DMagic to coordinate the SCANSat upgrade, and my goal is to have my stuff swapped over and released as soon after 0.90 as practical (and this will likely involve me taking a few days off just to code and test).

I'll draft a formal API doc once I finish my own testing, and post 0.90 the technical demo will be split off from the Regolith framework itself.

Link to comment
Share on other sites

So I've just wrapped up the planetary bits of Regolith :)

It includes four types of resource distribution - crustal, oceanic, atmospheric, and interplanetary.

All resources can be configured with probability and density range down to the biome level. Within the biome, a simplex map is used to generate some deviation, but this is also configurable. So you can have large, gradual curves, or very spiky deposits. This applies to atmospheric and oceanic resources as well - so you can have oceanic hotspots from underground springs, or geyers of gas that can be harvested with atmospheric scoops. Interplanetary resources represent resource bands within a planet's SOI but beyond the atmosphere and can easily be configured and harvested.

The best bit - there is no stored data. No PNG maps or other stored info, everything is pretty much generated on the fly as resource abundance is requested (and it's pretty brisk at under 2ms).

This easily supports new biomes and new planets, generating resource data on the fly from the original configs. Since there's no data stored (it's calculated on the fly), if a new planet is added, the system simply handles it's defaults (if any). Each player will have a unique experience since the seed is random (and done on a per-save basis as a scenario module), but at the same time, this seed can easily be shared, and will instantly affect how resources are laid out.

The configs themselves are extremely tolerant of multiple mods using Regolith simultaneously. There are no keys to duplicate, and it is, by design, impossible to lock someone out of resources via configs. Basically it's really greedy and optimistic, so if multiple mods use the same resource, you will end up with the most generous combination of them both. Again, this is by design.

So at this point, I have all of the bits needed to completely replace ORSX. I am working with DMagic to coordinate the SCANSat upgrade, and my goal is to have my stuff swapped over and released as soon after 0.90 as practical (and this will likely involve me taking a few days off just to code and test).

I'll draft a formal API doc once I finish my own testing, and post 0.90 the technical demo will be split off from the Regolith framework itself.

Awesome \o/

Link to comment
Share on other sites

Any chance you could release what you have for 0.25? I'm hoping to go bee hunting.

edit: scratch that, just need some description or something on the github page

Edited by Ogamaga
Link to comment
Share on other sites

TBH it's going to be cutting it close. I'm in the middle of converting all of the USI models over and doing some intensive testing, so by the time it's ready for prime time, we'll be looking at 0.90 anyway, so a lot easier for me to just do it all at once.

I will see about getting some of the API stuff out there.

And I would not recommend grabbing it raw from GitHub as it's changing daily ;)

Link to comment
Share on other sites

TBH it's going to be cutting it close. I'm in the middle of converting all of the USI models over and doing some intensive testing, so by the time it's ready for prime time, we'll be looking at 0.90 anyway, so a lot easier for me to just do it all at once.

I will see about getting some of the API stuff out there.

And I would not recommend grabbing it raw from GitHub as it's changing daily ;)

Understood, if it is ready before 0.90, would you mind releasing it in that form? I plan to stay with 0.25 until enough of my mods are updated, and would appreciate having this available. Also, if you feel you need another set of eyes for testing, just let me know and I'll do what I can, or post here and you might have 20+ offers in 10 minutes.

Link to comment
Share on other sites

Am I correct in assuming that Regolith should not cause any conflicts with OSRX? As in, its not intended to fully replace it at the moment, but still plays nice with it. The concept of this framework is pretty awesome and I hope others in the modding community leverage this as their go-to.

Link to comment
Share on other sites

Am I correct in assuming that Regolith should not cause any conflicts with OSRX? As in, its not intended to fully replace it at the moment, but still plays nice with it. The concept of this framework is pretty awesome and I hope others in the modding community leverage this as their go-to.

Barring unlikely serious bugs, they will be able to run side by side as well as ORSX and original ORS do. (With the exception that if you try to represent the same resource in both systems, there's no way to update ORSX's PNG maps to sync with the abundances that Regolith calculates). Once all of the USI mods and SCANsat have transitioned to Regolith, it should be safe to remove ORSX because nothing else uses it. But if you have something I haven't heard of that depends on ORSX, it won't hurt anything to keep it around.

Link to comment
Share on other sites

So... strange thing happened... I built an asteroid grabber and everything beneath the Extractor Module disappears if I switch away from the ship and then back :/ I used it as a start piece (first mistake?), so I dont know if that plays a role in it. Anyone else experience this?

- - - Updated - - -

So... strange thing happened... I built an asteroid grabber and everything beneath the Extractor Module disappears if I switch away from the ship and then back :/ I used it as a start piece (first mistake?), so I dont know if that plays a role in it. Anyone else experience this?

Link to comment
Share on other sites

GrimT - probably a stock claw bug.

RE ORSX - I'm pretty much the only one that uses it ;) And everything will be converted over pretty soon (just finished all of Karbonite today). That being said the two will not conflict, but it will be weird.

Link to comment
Share on other sites

It'd be nice to maintain the ORSX existence since ORS support in ScanSAT was removed but the CRP KSPI stuff makes it work again. Just saying...

Actually... SCANSat will have Regolith support not ORSX support. Already worked this out with DMagic. And given I'm the only one using ORSX, it would make more sense for Fractal_UK to discuss getting ORS compatability back into SCANSat.

Link to comment
Share on other sites

so the Resource analyzers in Regolith (and all future USI mods), asteroid and planetary, will be automatic? just right click to see the data, when you're close enough?

Asteroid analyzers work when you're connected up.

Planetary analyzers work the same way ORS-X does today, basically you can get a reading over the current lat/lon with an altitude restriction (like the K+ analyzer).

So pretty much the same experience as you have with ORS/ORSX today except there are no beach balls. Really no need, since your zones are biome based with some simplex nosie variance in that biome.

General pattern will be to either do a flyover or have a Kerbal drop onto a biome and see what's in it, and if you like it, find a nice spot in that biome. Some resources are more 'spikey' than others, so SCANSat helps in that regard. This is kinda why I needed all of the new biome data in 0.90 to make this work well. Oh - and I added a little biome scanner partmodule which will give you more detailed info including biome name :)

Link to comment
Share on other sites

If the zones are biome based, does it interpolate across biome borders?

Like, biomes can stack in really weird ways. Just think of how KSC is supposed to be in a shores biome that is bordered by ocean and grasslands, but in actuality there's a tiny ring of tundra showing up when you do flyovers that's not even supposed to be there. Mun craters are similarly wonky, allowing you to find northwest crater surface areas down in the twin craters and other tomfoolery. And back on Kerbin, the badlands are not a uniform zone but rather haphazardly splattered across the area like some pretentious piece of modern art, creating a veritable jungle of jagged biome borders. I wouldn't hold my breath on 0.90 fixing any of this, as they're busy enough with all the other celestial bodies.

So what if your random seed decides that two radically different distributions are in order for two biomes that intermingle as crazily as Kerbins highlands and badlands do?

Link to comment
Share on other sites

Then you will have interesting deposits somewhere ;)

Either a dead spot, or a surprising find of extra whatever.

(edit)

In any case, it will be predictable and mappable, so I don't see a major issue, other than stuff will move around if they decide to redo biomes at some point. Plus the noise generator adds a bunch of variance in there already.

Link to comment
Share on other sites

I'm basically just asking if we're going to see massive knife-cut cliffs in the resource distribution on biome borders. It might end up looking quite absurd and out of place in some cases. Interpolation is maybe not easy to do (I'm an amateur at best when it comes to code), but I wanted to at least bring up the topic while the core systems are still pre-release, see whether you think it's an issue and stuff.

Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
×
×
  • Create New...