Skip to the content.

BA Help API

Add pages to the Big Ambitions in-game Help window from your own mod.

Big Ambitions builds its help tree from StreamingAssets/helpstructure.json, a file inside the game install that Workshop mods cannot ship changes to, and the modding API exposes no hook for it. This library fills that gap. Registered pages are merged into the live help structure and re-applied whenever the game rebuilds it, so they behave exactly like base-game pages — they appear in the sidebar, they are searchable, and other pages can link to them.


Documentation

Page What’s in it
Getting started Install, declare the dependency, register your first page
API reference Every public member, with parameters and behaviour
Worked example A complete mod adding eight cross-linked pages
Conventions The 14 base-game categories, slug naming, where your page belongs
Localisation How page text works, Markdown support, linking
Troubleshooting Blank pages, missing pages, load-order problems

Thirty-second version

Reference the BAHelpApi assembly from your .asmdef, then:

using BigAmbitions.Modding.Help;

// In OnLoadAsync
HelpApi.RegisterPage("MyMod", HelpCategories.Furniture,
    slug: "furniture-mymodwidget",
    pageKeyPrefix: "mymod:itemname_widget");

// In OnUnloadAsync
HelpApi.UnregisterOwner("MyMod");

Add the text to your own Locales/en.json:

{
  "mymod:itemname_widget": "Widget",
  "help_mymod:itemname_widget_content": "**Widget** does something useful."
}

That is the whole integration. The page appears under Furniture, in alphabetical position, in the player’s language.


Why a library rather than copy-pasted code

Because the game has no help hook, any solution has to reach into the help window’s private state. Doing that from several mods independently would mean several mods each rebuilding the sidebar on their own schedule, fighting each other after every language change.

One shared assembly keeps a single registration list and a single merge pass. Big Ambitions derives mod dependencies from assembly references, so depending on it is just a reference — the loader handles ordering, failure propagation and version checking for you.


Design guarantees


View on GitHub · MIT licensed · Unofficial community library, not affiliated with Hovgaard Games