Issues with objectives. - by DarkMax
DarkMax on 1/7/2018 at 22:51
Okay so I'm finishing a mission and all that's left is setting up the objectives, except some of them don't work properly.
Issue #1: I have an optional "don't kill anyone or anything" objective, but it makes you lose (even though you shouldn't lose as it is OPTIONAL) if you kill only humans and doesn't count the rest of living creatures (goal_target is set to the "creatures" archetype, not only humans).
Issue #2: There's an objective that requires you to find several loot objects scattered over the map, but it doesn't complete when you get them all. All of them have the TrigWorldFrob script and FrobInfo>Move, Script on them, and they are linked to a RequireAll trap which is linked to a QuestVar that has =1:goal_state_3.
:confused:
DarkMax on 1/7/2018 at 23:53
Issue #2 solved. The solution was to link the RequireAllTrap to another QuestVar trap with =1:goal_visible_3 in addition to the other QuestVar trap.
I'm still unable to make the player NOT LOSE when they fail to complete the "don't kill" objective :p
nicked on 2/7/2018 at 05:42
Is this for Thief 1 by any chance? Thief 1 does not support optional objectives.
DarkMax on 2/7/2018 at 10:48
Nope, this is T2. I just decided to make it non-optional but available in expert only.
R Soul on 2/7/2018 at 15:10
The VictoryCheck script probably doesn't test failed goals to see if they're also optional.
All AI have the (
http://www.thiefmissions.com/telliamed/scripts.html#jaccuse) JAccuse script which can send a J'Accuse message to the player. The (
http://www.thiefmissions.com/telliamed/scripts.html#victorycheck) VictoryCheck script will either complete or fail the goal
I think the only way to allow an optional no kill would be to replace JAccuse with something that cancels a goal rather than sending that J'Accuse message. It might be possible to write one with a Squirrel script. A brief look at the documentation suggests it can get the ID of the 'culprit' object, and that's 2/3rds of the battle.
john9818a on 6/7/2018 at 17:01
On the loot objective would you have to make it irreversible? It seems that if the player picks up a non-qualifying loot item after triggering the objective then the objective will become uncompleted.
Edit: I just answered my own question. In a test I was able to take two loot items and then a non-linked loot item and the objective remained completed even without making it irreversible.