Mods / HardcoreLogOff
Author: Teknik
Side: Server
Created: Nov 4th at 1:42 AM
Last modified: Nov 4th at 1:47 AM
Downloads: 22
Follow Unfollow 11
Recommended download (for Vintage Story 1.21.5):
HardcoreLogOff_0.0.1.zip
1-click install
π Server Side only mod π
π€ Mod created with AI π€
βοΈ For Players
-
Disconnecting doesn’t make nearby mobs instantly disappear.
-
When you log back in, creatures that were close to you may still be around.
-
Be careful — some drifters may switch from standing to crawling (I’ll try to fix this in a future update).
π οΈ For Server Admins
-
The mod currently operates entirely in memory (no disk persistence).
-
Snapshots are automatically taken when a player disconnects and restored when someone re-enters the same area.
-
Should be compatible with large servers — no noticeable lag spikes during capture or restore.
-
Server logs display detailed zone and snapshot events for debugging or fine-tuning.
-
Note: All snapshots are lost when the server restarts.
- Compatibel whether "PassTimeWhenEmpty" is enabled or disabled.
π§ Development Notes
This is an early version, tested so far only on a small 3-player server.
Future updates will include:
-
β Scheduled hard-saves at defined times (e.g. before automatic restarts).
-
β Post-restart restoration of saved snapshots.
-
π Restoration of mob skins and crawling state (if technical API access allows).
π Disclaimer
This mod is experimental and designed for enthusiasts who want a more immersive, unforgiving world.
Use it at your own risk — feedback and reports are welcome to help refine the next versions.
π§Config file :
You can add custom creatures too.
{
"ConfigVersion": "1.0.0",
"ZoneSizeBlocks": 128, // Size (blocks) of a "zone" used to group snapshots logically.
// Larger zones = less memory, but less precise restoration.
"CaptureRadiusBlocks": 48, // Radius (blocks) around the player to capture mobs on disconnect.
"RestoreDelayMsAfterJoin": 100, // Wait (ms) before restoring after a player joins (let chunks load).
"RetryIntervalMs": 333, // Interval (ms) between restore retries if chunks aren't ready.
"MaxRestoreAttempts": 3, // Max retries before giving up.
"ChunkRadiusPin": 2, // Temporarily keep a 2-chunk radius loaded during/after restore.
"ForceRestoreIfStillNotReady": true, // Force restore even if some chunks aren't fully ready.
"KeepPinnedAfterRestoreMs": 5000, // How long (ms) chunks stay pinned after restore.
"SnapshotTtlMinMinutes": 120, // Minimum lifetime (in minutes) before a snapshot expires. The actual lifetime is chosen randomly between this value and SnapshotTtlMaxMinutes. Can be the same as Max if you want a fixed duration.
"SnapshotTtlMaxMinutes": 360, // Maximum lifetime (in minutes) before a snapshot is discarded. The actual expiration time is randomized between Min and Max.
"GraceSecondsAfterRestore": 0, // Cooldown (s) before the same zone can be snapshotted again.
"UseMaxMobs": true, // Limit how many mobs a snapshot can store.
"MaxMobsSave": 60, // Max mobs saved per snapshot (ignored if UseMaxMobs=false).
"SavePrefixes": [ // What to CAPTURE at disconnect (snapshot set).
"drifter", "shiver", "bowtorn", "locust", "bell"
],
"TargetRestorePrefixes": [ // What to RESTORE when re-entering the zone.
"drifter", "shiver", "bowtorn", "locust", "bell"
],
"PresenceTriggers": [ // What TRIGGERS a restore if detected in the zone.(Do nothing for now you can ignore)
"locust", "bell"
],
"ExcludePrefixes": [ // Never captured nor restored (always ignored).
"locust-hacked"
],
"VerboseLogging": false // Detailed server logs: zones, counts, timings, etc.
}
Lists explained
- SavePrefixes — which mobs are captured in the snapshot when a player disconnects.
- TargetRestorePrefixes — among captured mobs, which ones are actually respawned on re-entry.
| Mod Version | For Game version | Downloads | Released | Changelog | Download | 1-click mod install* |
|---|---|---|---|---|---|---|
| 0.0.1 | 22 | Nov 4th at 1:47 AM | HardcoreLogOff_0.0.1.zip | 1-click install | ||
| ||||||
That's a great idea! I'm going to implement it on my server :)