The Tool Desk
Outbyte PC Repair FREERepair Windows errors before they cause bigger problemsFix Now →Outbyte Driver Updater FREEFix the driver behind crashes, sound loss and screen glitchesFind Drivers →Install a BeamMP server plugin by placing it in its own folder under Resources/Server, putting the plugin’s main .lua files directly in that folder, and restarting the server. Do not put a server Lua plugin in Resources/Client: that directory is for ZIP mods sent to players. If the plugin still does not load, check the configured resource path, the top-level file layout, the server console and Server.log, and whether the plugin targets your server’s major version.
Prefer not to run the server on your own PC? Godlike.Host offers hosted BeamNG.drive servers with free DDoS protection and up to three free backups a day.
What you need before installing a plugin
You need an initialized BeamMP dedicated server on Windows or Linux, access to its server files, and the plugin’s Lua files. The official setup process supports both operating systems. Run the server once before installing anything; this first launch generates ServerConfig.toml and the resource directory, normally named Resources.
As an Amazon Associate I earn from qualifying purchases.
- A running server installation: The server binary,
ServerConfig.toml, and the generated resource folders should be present. - File access: You must be able to create folders and copy files into the server’s configured resource directory.
- A compatible plugin: Check the plugin’s target BeamMP server version. BeamMP Server 3.0.0 introduced major Lua plugin-system changes, so older Lua plugins may need a migration or a different release.
- The plugin’s own instructions: Some plugins require configuration files, permissions, or client-side files in addition to their main Lua script.
Home hosting is free according to the BeamMP setup documentation. VPS hosting is described there as easier and more secure, but the documentation does not establish a universal price or a particular provider. Choose the hosting arrangement first, then use the same resource-folder procedure on that server.
Server plugins and client mods are different
A BeamMP server plugin is a folder containing Lua code under Resources/Server. It runs on the server and can provide server-side behavior such as administration, rules, logging, or gameplay logic.
#1 Best Overall
- REALISTIC RACING SIMULATION DUO: Feel what is like to drive a real race car with G920 Driving Force Racing Wheel & Pedals and Driving Force Shifter
- PAIRED FOR PRECISION: Take full control of the race with G920 Driving Force Racing Wheel & Pedals and Driving Force Shifter
- PRECISE CONTROL: Helical transmission gears reduce noise and vibration with anti-backlash keeping wheel and pedals tight. The six-speed “H” shifter helps you execute smooth, accurate gear transitions
- FORCE FEEDBACK: The dual motor force-feedback realistically simulates the feel of tires on a turn, understeer, oversteer, drifting and more
- PREMIUM BUILD: Look, feel and durability of a real race car wheel, pedals and shifter. Wheel cover, knob and boot are covered in high-quality, hand-stitched leather with a solid steel gear shaft and polished metal pedals
A client mod is normally a ZIP file under Resources/Client. The server can send those files to connecting players. A feature that has both server and client components may require a server Lua plugin plus a client ZIP, and some client-side functionality additionally needs a Lua client extension and modScript.lua. Follow the specific project’s instructions when it documents such a dependency.
| Item | Correct location | Typical format | Loaded by |
|---|---|---|---|
| Server plugin | ResourceFolder/Server/PluginName |
One or more top-level .lua files |
BeamMP server |
| Client mod | ResourceFolder/Client |
ZIP file | Clients through the server |
Putting a Lua server plugin in Resources/Client, or putting a client ZIP in Resources/Server, will not turn it into the other type. Use the directory that matches the component you are installing.
Quick wins for a faster PC:
Fix the driver behind crashes, sound loss and screen glitchesFind Drivers →Repair Windows errors before they cause bigger problemsFix Now →Scan for outdated or missing drivers - takes under a minuteDriver Scan →Install a BeamMP server plugin step by step
1. Initialize the BeamMP server
- Complete the BeamMP server setup for Windows or Linux.
- Launch the server once and allow it to finish its first-run initialization.
- Stop it cleanly after the initial files appear. You should now see
ServerConfig.tomland a resource directory, normallyResources.
If those files are not present, you are probably looking at the wrong directory, the server has not completed initialization, or the account running it cannot write to the installation folder. Resolve that before copying a plugin.
2. Confirm the configured resource directory
Open ServerConfig.toml in the server’s main directory and find the ResourceFolder setting. The folder named Resources is only the normal default; the setting is authoritative. If it points to another path, install the plugin beneath that path instead.
For example, if the setting resolves to /srv/beammp/Resources on Linux or a different Windows directory, the required destination is that configured directory’s Server subdirectory, not a second Resources folder beside the server executable.
3. Create one folder for the plugin
Inside the configured resource directory, create a Server folder if it does not already exist. Then create a separate folder for the plugin:
What’s actually slowing this PC down?
Pick the symptom - the matching free tool is one click away.
Rank #2
- MOZA R5 Racing Wheel and Pedals Bundle Kit is designed for PC Users (Not Compatible with Xbox and ps), provides an affordable, direct-drive setup force feedback system that transforms your sim racing experience.
- Direct-Drive Simulator: Delivers smooth, detailed 5.5 Nm peak torque without the mechanical slack or noise of older gear- and belt-driven wheels.
- Ready-to-Race Kit: Includes the wheel base, MOZA ES Steering Wheel with an aluminum quick-release system, and steel pedals and desk clamp in a single package.
- ES Wheel: At 280mm (11 inches), the compact diameter gives the motor maximum leverage, ensuring the 5.5Nm force feedback feels crisp, strong, and detailed rather than dampened or weak.
- SR-P Lite Pedals(No Clutch): Crafted from high-strength steel, this Pedal with throttle and brake feature precise Hall sensors, adjustable spacing and height, customizable output curves, and an anti-slip base—offering reliable, adaptable performance for any setup.
ResourceFolder/Server/<PluginName>
Replace <PluginName> with a descriptive folder name. Each plugin must have its own subfolder. Do not place unrelated plugins together, because BeamMP treats each folder as a separate plugin unit.
4. Copy the plugin’s Lua files into the top level
Copy the plugin’s main .lua files directly into its new folder. A minimal installation looks like this:
BeamMP-Server/
├── BeamMP-Server.exe (or Linux server binary)
├── ServerConfig.toml
└── Resources/
├── Client/
└── Server/
└── MyPlugin/
└── main.lua
The important detail is that main.lua is immediately inside MyPlugin. BeamMP automatically loads Lua files in the plugin’s main directory. Lua files placed only in deeper subdirectories are not automatically loaded.
A common archive mistake is creating an extra wrapper directory. If extraction produces Server/MyPlugin/MyPlugin/main.lua, the script is one level too deep for automatic discovery. Move the folder or its contents so the intended top-level Lua file is directly under Server/MyPlugin.
Recommended Free Tools
5. Keep supporting files in subfolders only when the code expects them
Subdirectories are allowed for supporting files when the plugin’s code loads them with require() or another documented mechanism. They are not a substitute for the plugin’s top-level entry file. If every Lua file is buried in a subfolder and no top-level script loads it, BeamMP has nothing to discover automatically.
Do not rename files, change case, or rearrange the plugin’s internal paths unless its documentation tells you to. On case-sensitive Linux filesystems, a spelling or capitalization difference can produce a path error even when the layout appears correct in a graphical file manager.
Rank #3
- 4 MOUSE CLICK BACK BUTTONS & 2 CLAW GRIP BUMPERS — Enjoy the same ultra-responsive actuation found in Razer's top gaming mice with 4 buttons built into the controller’s ergonomic, rubberized handles—topped with 2 claw grip bumpers for even more control
- PRO HYPERTRIGGERS — Set the triggers for instant actuation with zero travel time or ultra precise analog control—be fully immersed in the action and feel every trigger pull with integrated haptic vibrations
- HALL EFFECT PRECISION THUMBSTICKS — Experience analog thumbsticks that are not only more accurate than traditional models but are smoother, lighter, and more durable thanks to their anti-friction rings and pro grade materials
- HYPERSPEED WIRELESS — Delivering an ultra-low latency 2.4 GHz connection via its USB Type A dongle, experience fast, reliable performance that meets the demands of the most intense competitive players on Xbox and PC
- RAZER MECHA-TACTILE ACTION BUTTONS & 8-WAY FLOATING D-PAD — By combining the speed of microswitches with the cushioned comfort of a rubber membrane, compete with quicker inputs that feel just as comfortable to press
6. Start or restart the server
Start the server and watch its console output. A clean startup should identify errors if the plugin has a Lua syntax problem, a missing file, or an invalid path. The server manual documents hot reloading for changed top-level Lua files, but current 3.x reference material notes that files added after startup are not tracked in some versions. Restarting after copying a new plugin is therefore the dependable activation method.
Leave the console visible during the first launch with the plugin. If the process exits, the plugin reports an error, or expected commands are missing, stop and troubleshoot before inviting players to connect.
Do these 3 things before closing this tab:
1Fix the driver behind crashes, sound loss and screen glitches2Clear out junk files and repair common Windows errors3Scan for outdated or missing drivers - takes under a minuteHow BeamMP decides what to load
BeamMP scans the configured resource directory’s Server subdirectory. Each folder there that contains at least one Lua file in its top level is treated as a plugin. This explains why the folder hierarchy matters more than the archive’s original name.
- Correct:
Resources/Server/MyPlugin/main.lua - Usually not auto-loaded:
Resources/Server/MyPlugin/scripts/main.lua - Wrong component directory:
Resources/Client/MyPlugin/main.lua - Extra extraction layer:
Resources/Server/MyPlugin/MyPlugin/main.lua
Use the deeper scripts arrangement only if a top-level Lua file explicitly loads it. The automatic loader does not recursively treat every Lua file beneath the plugin folder as an entry point.
Check BeamMP 3.x compatibility before debugging files
BeamMP Server 3.0.0 made drastic changes to the Lua plugin system. A plugin written for an older server cannot necessarily be used unchanged on a current 3.x server. Before modifying code, check the plugin release notes or documentation for its target server version and any migration instructions.
| Compatibility check | What to verify | What to do if it fails |
|---|---|---|
| Server major version | The plugin explicitly supports your installed BeamMP server major version. | Use a compatible plugin release or follow the project’s migration notes. |
| Lua API expectations | The plugin’s functions and event hooks match the current scripting system. | Do not assume an old script can be repaired by moving folders; update the code or choose a maintained version. |
| Client dependency | The feature states whether a client ZIP, Lua client extension, or modScript.lua is required. |
Install the documented client component in addition to the server plugin. |
| Configuration format | The plugin’s settings file and required values are documented for that release. | Use the configuration template supplied with the matching release. |
A correct path cannot compensate for an incompatible API. Treat version compatibility as the first diagnostic branch when a plugin is discovered but fails during startup.
Rank #4
- PC USB Simulation Racing Game Wind Sense Simulator Wind Speed Change on Steering Wheel of Racing Game for Logitech G923 G920 G29 G /Thrustmaster T300RS T500
- Supports SIMHUB software and can be debugged on it.It suitable for 20/30/40 aluminum profiles and cockpit brackets with suitable holes.you can read the game data in real time, calculated by racing speed.
- The maximum speed is 7000 rpm/second.The maximum and minimum air quantity can be set. The default starting air volume is 60km/h. The faster the car, the greater the air quantity.
- Very High Wind Speed For Simulation Racing Game Wind Sense Simulator steering wheel.Easy assembly and high adaptability. Compatible with aluminum profiles in the sizes of 20x20mm/0.8x0.8", 30x30mm/1.2x1.2" and 40x40mm/1.6x1.6". As for other brackets, please contact the customer service.
- Support many games, including for American Truck Simulator, Assetto Corsa, Euro Truck Simulator 2, Assetto Corsa Competizione, Automobilista, Codemasters F1 2019, Codemasters F1 2020, Automobilista 2, BeamNG Drive, Codemasters F1 2021, Codemasters F1 22, Farming Simulator 22, Forza Horizon 4, IRacing, RFactor 2, Forza Horizon 5, Forza Motorsport 7, Project Cars 2, Project Cars 3, WRC 10 FIA World Rally Champion, WRC 8/9 FIA Word Rally Champion, Codemasters Dirt 3, and Codemasters Dirt 4.
Troubleshoot a plugin that is not loading
Nothing appears in the console
- Open
ServerConfig.tomland verify the exactResourceFoldervalue. - Confirm the plugin is under
ResourceFolder/Server/<PluginName>, not under the server executable’s directory by assumption. - Check that the plugin folder contains at least one
.luafile directly at its top level. - Look for an extra folder created by archive extraction.
- Restart the server after adding the files rather than relying on hot reload.
The server reports a Lua syntax or runtime error
Read the complete console message and then inspect Server.log. Syntax errors generally identify a file and line; runtime errors can point to a missing dependency, unsupported API, or invalid configuration. Correct one reported problem at a time, restart, and check whether the next startup reaches the same point.
If the error references a function or event that does not exist, check the plugin’s target server version before editing the script. The 3.x Lua changes make version mismatch a more likely explanation than a bad copy operation.
The plugin has files in a subfolder but still does not run
BeamMP does not automatically load Lua files in subfolders. Ensure there is a top-level entry script. Keep helper modules in subfolders only when the entry script loads them through the mechanism documented by the plugin.
The plugin worked before, but a newly added file is ignored
Restart the server. Although changed top-level Lua files can be hot-reloaded in the server manual, some current 3.x versions do not track files that were added after startup. A full restart refreshes the plugin file set.
Crashes, No Sound, or Screen Glitches?
Random freezes, missing sound and display glitches usually trace back to one bad driver. Find and replace yours safely.Free scan · under a minutePC Slower Than It Used to Be?
A free scan shows the junk files, broken settings and background clutter dragging Windows down - then fixes them in one click.Free scan · Windows 10 & 11Players cannot connect after installation
That symptom may be networking rather than plugin loading. The BeamMP FAQ identifies port forwarding as a check for connection problems: forward the configured server port for both TCP and UDP. Port 30814 is the common default in many setups, but use the value actually configured for your server rather than assuming the default.
First establish whether the server itself starts and loads the plugin. Then test connectivity with the plugin disabled if necessary. This separates a Lua startup problem from router, firewall, or port-forwarding configuration.
Best Value
- Product Features ----Multi-Function Stalks Turn Wiper Lever+ Cruise Control Switches+ Ignition Switch Key for For PXN V99 Racing Wheel Euro truck simulator2 /American truck simulator/ OMSI 2/ The Bus/BeamNG.drive;Powerful game management with distinct configurations and logic for different games, automatically switching according to the game.No need to install drivers-plug and play.Support original steering wheel installation.
- Product Turn Signal Headlight Switches functions ---- The stalks feature up to 18 programmable switches to cover all your driving needs.Support game Auto-Sync(No need to pause the game to adjust the position of the lever position when entering the game.); Meter/Low beam switch,High beam/light switch;you can switch small lights, headlights, switch instrument lights, turn signal, high beam, warning light, cruise light, can expand the vehicle start light, meter mode switch.
- Product Turn Wiper Switches functions ---- 1.Switching to Universal Mode:Recommend binding buttons as:Upward lever: Right turn signal; Downward lever: Left turn signal. Pull lever closer: Flash headlights/Honk horn; Push lever away: Toggle high/low beams.2.Euro Truck Simulator mode:Three-speed windshield wiper( high speed / low speed / off switch).
- Product Ignition Switch Technology ---- The key module is modified from the original HOWO heavy truck factory key. The LOCK position is used for steering wheel lock (ignored in-game).In Euro Truck Simulator (ETS2), there is only a single "ignition" option. Therefore, you can bind either OFF→ACC or ACC→ON for the ignition sequence.Engine start is performed from ON→START (START position).
- Package including ---- 1X Basic kit;1X Kit adapter and some screws.If you find the Turn Signal Wiper Lever Switch could not connect to your Steering Wheel or could not work for your game, please do not worry and contact us via message first we will offer professional resolution to make it work again or replacement for free.
The server starts, but the feature is absent for players
Determine whether the plugin is server-only. If the feature changes the client game, it may require a client ZIP under Resources/Client and, for some functionality, a Lua client extension and modScript.lua. Install only the client files documented by the plugin, then restart and verify that players receive the required mod.
Use the console and log as your primary evidence
The server console is the fastest way to see startup and runtime failures. Server.log is part of the normal server files and provides a record you can review after a restart. When asking a plugin maintainer for help, preserve the relevant error text, the server version, the operating system, and the exact folder path. Avoid reporting only “it does not work”; the file name and line number often identify the fault.
- Record whether the server was restarted after the plugin was copied.
- Record the configured
ResourceFoldervalue, without replacing it with an assumed default. - Record the plugin release and the BeamMP server major version.
- Include the first error in the log, not only later cascading errors.
Choosing a plugin safely
BeamMP’s official documentation establishes how the server/client split and 3.x migration work, but it does not publish a universal ranking of plugins. Evaluate each project against your server’s needs instead of assuming that a popular name is compatible or efficient.
| Decision factor | Questions to answer before copying files |
|---|---|
| Version compatibility | Does the release support your BeamMP server major version, and are migration notes provided? |
| Server or client scope | Is it server-only, or does it require a client ZIP, Lua client extension, or modScript.lua? |
| Installation complexity | Does it need a configuration file, permissions, database, or other dependency beyond its Lua files? |
| Maintenance | Are updates and compatibility changes documented by the project? |
| Resource impact | Could its event frequency, logging, or other behavior affect server resources? A universal performance figure is not established. |
| License | Does the license permit your intended private, public, or modified use? |
Install one plugin at a time on a test server when possible. That makes it clear which folder, configuration change, or script introduced an error and keeps the production log readable.
Home server or VPS for plugin hosting
The official setup guidance characterizes a home server as free and VPS hosting as easier and more secure. Home hosting gives you direct access to the files and avoids a hosting bill, but you remain responsible for the machine, operating-system updates, firewall, router forwarding, backups, and uptime. A VPS places the server in a hosted environment that is typically easier to expose consistently, while still requiring you to maintain the BeamMP installation and plugin files.
Whichever option you use, keep a backup of ServerConfig.toml, the complete Resources directory, and any plugin configuration before upgrading the server or replacing a plugin. A backup lets you restore the known-good folder layout when a version change breaks a script.
A repeatable installation checklist
- Run the BeamMP server once so
ServerConfig.tomland the resource directory exist. - Read
ResourceFolder; do not assume the folder is namedResources. - Confirm the plugin supports the installed BeamMP server major version.
- Create
ResourceFolder/Server/<PluginName>. - Place at least one plugin entry
.luafile directly in that folder. - Keep helper Lua files in subfolders only when the entry code loads them explicitly.
- Put client ZIP mods in
ResourceFolder/Client, never in the server plugin folder. - Restart the server after adding a new plugin.
- Read the console and
Server.logfor syntax, runtime, and path errors. - If players cannot connect, check forwarding of the configured port for both TCP and UDP;
30814is a common default, not a guaranteed value.
Where the installation should end up
For a standard server using the default resource directory, the finished layout is:
BeamMP-Server/
├── BeamMP-Server.exe (or Linux server binary)
├── ServerConfig.toml
└── Resources/
├── Client/
└── Server/
└── MyPlugin/
├── main.lua
└── optional-support-files/
└── helper.lua
The essential conditions are that MyPlugin is directly inside Server, that main.lua is directly inside MyPlugin, and that the configured ResourceFolder points to this Resources directory. Once those conditions and version requirements are satisfied, restart the server and use its console and log to confirm whether the plugin initializes.
Quick Recap
Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.




