OpenXcom Forum

Modding => OpenXcom Extended => OXCE Suggestions DONE => Topic started by: Meridian on November 22, 2020, 04:48:57 pm

Title: [DONE] "Escort the VIPs" and "Protect the VIPs" missions
Post by: Meridian on November 22, 2020, 04:48:57 pm
Missions as you now them from xcom2012.

1. "Escort the VIPs" - you need to escort VIPs to exit area; killing all enemies is not enough

2. "Protect the VIPs" - you need to protect the VIPs; killing all enemies ends the mission, but if you didn't save enough VIPs it will count as failure

"Escort the VIPs" sample:

Code: [Select]
units:
  - type: STR_DR_MARAZUKI
    vip: true
    ...
alienDeployments:
  - type: STR_EXTRACT_SCIENTIST
    ...
    escapeType: 2                                    # craft/entry tiles serve as exit
    vipSurvivalPercentage: 100                       # all VIPs must survive
    missionCompleteText: "STR_MARAZUKI_SUCCESSFUL"   # if he escapes (and at least 1 xcom unit with him)
    missionFailedText: "STR_MARAZUKI_FAILED"         # anything else happens
    abortPenalty: 0                                  # must be 0 since mission can only be finished by aborting
    ...

More description on how to make the VIP a player-controlled summoned unit: https://openxcom.org/forum/index.php/topic,6535.0.html

More description how to recover VIPs as scientists, engineer, custom soldiers, items, etc: https://openxcom.org/forum/index.php/topic,5185.msg134201.html#msg134201

"Protect the VIPs" sample:

Code: [Select]
alienDeployments:
  - type: STR_TERROR_MISSION
    ...
    escapeType: 0                                    # no need to escape, just defend them
    markCiviliansAsVIP: true                         # just mark all civilians as VIPs, alternatively you could only mark some of them using unit-level vip flag as seen in the above example (Dr. Marazuki)
    vipSurvivalPercentage: 10                        # at least 10% of VIPs must survive
    missionCompleteText: "STR_XXX_SUCCESSFUL"        # if you win and enough VIPs survive
    missionFailedText: "STR_XXX_FAILED"              # anything else happens
    abortPenalty: 5000                               # so that aborting on turn 1 is discouraged :)
    ...