Jump to content

Kethane Pack 0.9.2 - New cinematic trailer! - 1.0 compatibility update


Majiir

Recommended Posts

Just did some mining on Minmus with two rovers 1,070.3 meters apart. I deployed the drills on one then hit [ to switch and deployed that one's drills. I warped until that rover's tank was full, dropped to 1x then switched back and... surprise... it had filled its tank too even though it wasn't the active ship.

Link to comment
Share on other sites

Just did some mining on Minmus with two rovers 1,070.3 meters apart. I deployed the drills on one then hit [ to switch and deployed that one's drills. I warped until that rover's tank was full, dropped to 1x then switched back and... surprise... it had filled its tank too even though it wasn't the active ship.

"Active ship" means that it is within physics loading distance. So anything within 2.3 km of you is considered active.

Link to comment
Share on other sites

ibxo7iNb4mloZH.png

I've been implementing the raycasting algorithm I came up with a few days ago. It accepts raw height data and builds a min/max table for each subdivision level, which is about a hundred times faster than the current method which builds a full-fledged collision mesh. Then it produces a list of candidate cells (shown in green) from a ray. The only requirement for these steps is that one of the candidate cells be the cell we're actually casting through, which is usually the case but there are a couple problem spots. I think I've worked around those, but my fix involves a hand-tweaked value which only works if it's high enough and hurts performance if it's too high.

The last step is to check each of the triangles comprising the candidate cells and pick the cell with the nearest triangle intersection. I haven't written this part yet, but it should be fairly straightforward.

I have no Idea what any of this actually means, but I shall assume awesomeness is in store, sir. Thank you for this amazing mod.

Link to comment
Share on other sites

KFS: as indicated in the thread topic, 0.7 is not the latest kethane. 0.8 is. That said, EL should not have broken Kethane, even 0.7 (rather, using the wrong version of Kethane would break EL).

[edit]Unless your version of EL is ancient. version 3.4 works well with Kethane 0.8.

Edited by taniwha
Link to comment
Share on other sites

Majir, this is a really amazing mod. It is literally one of the first mods I re-install after an update. It is just fun trying to create mining operations on other planets and moons, and this is a perfect mod to use with KAS. Also, the Kethane API is a valuable tool for modding. You are good at what you do, and I thank you for that.

Link to comment
Share on other sites

Hey Majir, I have a suggestion for you!

When generating a new save, you can input a generation "seed" (Minecraft style), and then the generator takes the seed and generates a Kethane map. This way, people can recreate the same save, and that way Kethane strengthens the bonds between players!

I do not know, however, if this is even possible in C#, but in Java (where I program) it is. Just taking a wild guess that it is.

Link to comment
Share on other sites

As far as I can tell it means the grid view is going to come up quicker.

I believe it also means that the grid will be able to conform to terrain instead of being a floating spherical shell.

The rest of my thoughts are a bit scattered so I'll just list them:

1. Please continue hope for inactive resource handling. "Slow churn" mining on inactive vessels and inactive probe scanning are difficult and nuanced problems but I think valuable and highly prized.

2. A part which shuffled conversion products around would be fantastic. I think a very common configuration of mining and conversion is to have a mining craft, possibly a separate refiner, and lastly some sort of destination/transport tanker-tug all hooked together using KAS pipes. The problem is that resources don't happily flow across these pipes and take manual alt-right-click transferring. I use TAC fuel balancer to automate this but if Kethane handled this internally that would be better. A little pump part that took electricity and shoved around resources would be quite dear.

3. As nifty as the Ke orbital scanning is it seems a missed opportunity to not have some sort of science-based discovery of Ke deposits. Perhaps different biomes on the Mun would have slightly different multipliers of qty and extraction rates. Scanning might be done for 1-5 trace elements which act as puzzle pieces to locate Ke. I obviously haven't given it complete thought but something to make it more of a game and introduce more fuzziness.

Link to comment
Share on other sites

Hey Majir, I have a suggestion for you!

When generating a new save, you can input a generation "seed" (Minecraft style), and then the generator takes the seed and generates a Kethane map. This way, people can recreate the same save, and that way Kethane strengthens the bonds between players!

I do not know, however, if this is even possible in C#, but in Java (where I program) it is. Just taking a wild guess that it is.

Right now there are different kethane seed values stored in your save file, one for every moon and planet. If you really want to recreate the kethane deposits of someones save, I assume, you can do that. I haven't actually tried it, because honestly, I don't think there is much point in that.

Link to comment
Share on other sites

Whoops. It looks like Keptin changed the animation names without telling me. Open the part config (GameData/Kethane/Parts/kethane_heavyDrill/part.cfg) and find these lines:

MODULE
{
name = KethaneDrillAnimator
DeployAnimation = heavyDrill_deploy
DrillAnimation = heavyDrill_drilling
}

Change the animation names so it looks like this:

MODULE
{
name = KethaneDrillAnimator
DeployAnimation = idle
DrillAnimation = idle0
}

I'll have this patched in the next update, but I want to wait a bit before pushing out a hotfix.

To be honest...this bug is verery useful when buliding a rocket in the VAB/SPH...as you can see how high or low you need to place it to keep it functional. :D Would be nice to keep this "bug" within the VAB/SPH and fixed in the flight^^

Or doesn't it need to have contact to the ground?

Link to comment
Share on other sites

To be honest...this bug is verery useful when buliding a rocket in the VAB/SPH...as you can see how high or low you need to place it to keep it functional. :D Would be nice to keep this "bug" within the VAB/SPH and fixed in the flight^^

Or doesn't it need to have contact to the ground?

You could duplicate the part and change the name.

Link to comment
Share on other sites

What would be nice is if all moving parts could be switched between their starting and deployed positions in VAB and SPH, especially if they could be set to start deployed at launch. Would make it easier to launch rockets without using launch clamps.

Link to comment
Share on other sites

What would be nice is if all moving parts could be switched between their starting and deployed positions in VAB and SPH, especially if they could be set to start deployed at launch. Would make it easier to launch rockets without using launch clamps.

There is, though not sure it will work with custom animation module....works with default module though, or at least it used to, havent used it recently.

The argument would be 'animSwitch = True'

It probably wont work for this...but hey, its free to try so may as well =)

Link to comment
Share on other sites

There is, though not sure it will work with custom animation module....works with default module though, or at least it used to, havent used it recently.

The argument would be 'animSwitch = True'

It probably wont work for this...but hey, its free to try so may as well =)

It doesn't seem to do anything. Just tried it. I may have put it in the wrong place but you never said where it should go in the part.cfg.

Edited by BigD145
Link to comment
Share on other sites

What would be nice is if all moving parts could be switched between their starting and deployed positions in VAB and SPH, especially if they could be set to start deployed at launch. Would make it easier to launch rockets without using launch clamps.

Agreed... I have always wished for a way to be able to set or unset moving parts to what i wanted, when i wanted... would make building, launching etc so much easier...

Link to comment
Share on other sites

Would be nice to be able to toggle any part setting and save that state in the VAB. It would free up action groups that currently have to be used to do things like lock a set of engines' gimbals prior to launch because they can't be toggled in the VAB.

Link to comment
Share on other sites

Agreed... I have always wished for a way to be able to set or unset moving parts to what i wanted, when i wanted... would make building, launching etc so much easier...
Would be nice to be able to toggle any part setting and save that state in the VAB. It would free up action groups that currently have to be used to do things like lock a set of engines' gimbals prior to launch because they can't be toggled in the VAB.

Tweakables are going to be exactly what you're looking for, then.

Link to comment
Share on other sites

SCANsat can work while unfocused because it doesn't drain electricity.

This isn't a mistake. It's intended as per the 0.8 change history.

The Kethane license forbids distribution of modifications. You should read licenses before doing something that potentially violates one, not after.

Could you some how set it up, to just not let you mine if your power generation (total possible, so direct sunlight exposure would be change things maybe) but at the moment of the switch and if you had the power, it stops draining charge and works in the same "un-powered" but functional way that Scan-Sat works?

Then when you guess it'd be done, come back and collect the resources while you have done whatever it was you wanted.

Link to comment
Share on other sites

Well, looks like we have found our solution haven't we? Screw power usage!

Perhaps make deploying the scanner take an hour, during which it drains energy, this can be considered a benchmark.

If works throughout the entire benchmark, allow it to work without using energy so that we can scan unfocused.

Link to comment
Share on other sites

Perhaps make deploying the scanner take an hour, during which it drains energy, this can be considered a benchmark.

If works throughout the entire benchmark, allow it to work without using energy so that we can scan unfocused.

So, if your benchmark is while the orbiter is in eclipse, you're basically screwed.

Link to comment
Share on other sites

So, if your benchmark is while the orbiter is in eclipse, you're basically screwed.

You should be running any type of scanning satellite in a full sun orbit (or as close to it as your desired inclination will allow), so don't see how this would really be an issue. I'd imagine that is the scanners were changed to using some kind of benchmarking then it would probably be toggable...then just dont turn it on if your in the dark....easy enough.

Link to comment
Share on other sites

This perhaps should be part of a generic plugin that all mods can easily take advantage, but ...

Perhaps when a vessel is packed, store:

Current RTG/etc power generation / fuel consumption per time unit

Max theoretical solar generation per time unit (take current rotation of craft relative to sun, pretend nothing is between it and it's solar collectors, determine which panels are lit up and by how much)

Current power drain (active antennas, lights, etc)

So let's say we've been running at 10x simulation and the craft is unfocused. Every so many ticks we recalculate resources on some of the packed craft, by calculating the power generated during the step by adding RTG per time unit to a simple simulation of sunlight power generated (do a simple raycast along a few points of the orbit since last update of craft, towards sun, and check for celestial bodies) and if the craft is not occluded, add in it's solar power per time unit. For this simplified process we'll have to ignore battery limits, of course. So now we have say 23,000 units of power in our 1000 unit battery. Now we take the current drain per time unit over that time frame, and subtract it and store it to the packed ship (clipping it to the range of 0..max battery capacity). Maybe we have zero, and we should notify any plugins that are checking power status through this mechanism that this vessel is without power and to behave accordingly (i.e. stop simulating scans, passing radio traffic, etc). If there's more than zero, then nothing bad happens.

A further enhancement might be a mechanism that allows players to define a shutdown priority for power failures, for example shut down SCANsat and kethane scanning first, then radio links, and shut down more power hungry radio links before lower power ones, allowing for craft to get back into a positive energy condition in a graceful and automatic way. To go with this, those items should power back up to their original (preferred) states based on the same priority, only in reverse, so that craft power down and go less useful then dark and useless in a graceful fashion if they spend too long in the dark or whatever, then gracefully come back up as they regain energy resources. This enhancement would actually toggle the stored state of the parts on and off accordingly of course, so if you switch to the vessel it is in sync with the simulation.

This should allow for a sufficiently accurate simulation of unfocused crafts' power resource usage / generation. With a fast enough CPU and/or low enough time acceleration and/or few enough unfocused craft, you might even be able to maintain essentially accurate results (by sufficient number of interpolated positions / small enough time steps per game universe update tick). This could potentially automatically be scaled to maintain some minimum level of performance, i.e. try to do all craft every tick and for say, 1 interpolated position / time increment per degree of orbit (or some other unit, per X MKm traveled perhaps), and widening the interpolation distance and/or reducing the number of craft simulated per tick (i.e. you have 30 craft, 15 get simulated one game state update, the other 15 the next)...

Link to comment
Share on other sites

This perhaps should be part of a generic plugin that all mods can easily take advantage, but ...

Perhaps when a vessel is packed, store:

(stuff)

Or, create a 2nd part, add .2t or so to its mass, call it an RTG, and take away the power requirement. If you want background scanning, bake in the dv cost of the RTG and call it a day. If you don't want the extra mass, lose the background scanning.

Let's face it - most people are going to put the RTG somewhere on the craft anyway.

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