Fallout 4 Simple Fetch Quest Tutorial Chapter 12: Scripting Artifact Retrieval

From the CreationKit Wiki
Revision as of 16:46, 17 April 2017 by imported>Ravelabenergy
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search
Fallout 4 Simple Fetch Quest Tutorial Chapter 12: Scripting Artifact Retrieval
Fallout 4 Scripting Quest Tutorial Series, Chapter 12: Scripting Artifact Retrieval
Return to Tutorial Hub
LeftArrow.png Previous Tutorial Next TutorialRightArrow.png

Note: This tutorial is written in Action-Reaction style — Headers are the action you have to do, and the pictures that follow depict the reaction (or result) of the Creation Kit.

Start up your Mod in the GECK[edit | edit source]

  • Open up your Quest
  • Bring up the Cell View windows

Note: This is only if the GECK isn’t running, and yes I skipped a lot of steps because we’re far into these tutorials!

Having accepted the quest, we now need to add a scene and dialogue for when the finds the object and has to return it to the NPC.

Now We’ll introduce a new concept: scripting for objects

START: PROCEDURE ADDING CODE TO AN OBJECT

Picture12-1.png

Double-click the cell containing the object to be retrieved[edit | edit source]

In our case the object is the TeddyBear and it’s in BoSHoldingCellTut.

I adjusted the windows and zoomed up so you could see the Teddy Bear (lower left) and Ash Skow (upper right)

We need to add code to the teddy bear so when the player picks it up the Quest Stage # is updated to the retrieved index # (30)

Picture12-2.png

Right-click over the Teddy Bear[edit | edit source]

Picture12-3.png

Select Edit in the Pop-Up[edit | edit source]

Picture12-4.png

Click Scripts (tab) > Add (button)[edit | edit source]

Note: You might need to scroll right in order to find the Scripts tab

Picture12-5.png

Click [New Script][edit | edit source]

Picture12-6.png

Click OK[edit | edit source]

Picture12-7.png

Enter a Name: for the script[edit | edit source]

I used AshSkowTeddyBear

Picture12-8.png

Click OK[edit | edit source]

Recall I said when the player retrieves the TeddyBear, it updates the Quest Stage # to retrieved (30). But the Teddy Bear needs access to the AshSkow Quest Object, this is done via a property Picture12-9.png

Click the Add Property Button[edit | edit source]

Picture12-10.png

Select Quest as the Type: and enter a Name:[edit | edit source]

I used pQuest, for property Quest. The name is arbitrary, but subject to typical programming variable name conventions.

Picture12-11.png

Click OK[edit | edit source]

Picture12-12.png

Select pQuest[edit | edit source]

Picture12-13.png

Click the Edit Value button[edit | edit source]

Picture12-14.png

Select AshSkowQuest in the Pick Object: drop-down[edit | edit source]

Picture12-15.png

Click OK[edit | edit source]

Picture12-16.png

Right-click over the Script Name[edit | edit source]

Picture12-17.png

Select Edit Source[edit | edit source]

Picture12-18.png

Add the following code to advance the Quest Stage # to the retrieved index[edit | edit source]

Event OnActivate(ObjectReference akActionRef) pQuest.SetStage(30) EndEvent

Picture12-19.png

File > Save to compile[edit | edit source]

Check that you get Compilation succeeded in the Compiler Output textbox

Picture12-20.png

Close the Window[edit | edit source]

Picture12-21.png

Click OK[edit | edit source]

END: PROCEDURE ADDING CODE TO AN OBJECT Picking up the Teddy Bear now updates the quest stage to 30 (object retrieved).

We now need d to tell the player the retrieve subquest (20) is completed, and display the new objective to return the object to the NPC (30)

Picture12-22.png

Bring up the Quest and select the Quest Stages tab[edit | edit source]

Picture12-23.png

Select the Retrieved Quest Stage Index (30)[edit | edit source]

Picture12-24.png

Right-Click over Log Entry[edit | edit source]

Picture12-25.png

Select New[edit | edit source]

Picture12-26.png

Add a Log Entry, Designer Notes, and finally the Code to complete the previous objective (20) and to display the new objective (30).[edit | edit source]

Compile

Here is the Code:

SetObjectiveCompleted(20) SetObjectiveDisplayed(30)

Picture12-27.png

Click on the Quest Objectives Tab[edit | edit source]

Make sure you understand why we completed Objective Index 20 and now display Objective Index 30

Picture12-28.png

Go Back to The Quest Stages Tab[edit | edit source]

Picture12-29.png

Click OK[edit | edit source]

Yes, we could have clicked OK in Quest Objectives, but I wanted you to see that the Quest Stage Index panel had updated.

Time to test.

Picture12-30.png

File > Save[edit | edit source]

Picture12-31.png

Run Fallout 4 and ACCEPT THE QUEST, then turn around.[edit | edit source]

Yes, many steps not shown, but you know the drill.

Picture12-32.png

Get close to the artifact[edit | edit source]

Picture12-33.png

Take (A) the artifact.[edit | edit source]

You’re done. Next we just have to add dialog & code where we give the artifact back to the NPC and end the quest.

Picture12-34.png

Don’t forget to quit out of the game! (ALT-F4 for the PC Master Race)