RocketMan on 21/4/2011 at 22:40
Hate to harp on an old topic but I can't find anything related to ShockED as far as mission objectives/quests go. A couple people were on the verge of making video tutorials on this topic [cough] :p but I'd be happy with a crappy typewritten instruction set as a response to this thread. Far as I understand, the quest system works differently between ss2 and thief so the literature that I did find probably isn't applicable since it was for DromED. Really and truly, a video demonstration is hands down the best way to convey this feature because I think some (most?) people find written instructions cumbersome when they're not familiar with the interface to begin with. Nevertheless, any information would be better than nothing at this point. Many thanks.
Nameless Voice on 24/4/2011 at 03:43
What in particular are you trying to do?
I'm not hugely familiar with the system, but as far as I know everything is done manually. There are no objectives like in Thief which automatically tick off when you meet certain criteria, just a bunch of quest variables which are used to keep track of which objective ("notes") are currently active.
They're also called "quest bits" instead of "quest variables" in SS2, and different scripts are used to control them, though I believe they act mostly the same.
RocketMan on 25/4/2011 at 03:09
Quote Posted by Nameless Voice
What in particular are you trying to do?
I'm not hugely familiar with the system, but as far as I know everything is done manually. There are no objectives like in Thief which automatically tick off when you meet certain criteria, just a bunch of quest variables which are used to keep track of which objective ("notes") are currently active.
They're also called "quest bits" instead of "quest variables" in SS2, and different scripts are used to control them, though I believe they act mostly the same.
Exactly, I mean this is sort of what I thought about how it worked. The issue I have is that based on this "manual" system, I need a concrete demonstration of how to take an abstract idea for a quest and convert it into commands or quest bits as you say. If it were C code, I'm familiar with the syntax and can make complex conditionals from my abstract mission ideas but I have no clue how to work with ShockED to reach these goals.
Say I want to blow up 2 objects and then have some "conversation" take place. Say I want to frob something and have a bunch of access points open up or say I want to change the behaviour of frobbing something depending on whether another task has been completed. Normally I'd sort these actions logically into a bunch of if/then statements with variable names, etc. but I need to know what the equivalent functions are that I can use. I'd be interesting in knowing how variables are handled and what forms they can take, what sort of logical operations are available (comparing variables, if/then or similar conditional statements, loops, etc) and how to manipulate the archetypes and other objects in ShockED based on the quest logic.
Part of the problem is that I don't really know what I'm asking and the above may seem like a garbled mess of questions because I've never seen the quest system myself before. Hopefully you get what I'm asking.
Nameless Voice on 25/4/2011 at 13:08
Okay, there are two things here.
1) Using quest variables to display notes and goals in the PDA. These are specially-named quest variables which the game reads to determine whether or not to display goals or not, an whether or not they should be ticked. I don' remember the format off-hand, but a quick investigation of the OMs ought to give you an idea.
The second is using quest variables as actual variables to count and influence behaviour.
Generally speaking, you can perform simple maths on qvars (such as incrementing them), and you can have triggers which fire when quest variables are within certain boundaries (e.g. activating something when a variable is >5, for example.)
The system doesn't support anything particularly complicated, such as assigning one variable to another, or comparing variables to each other. Luckily, that's where NVScript comes in, as it has its own quest variable scripts that can handle such complex operations (I'm quite proud of the maths parser I built in in the latest version).
So, two places to look for more information.
Firstly, check out (
http://www.thiefmissions.com/telliamed/qvars.html) Telliamed's guide to variables.
Secondly, take a look at the documentation for (
http://www.ttlg.com/forums/showthread.php?t=134166) NVScript, specifically the documentation for the scripts NVTrapSetQVar and NVQvarTrigger. It also includes a lot of Telliamed's guide.
Third, make sure you're familiar (
http://www.ttlg.com/forums/showthread.php?t=112228) An Introduction to Scripts, so you know what to do with the script messages sent by quest variable triggers.
RocketMan on 28/4/2011 at 00:39
Quote Posted by Nameless Voice
Okay, there are two things here.
1) Using quest variables to display notes and goals in the PDA. These are specially-named quest variables which the game reads to determine whether or not to display goals or not, an whether or not they should be ticked. I don' remember the format off-hand, but a quick investigation of the OMs ought to give you an idea.
The second is using quest variables as actual variables to count and influence behaviour.
Generally speaking, you can perform simple maths on qvars (such as incrementing them), and you can have triggers which fire when quest variables are within certain boundaries (e.g. activating something when a variable is >5, for example.)
The system doesn't support anything particularly complicated, such as assigning one variable to another, or comparing variables to each other. Luckily, that's where NVScript comes in, as it has its own quest variable scripts that can handle such complex operations (I'm quite proud of the maths parser I built in in the latest version).
So, two places to look for more information.
Firstly, check out (
http://www.thiefmissions.com/telliamed/qvars.html) Telliamed's guide to variables.
Secondly, take a look at the documentation for (
http://www.ttlg.com/forums/showthread.php?t=134166) NVScript, specifically the documentation for the scripts NVTrapSetQVar and NVQvarTrigger. It also includes a lot of Telliamed's guide.
Third, make sure you're familiar (
http://www.ttlg.com/forums/showthread.php?t=112228) An Introduction to Scripts, so you know what to do with the script messages sent by quest variable triggers.
Cool thanks, let me weed through some of this and get an idea for how it works. I may have to come back with a specific example to ask you to type the commands verbatim so I have an example to reference as a prototype of sorts.