[Mod / Idea Discussion] Simoom's Epic Missions (temporary title)

The place to discuss scripting and game modifications for X Rebirth.

Moderators: Scripting / Modding Moderators, Moderators for English X Forum

User avatar
Simoom
Posts: 1110
Joined: Sat, 30. Oct 10, 14:14
x4

[Mod / Idea Discussion] Simoom's Epic Missions (temporary title)

Post by Simoom »

I feel XR's generic missions are somewhat lacking, especially once you are in the end game. Most missions simply give credits as rewards. Some missions have you find lockboxes which may contain rare items, but if you have everything you need by end game then that's superfluous. Some missions reward you with ship at a discount, but again... if you are at end game and are drowning in credits, then that's meaningless as well (since you can just buy whatever ship you want).

So I was thinking about creating some new combat missions (they would be short chains) that will reward the player with unique ships that aren't normally available in the game. This way players can actually have something to look forward to even after they have a giant empire set up and all that.

But I could use some community feedback, so... here's an outline of my idea, please chip in your opinions or add your own suggestions:
  • Stage 1 - So... would you prefer the mission to be offered as a type of generic mission at stations? Or as a random event you can encounter?
    • For generic mission, I was thinking they would be offered in zones near Xenon territory, and upon acceptance you would be told that some scouts spotted a Xenon fleet and you have to go help scout it out. After patrolling a few zones, you come across a battle between a lone NPC patrol and a large Xenon fleet (this is meant to be harder than the Toride Xenon Incursion mission, so... probably at least 3-5 I's with 2 escort K's each). The NPC patrol blows up and you are prompted to flee the zone and assemble a fleet.
    • The other idea is you have a chance to get a random distress call (similar to the "Ship in Distress" missions). If you accept the mission, you are given a waypoint to investigate the origin of the distress call, and that's how you come upon the battle between the NPC patrol and the Xenon fleet (same as above). You are then prompted to flee the zone and assemble a fleet.
  • Stage 2 - While you are away, the Xenon fleet would be programmed to push into a populated sector (so depending on where you accepted/encountered the mission, the Xenon would push into either Albion, OL, HOL, or FO). I am thinking set them to be invulnerable while the player is OOZ, that way we don't have to deal with the possibility of them being destroyed before the player is ready. Also gives a sense of urgency since the NPC zones will really be trashed). Could may be also program them to jump to a different zone after a set amount of time, to make it appear that they are making progress in their "invasion".
  • Stage 3 - Once the player arrives with a fleet and manages to destroy all the Xenons, you are sent to the relevant faction's headquarters (so either HOA/PMC, AG, or TER) to receive your reward. I was thinking the rewards would be faction-based (again, based on where you accepted/encountered the mission):
    • Albion: 3-6 Golem/Moebius, depending on enemy strength.
    • OL: 3-6 Xenon P/S, depending on enemy strength
    • HOL: 3-6 Kha'ak fighters, depending on enemy strength
    • FO: Marauder Phoenix + squadron of Harrier/Falcon (exclusive pirate model not sold by TU Overwatch)
What does everyone think? :)
User avatar
mr.WHO
Posts: 9138
Joined: Thu, 12. Oct 06, 17:19
x4

Post by mr.WHO »

I'd love to see gate blockade mission in OL, HoL/Torride/Cold Star where you have to defend position near gate:

- defensive gate blockade - e.g. Torride colonist spotted Xenon fleet incoming to Cold Star or HoL from Torride - you have to fly to the "friendly side" of the gate and set up a blockade. After som time Xenons will start flying from the gate and you have to destroy them.

- offensive gate blockade - local defense forces managed to fend off Xenon attack. Remaining Xenon forces are retreating (e.g. to Maelstrom) - you have to fly to the gate and hold position to prevent any Xenon warship from escaping ((their warship would boost into gate zone and try to break through your force into the gate).




Other types of mission:
- preemptive strike - local scouts spotted Xenon staging point. You're to fly there and destroy all Xenon forces in that zone (some warships plus bunch of fighters)

- joint strike - same as preeemptive strike, but after X minutes of your arrival to target zone friendly forces will fly to support you (anything ranging from squad of fighters, bombers to small fleet).
User avatar
Nikola515
Posts: 3193
Joined: Fri, 4. May 12, 07:40
x4

Post by Nikola515 »

Sounds good to me ;)

When doing some of those missions it would be good idea to add some rewards like geting items such as weapons or antimatter cells. Simular to one missions in DV where we get M sizes trader but loaded with number of wares inside. Also for some hard missions we should get battle ships but not 100% (depends on luck) upgraded. Sometimes it can be 20% upgraded and sometimes 0%. We would need to take them to shipyard to add weapons and shields. This would make things little more interesting ;) Also would it be possible to add build NPC stations missions? For example as soon as we place CV to location we should get message to turn it over to NPC and it would finish station to 100%.

Edit:
1) Also missions to destroy pirates stations would be good idea. There should be two tipes of those missions. One where you need to destroy station by your self and other with your allays. But there should be more of tipes of stations such as factories or even shipyards. And if possible they should be in empty zones and after destroyed they should dissappear.

Edit2:

Sorry im having brainstorm now :D For some of those missions would it be possible to have your backup not to show up until you destroy weapon platforms or that radar dish (jump jammer is inside)? Than friendly fleet jumps in front of station and battle begins ;)
It's not world hunger because we can't feed poor,it's because there will never be enough to feed the rich .....
pref
Posts: 5625
Joined: Sat, 10. Nov 12, 17:55
x4

Post by pref »

I had a similar idea, but not the time..

Put a weird looking bigger roid in one of the dense roid fields with some tunnels,
hide a xen wreck (like a k buried inside), and a lockbox.

Picking up lockbox content activates the K

Use the item -> enable some kind of bonus (was thinking of enabling hijack here)

Sell to a locked neutral PMC ship -> xenon invasion on HoA
Sell to HoA -> make all factitons hostile to PMC, spawn PMC invasion

Defeat Xen/PMC ships -> peace across the universe, or revert to vanilla standings

Respawn roid somewhere, repeat

Once done coding make up the story for it.. :D
User avatar
Simoom
Posts: 1110
Joined: Sat, 30. Oct 10, 14:14
x4

Post by Simoom »

Writing some preliminary codes for the missions now... but I could use some help.

For now I am using player location as a trigger (if player entered a zone in one of the relevant sectors). What's the best way to ensure the following:
  • Only one such mission is triggered in the game at any time.
  • After mission completion, it won't be triggered again for a set amount of time.
Edit: Okay, figured a few things out by myself... can someone look over the following and see if this would work?

Code: Select all

    <cue name="Simooms_Epic_Missions_Base" instantiate="true" namespace="this">
      <conditions>
        <check_any>
          <event_game_loaded/>
          <event_object_changed_sector object="player.primaryship"/>
        </check_any>
        <check_any>
          <check_value value="md.Setup.PostChapter3Jobs.state" exact="cuestate.complete" comment="Player finished campaign"/>
          <check_value value="player.module" exact="'ep1'" negate="true" comment="Player on free start"/>
        </check_any>
      </conditions>
      <actions>
        <set_value name="$MissionDelay" exact="15s"/>
      </actions>
      <cues>
        <cue name="Simooms_Epic_Missions_Trigger">
          <conditions>
            <event_object_changed_zone object="player.primaryship"/>
            <check_value value="$MissionDelay le player.age"/>
            <check_any>
              <check_value value="player.sector.macro.ismacro.cluster_b_sector04_macro" comment="Far Out"/>
              <check_value value="player.sector.macro.ismacro.cluster_c_sector08_macro" comment="Devoid Prime"/>
              <check_value value="player.cluster.macro.ismacro.cluster_a_macro" comment="Maelstrom"/>
              <check_value value="player.cluster.macro.ismacro.cluster_t_macro" comment="Fields of Opportunity"/>
              <check_value value="player.cluster.macro.ismacro.cluster_n_macro" comment="Toride"/>
              <check_value value="player.sector.macro.ismacro.cluster_m_sector01_macro" comment="West Gate"/>
              <check_value value="player.sector.macro.ismacro.cluster_m_sector02_macro" comment="Sillarne's Triumph"/>
            </check_any>
          </conditions>
          <actions>
            <do_any chance="10">
              <set_value name="$MissionType" exact="'gate_defense'"/>
              <set_value name="$MissionType" exact="'incursion'"/>
              <set_value name="$MissionType" exact="'first_strike'"/>
            </do_any>
            <do_if value="$MissionType?">
              <!-- Gate Defense Mission -->
              <do_if value="$MissionType" exact="'gate_defense'">
                <signal_cue cue="Simooms_Epic_Missions_GateDefense_Start"/>
              </do_if>
              <!-- Incursion Mission -->
              <do_elseif  value="$MissionType" exact="'incursion'">
                <signal_cue cue="Simooms_Epic_Missions_Incursion_Start"/>
              </do_elseif>
              <!-- First Strike Mission -->
              <do_elseif  value="$MissionType" exact="'first_strike'">
                <signal_cue cue="Simooms_Epic_Missions_FirstStrike_Start"/>
              </do_elseif>
              <set_value name="$MissionDelay" min="player.age + 30min" max="player.age + 1h"/>
              <reset_cue cue="this"/>
            </do_if>
            <do_else>
              <reset_cue cue="this"/>
            </do_else>
          </actions>
        </cue>
      </cues>
    </cue>
pref
Posts: 5625
Joined: Sat, 10. Nov 12, 17:55
x4

Post by pref »

You can create a static base cue for your variables.
Can also attach global vars to MD iirc, like MD.$myVar

With the code above you will have a different instance for each sector crossing, so each will have its own delay var/timestamp.

You could save the time of last completion in a global, and compare that to (current - delay) when checking the sector change event.
Same story with the flag to show if its running.
User avatar
Simoom
Posts: 1110
Joined: Sat, 30. Oct 10, 14:14
x4

Post by Simoom »

pref wrote:You can create a static base cue for your variables.
Can also attach global vars to MD iirc, like MD.$myVar

With the code above you will have a different instance for each sector crossing, so each will have its own delay var/timestamp.

You could save the time of last completion in a global, and compare that to (current - delay) when checking the sector change event.
Same story with the flag to show if its running.
I was wondering if instantiation would be an issue here... I am not familiar with using static cues or global variables though. Can you demonstrate how you would write the mission trigger for something like this? I learn by example most quickly... :D
JESS 246
Posts: 574
Joined: Mon, 3. Jul 06, 03:24
x3

Post by JESS 246 »

Hi Simoom

Will be looking forward to this mod as the XR is getting mundane and anything to liven it up will be a well worth wait.

Nice one Simoom.
User avatar
mr.WHO
Posts: 9138
Joined: Thu, 12. Oct 06, 17:19
x4

Post by mr.WHO »

More mission ideas:

"recon ops" - friendly faction near Xenon territory ask for your help to track Xenon activity. You're asked to join recon ships (L size ship, like Balor or Sul) in designated zone that will fly in several zones and stay for some time in each doing long range scans. During that Xenon will send attack forces and you have to protect the recon ship. Successful mission might increase the chance of trigerring the "preeemptive strike" and "joint strike" mission.

"logistic delivery" - frendly faction is currently performing strike into Xenon territory (e.g. Maelstrom would be ideal) but their attack force is running low on supplies. To keep the offensive you're asked to escort several supply freighters to fleet rally point. If the freighters are M-size they will fly to that point via highway system (plus they might have several fighters as escort). If they are jump capable freighters they will perform jump, but every time they jump they rechange their drives for some time (to give Xenons a window to attack). You have to protect them until they reach the destination.

"retreat cover" - friendly capship (or several) has been ambushed inside Xenon territory and it's jumpdrive and engine have been dammage. You have to protect the ship (or ships) from Xenon attack until repairs are completed and they jump away.

"bear baiting" - friendly faction spotted Xenon I and some support ships roaming in the system. Friendlies prepared their heavy ships, but there is trouble in catching. You have been asked to lend a hand in luring it into the trap:

>>>Stage 1 - secondary Xenon force has been spotted (Xenon K with some fighters), we belive attacking it might lure Xenon I to come to support them.

>>>Stage 2 - Xenon I jump in with some fighters spawned with it. You have to destroy Xenon I engines and jumpdrive.

>>>Stage 3 - friendly faction destroyers jump into the zone to finish the Xenon I. You have to provide assitance by destroying turrets and supressing jump drive and engine repairs. Misson is finished when Xenon I is destroyed.
pref
Posts: 5625
Joined: Sat, 10. Nov 12, 17:55
x4

Post by pref »

Simoom wrote:I was wondering if instantiation would be an issue here... I am not familiar with using static cues or global variables though. Can you demonstrate how you would write the mission trigger for something like this? I learn by example most quickly... :D
Sorry, wasn't around in past few days much.

Generally, when in doubt always check vanilla code.
For ex. in plot1 mdscript:
this is where it sets the mission started flag

Code: Select all

    <cue name="Start">
      <conditions>
        <event_cue_signalled cue="md.Setup.GameStart" />
      </conditions>
      <actions>
        <debug_text text="'Episode 1 Started'"/>
        <set_value name="md.$Plot_Episode1_Started" exact="true"/>
        
        <signal_cue cue="Check_Chapter1_Start"/>
      </actions>
    </cue>
and on mission completion save the time like md.$lastSimoomMissionCompletion = player.age

then you can reference this in the mission trigger condition:

Code: Select all

...trigger events...
<check_value value="!md.$isSimoomMissionRunning"/>
<check_value value="md.$lastSimoomMissionCompletion + delay lt player.age"/>
You can also define vars in the Start cue up there, in case they are only needed within that md script. Then define all the mission cues as children of start and they all will see the same variable(s).

Otherwise if the vars need to be accessed from other md scripts, it might be better to use md.$variable for this like in the code i quoted.
User avatar
Nikola515
Posts: 3193
Joined: Fri, 4. May 12, 07:40
x4

Post by Nikola515 »

I would prefer getting desstres call or being asked to investigate missing patrol.But generic missions are good idea as well but it should be that common. If possible i would like to skip patrol missions (i hate patrol missions) :( Sometimes player wants to get straight to battle :twisted: I don't want to lie but rewards are not that appealing :( Reason why im saying is because how hard those missions will be. If im going to go up against Xenon I im sure some of my capitals will be destroyed do to bad AI so reward should be more than loss. This is just my opinion i hope we get more feedback on this...Do to small reward people might not want to take risks and take on that mission (perhaps you should put it for vote ).
Also i have few questions ?

1) Can you place those missions in empty zones ?

2) Would you be able to place stations that can be 100% destroyed?

3)Are you able to add your own unique ships? For example get Rahana with more cargo,weapons,shields,faster destroyers,DV ships within more weapons? If you are able to modify ships stats and add them in game as reward it would be much better and more appealing... I would love to have faster Titurel as my personal trading ship and im pretty sure i would do almost anything to get it ;)

4) Are you planning to expand this mod beyond those missions? For example add whle bunch of different random missions and events ?

Anyway looking forward to this mod :D
It's not world hunger because we can't feed poor,it's because there will never be enough to feed the rich .....
User avatar
Simoom
Posts: 1110
Joined: Sat, 30. Oct 10, 14:14
x4

Post by Simoom »

Hey folks - sorry for the lack of updates on this mod. I am taking a break from XR right now to catch up with a few things with my Star Citizen guild. ^^ I'll work more on this when I find time, though.
Nikola515 wrote:I would prefer getting desstres call or being asked to investigate missing patrol.But generic missions are good idea as well but it should be that common. If possible i would like to skip patrol missions (i hate patrol missions) :( Sometimes player wants to get straight to battle :twisted:
I wouldn't write the patrol part of the mission like the way Egosoft does theirs (not enough action going on - in fact oftentimes you arrive at the zone and some NPC patrol or station has already killed all the bad guys).

I do want to implement a short preamble to the mission so it's not like a giant fleet of Xenons spawns right away - what you have to do during this phase of the mission will depend on the mission type (I have three types planned).
Nikola515 wrote:I don't want to lie but rewards are not that appealing :( Reason why im saying is because how hard those missions will be. If im going to go up against Xenon I im sure some of my capitals will be destroyed do to bad AI so reward should be more than loss. This is just my opinion i hope we get more feedback on this...Do to small reward people might not want to take risks and take on that mission (perhaps you should put it for vote ).
Well the idea is capital ships you can buy are not as "valuable" as having exclusive Xenon and Kha'ak fighters... I mean, okay, fighters are not that useful, but nobody cares about getting credits as rewards. Could may be add in a free capital ship as a reward, then? I don't know.

Feel free to suggest.
Nikola515 wrote:Also i have few questions ?

1) Can you place those missions in empty zones ?
Hmm, I don't think so. I would prefer to control where the Xenon ships should spawn, and I wouldn't be able to reference the empty zones to spawn ships or missions in.
Nikola515 wrote:2) Would you be able to place stations that can be 100% destroyed?
Station invulnerability setting is not set by MD script... it's a part of their asset file. So technically, no.

However, I could manually write something in MD that makes the mission station self-destruct if its hull drops to a certain level, for example... I don't know. It's not a very ideal solution and likely not going to work quite as intended.
Nikola515 wrote:3)Are you able to add your own unique ships? For example get Rahana with more cargo,weapons,shields,faster destroyers,DV ships within more weapons? If you are able to modify ships stats and add them in game as reward it would be much better and more appealing... I would love to have faster Titurel as my personal trading ship and im pretty sure i would do almost anything to get it ;)
Ship attributes are specified in asset files. You can't customize them in MD. Doing what you suggested would require creating new ships, essentially (with separate asset files from vanilla). This means such ships would have a different macro value, which means if you uninstall the mod, all those ships will disappear (not save game safe).
Nikola515 wrote:4) Are you planning to expand this mod beyond those missions? For example add whle bunch of different random missions and events ?
I am not sure... my original goal was to add some epic combat missions (because the ones in the game are not very exciting and I don't want credits as rewards). I can't say I am particularly interested in other mission types, or write new missions for them. :/
User avatar
Nikola515
Posts: 3193
Joined: Fri, 4. May 12, 07:40
x4

Post by Nikola515 »

Welcome back :)

Reason why i wanted to ask about empty zones was so those missions wouldn't effects player assets as much. For example i would personally avoid taking missions in areas where i have assets becuse they might get destroyed. Also they would be harder without NPC interferences.
Another reasons was to see missions like deep space missions. Here are some examples:

1) Deliver supplies to HoA R&D division.
Heart of Albion is developing new weapons to counter expanding PMCs AGI threat.Make sure you are not followed.
This is HoA secret bace and it is far away from known zones (5 to 10m of boosting ). So we get missions to deliver 1000 refined metals (simular to 100 e cells missions). We dock and order our ship to go to location marked by mission. We arrived there and but station is not thare but enemy that was following you. Now you need to protect your trader ship against enemy untill you get coordinates where station is after 2 to 5 minutes. Player can disable enemy ship or destroy it. Delivery wares should be paid well and you would need to have 20 of reputation to get them.

Reason i asked about stations was becuse i wanted to see more battle for gate missions. Where PMC is trying to rebuild owerwatch and wee need to stop them. Same as pirates/xenon. Also i would love to see more missions from X3 like build NPC stations that's why i was asking about expanding ;)

Sorry for my bad English ;)

Edit: Xenon capital ships would be good reward as well as CV with unique stations like URV (plot ) stations. Also fully equipped ships is good idea as well like Titurels....
It's not world hunger because we can't feed poor,it's because there will never be enough to feed the rich .....

Return to “X Rebirth - Scripts and Modding”