Repository navigation
Blocklists
A blocklist names resource files that must not run. An entry is a file's content hash (BLAKE3, 64 hex digits), so a renamed or repacked copy of a blocked file is still blocked. A server never starts a resource that holds a blocked file, and stops a running one when it becomes blocked.
Name a file in server.toml:
[discovery]
blocklist = "my-blocklist.txt" # relative paths are below the data folderThe file:
Project Avalanche blocked resources v1
6b08b33e393c40b41b1218b333a84a4b89b6f2b2637b4c0efbb0baa3026feffc an old HUD script we do not want
- The first line is exactly
Project Avalanche blocked resources v1. - Then one entry a line: 64 hex digits, optionally a space and a reason of at most 200 characters. The reason is for you; it is never sent anywhere.
- No comments, no blank lines, no entry twice. At most 100 000 entries and 8 MiB.
A file's hash is the name it has in the server's resource-state/store/ folder, and the server's log names it when
it refuses a file. Any BLAKE3 tool (b3sum <file>) prints it too.
| When | What happens |
|---|---|
| the server starts | the list is read. If it does not read, the server does not start. A resource in [resources] start that holds a blocked file stops the server from starting |
every 10 minutes, and on the console's blocklists
|
the list is read again. A running resource that now holds a blocked file is stopped, and players drop it. If the edited file does not read, the list read before stays and the log says why |
start, restart, ensure
|
a resource with a blocked file is refused |
blocklists reads the lists at most once every 10 seconds.
The server ran the welcome resource from Server Resources. Its client script's hash was added
to the list, then blocklists typed in the console, then start welcome. The log:
INFO avalanche_server::blocklist: blocklists: blocklist the server's own list (data/my-blocklist.txt): 1 blocked files
WARN avalanche_server::blocklist: blocklists: the running resource "welcome" holds a file the blocklist of the server's own list names: "client/hud.luau" (BLAKE3 6b08b33e393c40b4…): stopped
INFO avalanche_server::resources: resources: stopped welcome
INFO avalanche_server::resources: resources: welcome: its server scripts stopped
INFO avalanche_server::systems: queued Start("welcome") (1 waiting)
WARN avalanche_server::resources: resources: Start("welcome"): refused: the resource "welcome" holds a file the blocklist of the server's own list names: "client/hud.luau" (BLAKE3 6b08b33e393c40b4…)
With the same list and start = ["welcome"], the server does not start:
resources: [resources] start: the resource "welcome" holds a file the blocklist of the server's own list names: "client/hud.luau" (BLAKE3 6b08b33e393c40b4…)
The project's server list keeps a blocklist too. Listed servers and players' games follow it: a server's resource or an installed mod that holds a blocked file is refused whole, wherever it is met (The Server List).
Servers
- Hosting a Server
- Server Configuration
- Ports and Firewalls
- Server Console
- Operators and Remote Console
- Access Control List
- Bans and Mutes
- The Server List
- Query and LAN Discovery
- Server Resources
- Blocklists
- Maps and Gamemodes
- Logs and Metrics
- Running as a Service
- Running in Docker
- Joining a Server
Scripting
- Resource Packages
- Content IDs and Kinds
- Scripting Overview
- Server Script API
- Client Script API
- Events and Messages
- Script Permissions
- Script Examples
Modding