Monday, April 27, 2015

Time on planets, time in your ship, time everywhere

Recently I got stuck thinking about time, this is a thing that has not been addressed in any other game the way I am looking at it. On earth you have 24 hours day and you can have a similar time scale while traveling in your space ship, so time can be managed easily and assign duties to your crew and create day/night shifts as needed, no issues, but now, what if you go to a planet that has a very long day/night cycle? how will the natives will behave?

I haven't seen any game in which time is a game factor in that sense, most games will just default to a 24 hour cycle and NPCs will just go to their beds and sleep and come back to work the next day, but if a planet has 100 hours per day, how will the NPCs behave? time to sleep every 18 hours for example? so all the planet will be adjusted into a 24 hour cycle with a 100 hour day? if that happens then there will be days in which what is supposed to be early morning will be a complete darkness because it just happened to be in the middle of the planet's night. And what will happen if the planet has a 5 hour day/night cycle? or worst case scenario 200 years of light/night?

After doing more and more research, I figure out that there is no simple answer to this question yet, human will eventually leave earth to other planets but we haven't figure out yet how we, as a human race, will manage time in other planets, and this is becoming an issue with the game, since I can't really seem to find an easy solution to something that looks trivial, how to measure time and divide it properly.

So the first solution that came to my mind seems to be to divide the planet's time as close as a multiple of 24 and adjust the internal people clock to that multiple, so if a planet's day/night cycle is 12 hours, the NPCs will live in one day with day/night cycle plus 4 hours to get a full day in which they are awake because the total is 16 hours, and the rest 8 hours will be time to sleep, that will give us a night of sleep with light and darkness. But now if the planet has a day of 100 years the local time will be divided in 24 hours as usual and let people sleep as usual even in plain light or darkness, most probably same as the people that live in the poles.

Another solution that came to my mind is to make seconds faster or slower, so it will be still 24 hours but each second will be faster or slower than we normally perceive, so for a 100 year day/night cycle each second will be very long, and for planets with a day/night cycle of few hours each second will be a lot faster, problem will be that trying to stay awake for 8 hours in some planets will be impossible.

The other solution is to let the time run in the planet, so if a 50 hour day happens let native people live and sleep in cycles as needed without any schedule , just live and do what they can in any cycle so no single person in the planet will run under the same clock and just live, this is the easiest way but not very nice. What's the implication about this solution? since shops will run by NPC, if the NPC goes to sleep and the player goes to the shop and it is closed, how will you know when is the shop going to open? and what will happen if you have many shops you want to visit but all of them are open at different times? this doesn't looks good from business point of view, but the easiest to implement, if a NPC close a shop to go to sleep, then it will post the time it will open again and this will solve the issue. So until a more elegant solution is found I will stick with this one for the time being, now it is time to implement this solution.

No comments:

Post a Comment