Please disclose if any significant portion of your mod was created using AI tools by adding the 'AI Generated' category. Failing to do so may result in the mod being removed from Thunderstore.
LethalGuardPlus Beta
BETA of the next LethalGuard+ update. Host-only anticheat. Stops lobby crashes, fake ship takeoffs, free purchases, credit wipes, chat spoofing and more. Blocks the attack, not the player. Nobody else needs it, no setup.
| Date uploaded | 4 days ago |
| Version | 0.1.1 |
| Download link | Ctrlc-LethalGuardPlus_Beta-0.1.1.zip |
| Downloads | 111 |
| Dependency string | Ctrlc-LethalGuardPlus_Beta-0.1.1 |
This mod requires the following mods to function
BepInEx-BepInExPack
BepInEx pack for Mono Unity games. Preconfigured and ready to use.
Preferred version: 5.4.2100README
LethalGuard+ Beta
Test version of the next LethalGuard+ update. It becomes the main package in a few days.
You can keep LethalGuardPlus installed. If both are installed, the Beta turns the old version off and tells you in chat. Once the main package has this update, it takes over by itself.
Only the host needs it. No setup. Everything new is listed in the changelog.
What it stops (every player in your lobby is protected, even without the mod):
- Lobby crashes: the voice chat crash attack, message floods and oversized packets
- Ship griefing: fake early takeoff, locking the ship lever, "leave early" votes while everyone is alive
- Credits: buying items, furniture, vehicles or moons for free, wiping the group's credits
- Chat: talking as another player, fake server messages, huge text, spam
- Terminal, spawns and items: locking the terminal from across the map, reopening one gift box, deleting monsters or items, killing other players with a fake request
A cheat request is dropped before it does anything. A player is only kicked when their game sends something a normal game never can, and a first offence is only a lobby ban.
Host commands: /kick <name>, /ban <name or SteamID>, /unban last, /bans, /recent
Someone was kicked by mistake? Type /unban last, then please tell us on Discord. To stop automatic kicks, set KickLevel = Off in the config (requests are still blocked).
Reporting a problem: send BepInEx/LethalGuardPlus.log and BepInEx/LogOutput.log from the host, before starting the game again (LogOutput.log is cleared on every start). Bugs go to #bug-reports, attacks that got through to #attack-reports.
Made with the help of an AI assistant.
CHANGELOG
Changelog
0.1.5
- Fixed a lobby crash.
- Stronger protection against attackers. Clear attacks now lead to a permanent ban;
/unban <SteamID>undoes it.
0.1.4
- Known attackers and players kicked from this lobby are now refused before they connect, so their packets never reach the game.
- Closed a gap in the 0.1.3 crash fix: packets from a kicked attacker could still be treated as coming from the host.
- Refused attackers no longer leave a blank name in the player list.
- The
KnownAttackerListsetting is gone: this protection is now always on./unban <SteamID>still lets an account in on your game.
0.1.3
- Same crash fix as LethalGuard+ 2.0.2: a broken network packet could crash the host's game right after the attacker joined. It is now blocked and the sender is kicked. This fix is always on.
0.1.2
- LethalGuard+ 2.0.0 is out and now has everything from the Beta. If both are installed, the Beta turns itself off quietly, with no chat line. Nothing to do.
- One chat line in your first lobby after starting the game shows that you're protected. Only you can see it, and
NoticeLevel=Offhides it.
0.1.1
- Bans and the known attacker list are more reliable in Steam lobbies.
- Small chat fix when the ship starts.
0.1.0
- Installed together with LethalGuardPlus: the Beta turns the older version off (both running at once could mute innocent players) and shows one chat line saying so. Keep both installed: once the main package has this update, the Beta turns itself off instead.
- Version notice (host): when a player joins, the host sends that player one network message with the LethalGuard+ name and version, nothing else. It is invisible: players without a mod that reads it never see it, and the host does not listen for anything new.
- Kick levels (host):
KickLevelchooses which blocked requests also kick the player:Off,Recommended(default, only requests a normal game can never send),Risky,VeryRisky,Unsafe. Blocking is the same at every level; only kicking changes.Recommendedis the suggested setting. - Host chat notices: one short line per player and problem in plain English (for example
Bob — chat spam blocked (3×)), then a summary instead of a line for every request. The[LG+]tag is orange for a blocked request, red when a player is removed or banned and grey for command replies; the rule name is shown dimmed at the end for bug reports. Chat stays visible a bit longer (6 s) when a notice arrives. Notices are only shown on the host's screen.NoticeLevelchooses how sure a rule must be before it shows a notice (Offhides them). - Config is now three sections: General, Modules (turn single protections off), Advanced. Old settings are reset to defaults, except
HideModdedTag=false, which is kept. - Advanced:
TrustedPlayers(SteamIDs that are never kicked automatically; requests are still blocked),NeverKickRulesandAlwaysKickRules(rule names, comma separated), voice/network/chat limits,LogSamples. - Bug reports: send
BepInEx/LethalGuardPlus.log. It now starts every session with the mod version, settings and the list of installed mods, keeps only the last sessions and stops growing at about 2 MB per session. - Voice fixes (host): the voice limit is now averaged over 5 seconds, so frames that pile up after a game freeze no longer briefly mute innocent players. Players could also be muted for the whole session when the host PC had been running for more than ~25 days without a restart; fixed. Packets from a player who is still connecting or just leaving are dropped quietly instead of being reported as spoofed voice.
- Network message shield (host): drops message floods, oversized RPCs and RPCs sent to objects that do not exist.
- Spawn protection (host): a gift box or mask can only be used once, players cannot delete living enemies, fake deaths for other players or make monsters kill other players.
- Chat protection (host): players cannot chat as someone else, huge text and formatting tags are removed, chat spam is limited, and lines that try to look like game/server messages are marked with the sender's name (other mods' chat messages still show). Invisible mod messages (a whole
<size=0>…</size>line, for example Minimap's version check) are no longer passed on: nobody reads them, and each one pushed a visible message out of everyone's chat. The host gets one private line when a player has Minimap (allowed, just so the host knows). - Early leave vote (host): only dead players can vote, once per round. A cheater could make the ship leave instantly while everyone was alive.
- Bans (host): a player who sends a request no normal game can send (acting as another player, fake ids) is kicked and cannot rejoin the lobby. Bans use the player's real Steam account, so faking a Steam ID on join no longer gets around a kick. Host chat commands:
/kick <name>,/ban <name or SteamID> [| reason],/unban <name, SteamID or last>,/bans,/recent./banalso works on a player who already left (by name;/recentlists who left this lobby). Every ban line in chat shows how to undo it (/unban last). A first offence is only a lobby ban.AutoBanDuration(Session, OneDay, OneWeek or Permanent; default Session) applies only if the same Steam account is caught again in another lobby within 30 days. Timed bans end by themselves. Bans are stored inBepInEx/config/LethalGuardPlus.bans.txt. Known lobby attackers are blocked by a built-in list (can be turned off). - Credit protection (host): a cheater can no longer buy items, furniture, vehicles or routes for free, or wipe the group's credits with a fake purchase. Purchases with invalid ids are dropped. Prices changed by other mods are only logged.
- Furniture: players cannot put furniture into storage in someone else's name.
- Full lobby (host): two players joining the last free slot at the same time can no longer break the lobby or get the host's character.
- Terminal (host): only a living player standing at the terminal can start using it, so nobody can lock it from across the map. Terminal sound spam and broken terminal sounds are dropped.
- Ship controls (host): spamming the ship doors, lights, magnet, teleporter button or alarm horn is limited, and dead players cannot use them. Normal use is not affected.
- Items (host): a player cannot delete a game item from their hands or inventory for everyone. Requests for inventory slots that do not exist are dropped (they caused errors on every player's game). Keys, shotgun shells and items added by other mods still work.
- Optional item teleport protection (host,
ItemTeleportGuard, off by default): blocks picking up items from across the map, dropping items you are not holding, throwing a held item far away or out of the map, and putting far away items into a belt bag. It can break item, selling or belt bag mods, so turn it on only if you need it. - Known issue: a player can still kick someone out of the terminal from far away. Locking the terminal is blocked.