[MOD] [GUIDE] - Setting Up Environment for Mod

What’s up…

This simple guide will walk you through setting up your environment to start developing mods for Big Ambitions, especially using MelonLoader and UnityExplorer (IL2CPP games like this one).


:white_check_mark: Requirements

Before diving into development, make sure you have the following installed and ready:

  1. MelonLoader (Latest Version)
    :link: Download MelonLoader.Installer.exe
    Make sure you’ve installed all its dependencies — the installer will guide you through it.

  2. dnSpy (64-bit)
    Useful for browsing and analyzing the game’s assemblies.
    :link: Download dnSpy-net-win64.zip

  3. .NET SDK 6.0 (x64)
    Required to build and compile your mod code.
    :link: Download .NET SDK 6.0.428 (Windows x64)

  4. UnityExplorer (Custom Interop version)
    In-game inspector. Fully compatible with the latest MelonLoader + IL2CPP.
    :link: UnityExplorer on GitHub
    download the zip on release section.

  5. A Legal Copy of Big Ambitions
    Support the developers with no cracked versions, please!


:file_folder: Setting Up Your Modding Workspace

  1. Install MelonLoader into Big Ambitions

    • Run MelonLoader.Installer.exe
    • Select your Big Ambitions.exe (usually automatically found. if not, go under Steam\steamapps\common\Big Ambitions)
    • Click Install
  2. Verify Installation

    • Launch the game once to let MelonLoader generate folders (Mods, UserLibs, etc.)
    • If it boots with a console window, you’re good!
  3. Install UnityExplorer

    • Download the custom build from the GitHub repo above
    • Extract and put the contents into your Mods and UserLibs folder in the Big Ambitions directory.

    :warning: IMPORTANT STEP
    If the game is already in the Main Menu for the first time with UnityExplorer open,
    you need to set a Startup Delay Time in the UnityExplorer settings before entering the game world. Set it to 20 seconds or more, then restart the game again.
    This delay gives UnityExplorer enough time to initialize before the game’s UI system unloads it.
    If you don’t set the delay, UnityExplorer might disappear because the game destroys any UI that isn’t part of the loaded scene (in this case are UnityExplorer).

    Screenshot 2025-04-06 143910

  4. Use dnSpy to Inspect Assemblies (Optional but recommended)

    • Load "path\to\Steam\steamapps\common\Big Ambitions\MelonLoader\Il2CppAssemblies\Il2CppBigAmbitions.dll"
      or other assemblies as needed.

    image

    • Useful for reverse engineering game functions, hooking into methods, etc.
  5. Set Up Your Project

    • Use your favorite IDE (I prefer Visual Studio)
    • I’ve created a mod template to help you get started quickly:
      :link: Big Ambitions Mod Template
    • Open the .sln extension and open it with Visual Studio
      image
    • edit AssemblyInfo.cs to put your name as the author of the mod
    • build solution (CTRL+SHIFT+B)
    • the build should be under :
      C:\Users\yourname\source\repos\BigAmbitionsModTemplate\BigAmbitionsModTemplate\bin\Debug\net6.0\BigAmbitionsModTemplate.dll
  6. Load The Mod

    • put BigAmbitionsModTemplate.dll under Mods MelonLoader folder (similar to step 3)
  7. Done

    • you will see the mod produced the hello world string, sign of loaded


Now you’re all set to build your own mods—whether it’s a debug tool or full-on gameplay tweaks. If you’re looking for inspiration, feel free to bring it up below so we can all discuss it. Or if you just want to show off your progress :point_down: go for it.

3 Likes

Great job!

I really want to try to making some mod myself, but I don’t know if I can understand C#. I just know a little about mods basely on Melon in another game. Maybe I can’t, I’m not sure. Whatever, thanks for you step by step sharing about setup guide.

1 Like

Hey @Arthur.Bilibili, no worries at all. honestly, just being curious and wanting to try is already more than enough. you don’t have to know everything about C#, most of us just figure it out as we go anyway. If you’ve messed with MelonLoader before, you’re already on the right track.
take your time with it.

Most of the game is controlled by the GameManager.
You can try hooking into any method you’re interested in from there.

Since there is il2cpp, this is a minimal working snippets example :

private void AddMoney()
{
    if (float.TryParse(moneyInput.text, out float amount))
    {
        moneyAmount = amount;
        GameManager.Command_ChangeMoney(moneyAmount);
        MelonLogger.Msg($"Added {moneyAmount} money");
    }
    else
    {
        MelonLogger.Error("Invalid money amount input!");
    }
}

private void AddHappiness()
{
    if (int.TryParse(happinessInput.text, out int amount))
    {
        happinessAmount = amount;
        GameManager.Command_ChangeHappiness(happinessAmount);
        MelonLogger.Msg($"Added {happinessAmount} happiness");
    }
    else
    {
        MelonLogger.Error("Invalid happiness amount input!");
    }
}

private void AddHunger()
{
    if (int.TryParse(hungerInput.text, out int amount))
    {
        hungerAmount = amount;
        GameManager.Command_ChangeHunger(hungerAmount);
        MelonLogger.Msg($"Added {hungerAmount} hunger");
    }
    else
    {
        MelonLogger.Error("Invalid hunger amount input!");
    }
}

private void SetEnergy()
{
    if (float.TryParse(energyInput.text, out float amount))
    {
        energyAmount = amount;
        GameManager.Command_SetEnergy(energyAmount);
        MelonLogger.Msg($"Set energy to {energyAmount}");
    }
    else
    {
        MelonLogger.Error("Invalid energy amount input!");
    }
}

but don’t forget to referencing the Il2CppBigAmbitions.dll in the dependencies.
image

This post is a continuation of the earlier Setting up a Modding Environment tutorial.
Since the original UnityExplorer doesn’t support Big Ambitions IL2CPP backend, we’re now using an IL2CPP-Interop fork along with the latest MelonLoader release to ensure full compatibility.

Thanks for your kind words, I will try!

1 Like