Revision Difference
FAQ_and_Troubleshooting#548946
<cat>Dev.World</cat>
<title>FAQ and Troubleshooting</title>
While working on custom maps, some questions and issues will pop up eventually. Most of them are happening only to beginners, so if you have just joined the map making scene then this article may be helpful for you.
# Errors
##Why do I get this error when connecting? (World Mismatch, World File Outdated)
If attempting to load the map results in errors **World cache version mismatch: 8 != ##########** or **World File Outdated: ######** then you should rename your map to something unique that you have never used before.
Whenever you make changes to your map you should give it a new unique name when hosting it in-game. Add V2.0 to the name. If you do not then your original first map will still be within your local game files, when connecting to the server it will respond with the .map name and if your client detects the same name it will attempt to load the already downloaded old version of the file. Resulting in you attempting to load a different version than the server, causing file mismatch error. Alternatively you can delete the .map file within your Rust install directory. This is unlikely to be possible for all players who play your server.
## Server freezes while loading a map
Usually this happens when your custom map does not have an access to the ocean, which means there is no area that can be used for generating ocean paths for the Cargo Ship. Can also happen if your map is all Water as well. You can fix this by adding some area for ocean surrounding your custom map. Alternatively you can just disable Cargo Ship event using these two server startup parameters: `baseboat.generate_paths false` and `cargoship.event_enabled false`.
## Errors while trying to download the map
This means that the server could not download your custom map using the provided URL. Make sure that it is a direct download link, there is no spelling mistakes in the link and the website that hosts your map is up and can be accessed by everyone.
Example of a valid download link: `https://blahblah.net/thats/a/valid.map`
Example of a bad download link: `mymap.map`, or any Discord *message* link or Dropbox link without `dl=1` in the end.
Example of local link (If local testing) `C:\Users\mymap.map` would work only if the server is running on your local computer. But would not work for anyone else not on your computer.
## Couldn't Download Level when connecting to a Rust server
Sometimes there's an issue when player cannot download the map, although it worked fine server-side. There is no uniform solution to this error, but when troubleshooting, but you can try downloading the map directly. Open your F1 console, and find the line that starts with "Download map file <...>". Copy the URL and paste it in your browser. If download succeeds, take this map and put it in `<root Rust folder>\maps`, after that you can try joining the server again.
**If mentioned solution does not work,** you can try troubleshooting by checking following factors:
| Possible factor | Suggested actions |
| :------------------|:------------------|
| Host is down | This must be reviewed by the server owner. As a player, make sure to provide as many details as possible, including the response code. |
| Player has VPN enabled | Some map hosts might reject connection because of it. Try disabling it. |
| Antivirus filters | Some antiviruses without the user's notice might block some connections and websites, which results in Rust failing to download the map file. Open your antivirus settings and check all available network security features. |
| Bad DNS/network configuration | User must review it's IPv4 connection settings in Windows. Some DNS addresses that are automatically assigned by the ISP can cause some connection faults, although it happens rarely. Try switching to DNS by [Cloudflare](https://www.cloudflare.com/learning/dns/what-is-1.1.1.1/) or [Google](https://developers.google.com/speed/public-dns). |
| Windows Firewall | It never hurts to double check connection rules in your Windows Firewall. Make sure that you have a rule that allows all types of connection for `Rust.exe` and `RustClient.exe`. |
| Domain is blocked | In some countries, specific file hosts and other domains might be blocked by the government, which prevent people from connecting to the host, and that makes direct file download impossible too. In this case player can try enabling VPN or Proxy while connecting to the server. Server owners are recommended to do not use public file hosts to avoid possible issues for players from specific regions. |
| Player IP is blacklisted | This is very rare and usually player won't be able to find this out themselves. Server owners are recommended to check their hosting configuration to make sure that it does not block access to big portions of IPs. Also avoid banning whole subnets since it often affects wrong users. |
| Bad website config | For server owners. If you are using Apache for your website, check your .HTACCESS file to see if it has any rules that would potentially reject the HTTP connection for no reason. Also make sure that folder with your .map file is open for access, and HTTP clients are allowed to download files from there directly. Also note that Rust does not recognize what content is sent by the server as a response, sometimes client accidentally gets an irrelevant HTTP response page instead of a .map file, which results in error when connecting to the server. |
## LoadPrefab - should start with assets/
One of the provided prefab IDs on your custom map cannot be found in Rust's assets, which means it was probably removed from the game. Since June 2018, some relatively popular prefabs were removed from Rust, so this error appears pretty often on old custom maps. Some map editors will automatically remove all missing prefabs on load, so you only have to load and re-save the map to fix.
| Prefab Name | Prefab ID | Asset Path | Status |
|:-------------:|:-------------:|-----------------------------------------------------------------------|:--------:|
| Bridge | 2633142014 | assets/bundled/prefabs/autospawn/decor/bridge/bridge.prefab | Removed |
| Storm Drain | 1869153096 | assets/content/structures/storm drain/storm_drain.prefab | Removed |
| Supermarket 1 | 244764422 | assets/bundled/prefabs/autospawn/monument/small/supermarket_1.prefab | Modified |
| Gas Station 1 | 3087947638 | assets/bundled/prefabs/autospawn/monument/small/gas_station_1.prefab | Modified |
| Warehouse | 4115634190 | assets/bundled/prefabs/autospawn/monument/small/warehouse.prefab | Modified |
## [Server-side] NullReferenceException: Object reference not set to an instance of an object (any)
<upload src="2f4/8d7b6be068bf0c6.png" size="30547" name="image.png" />
This means that your custom map has a broken prefab that breaks the server. If you are sure it is not a file corruption, then open your map in the editor and remove the broken prefab. Keep in mind that server console only notifies about the NRE – detailed error can be found in the full server log. It is not always possible to identify the problematic prefab, so sometimes debugging can be a very annoying process. Pay attention to a full NRE log, since sometimes function calls might be helpful to understand the context.
## [Client-side] NullReferenceException: Object reference not set to an instance of an object - MaterialConfig.GetMaterialPropertyBlock <...>
<upload src="2f4/8dad7956bf1cc6e.png" size="320597" name="image.png" />
This is a client-side NRE that shows up as soon as player connects to the server. This is usually related to a small set of "splash effect" prefabs that got broken sometime in early 2022, so it also affects mostly old maps. You have to open the map in any editor and make sure that scene does not have following prefabs:
| Prefab Name | Prefab ID | Asset Path |
|:--------------:|:------------:|------------------------------------------------------|
| Groundsplash | 4076315628 | assets/bundled/prefabs/fx/water/groundsplash.prefab |
| Midair Splash | 4280877006 | assets/bundled/prefabs/fx/water/midair_splash.prefab |
| Rock Splash A | 2127423332 | assets/content/nature/rivers/rock_splash_a.prefab |
| Rock Splash B | 2894585008 | assets/content/nature/rivers/rock_splash_b.prefab |
| Rock Splash C | 1854183667 | assets/content/nature/rivers/rock_splash_c.prefab |
## Why is my custom map getting stuck while attempting to generate the ocean path?
This can happen if your custom map has little, or no ocean. The server will attempt to generate the ocean patrol path, but will struggle to do so.
To fix this issue, you can either change your map to have a larger ocean around the island, or add the following commands to your startup parameters :
`cargoship.event_enabled false`
`baseboat.generate_paths false`
`ai.ocean_patrol_path_iterations 0`
These commands will remove the cargo event, and disable ocean pathing. This will allow your server to startup without getting stuck on generating ocean path. Keep in mind that if you spawn the cargo ship on this map, it will result into ship being static and moving anywhere, since there's no generated cargo path on the map.
# Tips
## How do I make changes to my map mid-wipe without wiping the server?
Making changes mid-wipe is not practical, in severe circumstances such as bugs or exploits, you can make changes to the map by doing the following.
Original Map:
`MapVersion1.map`
Original generated sav:
`MapVersion1.182.sav`
Shut down server completely.
Change server.url to download new map:
`MapVersion2.map`
**Rename** existing sav file from first map to second map:
`MapVersion2.182.sav`
⤶
**Do not** rename the existing `MapVersion1.map` file. This will result in clients receiving a `World File Mismatch` or `World cache checksum mismatch` error. The Rust server does not re-download a custom map on every start if the map is already present. If you did this, you'll need to delete both `Mapversion1.map` and `Mapversion2.map` files before restarting the server.⤶
<warning>It is not recommended to change the terrain shape significantly as entities that were generated on the previous terrain (trees, ore nodes, player-bases) will still be kept after the transfer and may be floating in the air or become underground.
Any entities that were spawned through the loading of the first map will remain on the map and any new entities added on the second map will not be loaded. Entities include things like large furnaces, recyclers, oil refineries, SAM sites.</warning>
Information gathered provided by the [Rust Map Making](https://discord.com/invite/HPmTWVa) community.