What is it ?
I aim to create a topic where all basic questions are listed and answered. If you have a common problem (in your opinion) or even better a solution to one of listed problems and you want to make life easier for the CK-Community post it here. I'll update this topic once in a while, adding your questions and solutions. I'll also contact the admin to make him take a look at this topic once in a while (hopefully he'll agree to do it
)
Hit CTRL+F and type a keyword(s) to easy find a question.
Important !
1. When you post a solution, please give a hint on its reliability. So if you think that your solution might work, but you haven't tested it, write it down.
2. If you are using a solution marked as full and it doesn't work, count to ten and try again. If it isn't working anyway, let us know about it.
3. Let us know if a proposed solution that has been marked as possible is working for you or not.
4. Please try to make your answer to look like a one of the already related.
Status colour
No solution yet
Full solution
Possible solution / not full
Questions
How can I add a script ?
Open properties of your object and find a "Script" section -> LMB on "Add" -> enter a name of your script -> LMB on "OK"
A patrol route is made inside an AI package and it is possible to create many AI packages for different routes. Now if you look at the AI package tab there is also a Conditions tab, there you can set the package to run only under determinated conditions, in this case under the quest stage condition.
So there add a condition as GetStage - Your quest name - stage number you want that to run.
Doing that the package will run only under the quest stage you give.
You need to add a script to the object that should change the status of your quest.
Scriptname *Name of your script* extends ObjectReference Quest Property *Name of your quest* Auto Event OnActivate(ObjectReference akActionRef) *Name of your quest*.SetStage(*Stage number*)endEvent
How can I make my scripts work under exact circumstances ?
Use the control structures :
- IF
if(*circumstance*) *what should happen when if is true*else *what should happen when if is false*endif- WHILE
while(*circumstance when your script is working*) *what should happen*endwhile
Question to you guys : Is "do while", "switch" and "for" also implemented ?
You need to add a script to the trigger you want to work this way.
Scriptname *Name of your script* extends ObjectReference Quest Property *Name of your quest* autoEvent OnTriggerEnter(ObjectReference akActivator) if (akActivator == Game.GetPlayer()) if *Name of your quest*.GetStage() == *Stage number* *what should happen* endifendifEndEvent
Like the past bethesda games, you can't directly change a Game Setting trough script without a script extender.
It seems, that the only thing you can do is to get the value of a game setting as debug info. See if SKSE (or Script Dragon) have the script functions for that.
How can I activate an object at certain quest stage and what is so special in doors to consider ?
Credits
Planteur, S_t_e_e_p, Neurological,
Thank you for your help !!!



