2 Plugins: Openbullet
Unlike its predecessor, OpenBullet 1 (which relied heavily on standard .NET framework limitations and a rigid UI), OpenBullet 2 is built from the ground up using and a web-based interface (Blazor).
Installation is straightforward, but caution is mandatory.
: Implement custom UI elements, such as dropdown menus with data loaded from external JSON files, to make configs more interactive. Developing a Custom Plugin To start developing, you can use the OB2PluginSample template on GitHub, which provides a well-commented starting point. Key Development Steps: Environment Setup : Install the .NET 8 SDK Project Creation : Create a new class library project or fork the Sample Plugin repository Defining Blocks BlockDescriptor Openbullet 2 Plugins
If you have a basic understanding of C# and the .NET ecosystem, creating a custom plugin is highly rewarding. Prerequisites Visual Studio or VS Code
Navigate to your OpenBullet 2 installation directory. Unlike its predecessor, OpenBullet 1 (which relied heavily
This public link is valid for 7 days and shares a thread, including any personal information you added. This link or copies made by others cannot be deleted. If you share with third parties, their policies apply. Can’t copy the link right now. Try again later.
: OpenBullet 2 also allows for loading external C# libraries via the plugin system. This is particularly useful when a necessary operation is supported by an existing NuGet package but not by LoliCode. By adding the library's .dll file to the Plugins folder, developers can then import its namespaces into their LoliCode scripts, making its functions and classes available within their automation workflows. Developing a Custom Plugin To start developing, you
Reference the RuriLib.Parallelization and RuriLib assemblies from the OpenBullet 2 source code.
Think of plugins as specialized modules that can introduce entirely new types of automation blocks, integrate external libraries, or create custom logic. While the default installation includes a comprehensive set of standard blocks (HTTP requests, parsing, etc.), plugins empower users to tailor the tool for highly specific or complex scenarios that were not anticipated by the original developers.
Standard configurations excel at HTTP/HTTPS requests. However, some modern applications rely on alternative communication protocols. Plugins can introduce dedicated blocks for:
Always wrap your logic in try/catch blocks. If a plugin crashes, it stops the bot job. Use BlockExecutionResult.Error("Message") to fail gracefully.