Change: Make tick length 27 milliseconds (#10607)

This makes a month last about 60 seconds, allowing the use of real-time units in game.

Co-authored-by: Niels Martin Hansen <nielsm@indvikleren.dk>
pull/544/head
Tyler Trahan 1 year ago committed by GitHub
parent e5af5907ec
commit 8e04cba0c3
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

@ -22,8 +22,8 @@ typedef uint8 Day; ///< Type for the day of the month, note: 1 based, first d
/**
* 1 day is 74 ticks; _date_fract used to be uint16 and incremented by 885. On
* an overflow the new day begun and 65535 / 885 = 74.
* 1 tick is approximately 30 ms.
* 1 day is thus about 2 seconds (74 * 30 = 2220) on a machine that can run OpenTTD normally
* 1 tick is approximately 27 ms.
* 1 day is thus about 2 seconds (74 * 27 = 1998) on a machine that can run OpenTTD normally
*/
static const int DAY_TICKS = 74; ///< ticks per day
static const int DAYS_IN_YEAR = 365; ///< days per year

@ -313,8 +313,12 @@ enum SpriteType : byte {
ST_INVALID = 4, ///< Pseudosprite or other unusable sprite, used only internally
};
/** The number of milliseconds per game tick. */
static const uint MILLISECONDS_PER_TICK = 30;
/**
* The number of milliseconds per game tick.
* The value 27 together with a day length of 74 ticks makes one day 1998 milliseconds, almost exactly 2 seconds.
* With a 2 second day, one standard month is 1 minute, and one standard year is slightly over 12 minutes.
*/
static const uint MILLISECONDS_PER_TICK = 27;
/** Information about the currently used palette. */
struct Palette {

Loading…
Cancel
Save