BepInEx

BepInEx — Free Download. Injection framework for Unity and .NET mods
Framework that enables loading modifications (plugins) into video games developed with Unity (Mono and IL2CPP) and with the .NET framework (XNA, FNA, MonoGame). It operates by injecting code into the game process during its execution, establishing an environment for additional functionalities.
5.0(1 ratings)

Download BepInEx (Official links)
File size: 0.624 MB
The latest version of BepInEx is: 5.4.23.5
Operating system: Windows, Linux, MacOS
Languages: English
Price: $0.00 USD

  • Modular architecture. The design separates components into specific execution phases: preload, core initialization, plugin management, and support services. This structure enables controlled modifications of the game's startup flow.
  • Bootstrap. Component executed before the game's main method. It modifies the function import table and loads the framework libraries. It implements different methods for Mono and IL2CPP architectures.
  • Main core. Provides fundamental services after the preload phase. It manages global configuration, the logging system, and communication between base components. It constitutes the primary abstraction layer.
  • Chainloader. Coordinates the detection and sequential initialization of plugins. It examines designated directories, identifies valid assemblies, and instantiates them according to a predefined dependency order.
  • Configuration system. Manages settings files in key-value format. Each plugin generates its own configuration file, where parameters modifiable by the end-user are stored.
  • Centralized logging system. Captures events and diagnostic messages from all components. It writes information to plain text files and can display a console window at runtime for monitoring.
  • Harmony integration. Incorporates the Harmony library for runtime method modification. It allows applying patches (prefixes, postfixes, transpilers) to the game's code, altering its internal logic.
  • Multi-platform support. Works on Windows and Linux systems, and adapts to the underlying runtime environment (Mono or IL2CPP). It handles differences in memory management and system calls.
  • Runtime console. Displays an independent window that receives messages from the logging system. It offers immediate visibility into the status of the framework and loaded plugins.
  • Dependency management. Verifies and resolves dependency relationships between plugins before their initialization. It prevents loading a module if its specified requirements are not met.
  • Event entry points. Exposes hooks for key moments in the game's lifecycle, such as complete initialization, scene loading, or per-frame updates. Plugins can link their code to these events.
  • Development utilities. Includes helper classes for assembly manipulation, embedded resource access, data serialization, and advanced reflection operations. It accelerates plugin creation.
  • Type patching mechanism. Allows substitution or extension of game classes through type patching techniques. It facilitates modification of existing data structures.
  • Inter-process communication system. Offers basic capabilities for data exchange with external applications via named pipes or sockets, enabling integrations with external tools.

The BepInEx project began its development in 2017 as an evolution of the original BepisInjector. The creator and main maintainer is the developer known as "denikson". The codebase is written in the C# programming language. The evolution of the framework has been marked by the addition of IL2CPP support, the refinement of its API, and the expansion of compatibility towards .NET-based game engines.


Alternatives to BepInEx:

MCreator — Free Download. Mod and Data Pack creator for Minecraft

MCreator

MCreator is software for creating modifications (mods) and data packs for the video game Minecraft.
Price: Free   Size: 250 MB   Version: 2025.3.45720   OS: Windows, Linux, MacOS