Rust Wiki

Revision Difference

server-wipe-timer#549817

<cat>Play.Hosting</cat> <title>Server Wipe Timer</title> <upload src="2f4/8db4583e08299bf.png" size="941694" name="image.png" /> <warning>This article was last updated on May 10th. Things might change in the future.</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. This will also decide when server should start running **endgame** events, so it's important to keep this timer accurate with your server's wipe schedule. 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. 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 change 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, however you can also set an exact wipe date if you need it, using `wipeUnixTimestampOverride` convar. This means that you have three schedule "formats" by default – **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, and make sure to clarify your time zone for your players. Timer is calculated using the three following variables: server wipe tag (`monthly`/`biweekly`/`weekly`), `wipeDayofWeek` and `wipeHourofDay` convars, however you can override those and set an exact wipe date using the `wipeUnixTimestampOverride` convar. This means that you have three schedule "formats" by default – **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 will need to write a plugin to adjust the timer. Note that this is using your local machine time, so make sure it is correct, and make sure to clarify your time zone for your players. The default `wipeHourofDay` (14) might not be correct for your timezone. # Endgame Events On the last day of every wipe cycle, server will start two endgame events. ## F-15E Strike Eagle Inbound F-15E "Strike Eagle" jets will start observing the island. You will hear an aggressive sound of a jet flying by. This event has no direct impact on gameplay. Since this is a event, you can start it whenever you want using the `spawn f15e` command. F-15E "Strike Eagle" jets will start observing the island. You will hear an aggressive sound of a jet flying by. This event has no direct impact on game play. Since this is a event, you can start it whenever you want using the `spawn f15e` command. ## Road Bradley On the last day, amount of scientists on island will be increased. Other than that, Bradley APC will start roaming on the entire island, attacking anything it spots. This is exclusively an endgame event and APCs will never spawn if there are *more* than 24 hours until the server wipe. # 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*. # Specifying an exact wipe date If your server is using a wipe schedule that does not work with any formats above (monthly/bi-weekly/weekly), then you can set an exact wipe date using a UNIX timestamp with this server convar: `wipeUnixTimestampOverride <timestamp>`. Keep in mind that this convar will override all other settings for the wipe timer. # 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. | | Custom | `+wipeUnixTimestampOverride 1683622506`| Server will wipe exactly on May 9th, 2023 at 08:55:06 (GMT+0) | | Custom | `+wipeUnixTimestampOverride 1686766934`| Server will wipe exactly on June 14th, 2023 at 18:22:14 (GMT+0) | # 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.`) There are some other commands available for use. Most of them are meant to be used only for testing though. ## PrintWipe⤶ ## PrintWipe (still not working as of the may 10th edit)⤶ This command output will output following information: * **[needs more context]** Test Time (current time + `daysToAddTest` + `hoursToAddTest` convars. By default both convars are 0, so if you didn't change them, this line will display your current local time. * Time until wipe: `<value>` days, `<value>` hours, `<value>` minutes, `<value>` seconds. * Calculated wipe time static: `<value>` month, `<value>` days, `<value>` hours, `<value>` minutes, `<value>` seconds. * Wipe time (this will output an exact date of calculated wipe time) * **[needs more context]** How many ticks left # Misc Convars These convars do not seem to be relevant if you are not a developer. Might be removed/changed in the future. So far, they were used only for PrintWipe output info. ## daysToAddTest <value> By default set to `0`. ## hoursToAddTest <value> By default set to `0`. # Code Wipe timer code is available in **WipeTimer.cs**. You can access it through Rust Dedicated Server's `Assembly-CSharp.dll`.