Icarus Open World Missions on a Dedicated Server: Why They Complete Once and How to Reset Them
One of the most common questions from people running a persistent Icarus Open World server is some version of "my friend joined late and now he cannot do the missions we already finished." This is not a bug and it is not a server misconfiguration. It is how Open World mission progress is stored. This guide explains the mechanic, shows exactly which save file holds that progress, and walks through the safe ways to reset missions so new or returning players can run them again.
The Short Version
- Each Operation completes only once per Open World save. When the task conditions are submitted, that Operation is marked done for the whole world.
- Latecomers miss it. A player who joins after an Operation is finished cannot complete that same Operation again on that save.
- The progress lives in the world's prospect save file, a single
.jsonper world stored in the dedicated server'sProspectsfolder. - Resetting means editing or swapping that save file while the server is stopped, or starting a fresh world. There is no in game "reset missions" button.
Why Open World Missions Behave This Way
Icarus has three session styles: timed Prospects, persistent Outposts, and Open World. Open World is the persistent sandbox most groups host on a dedicated server because it has no countdown and keeps your base and progress between sessions. Inside an Open World you can still pick up Operations from mission boards, including the Great Hunt chains against the Rock Golem, Great Ape, and Ice Mammoth.
The catch is that Operation completion is recorded at the world level, not the player level. The moment the objective is submitted, the game writes that Operation as completed into the world save. From then on the mission board no longer offers it. Mission completion only counts for players who are connected and in the session at the moment it is finished, so a friend who logs in the next day to a world where you already cleared an Operation simply will not see it as available.
This applies on dedicated servers exactly the same as in a solo or peer to peer game. A dedicated server does not get a separate per player mission ledger. There is one world save, and its completed Operations are shared by everyone who plays on it.
Where the Progress Is Stored
An Open World, like every Icarus session, is saved as a single prospect file. On a dedicated server those files live here:
<ServerInstall>\Icarus\Saved\PlayerData\DedicatedServer\Prospects\
Each world is one file named after the save name you gave it, for example MyBase.json. Open Worlds and Outposts keep the readable name you chose, while mission style prospects use generated names. This same file holds your terrain state, structures, inventories, and the list of completed Operations, which is why there is no way to reset only the missions from inside the game without touching the file.
| Location | Path |
|---|---|
| Dedicated server worlds | Icarus\Saved\PlayerData\DedicatedServer\Prospects\ |
| Local single player worlds | %localappdata%\Icarus\Saved\PlayerData\<SteamID>\Prospects\ |
| Server config file | Icarus\Saved\Config\WindowsServer\ServerSettings.ini |
Always stop the server and back up the world file before touching it. The prospect save is read at startup and written while the world runs, so editing it on a live server risks the change being overwritten or the file being corrupted. Copy the .json somewhere safe first.
Confirm Which World the Server Loads
Before you reset anything, make sure you know which save the server actually boots into. Open ServerSettings.ini and look at the prospect keys, which the server reads in this order on startup: LoadProspect, then ResumeProspect, then CreateProspect.
[/Script/Icarus.DedicatedServerSettings]
ResumeProspect=True
LastProspectName=MyBase
LoadProspect=
CreateProspect=
For a persistent Open World server the normal setup is ResumeProspect=True with a valid LastProspectName (the server writes that name itself). That tells the server to resume the same world on every restart. If you set LoadProspect to a save name (the name only, without the .json extension) the server loads that specific world instead. Knowing which world is live tells you exactly which .json file your reset has to target.
Option 1: Reset Missions on the Existing World
If you want to keep your base and progress but make completed Operations available again, you need to clear those Operations from the world's .json save. Hand editing this file by hand is risky because the mission entries cascade, completing or clearing one Operation can affect the chain it belongs to, and a malformed file will not load. The community has built a save editor specifically for this, the Icarus Prospects Save Editor, which lets you upload the prospect .json, untick the Operations you want to reopen (including the Great Hunt chains), and download a corrected file with the dependency cascade handled for you.
- Stop the dedicated server.
- Copy the world file out of
...\DedicatedServer\Prospects\and keep a second copy as a backup. - Open the copy in a prospect save editor, untick the Operations you want to make available again, and generate the modified file.
- Place the modified
.jsonback in theProspectsfolder with the same file name. - Start the server. Make sure
ResumeProspect=TrueandLastProspectNamestill point at this world, or setLoadProspectto its name.
Do not blindly rename or hand edit prospect files. RocketWerkz warns that renaming or manually altering the save structure can cause unrecoverable corruption. Use a purpose built editor or stick to swapping whole files, and always keep the untouched backup.
Option 2: Run a Fresh World Alongside the Old One
If the goal is simply to let a group of players experience missions from the start, you do not have to disturb your main base at all. You can host a second Open World as its own save and switch the server to it when the group wants to play through the Operations fresh.
- Stop the server.
- In
ServerSettings.ini, clearResumeProspectbehaviour for the new run and useCreateProspectto spin up a new world, or setLoadProspectto an existing fresh save. - The
CreateProspectvalue is four space separated fields: prospect type, difficulty (1 to 4), hardcore (true or false), and a save name, for example a new Open World save name of your choice. - Start the server. Your original world file stays untouched in the
Prospectsfolder, so you can switch back to it later by pointingLoadProspectorLastProspectNameat it.
Because every world is a separate .json file, you can keep several of them in the Prospects folder and switch between them by changing which one the server loads. This is the cleanest way to give players a clean mission run without losing a long lived base.
Option 3: Spread Operations Across Mission Boards
For groups that have not finished everything yet, there is a planning trick rather than a reset. You cannot hold more than one Operation at a time, but different mission boards generate different mission choices. By building several mission boards you can line up the Operations you want and have specific players accept them, so the people who need a given mission are present and connected when it is submitted. Since completion only credits players who are in the session at that moment, coordinating who is online for each Operation matters as much as the reset itself.
Common Questions
My friend joined late and cannot do a mission we already finished. Is the server broken?
No. Each Operation can be completed only once per Open World save. Once your group submitted it, it is marked done for the whole world. The fix is to reset that Operation in the save file or run a fresh world.
Can I reset missions from inside the game?
There is no in game reset button for completed Operations. Mission state lives in the world's prospect .json, so resetting means editing or swapping that file while the server is stopped.
Will resetting missions wipe my base or inventory?
Not if you only clear the mission entries. The same save holds your structures and inventories, which is why you must back the file up first and use a tool that only changes the Operations you select.
Does each player get their own mission progress on a dedicated server?
No. A dedicated server has one world save shared by everyone. Completed Operations are a property of the world, not of individual players.
Where is the world file on the server?
In Icarus\Saved\PlayerData\DedicatedServer\Prospects\, as a single .json named after your save.
How do I make sure the server loads the world I edited?
Keep ResumeProspect=True with the correct LastProspectName, or set LoadProspect to the save name (without the .json extension) in ServerSettings.ini, then restart.
Related Guides
- Open World mode setup
- Managing prospect and Open World saves
- Full ServerSettings.ini reference (LoadProspect, ResumeProspect, CreateProspect)
- Hosting timed prospect missions
- Admin commands for player and world management
Managed Open World hosting: Supercraft runs Icarus dedicated servers with automatic daily backups of your prospect saves, so resetting missions or rolling back a world is a restore away rather than a manual file edit. NVMe storage keeps large Open World saves loading fast.
Looking for managed Icarus server hosting? Supercraft runs Icarus dedicated servers with daily backups, instant setup, and 5 region options. Plans from $5.99/mo.