Project

General

Profile

Bug #13569

High ground contact error on load makes drills stop and prevents catch-up of Ore harvesting

Added by Kobymaru about 7 years ago. Updated about 7 years ago.

Status:
Confirmed
Severity:
Normal
Assignee:
-
Category:
Buildings
Target version:
-
Start date:
01/12/2017
% Done:

10%

Version:
Platform:
Linux, OSX, Windows
Expansion:
Language:
English (US)
Mod Related:
No
Votes:
Arrow u r green
Arrow d r red

Description

In some places, after loading, landed vessels start several meters high up in the air before physics kicks in. The console prints a message like:

[LOG 10:28:48.641] [Crater Crawler With Drill]: ground contact! - error: -3.131m

This causes large drills to stop working instantly, but more importantly prevents the catch-up mechanics from working.
That means that if you start a drill, leave the flight scene, timewarp for a while and then come back, you will find that no Ore has been harvested, as if the drill has never been started.

This happens on Kerbin and Duna (and maybe other surfaces, but has not been tested). The terrain needs to be sloped, but not all sloped patches trigger it.
I have found this in two spots:
- Kerbin: 0.373 S; 74.847 W
- Duna: 36.975 N; 177.715 E

Note that the magnitude of the ground contact error sometimes depends on the Terrain Detail settings. For example, the spot on Duna produces errors up to 10m with "Default" terrain detail, but at most 0.02m for "High" terrain detail settings.

Steps to reproduce:
1. Launch a rover with Drills
2. Find a sloped spot, for example on Kerbin
3. Start drills
4. Quicksave
5. Quickload
6. Observe that the Vessel is in the air, the drills have stopped.

I have attached a quicksave that illustrates the problem. Load the save, start the drill, quicksave, quickload and observe the high ground contact error.

This ispossibly related to #10531.

quicksave_ground-contact-error.sfs (210 KB) quicksave_ground-contact-error.sfs [email protected] Kobymaru, 01/12/2017 09:26 AM
ground-contact-error-1.png (709 KB) ground-contact-error-1.png After loading, before Physics Kobymaru, 01/12/2017 09:27 AM
ground-contact-error-2.png.png (685 KB) ground-contact-error-2.png.png After loading, with Physics Kobymaru, 01/12/2017 09:27 AM
26504
26505

History

#1 Updated by jd284 about 7 years ago

  • Status changed from New to Confirmed
  • % Done changed from 0 to 10

I can confirm this problem, with the above savegame it happens as described and I've also noticed it on my own saves. For instance on Mun at 80.685 E 2.009 S the base loads with over 20 meters ground contact error.

I think there are really two bugs here, first being the ground contact error on its own, and the second that drills permanently shut off for temporary problems during loading. Ideally drills shouldn't check the conditions until physics has stabilized.

#2 Updated by Toodzi about 7 years ago

I don't think the problem is with drills in particular: to me the problem is spawning off the ground to begin with. Assuming it's a terrain LOD issue, a fix could be to ensure the vessels are loaded only after terrain is properly instanciated at the right (highest) resolution.

#3 Updated by jd284 about 7 years ago

Yes, of course fixing the floating base problem would be best, but really drills are the only thing for which this isn't just a cosmetic issue. So fixing drills to be more forgiving would remove the most annoying symptom if not the cause of the issue.

#4 Updated by Toodzi about 7 years ago

jd284 wrote:

drills are the only thing for which this isn't just a cosmetic issue

I'm not sure, because falling from some height can cause problems too. Also I think I remember seeing sometimes bases spawning under the ground.

#5 Updated by Kobymaru about 7 years ago

Toodzi wrote:

jd284 wrote:

drills are the only thing for which this isn't just a cosmetic issue

I'm not sure, because falling from some height can cause problems too. Also I think I remember seeing sometimes bases spawning under the ground.

It's not a physical "fall", though. The base spawns above the ground, then is set down instantly all before gravity, acceleration, part joints and the rest of the physics start working. I feel that the current implementation is actually quite sensible, if not for the issue with the drills stopping.

Personally, I'd really assign priority to the drills and simply defer all the checks to after the physics loading. But ultimately it's up to the devs to decide.

Also available in: Atom PDF