First of all - thank you for ALiVE and all the great work.
I am a big fan of milsim, and obviously ALiVE greatly contributes to the overall feeling of being deployed and not just taking part to a single mission. Having a lot of small tasks such as the ones that ALiVE gives you it's really great.
However I do miss a purpose for staying in specific maps, especially for persistent servers. Why are we, as military, here in this area of the world? Hence I've just released tonight the [UCM] Utilities Construction Mod . With it, having (for instance) a pipeline to build qualifies the presence and gives specific time limits for a faction to be in an area, thus (at least to me) greatly contributing to milsim.
Now I would like to integrate it 100% with ALiVE, hence why I'm writing in this forum to gather some help; hopefully some kind soul can point me in the right direction.
1. Objectives. A construction is always in progress, hence it moves constantly. I'd like to make ALiVE attack the construction area, and for that I think I should do 2 things:
- The workers are spawned units, so I need to ensure that they are profiled. To this effect, I was thinking of using
 call ALiVE_fnc_createProfilesFromUnitsRuntime; however I keep seeing random errors and am not sure what I'm doing wrong. If this were to be the correct approach, I can report back with more details.
- Add the construction area as a custom objective, with
[_opcom, "addObjective", _objectiveParams] call ALiVE_fnc_OPCOM;. When the construction area moves, I would remove it and add another one in the new position (UCM already has the event to do this, called
UCM_ConstructionAreaMoved - more details on github ). However, this does not seem to sort any kind of effects and am unsure on how to proceed.
2. Persistency. I've spent a great deal of time ensuring that all of the progress variables are stored in a logic module. Once the module is initialized, it takes these variables to compute everything related to the construction. Is this enough to be working with ALiVE persistency?
3. Initialization. Do I need to have the server wait for ALiVE initialization, or is this done by ALiVE already?
Thank you for reading all of this.