# Banking Boot Times

One of the new features that was introduced yesterday was Banking Boot Times. This feature replaced the old Sliding Boot Times feature. While they act fairly similarly, Banking Boot Times gives more control and should be much easier to understand.

### The problems with Sliding Boot Times

Let’s start by understanding what the problems were with Sliding Boot Times. Sliding Boot Times averaged out a player’s play speed for the last 10 turns, and then compared this average with the boot time to determine if a player was bootable.

One problem with this approach is that it could cause a long delay if a quick player stopped playing. For example, if the boot time is set to 24 hours, and a player takes their first 10 turns quickly (say, within an hour) then they would not be bootable for over 10 days! While it’s good to reward a player who plays quickly, giving them 10 days in a 24 hour game is too much.

This naturally leads to making your boot timers lower than they would be without Sliding Boot Times. For example, if you set an 7 hour Sliding Boot Time, this makes the maximum boot time becomes 67 hours. This is more reasonable, although still a tad high. But the bigger problem with this strategy is revealed in the early turns of the game. If the game happens to start right as someone is going to bed, they’ll be bootable before they wake up. A 7 hour Sliding Boot Time works in the long run, but is too low for the early turns.

To combat this, Sliding Boot Times gave extra leeway for the first ten turns of the game. Basically, it “filled in” any missing data points with half of the boot time. While this solves the above issue, it also created a lot of confusion around the feature as players often saw early boot times that were significantly higher than they expected.

### The solution

I thought for a while about how to solve these problems. Some good ideas were suggested on the forums, but I also wanted to make sure that the system was drop-dead simple to understand. I wanted to avoid anything with complex math formulas, since I want players to always feel like they know exactly what is going on (principle of least surprise). This is one place I failed when I first made Sliding Boot Times.

Banking Boot Times solves both of these issues. When banking boot times is enabled, whenever you take a turn under the boot time, you “bank” some of that time. You can then spend some of this banked time to go over the boot time in subsequent turns. The game creator can also configure what percentage of the difference that players bank.

Let’s look at an example. For now, let’s assume the game creator configured it to bank 100% of the time. If the boot time is set to 24 hours, and Sally takes her turn after 20 hours, she’ll bank 4 hours. This means that, for the next turn, she could wait until 28 hours have passed before she’ll become bootable. Any time she waits over 24 hours, she eats into her bank. So if she takes 27 hours on the next turn, she uses three of her banked hours and her bank is reduced to one hour.

You can always see how much time a player has banked by opening the nudge/boot dialog and clicking the “speed” link.

The game creator can configure what percentage of the difference is banked on each turn. For example, if the game creator sets the amount banked to 25%, then Sally would have only banked 1 hour instead of the 4.

Since players gain banked time at a reduced rate, and spend it at the full rate, this makes the swings in maximum boot time much smaller. This solves the first problem stated above. Game creators can use this to configure exactly how much swing in the minimum / maximum boot times they want to allow. Doing this made the early-game leeway provided by Sliding Boot Times unnecessary, so that’s gone completely. This solves the second problem stated above.

One way at looking at this is that Banking Boot Times configured at 0% is the same as not having the feature on at all. On the flipside, Banking Boot Times configured at 100% is the same as the old Sliding Boot Times feature (minus the early-game leeway). Since you now have the ability to specify the percentage, you can decide how much you really want your boot times to be affected.

Also, note that any games that previously used Sliding Boot Times were converted to games using Banking Boot Times at a 50% bank rate.

I’m open to any opinions about what you think about the feature, or how you’d like to see it improved. Let me know!