LAC's current mission management logic always designates the player with the highest value of "MyNetworkID" as the "MissionCommander". The values of "MyNetworkID" are automatically and dynamically managed by LAC's network logic, and it's really impractical for any player to know for sure what his MyNetworkID setting will be in advance.
Accordingly, if a mission has been ongoing for a long time and aircraft carriers, battleships, or other mobile mission objects have advanced beyond several MissionChronoMilestones and then a new player enters the mission with his "MyNetworkID" set to "10", he immediately becomes the new MissionCommander. He won't know that all of the other players see their battleships or other mobile mission objects far advanced into the mission; he thinks everything has just commenced. As soon as his own mission timers advance to "MissionChronoMilestone #1", he will command all other mission participants to leap their mobile mission objects back to the corresponding locations.
That would be confusing and disrupting to everybody!
Accordingly, the most sophisticated of our sample missions include additional logic to compensate: Due to code underlying all of our missions, whenever any Sentient player has already advanced into the mission to a MissionChronoMilestone beyond #1 but then receives the MissionCommander's Morse Code Radio command to leap backward to MissionChronoMilestone #1, that player waits for a brief, randomized period of time (just long enough to avoid Morse Code Radio interference from other players attempting the same transmission) and then automatically issues a Morse Code Radio MissionChronoMilestone command of his own, advertising the next correct, higher milestone number. Upon receipt of a higher MissionChronoMilestone value, all players abandon any effort to use a lower value, so the highest known value will always prevail. Conflicting interpretations of current MissionChronoMilestone are thus automatically resolved, since all players (even the MissionCommander) will receive and act on those Morse Radio commands.
Mission Designers need do nothing to implement this; it's all taken care of for you in underlying LAC infrastructure code.
Last edit: bbosen 2022-03-26
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
LAC's current mission management logic always designates the player with the highest value of "MyNetworkID" as the "MissionCommander". The values of "MyNetworkID" are automatically and dynamically managed by LAC's network logic, and it's really impractical for any player to know for sure what his MyNetworkID setting will be in advance.
Accordingly, if a mission has been ongoing for a long time and aircraft carriers, battleships, or other mobile mission objects have advanced beyond several MissionChronoMilestones and then a new player enters the mission with his "MyNetworkID" set to "10", he immediately becomes the new MissionCommander. He won't know that all of the other players see their battleships or other mobile mission objects far advanced into the mission; he thinks everything has just commenced. As soon as his own mission timers advance to "MissionChronoMilestone #1", he will command all other mission participants to leap their mobile mission objects back to the corresponding locations.
That would be confusing and disrupting to everybody!
Accordingly, the most sophisticated of our sample missions include additional logic to compensate: Due to code underlying all of our missions, whenever any Sentient player has already advanced into the mission to a MissionChronoMilestone beyond #1 but then receives the MissionCommander's Morse Code Radio command to leap backward to MissionChronoMilestone #1, that player waits for a brief, randomized period of time (just long enough to avoid Morse Code Radio interference from other players attempting the same transmission) and then automatically issues a Morse Code Radio MissionChronoMilestone command of his own, advertising the next correct, higher milestone number. Upon receipt of a higher MissionChronoMilestone value, all players abandon any effort to use a lower value, so the highest known value will always prevail. Conflicting interpretations of current MissionChronoMilestone are thus automatically resolved, since all players (even the MissionCommander) will receive and act on those Morse Radio commands.
Mission Designers need do nothing to implement this; it's all taken care of for you in underlying LAC infrastructure code.
Last edit: bbosen 2022-03-26