“real time” and “simulation time” are two different things.
So if you don’t play the game for a year but a year’s worth of time must pass then use real time. If you want to know how much simulation time has passed, ie: time when the game was actually running then use SimTime.
Do note that System.nanoTime() is also not “real time”. It has no direct basis on system time. You have to use System.currentTimeMillis() if you want actual real time.
I’m trying to understand when this would be useful, though, unless the game continues to ‘play’ even when it’s not running somehow.
Edit: note… I do see that there is no settable bias which makes it a little tough to continue a game where one leaves off. Unless I’m overlooking something, that’s going to be a problem for me also.