Making new maps for Outpost 2 is a pain. One major reason is the map files also need an associated DLL. I propose a mod to support a new file format to allow all needed data in a single file.
The bulk of the code in DLL files is basically static data, but in code form. Instead, we should design an appropriate data structure to represent that data, and store it as actual data in the map file itself. This is true particularly of initial unit placement during level setup. There was an attempt with the OP2Helper API to convert the raw function calls into data structures, then pass the data structures to a pre-built function to create the initial units. If we extend this idea by moving the pre-built functions into a mod, and the data into the map file, we could eliminate the need for DLLs.
This could be done by appending the data to the map file format, in a new tagged section at the end of the file, and hooking the map loading code to recognize and process such appended data sections after running the already existing map loading code.
The next natural step would be to update the map maker to allow generating and storing this new data in an upgraded map file format. The map maker could then be a self contained utility with no need for a compiler to create playable levels, nor would there be any logic needed in an external C++ project.
I think initial focus should be on level setup, and a later version could include support for trigger callback functions. General scripting support is not a specific goal. That could perhaps be handled in some distant future version, or a DLL could be optionally specified. That use case is not the focus of this project though, so should be given low priority. Highest priority is static initial unit placement, and second might be trigger callback support to do simple things like create disasters.