Introducing Nickel, a lightweight and powerful moderation plugin for BeamMP. This plugin contains a variety of commands for managing your server, including removing and adding staff members, banning and unbanning players, and kicking players.
This method allows the auto-updater to work automatically.
Run this command in your Resources/Server folder:
git clone -b dev https://github.com/boubouleuh/Nickel-BeamMP-PluginNote: You need git installed on your server.
- Download the Latest Release.
- Extract the content into
Resources/Server/Nickel-BeamMP-Plugin. - Note: Auto-updates might not work without Git.
BeamMP on Windows uses Lua 5.4, which may cause compatibility issues. It is recommended to host your BeamMP server on Linux (WSL, Docker, or VPS) for the best experience.
Important
You can use this early windows BeamMP server build: Download here (a GitHub account may be required).
This build will load Nickel, but it has not been thoroughly tested and may be unstable.
-
You need to give you Administrator permissions, in order to do that use this command in your running server console :
/grantrole administrator yourUsernameHereYes, replace "yourUsernameHere" with your username.You can also use this command to add Moderators and other roles. Use
/listrolesto see all available roles.
helpShow every commandsban <targetname> <reason>Ban a playerbanip <targetname>Ban every ips of a playertempban <targetname> <time(example : 1s,1m,1h,1d)> <reason>Ban a player for a specific timeunban <targetname>Unban a playerkick <targetname>Kick a playermute <targetname> <reason>Mute a playertempmute <targetname> <time(example : 1s,1m,1h,1d)> <reason>Tempmute a player for a specific timeunmute <targetname>Unmute a playerdm <targetname> <message>Send a direct message to someonecreaterole <rolename> <permlvl>Create a roledeleterole <rolename>Delete a rolegrantrole <rolename> <targetname>Grant a role to a playerrevokerole <rolename> <targetname>Revoke a role from a playergrantcommand <commandname> <rolename>Grant the permission of a command to a specific rolerevokecommand <commandname> <rolename>Revoke the permission of a command from a specific rolelistactionsList all available actionslistrolesList all rolesgrantaction <actionname> <rolename>Grant an action to a specific rolerevokeaction <actionname> <rolename>Revoke an action from a roleforcenametagsToggle forced display of player nametags (Interface only)broadcast <message>Send a message to all playerswhitelist <add/remove> <playername>Add or remove a player from the whitelistcountdownStart a countdownreloadReload the plugindebugDebug tools (see the possibles arguments in the debug commands file because im lazy to list them)nkmigrateMigrate old nickel data from the /data foldercemigrateMigrate cobalt playerPermissions.json to nickel (SLOW) (place it in the /data folder of the plugin)
The configuration is located in NickelConfig.toml. It is automatically generated on the first run.
[commands]
prefix = "/" # Command prefix
[misc]
join_message = "[{Role}] {Player} joined the server" # Message sent when a player joins
chat_log = true # Log chat messages to console
[langs]
server_language = "en_us" # Server language
force_server_language = false # Force server language for all players
[conditions]
whitelist = false # Enable whitelist mode
guest = false # Allow guest players (unauthenticated)Nickel supports SQLite (default) and MySQL.
SQLite:
[database]
type = "sqlite"
file = "database/nickel.sqlite"MySQL:
[database]
type = "mysql"
host = "localhost"
port = 3306
name = "nickel_beammp"
username = "root"
password = "password"
ssl = falseYou can set up webhooks to log events to Discord.
[discord]
chat_webhook = "" # Webhook URL for chat logs
vehicle_webhook = "" # Webhook URL for vehicle spawn logs
player_webhook = "" # Webhook URL for player join/leave logsSettings related to the client-side interface and environment.
[client]
b64avatar = true # Use base64 avatars
interface = false # Enable the custom Nickel interface
[client.interfaceValues]
showNameplates = true # Show player nameplates
[client.environment]
temperature = 20
time = [10, 20] # Start time [hour, minute]
gravity = -9.81
wind = 0
weather = "sunny"Configure the built-in auto-updater and debug mode.
[advanced]
debug = false # Enable debug mode
autoupdate = true # Enable/Disable auto-updates
update_type = "tags" # "tags" (stable releases) or "commits" (latest changes)
target = "main" # Branch name (e.g., "main", "dev") or Tag name
allow_prerelease = false # Allow updating to pre-release tags (e.g. v1.0.0-beta)
