Translating time units in KSP
In Kerbal Space Program, not all time units are equivalent to their real-world counterparts. Seconds, minutes, and hours seem to be roughly the same but there seems to be some breakdown after that. The hours counter appears to reset, and the days counter is incremented, after only 6 hours and I haven't quite figured out how long a year is yet.
I've reviewed the chart in the Time entry on KSP Wiki but its numbers and their meaning are are not really clear to me. (Screenshot below for reference and posterity)

I'm having a hard time understanding what the base unit of measure or reference in that chart is meant to be, which would then allow me to realize how each of the values in the chart are meant to relate to one another. There is also one time unit (Month) that I'm not sure I've seen used in-game, so I'm wondering if that's even really a relevant metric or just a colloquialism created by players to bring the Kerbin time system's structure more into alignment with real world systems.
So, my questions are these:
- What are the base units used in the chart, and what do the numbers in each column actually mean?
- How do Kerbin time units relate to one another?
- Kerbin seconds per Kerbin minute
- Kerbin minutes per Kerbin hour
- Kerbin hours per Kerbin day
- Kerbin days per Kerbin week (if "week" is at all defined)
- Kerbin days per Kerbin month
- Kerbin days per Kerbin year
- Are there any Kerbin time units other than seconds, minutes, hours, days, and years, which are actually used and defined in-game? Or are things like weeks and months simply community-derived values?
Best Answer
There are:
60 Kerbin seconds per Kerbin minute
60 Kerbin minutes per Kerbin hour
6 Kerbin hours per Kerbin day
6.43 Kerbin days per Kerbin month
426.08 Kerbin days per Kerbin year
A Kerbin month is defined as the time it takes for the Mun to make one orbit around Kerbin, and a Kerbin year is defined as the time it takes for Kerbin to make one orbit around Kerbol. A Kerbin second is equivalent to an Earth second. Week does not appear to be defined anywhere.
As to the chart, it's fairly self-explanatory, as up until you pass "hours", Kerbin units and Earth units are equivalent. The first section gives absolute orbital time, and the second section gives orbital time relative to Kerbin's values. For example, on Moho, the "Revolutions per Kerbin Year" is 4.15. This means that in the time it takes for Kerbin to complete one orbit of Kerbol, Moho will have completed 4.15 orbits of Kerbol.
Pictures about "Translating time units in KSP"



What is KSP time?
The measurement of time in KSP is kept according to both Earth and Kerbin-specific units. Hours, minutes, and seconds progress exactly as they would on Earth, whereas days are defined by Kerbin's rotation, resulting in a solar day of six hours (sunset occurring three hours after sunrise).What is G in KSP?
A measurement of acceleration as expressed in the sea-level force of Earth's gravity with 1 g (not to be confused with the unit gram, or the local acceleration or the gravitational constant) being about 9.81 m/s\xb2.How do you use Isru in KSP?
UsageHow much ore is an asteroid KSP?
190.6 ~ 854 tons. E: 854 ~ 3,828 tons.8 STUPID MISTAKES everybody makes in Kerbal Space Program
More answers regarding translating time units in KSP
Answer 2
I have test this bash script up to 100 years on the ingame mission timer and it seems to work. No leap days encountered, and it seems based on "UT" seconds in the savegame file that a year is precisely 426*6*60*60 seconds.
#!/bin/bash
# Usage: $0 seconds
# Returns UT elapsed seconds as data/time as seen in the ingame mission clock.
# Fractional seconds are shown, but not shown in the game clock.
UT=`echo $1 | cut -f1 -d'.'`
frac=`echo $1 | cut -f2 -d'.'`
SEC=1
MIN=$(( 60 ))
HOUR=$(( $MIN * 60 ))
DAY=$(( $HOUR * 6 ))
YEAR=$(( $DAY * 426 ))
year=$(( UT / $YEAR ))
year=$(( year + 1 ))
day=$(( UT / $DAY ))
day=$(( $day % 426 ))
day=$(( $day + 1 ))
day=`echo $day | awk '{printf "%02d", $1}'`
hour=$(( UT / $HOUR ))
hour=$(( hour % 6 ))
hour=`echo $hour | awk '{printf "%02d", $1}'`
min=$(( UT / $MIN ))
min=$(( $min % 60 ))
min=`echo $min | awk '{printf "%02d", $1}'`
sec=$(( UT % 60 ))
sec=`echo $sec | awk '{printf "%02d", $1}'`
echo "Y${year},D${day},${hour}:${min}:${sec}.${frac}"
Sources: Stack Exchange - This article follows the attribution requirements of Stack Exchange and is licensed under CC BY-SA 3.0.
Images: Andrea Piacquadio, William Fortunato, Dominika Gregušová, Pixabay
