Blackhorse311 — Keep Starting Gear (SPT 3.11.x) 1.1.1

Do not ask when mod authors will update their mods or if they can upload older versions of their mods.
Bothering mod authors will lead to warnings and repeat offenses will lead to bans.
Due to an unusually high volume of traffic, our site may be experiencing intermittent slowdowns. If you notice any issues, log out of your account and browse anonymously so you can better utilize caching or try using forge.sp-tarkov.com to search for and download mods.

Keep your starting PMC gear if you die in a raid.

- **SHA‑256 (v1.1.1):**

`de0f48Bcb50296d9b640f1e28cbc0ef23d7cd6766de94351470ff8737245763c`


# Blackhorse311 — Keep Starting Gear (SPT 3.11.x)


Keep the **PMC gear you entered the raid with** if you **die**. The mod snapshots your equipped kit on raid start and restores it when you return to the main menu after a death-like exit.


- Hooks the game via HTTP route hooks (no fragile service overrides)

- Robust exit detection (`results.result`) and PMC detection (profile side + `.Pmc.` in `serverId`)

- Restore happens **after** SPT finishes post-raid work, so nothing overwrites it

- Configurable: restore only certain equipment slots, exclude secure container, restore quickbar, more


Tested on **SPT 3.11.3** using payloads where exit is in `results.result` and PMC side in `profile.Info.Side`.


---


## Installation


1. Extract this folder into `SPT/user/mods/`.

2. Start **SPT.Server.exe**, then **SPT.Launcher.exe**, click **Play**.

3. In server logs you should see:

- `Static route hooks registered (start/end/after).`

- On raid start: `[start] isPMC=true ...` + `Snapshot saved (NN items).`

- On death: `[end] exit='killed' ... queued=true`

- Back at menu: `[after] performed restore ...` + `Restored starting kit (NN items).`


---


## What it restores


- Your **equipped PMC items** that were under the `equipment` root when the raid started (weapons, armor, clothing, containers depending on config).

- Optionally your **quickbar/fastPanel** (1..9 hotkeys).


It does **not** touch stash, XP, quests, etc.


---


## Configuration (`config.json`)


| Key | Type | Default | Description |

|---|---|---:|---|

| `restoreOn` | string[] | `["killed","missinginaction","mia","left"]` | Exit results that trigger a restore. |

| `treatRunnerAsSuccess` | boolean | `true` | If `true`, **Runner** exit will **not** restore. |

| `logLevel` | `"warn" \| "info" \| "debug"` | `"warn"` | Amount of logging. |

| `persistSnapshotsOnDisk` | boolean | `true` | Also write snapshot files under `state/`. |

| `dumpEndPayload` | boolean | `false` | Dump raw `/end` body to `state/last-end-payload-<sid>.json` (debug). |

| `forceRestoreIfExitUnknown` | boolean | `false` | Restore even if exit is missing/unknown. |

| `equippedOnly` | boolean | `false` | Convenience mode that **defaults** to excluding container slots (`Backpack`, `Pockets`). Combine with `excludeSlots` for finer control. |

| `excludeSecureContainer` | boolean | `false` | Exclude `SecuredContainer` from restore. |

| `excludeSlots` | string[] | `[]` | Names of **root equipment slots** to exclude entirely (root + all contents). Examples: `"Backpack"`, `"Pockets"`, `"TacticalVest"`, `"SecuredContainer"`. |

| `restoreQuickbar` | boolean | `true` | Restore fastPanel (1..9 hotkeys). |


**Notes**


- *Equipped‑only:* If you want **no backpack** restoration, set `equippedOnly: true` (which excludes `Backpack` + `Pockets` by default). If you also wish to exclude rig contents, add `"TacticalVest"` to `excludeSlots`.

- Slot names are taken from the `slotId` on **direct children** of `Inventory.equipment` (e.g. `Headwear`, `ArmorVest`, `TacticalVest`, `Backpack`, `Pockets`, `SecuredContainer`, `Holster`, `FirstPrimaryWeapon`, etc.).


---


## Compatibility


- Designed for **SPT 3.11.x** (tested 3.11.3).

- Uses **StaticRouterModService** to hook only three endpoints: `/client/match/local/start`, `/client/match/local/end`, `/client/game/profile/list`.

- Avoids replacing `LocationLifecycleService`, making it more resilient to updates and other mods.


---


## Known limitations


- Only applies to **PMC raids** (intended design). SCAV is ignored.

- Insurance / mail systems still function normally. Restoring your starting gear does not cancel insurance processing.


---


## Uninstall


Delete the folder `user/mods/blackhorse311-keepstartinggear`. No permanent changes are made besides your saved profile updates.


---


## Credits


- **Blackhorse311** — author

- **GPT‑5 Pro** — AI assist (design, debugging, docs)

-**SPT User: LIKLY** - Giving me the idea and wanting to produce one for 3.11.3


---


## License


[MIT](./LICENSE)

  • So just so I understand this correctly:

    This mod makes it to where when you die in raid, you don't lose your gear, BUT it only saves what you took in raid, meaning nothing you looted in raid gets saved, only your gear that you started the raid with?

    That's cool as fuck! No more SVM Softcore for me!

    Heart 1
    • Oh man, I hadn't thought about it that way at all!

      I always do Softcore in SVM too but it still feels cheaty since I still gain everything I looted - I will be switching to this now!

  • So i ran into a bug/conflict when using the "Exclude `SecuredContainer` from restore." option

    i entered the raid with a AR-15 AlienTech 5.56x45 muzzle brake on my rifle and found a supressor so i threw the muzzle brake in my secure container and then later died. The game threw a fit and Crashed with the error " An Item with the same key has already been added: key: (id of the muzzle break)."


    Its likely a bad reaction between mods that let me do things that normally shouldnt happen so i just wanted to leave the fix here incase anyone else gets it.

    Use profile editor to go into your inventory and delete the duplicate item, you can find it by searching with the key/id


    To avoid this bug dont put anything you bring into the raid into your secure container that wasnt already in there.



    Also thanks for the mod i missed having this kind of keep inventory setup :)

  • Blackhorse, I just want to apologize for the behaviour of BoshyKilla. We have banned that user from the community, as their attitude is unwarranted, and extremely counter to the inclusive atmosphere we want to foster for mod authors and users alike. I've also nuked all of their comments from your comment section

    Heart 4
  • Appreciate you keeping the "Keep Equipment" mods alive, especially since most have stopped updating!

  • What just happened. The Github link site was there for a second, and now "404 - Page Not Found"


    Now it's showing - This repository is empty.

    https://github.com/Blackhorse3…horse311-keepstartinggear


    Hoping the Author is simply reworking it.......


    Appears he/she was, and it is much appreciated.