Modding, Mission Design, and Coding > The FRED Workshop

is-goal-true-delay vs is-previous-goal-true - how do they work?


I just got an weird edge case in my PMs:

A player playing Hellgate: Ikeya reported that they cheated to explore possible outcomes of the final mission of that campaign (HGI_04.fs2). Because the mission is so old, there were of course none to be found.

During the course of their "exploration" the player destroyed several ships that supposed to depart (using the cheats to disable their guardian-status and using ~K). And then used the cheat to turn all mission objective complete (~G).

The result was that they got the debriefing for a mission failure - as the Debriefing stages use either is-goal-true-delay or is-goal-false-delay on one or both legitimate primary objectives as a determining factor (the mission has 3, but the third one is meant to fail in the normal sequence of the mission).

BUT they were able to progress the campaign. Campaign progress is governmed by is-previous-goal-true.

So this leaves me with questions regarding the different way these SEXPs appear to operate.

Because, as it appears, is-goal-true/false-delay appears to be satisfied by the first the result that is logged (when the player kill-cheated the sequence critical ships, they failed both mission objectives evaluated in the debrief stages) but is-previous-goal-true appears to evaluate the state the mission objectives are in at the end of the mission, which was changed by cheating later.

You've pretty much got it. is-goal-true checks the mission log. is-previous-goal-true checks the campaign file.


[0] Message Index

Go to full version