Skip to content

Commit 3ae73d8

Browse files
Add README with features, setup, and configuration reference
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
1 parent c6c89be commit 3ae73d8

1 file changed

Lines changed: 64 additions & 0 deletions

File tree

README.md

Lines changed: 64 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,64 @@
1+
# Steam Account Restrictor
2+
Block suspicious Steam accounts from joining your Unturned server.
3+
4+
## Features
5+
- Kick accounts with private Steam profiles
6+
- Kick limited Steam accounts (no purchases / not full members)
7+
- Kick accounts younger than a configurable age
8+
- Kick VAC banned accounts
9+
- Bypass permission for staff and trusted players
10+
- Optional custom kick command (e.g. ban via your own kick/ban plugin)
11+
- Fully asynchronous Steam Web API checks — zero impact on server tick
12+
13+
## Permissions
14+
| Permission | Description |
15+
|------------|-------------|
16+
| `steamaccountrestrictor.bypass` | Skip all Steam account checks for this player or group |
17+
18+
## Setup
19+
1. Install the plugin into the `Rockets/Plugins` directory.
20+
2. Get a Steam Web API key from https://steamcommunity.com/dev/apikey
21+
3. Open `SteamAccountRestrictor.configuration.xml` and paste your key into `SteamWebAPIKey`.
22+
4. Toggle the checks you want enabled and restart the server.
23+
24+
## Configuration
25+
```xml
26+
<?xml version="1.0" encoding="utf-8"?>
27+
<SteamAccountRestrictorConfiguration xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
28+
<Debug>false</Debug>
29+
<SteamWebAPIKey>APIKEY</SteamWebAPIKey>
30+
<KickPrivateProfiles>true</KickPrivateProfiles>
31+
<KickLimitedAccounts>true</KickLimitedAccounts>
32+
<KickMinimumAgeAccounts>true</KickMinimumAgeAccounts>
33+
<MinimumAccountAgeDays>3</MinimumAccountAgeDays>
34+
<KickVACBanAccounts>false</KickVACBanAccounts>
35+
<UseKickCommand>false</UseKickCommand>
36+
<KickCommand>kick {steamid} "{reason}"</KickCommand>
37+
<KickCommandDelay>1</KickCommandDelay>
38+
</SteamAccountRestrictorConfiguration>
39+
```
40+
41+
### Configuration Options
42+
| Option | Description |
43+
|--------|-------------|
44+
| `Debug` | Enable debug logging |
45+
| `SteamWebAPIKey` | Your Steam Web API key from https://steamcommunity.com/dev/apikey |
46+
| `KickPrivateProfiles` | Kick players whose Steam profile is private |
47+
| `KickLimitedAccounts` | Kick players with limited Steam accounts (e.g. no purchases) |
48+
| `KickMinimumAgeAccounts` | Kick players whose Steam account is younger than `MinimumAccountAgeDays` |
49+
| `MinimumAccountAgeDays` | Minimum required Steam account age in days |
50+
| `KickVACBanAccounts` | Kick players with any VAC ban on their Steam account |
51+
| `UseKickCommand` | Use a custom kick command instead of the built-in kick |
52+
| `KickCommand` | Command template; supports `{steamid}` and `{reason}` placeholders |
53+
| `KickCommandDelay` | Delay in seconds before executing the custom kick command |
54+
55+
## Translations
56+
```xml
57+
<?xml version="1.0" encoding="utf-8"?>
58+
<Translations xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
59+
<Translation Id="KICKED_PRIVATE_PROFILE" Value="Your Steam profile is private." />
60+
<Translation Id="KICKED_LIMITED_ACCOUNT" Value="Your Steam account is limited." />
61+
<Translation Id="KICKED_MINIMUM_ACCOUNT_AGE" Value="Your Steam account is too young. It must be at least {0} days old." />
62+
<Translation Id="KICKED_VAC_BANNED" Value="Your Steam account is VAC banned." />
63+
</Translations>
64+
```

0 commit comments

Comments
 (0)