BeardLib-Editor is a tool that allows you to edit and create things like maps & environments.
Matchmaking is disabled by default due to having to edit the physics settings of the game. Playing with people with said edit can cause issues if not everyone has the said fix.
In order to enable matchmaking, you must disable the physics fix through the editor's options menu. Do note that without that fix, the editor will not work properly.
- (Required for the massunits tool) https://dotnet.microsoft.com/download/dotnet/5.0/runtime Download the x64 version runtime.
- Install SuperBLT
- Install BeardLib
- After downloading the editor by clicking
Code
->Download ZIP
, unzip the contents of the ZIP file in the mods folder of the game. - Launch the game and click
Yes
on the dialog that pops up. These files are required.
If you install the dev branch, make sure you have the latest BeardLib commit https://github.com/simon-wh/PAYDAY-2-BeardLib it's possible that branch uses unreleased features not found in the public (MWS) version.
https://www.youtube.com/playlist?list=PLRSASA7UrjTsX1WWG6kStRTK51DKSEDPn
https://wiki.modworkshop.net/books/beardlib-editor-tutorials
https://www.payday2maps.net/guides/
https://github.com/simon-wh/PAYDAY-2-BeardLib-Editor/issues
Payday 2 Maps Discord Server - https://discord.gg/fn62qaq
Painday 2 (maker of the video tutorials) Discord Server - https://discord.gg/RNBUnrN7
ModWorkshop Discord Server - https://discord.gg/Eear4JW
GitHub Discussion - https://github.com/Luffyyy/BeardLib-Editor/discussions
We're looking for developers that will work together on the editor.
Your best friend in all of this is knowing how to look for the pieces of code that correspond to parts of the editor. Be it in the decompiled files of the game or the editor's code.
Make sure you are using a good code editor like VSCode. This will allow you to quickly search the code and the decompiled code of the game https://github.com/steam-test1/Payday-2-LuaJIT-Complete.
Make sure you have an empty file called developer.txt in the mods folder (turns on the console) and run the following command: blt.forcepcalls(true) - this let's you not crash the moment you hit a random error.
The editor is equipped with a code refresher, editing any file will refresh parts of the editor.
The real editor uses what is called in the decompiled code 'EWS' ('External Window System', based on wxWidgets). Unfortunately porting this kind of GUI is easier said than done. Instead of that we use https://github.com/simon-wh/PAYDAY-2-BeardLib/wiki/MenuUI and have a class that simplfies the process of creation a little https://github.com/Luffyyy/BeardLib-Editor/blob/master/Classes/MenuUIExt.lua
If the hashlist/game gets updated you can update the data files yourself by doing the following:
- Get DieselBundleViewer (1.1.1 and up)
- Install the PackageOutputter script from https://github.com/Luffyyy/DieselBundleViewer-Scripts
- Open DieselBundleViewer and open the BLB file from PAYDAY 2's assets directory.
- Once the load is complete, run the script from File > Scripts > Package Hashlist Outputter
- This should create a file named packages.txt.
- Drop the file to BeardLib Editor's root directory and run the game. The editor will do the rest.