Doable. Make a proposal how should it work and look.
If possible what I would like to see is aside from the "Cancel" and Cydonia" (Or T'Leth") buttons there would also be the potential for several additional buttons to appear on the "Select Destination" menu.
These would only be displayed if the craft selected had a crafts: compatibleSpecialMissions: variable assigned to it that matched the special mission. Like how "spacecraft: true" is currently used except more like a list of potential compatible missions.
crafts:
- type: STR_AVENGER
compatibleSpecialMissions:
- STR_MISSION_CYDONIA
- STR_MISSION_TLETH
- STR_MISSION_Some_other_special_mission_A
- STR_MISSION_Some_other_special_mission_B
Each mission button is displayed on the "Select Destination" menu only so long as the craft has the mission listed in its compatibleSpecialMissions: list and that special mission's required research/etc has been already unlocked by the player.
That would allow for several different special mission options at once who's availability to the player could be unlocked in any order or combination.
Here is a mockup of what that would look like: (The background used is from the excellent X-Pirates (https://openxcom.org/forum/index.php/board,18.0.html) mod by Dioxine)
(https://openxcom.org/forum/index.php?action=dlattach;topic=8783.0;attach=52246)
Alternatively just the ability to change the text for the "Cydonia" button and which mission it is assigned to at that moment depending on the player's currently unlocked research/etc would allow for different special missions depending on their position in the mod's story arc.
However, as there could be only one "Cydonia" button in this second example mod creators would need to be careful that only one possible "Select Destination" special mission was available at any time.
That mockup is unusable.
I was thinking the menu with the new buttons could dynamically shrink or grow depending on how many were currently available to the player... but you are right that kind of looks messy.
How about something more like this instead then?
Below the normal "Select Destination" menu a second window appears if there are any defined "Special Missions" available to the player that the selected craft can be used for.
There can be an infinite number of these which are toggled between using a scroll bar if they exceed the number currently displayed on screen.
In the below mock ups only 3 are displayed at once, but a large window with more buttons displayed at a time would most likely be more practical.
Here is a version with each "Special Mission" as a button which when clicked launches the mission.
(https://openxcom.org/forum/index.php?action=dlattach;topic=8783.0;attach=52260)
Here is a version with each "Special Mission" displaying the missions name with a mission launch button beside it.
(https://openxcom.org/forum/index.php?action=dlattach;topic=8783.0;attach=52262)
If you create something more like the second version of this it may be a good idea to also make the word on the button configurable as well so that it can better suit the style of whatever mod is being created.
For example Chiron's Stargate mod may use DIAL instead of SELECT to reference the Stargate's address activation for portal travel (https://en.wikipedia.org/wiki/Stargate_(device)).
(https://openxcom.org/forum/index.php?action=dlattach;topic=8783.0;attach=52266)
Alternatively the launch mission button could be reduced in size to maximize the available space for each "Special Mission" name's text like so:
(https://openxcom.org/forum/index.php?action=dlattach;topic=8783.0;attach=52264)
4/ missions don't have any research unlocks (Cydonia unlock is practically hardcoded); all other missions have only mission scripts, which can't be used here
but I think a separate screen would be the right path, as opposed to cluttering the Geoscape on craft launch.
I agree that trying to hook this onto the "Select Destination - Cydonia" screen may cause unintentional frustration for the player and if I understand what Meridian is saying it sounds like altering the Cydonia button itself may not be the best method to achieve multiple "Non-Geoscape Special Missions".
If not from the "Select Destination" screen where would you want an "Available Non-Geoscape Missions" type menu to be accessed from?
I think it should be: base functions, crafts, research. For more detailed conditions probably script should handle it.
Base functions requirements for "Special Missions" would probably be very useful for Chiron's Stargate mod as it would help code off world travel so that it could only be able to occur from any X-Com(Or SGC (https://en.wikipedia.org/wiki/List_of_Stargate_SG-1_characters#Stargate_Command) in this case) base(s) with a functional Stargate.