Lord Valarian Posted June 25, 2012 Share Posted June 25, 2012 (edited) I read have many articles from CS WIKI, including tutorials from other websites. However, I have tried the conditions on the quests tab. They do nothing. I can a write the script that replaces that, but do they do anything? They work in other scripts. I have no clue what i'm doing wrong. Here's the general layout. This will give some away as what i'm up to in my quest. The functionality of 'Archmage quest - Sanctuary: chapter 1 - Revelation' is more or less done. It's very practical and some GFX, something I built for myself(as most do). It's a full story. Don't hold your breath. I'm learning as go. So, very slow going. More and more secrets, hidden history, gods, ascension, and some practical weapons along the way. Some lore is new made up by me. You may not agree, but enjoy anyway. The starting step I have decided yet. but this is where I'm going. Also, I'm read a lot in the game books but not all. How should I set this up? I can do this with script, but the ifs on the quests tab will be helpful. Not just how, how and why. Completed archmage quest - get stageIn cell 'archmage quarters - getincell?journal entry(quest begins)Quest maker at location in cell.move to quest markerjournal entry, item and noteUse itemteleport to celljournal entryusing another item in room - quest completed Start chapter 2: Portal Mystery The functionality of 'Archmage quest - Sanctuary: chapter 1 - Revelation' is more or less done. It's very practical some GFX, something I built for myself(as most do). It's a full story. Don't hold your breath. I'm learning as go. So, very slow going. More and more secrets, hidden history, gods, ascension, and some practical weapons along the way. Some lore is new made up by me. You may not agree, but enjoy anyway. The starting step I have decided yet. but this is where I'm going. Also, I'm read a lot in the game books but not all. How should I set this up? I can do this with script, but the ifs on the quests tab will be helpful. Not just how, how and why. Completed archmage quest - get stageIn cell 'archmage quarters - getincell?journal entry(quest begins)Quest maker at location in cell.move to quest markerjournal entry, item and noteUse itemteleport to celljournal entryusing another item in room - quest completed Start chapter 2: Portal Mystery Edited June 25, 2012 by Lord Valarian Link to comment Share on other sites More sharing options...
scarycave Posted June 25, 2012 Share Posted June 25, 2012 I'm still rusty at quests myself, but doesn't getincell require a reference? If you want the player you may want to make a quest var that sets to 1 if the player is in the cell and 0 if it's not. Link to comment Share on other sites More sharing options...
WarRatsG Posted June 25, 2012 Share Posted June 25, 2012 (edited) To make spoiler's easy, you can make something that looks like this: by typing [ spoiler ] and [ /spoiler ], without the spaces between the square brackets. What is it you are trying to get the conditions to do? And what part of the quest tab are you adding them?Quest Conditions are completely passive, a means of evaluating which version of something to use. For example, Quest conditions on dialogue help the game to pick out what an actor must say, from a group of possible responses. I don't know your exact specifications, so I will write you some script fragments and you can assemble them how you like. Most of these can be chucked into a quest script. I'm assuming that the first 3 things on your list are all linked, as in you get a journal update while in the room after completing a quest. If GetStage <EditorID of Quest> == <Stage where the quest is completed> If Player.GetInCell <EditorID of Cell> == 1 SetStage <EditorID of quest> <Stage> endif endif The next two I'm guessing are also linked. For that, your quest marker must be a persistent reference, which I will refer to as "MarkerREF". You can change it to whatever you like. Player.MoveTo MarkerREF Do the item and note just appear in the player's inventory with the journal update? If so, then this is what you want... SetStage <Quest ID> <stage> Player.AddItem <EditorID of item> 1 Player.AddItem <EditorID of note> 1 If you mean the journal updates when the player has obtained both, then you can do this: If Player.GetItemCount <item> == 1 If Player.GetItemCount <note> == 1 SetStage <Quest> <stage> endif endif To make this a little neater, you can use the method described here. It may not have a massive effect, but it is worth learning how to use cross-script variables for this kind of thing, for a time when it really does make a difference. How to code what happens when using the item is ambiguous, as I'm not sure how your "using" the item. Are you equipping it? If you are, then attach this script to the item, in an OnEquip block. Again, you will need a persistent reference to teleport to, which I will refer to as "Marker2REF" Begin OnEquip SetStage <Quest> <stage> Player.MoveTo Marker2REF End Again, when you say "using" an item I will assume you are equipping it. Use the exact same script as last time, only without using "Player.MoveTo". Whatever stage you set it to, you can tick a box in the quest tab that automatically completes the quest when that stage is reached. Hope this helps ;) Edited June 25, 2012 by WarRatsG Link to comment Share on other sites More sharing options...
Lord Valarian Posted June 25, 2012 Author Share Posted June 25, 2012 This what I did. The scripting I can do, but the conditions don't work and no clue why not. New quest->ALVQSancturary- Fill in name Main page . getplayablerace == 1 getinseworld == 1 stages tab new -> 10 conditions getincell == [select archmage's quarters] fill in journal entry. I run the game, nothing happens when I enter the room. I can write the script to do this, but why aren't the conditions working?? I'v very good at it now. I'v had some 'dam that's look cool/[pick your slang]' moments and 'wow, that's really handy'. It still needs more GFX, like a complex movement sequence. My lightning is quick and cheap. etc, I'll get around to it. Also, trying to get a magic effect between objects. OBSE has it(i think), but no examples. Effect Z between xyz1 to xyz2 I can't find the static effect(enable/disable). Mana beams in FCR would work, if I could figure out how. Link to comment Share on other sites More sharing options...
WarRatsG Posted June 26, 2012 Share Posted June 26, 2012 Here is the wiki page on conditions And here is the version a little more specific to you... Conditions in quests are passive: they are used to select one item from a group of possible items, the "item" usually being either dialogue or a journal update. So for example, when you speak to someone and select the topic "Chorrol", the game looks up the topic you have selected, then picks one of the responses contained within that topic based on the conditions for each response. The same goes for quest stages - the stages do not activate when the conditions are met, but when the stage is set by a SetStage function then one of the stage's possible Journal Updates will display, the exact one depending on each of their conditions. To make the Stage activate, you must use "SetStage <stage>" in a script. The conditions you set in the data tab, which is the first tab in the quest menu, are ANDed on to each piece of dialogue. It's worth noting that (GetInSEWorld == 1) means that the player is in the Shivering isles (or Hawkhaven :unsure: ), so none of your dialogue will work unless the player is in the Shivering Isles. Also, make sure that your quest script is actually running. In the Quest Data tab, make sure that the script is set to your quest script and make sure that "Start Game Enabled" is ticked, or another script is using "StartQuest <quest>". Link to comment Share on other sites More sharing options...
Lord Valarian Posted June 26, 2012 Author Share Posted June 26, 2012 (edited) It works to a point. First, I can't get the quest icon to change. The quest starts, but getincell won't work. Once I removed it, the quest started. New quest->ALVQSancturarymain5 - Archmage Quest - Sanctuary script name: ALVQSancturaryMain5Script New script:Scriptname ALVQSancturaryMain5Script Short DoOnce Begin GameMode if DoOnce == 0 Set DoOnce to 1 Setstage ALVQSancturarymain5 10 endifEnd click stages tab new -> 10 conditions getplayablerace == 1 and getincell == [select archmage's quarters] fill in journal entry. I'll include screenshots next time. This should work. Edited June 26, 2012 by Lord Valarian Link to comment Share on other sites More sharing options...
WarRatsG Posted June 27, 2012 Share Posted June 27, 2012 (edited) Remove the conditions, then add in the following lines to your script. If GetStage ALVQSANCTUARYMAIN5 < 10 If Player.GetInCell <cell> == 1 SetStage 10 endif Endif If you insist on having the conditions, make sure that the parameters are correct. Edited June 28, 2012 by WarRatsG Link to comment Share on other sites More sharing options...
Lord Valarian Posted June 28, 2012 Author Share Posted June 28, 2012 (edited) Remove the conditions, then add in the following lines to your script. If GetStage ALVQSANCTUARYMAIN5 < 10 If Player.GetInCell <cell> == 1 SetStage 10 endifEndif[\code] If you insist on having the conditions, make sure that the parameters are correct. I removed all the conditions and wrote a script based on what you said. IT WORKS, the way I want! :) EDIT: It's resolved, thanks for the assist. Edited August 1, 2012 by Lord Valarian Link to comment Share on other sites More sharing options...
Recommended Posts