to define how your custom block appears in the OpenBullet 2 UI. You can include parameters like strings, integers, or even enums to create dropdown lists. : Build your project into a file using the dotnet build Installation : Copy the resulting (and any necessary dependencies) into the UserData/Plugins folder of your OpenBullet 2 installation. Managing External Libraries If your plugin requires external libraries (like
using RuriLib.Attributes; using RuriLib.Models.Blocks; namespace MyCustomPlugin [BlockCategory("Custom Utilities", "Bespoke tools for advanced parsing", "#FF5733")] public static class CustomParser [Block("Custom Clean", "Removes specific noise characters from a string")] public static string CleanString( BlockSettingString input, BlockSettingString noisyChar) // Simple logic to clean the input string return input.Value.Replace(noisyChar.Value, string.Empty); Use code with caution. Compiling and Testing Openbullet 2 Plugins
Instead of writing your own, check community repositories. Common plugins include: to define how your custom block appears in
openbullet/OB2PluginSample: Sample plugin for OB2 ... - GitHub Managing External Libraries If your plugin requires external
In OpenBullet 2, a plugin is a compiled dynamic-link library ( .dll ) file written in a .NET-compatible language (primarily C#). When placed into the application's plugin directory, OpenBullet 2 automatically detects and loads it at runtime. Plugins serve several critical functions:
It is impossible to discuss OpenBullet 2 and its plugins without addressing its significant potential for misuse. The tool has been described as "the preferred credential stuffing tool for fraudsters". Credential stuffing is an attack where automated bots test stolen username-password pairs (often from data breaches) against various websites in an attempt to gain unauthorized access.