Revision Difference
server-wipe-timer#549732
<cat>Play.Hosting</cat>⤶
<title>Server Wipe Timer</title>
<upload src="2f4/8db4583e08299bf.png" size="941694" name="image.png" />
<warning>This article was written while monument and wipe timer code was unfinished, so it's behavior might change soon. Everything is SUBJECT TO CHANGE.</warning>
On the lowest level of **Nuclear Missile Silo** monument, you might notice a nuclear warhead connected to a small laptop with timer on it. This is not a random countdown timer - in fact, this timer is counting down until the next server wipe. Repopulation unit survival test.
If you host a vanilla monthly server, this timer will likely work as intended. However, if you run a server with non-standard wipe time, you might need to add a few convars to make sure that in-game timer works correctly.
# How does timer work?
Timer is calculated using three following variables: server wipe tag (`monthly`/`biweekly`/`weekly`), `wipeDayofWeek` and `wipeHourofDay` convars, so you cannot set an exact date.
This means that time expects servers to have only following wipe schedule formats – **monthly**, **bi-weekly** and **weekly**. For example, if you have set the wipe time to Wednesday at 1 PM, and your server is bi-weekly, then timer will reach `00:00:00:00` every two weeks, exactly on Wednesday, 1pm. If your server is running shorter wipe cycles (for example, 3-day cycle) you might need to write a plugin to adjust the timer.
Note that server will be using your local machine time, so make sure it is correct.
# Changing the day of week
You can add the convar `wipeDayofWeek <0-6>` to change the wipe day to anything other than Thursday.
| Value | Day of week | Notes |
|:---------:|-------------|----------|
| **0** | Sunday | |
| **1** | Monday | |
| **2** | Tuesday | |
| **3** | Wednesday | |
| **4** | Thursday | (default)|
| **5** | Friday | |
| **6** | Saturday | |
# Changing the wipe hour
You can add the convar `wipeHourofDay <0-23>` to specify when exactly server will wipe. Time is specified in 24-hour format. If you type `wipeHourofDay 14.5`, then it'll be interpreted as *2:30 PM*.
# Examples
Here are a few examples to see how it works:
| Wipe Frequency tag | Config | Explanation |
| :-----------------:|----------------------------------------|-------------------------------------------------------------------|
| Monthly | `+wipeDayofWeek 4 +wipeHourofDay 14.5` | Server will wipe on every first Thursday of the month at 2:30 PM. |
| Monthly | `+wipeDayofWeek 1 +wipeHourofDay 9` | Server will wipe on every first Monday of the month at 9 AM. |
| Weekly | `+wipeDayofWeek 4 +wipeHourofDay 18` | Server will wipe every Thursday at 6 PM. |
| Biweekly | `+wipeDayofWeek 0 +wipeHourofDay 23` | Server will wipe every other Sunday at 11 PM. |
| Biweekly | `+wipeDayofWeek 4 +wipeHourofDay 19` | Server will wipe every other Thursday at 7 PM. |
# Commands
To check if you have set up the timer correctly, you can use the command `PrintWipe`. This will output two messages, countdown timer itself (`Time until wipe : _ days, _ hours, _ minutes, _ seconds.`) and static date (`Calculated Wipe time static _ month, _ days, _ hours, _ minutes, _ seconds.`)
# Code
Wipe timer code is available in **WipeTimer.cs**. You can access it through Rust Dedicated Server's `Assembly-CSharp.dll`.