New here? Advent Angels - Steam Workshop is the project these posts track.
I’ve been quietly working on a huge upgrade to Advent Angels’ Mod Config Menu (MCM). This isn’t just polish — it’s a whole new toolkit for how Advent Angels runs in-game.
What’s Coming
Realtime Reskin API — change reskins mid-tactical, without a relaunch. (The old method already allowed mid-campaign changes, but this goes further.) It even opens the door for new tricks, like randomizing previously unisex enemies (Archons now, Sectoids later).
Better Layout & UX — reorganized options, clearer grouping, smoother flow.
Built-in MCM Help Guide — an in-game quick-start + reference guide.
sjbb-code Parser — my custom markup system powering the in-MCM guide. The real challenge is getting it adequate and unbuggy enough that it “just works.” And if it lands the way I want to, it could be something other modders plug into their own projects.
Why This Matters
Until now, Advent Angels’ configurability has been limited by external restarts and clunky menus. This overhaul delivers:
Speed — reskins update instantly, right inside missions.
Flexibility — toggle, mix, and randomize in new ways.
Clarity — help text and guides built straight into the menu.
Sneak Peek
Here's a sneak-peek at what sort of in-game guide UI can be expected.

For the techy devs, here's the code that fuels it. It goes in localization files & the API handles retrieving it with the same syntax as a normal Localize() call.
HELP_PAGE_1_HEADER = "Advent Angels – MCM Guide (Page 1/2)"
HELP_PAGE_1_BODY[0] = "[h2]Quick Start Guide[/h2]"
HELP_PAGE_1_BODY[1] = "These are the [color=yellow]canonical settings[/color] intended for use with the mod.[br]"
HELP_PAGE_1_BODY[2] = "They’re a solid baseline, but almost everything can be mixed and matched.[br]"
HELP_PAGE_1_BODY[3] = "[*] [color=green]Mod Enabled[/color]: On [color=grey](default)[/color]; [color=green]Runtime Reskin[/color]: On [color=grey](default)[/color]; [color=green]Chance[/color]: 100% [color=grey](default)[/color][br]"
HELP_PAGE_1_BODY[4] = "[*] [color=green]Replace These Genders[/color]: All Genders [color=grey](default)[/color]; [color=green]Set Unisex To[/color]: Female [color=grey](default)[/color][br]"
HELP_PAGE_1_BODY[5] = "[h2]Tips[/h2]"
HELP_PAGE_1_BODY[6] = "[*] [color=yellow]Consistency[/color]: Runtime + All Genders + 100%.[br]"
HELP_PAGE_1_BODY[7] = "[*] [color=yellow]Variety[/color]: Simply lower the chance for a mix each mission.[br]"
HELP_PAGE_1_BODY[8] = "[*] [color=yellow]Precision[/color]: Use the target genders/mods/families to target exactly what you want.[br]"
HELP_PAGE_1_BODY[9] = "[color=grey]Note: The [/color][color=good]Reset[/color][color=grey] button can be used to instantly return to the baseline.[br]"
HELP_PAGE_1_BODY[10] = "[h3]Support Advent Angels[/h3]"
HELP_PAGE_1_BODY[11] = "[color=grey]\"You would never fund Advent propaganda, Commander... Would you?\"[/color][br]"
HELP_PAGE_1_BODY[12] = "[color=good]www.patreon.com/SurferJay[/color]"
Update: Here's a preview of the second page of the MCM guide.

What’s Next
There’s still plumbing to do — especially stress testing the sjbb-code parser and wiring up the mapping and rules layers for the Realtime Reskin API. Right now, my proof-of-concept is working with a hardcoded mapping, but it can already reskin everything (original spawns, reinforcements, drop units, even cinematic pawns). Next step is making that fully data-driven.