Put custom maps in the server’s Mods folder, keep the Thunderstore folder name so players are offered the download, keep maps on their latest version, and spawn Park Editor parks for everyone with park-mod.
October 16, 20268 min read
Share:
Share
On This Page
A ReSkate server can run more than skate.'s own maps. Drop a custom map into its Mods folder and the whole server can skate it; put up a park someone built in the Park Editor and everyone sees the same ramps, rails and ledges without installing anything. Both are a folder copy and a couple of console commands, with one naming rule that decides whether players get the map automatically or have to hunt for it.
Everything below is from the ReSkate dedicated server README in the project's repository. If you have not set up a server yet, start with how to host a ReSkate server.
The built-in maps
The server names maps the way the game's load command does. The ones skate. ships with are San Vansterdam (the default), Isle of Grom, Super Ultra Mega Resort and Stadium 1. map Isle of Grom switches to one from the console, and maps lists every map the server knows, including the custom ones it has found.
Want a server to try these maps on tonight?
Upload a map or park folder to Mods/ with the Files tab or SFTP, keep the Thunderstore name, and players without it are offered the download. Backups on every plan. From $3.99/month.
A custom map is a mod folder. To put one on the server:
Find the map's folder in the game's Mods folder on a PC that has it installed.
Copy that whole folder into a folder called Modsnext to the server (create it if it is not there). The server reads the map's reskate-levels.json and manifest.json from it.
Type maps reload in the console. The server reads the Mods folder again, and the new map can be switched to at once, without a restart.
Switch to it by name, for example map bbcity, or set it in maps.map so the server starts on it.
Players need the same map mod installed to join while it is running. Whether they have to install it themselves depends on the folder name.
The Thunderstore naming rule
When a map comes from Thunderstore, a player without it is offered it when they join: the game downloads it, applies it and joins the server again. For that to work, the folder on the server must keep the name Thunderstore gives it:
Owner-Name, the way the launcher installs it (for example Sandos-Vancouver_Plaza), or
Owner-Name-1.0.0, the way the package's zip unpacks.
The server tells joining players that name, and the version from manifest.json when the file is there. Rename the folder to anything else and the map still works, but players are back to installing it by hand. So when you copy a map across, do not tidy the folder name.
Keeping maps on the latest version
Map authors update their packages. With "latest_versions": true in the maps section, the server looks up each Thunderstore map folder when it starts and every latest_check_minutes (5 to 1,440, default 60). When a newer version is out, it writes that version into the folder's manifest.json and reads the maps again.
Nothing is downloaded to the server; it only needs to know the version. Players are sent to the server's version of the map and fetch it as they join, and a player who already has a later version keeps it. The map being played is left alone until nobody is on it. Two details worth knowing:
Folders that are not Thunderstore packages are never touched.
The level list is not changed. If a new version adds, removes or renames levels, copy its reskate-levels.json in yourself.
From the console: maps update asks Thunderstore right now, maps latest on|off toggles the setting, and maps latest every <minutes> sets the interval.
Map pool and rotation
maps.pool is the list players may vote between and the rotation walks through, in order, for example ["San Vansterdam", "Isle of Grom", "bbcity"]. Empty (the default) allows every map the server knows; admins can still change to any map.
Set rotation_minutes and the server moves to the next map in the pool on a timer, with a minute's warning. Turn on rotation_vote and, when time is up, players pick from three maps of the pool, "Random map" or "Stay here". The full set of rotation and vote settings is in ReSkate server settings explained.
Park mods: parks the whole server can see
A park built in the game's Park Editor and saved as a mod is a folder holding manifest.json and parks/<map>.park.json. The server can spawn it for everyone. To set one up:
Copy the mod's folder into Mods next to the server (spaces in the folder name are fine).
List it in maps.park_mods with a short name, the folder, and the map it was built on:
"park_mods":[{"name":"street","folder":"popular skate 2 street park","map":"San Vansterdam","key":"bam"}]
name is what commands and votes call it: 1 to 16 of a-z, 0-9, - and _. key picks which of the mod's parks to use, by the base map it is for (bam, grom, mpr, ftue, stadium_1 or stadium_2); leave it empty when the mod has only one.
You can do the same without a restart, from the console, and it is saved to the config:
park-mod config add street | popular skate 2 street park | San Vansterdam | bam
Spawning and removing parks
While the park's map is running:
park-mod add street spawns it until it is removed.
park-mod add street 30 spawns it for 30 minutes (1 to 1,440). Players are told a minute before it goes, and when it goes.
park-mod remove street takes it down; park-mod clear removes every spawned park; park-mod list shows the set-up parks and the minutes left on spawned ones.
park-mod reload street reads the park's file again after its mod was updated and swaps the objects in place, keeping its timer.
Players whose role includes park-mod (the admin role does) can do the same in chat: /park-mod add street 30. A player vote can do it too, through a custom vote in votes.custom, for example one that runs park-mod add {arg} 30 with the choices street and plaza.
How spawned parks behave
No download for players. Park objects are Build Kit items the game already has. Any object players' games would not show, because it is not a Build Kit item or is broken, is left out, and the log says which.
The server owns it. A spawned park counts against nobody's object limit, nobody can move or delete it, and it stays when players leave.
One map only. A park fits the map it was built on, so the server spawns it on that map alone.
Not permanent. Every park goes when the map changes, and none come back after a restart.
Limits.park_limits caps what can be up at once: by default 3 parks and 512 objects in all (1 to 16 parks, 1 to 1,024 objects).
The log has a [parks] line for each park spawned or removed, and for each one that could not be, which is the first place to look when a park does not appear.
On Connect
On ReSkate server hosting, the Mods folder is in the server's files: upload map and park folders with the Files tab or SFTP, keeping the Thunderstore folder name, then run maps reload from the console. Park mods set up with park-mod config add are saved like any other setting, plans include backups, and the server keeps itself on the latest ReSkate release. Plans start at $3.99/month for 16 players.
ReSkate is a community project. Connect Hosting is not affiliated with Electronic Arts, Full Circle or the ReSkate team. skate. is a trademark of Electronic Arts.
Frequently Asked Questions
Where do custom maps go on a ReSkate server?
In a folder called Mods next to the server. Copy the map's whole mod folder from the game's Mods folder, then type maps reload.
Why do players have to install my map by hand?
The folder name probably changed. Keep the Thunderstore name, Owner-Name or Owner-Name-1.0.0, and players without the map are offered the download when they join.
Do players need to install park mods?
No. Park objects are Build Kit items the game already has, so a park the server spawns is visible to everyone without a download.
Why did my park disappear?
Parks go when the map changes, when their timer runs out, and on every restart. Spawn it again with park-mod add <name>, or use a custom vote so players can.
Do I need to restart after adding a map?
No. maps reload reads the Mods folder again, and park-mod config add sets up a park mod while the server runs.
Drop map mods into Mods/ from your browser
Upload a map or park folder to Mods/ with the Files tab or SFTP, keep the Thunderstore name, and players without it are offered the download. Backups on every plan. From $3.99/month.