The Payday 2 Better Lua injecTor (BLT), is a Lua hook for the game PAYDAY 2 by OVERKILL Software. It allows players to inject code into the game’s scripting engine at runtime and run their own code. This allows players to make mods for the game that go beyond swapping models and textures. The BLT was created by myself and Timothy Clissold, with additional help from Will Donohoe.
The Payday 2 BLT source code is available on GitHub.
The Payday 2 BLT is comprised of two separate parts, the injector DLL and Lua boilerplate code, with a third website component, the online mod manager. The DLL and Lua code are downloaded by players wishing to mod their game, whereas the mod manager is used by mod developers to release new versions of their mods which are automatically downloaded by all players using the BLT, who have the mod installed.
The Payday 2 BLT
The BLT DLL is the injector that allows us to run code in Payday 2. The DLL hooks into the game’s Lua engine and runs a set file in the Lua base code which then sets up the BLT, injects itself into the game’s menus, and loads all installed mods.
The Lua base code is a collection of helper scripts and utilities that manages and loads the mods installed by players, and allows players to enable and disable mods from their ingame menus, without ever having to leave the game. It also manages updates received from the online server, which allows players to keep their mods up-to-date without having to leave the game and manually install anything.
The Mod Manager
The mod manager is the backend of the PaydayMods.com site that allows mod developers to setup their mods with the server that provides all BLT-users with automatic updates. Mods uploaded to the site can publish new versions at anytime, which will be sent to all users of the BLT who have their mod installed, and will allow the users to download the latest version.
More information on PaydayMods.com can be found on its page, here.