Post tutorial RSS Modding MechCommander - (ABL) Scripting

This is a general article about scripts / scripting in MechCommander by Bestia_Infernali wayback in NGNG times. I find this information useful, though... - here it is. Have fun modding MechCommander!

Posted by on - Advanced Starting a mod

Modding MechCommander

Scripts & Scripting

by Bestia_Infernali

I have decided to publish this topic article about scripting cause it gives a good example of how modders have to work with MechCommander while modding it. Most of the code was written in C++ / plaintext and this is the way you have to modify it - otherwise you would have to import the MC stuff into a development platform like unity - but that would afford recreating the whole game from scratch. Working with the extracted game source of MechCommander like this can be a nightmare - especially for beginners who never did anything like that. But when you managed to create any content on that level i promise you will enjoy the result and later wont get enough of reproducing any new content for this lovely old retro game gem of PC gaming history. So what you should keep in mind of this?

Modding MechCommander is pure SCRIPTING! You need to script 90% of the game's content. Such like missions and mission design are most likely scripted files in any way - and their plaintext is free for usage after extracting the files / or starting to work with extracted file content. Here a short list of what will scripting (specifically MC is 75% ABL) - advanced business language scripting:

  • modding Missions / Maps that are existing for MC or created with MC Map Editor / Extender
  • modding game values in general (physical and technical values)
  • modding any further Mission conditions that are limited by the MC Map Editor
  • modding Infantry, Vehicles, BattleMechs or MechWarrior profiles
  • modding Unit Brains (Artificial Intelligence generic protocols)
  • modding ABL libraries itself (it is possible to extend the codes that can be used by MC Engine)
  • modding graphics (just some basic settings and palette settings)
  • modding savegames / starting conditions for map scenarios
  • modding MainScreen and Art (UI / Ingame interface elements)

So you can see. When you would like to mod MechCommander. There is no way without using scripting skills and the abl libraries from MechCommander.

MechCommander Modding

Moment, MC scripting libraries?

Where, what...?

That's right. MechCommander itself contains it's own scripting libraries. I think they've been used from the development teams as short reminders while processing the creation of MechCommander. When we go over talking about modding MC Missions - it's totally true.

But where are the libraries? All libraries are in the main game folders. Most of the libraries, specific the mission libraries are in the DATA\MISSIONS\ folder from the extracted game source. You can use those libraries in order to micro-script any mission. It is possible to add any mission script into existing or new missions. This way you can change parameters, make artificial intelligence more competing - and create dynamic processes during a mission - such like coincedential actings of NPC units - or coincedence created unit types in certain missions - for example. The possibilities are even very good. Especially pointing on the fact that most of the usable library content isn't used by the game or maybe is only used one time in one certain mission while it was related to a certain and unique mission objective for example.

When you are not willing to search in the game files for this libraries on your own, you can download a small library package i have created. The package with abl library content you can download here.

Would you like to know more about abl scripting?

Modding MechCommander - MC ABL-Libraries

(c) by RizZen 2020 - thx to Bestia_Infernali

Post a comment
Sign in or join with:

Only registered members can share their thoughts. So come on! Join the community today (totally free - or sign in with your social account on the right) and join in the conversation.