Skip to content

Environment Setup Guide

Alexander Egard edited this page Nov 24, 2023 · 7 revisions

For any questions join the discord. Make sure to verify and then post in the appropriate contributor channel.

Required Tools

Optional Tools

  • Github Desktop - Very handy git interface.
  • DotPeek - Used to create symbol files for Bannerlord dlls. This is nice to have to view Bannerlord code inside of Visual Studio.

Development Setup

TODO make setup video

Game Version

We are usually on the latest Bannerlord version for development (As of writing version 1.1.6 is the latest)

Project Setup

  1. Clone the repository using https or using ssh somewhere on your machine.
  2. Run the runmefirst.cmd to dynamically attach your Bannerlord path and resolve references.
  3. If references in projects did not resolved automatically do the following. This can be done in Visual Studio by right-clicking references, going to browse, navigating to your Bannerlord directory through the mb2 shortcut, and selecting all TaleWorld.* .dlls. There are additional .dlls in the Modules folder, being the Native and StoryMode.
  4. Go to project settings for the Coop project and click debug
  5. Click start external program and browse to your Bannerlord path. You should select the executable for Bannerlord normally located at bin\Win64_Shipping_Client\Bannerlord.exe
  6. For the command line arguments enter this /singleplayer /server _MODULES_*Native*SandBoxCore*CustomBattle*SandBox*StoryMode*Coop*_MODULES_
  7. Now we need to enter the working directory. NOTE: This will select a folder, not a file. The folder you need to select for this is bin\Win64_Shipping_Client. The same path that Bannerlord.exe is located.
  8. (Optional) Setup a client instance.
    1. To run a client instance open the ClientDebug options. Go to debug and do steps 6-8. The difference here is the command line arguments which should be changed to /singleplayer /client _MODULES_*Native*SandBoxCore*CustomBattle*SandBox*StoryMode*Coop*_MODULES_.

    2. Now open the Solution 'Coop' properties -> Startup Projects. Select multiple projects and make sure Coop and ClientDebug are set to start.

  9. Click debug
  10. Create a new game and save it as "MP"
  11. Click on "host game" at the menu and the game will load the "MP" save file on the host. (and client if that is setup)
  12. If there are any issues contact someone in the discord.

Choose an issue

Find something you would like to work on from the issues page. You can also look at the projects page for more organized issues.

Create a branch for your feature

All enhancement issues should have its own branch. Create one if one does not already exist.

Creating Pull Requests

Create a pull request using your feature branch.

The source branch should be your branch and the target branch should be development.


We will be using this branching strategy

Image not found