Fallout 4 Custom Settlement Tutorial
Fallout 4 Custom Settlement Tutorial
==========================
Tip: Duplicate your profile in MO2 and call it TEST. Only use that for your
testing. Make the difficulty like easy or something so you can fast travel
Test your new settlement everytime you work on it. But DO not have it activated
until after you make the new profile and start a new playthrough. ALWAYS use that
save to test and turn on your mod while its still in the Data Folder.
DO not save in the settlement
Open console and type TMM 1 (Toggle All Map Markers)
If you have your settlement already with a map makrer it will show up.
==========================
1. Make Plugin
2. Right Click in Render Window and make sure the "Update Cell View Window to match
Render Window" is checked
4. Choose your location in game in Cell vew window. If existing location find that
location in Object Window>World Data>Location. For the purposes of this tutorial we
will make a custom Location Record
You will need to add some keywords to the Location Record. Right Click in the
Keywords box and select "Add". Those keywords are:
LocTypeClearable
LocTypeSettlement
LocTypeWorkshop
LocTypeWorkshopSettlement
6. Return to your custom Encounter Zone record and set its Location to your custom
one.
We will return to the location record to set the World Location Marker Ref after we
get some things placed.
10. In the layers window click on "Add New Layer" and name it then make it the
Active Layer.
12. Back in the object window clear your filter and type in MapMarker.
Drag and drop the Map Marker into your cell on top of the Xmarker you just
placed
Double click on the map marker and go to the Marker Data
Check the box that says "Marker Data"
Ensure that "Use Location Name" is checked
Choose a map symbol for your settlement from the Type drop down menu
Push Ok
Return to your Location Record and click the World Reference Marker Ref
Button
Set this Reference to your map marker. Push OK to confirm your changes
Open your Map Marker Reference. Go to the Linked Ref Tab and make a new link
to your XmarkerHeading
It doesn't require a Keyword
NOTE: Remember to add anything you add to the Game World on your layer
14. Double click your workbench to bring up the Reference ID window. Go to the
Scripts tab and push Add
In the scripts window type "DefaultMoveTo" in the filter and choose
"DefaultMoveToEditorOnLoad"
Click Cancel on the Properties window that appears
This will ensure that when you move the workbench later that the game will
place it in the new position.
For now we will leave it in place to make it easier to do the rest of the
things we need to do.
SAVE YOUR MOD - do this very often so as to not overload the kit and if it
CTDs you have your work saved.
16. Drag and drop your new Resource container into the Render Window and place it
next to your Workbench
It will show up as a Green box with the word Chest on it
Double click on your workbench and move the Reference off to the side
Go to the linked Ref Tab and link to your Resource Container
The keyword to use is "WorkshopLinkContainer"
Push OK and close the Workbench Reference
You should see a Blue line going to it.
Click on your Resource Container and use the Z key to move it below ground.
Make sure not to sink it too far or the game may get confused. Just so it is
out of sight.
17. Time to place your Location Edge Markers and Center Marker
Go to World Objects>Static and type XmarkerHeading in the filter
Drag and drop a Xmarkerheading into your settlement near the border of the
cell roughly in the middle if you have multiple cells
Try to point it in the general direction of your workbench
Double Click the XmarkerHeading and go to the tab Location Ref Type
Right Click and choose New
In the filter type Edge and choose "LocationEdgeMarker"
A Blue Marker should appear above the XmarkerHeading
Right click and copy the XmarkerHeading and then paste the next 3 at the edge
of your settlements roughly opposite of each other
Return to roughly the cent of your settlement and place another Xmarkheading
down (for purposes of this tutorial I placed it next to the Map marker
Spawn)
Double the XmarkerHeading, go to Location Ref Type, right click and New
In the filter type in "Center" and choose the LocationCenterMarker
A purple marker will appear over the Xmarkheading
20. Go to your Center Marker you placed earlier in the Render Window
In the Linked Ref Tab create a new link and choose your Center Marker
The keyword for this is "WorkshopLinkCenter"
Push OK and close the Workbench Reference Window
SAVE YOUR MOD
The SetOwned Trigger works as a Fail Safe so that the Workbench will become
owned by the player
Alternatively yu may wish to completely clean the settlement off. The easiest
way to do this is to select each item, open the Reference Batch Action Window and
use the Set intially disable button then push Do
While the items are still selected use the Z key to move them underground.
This can include any Static object.
When done, SAVE YOUR MOD
STEP 2
Create another Quest
Give it an such as "HouldenHillsSettlementPARENT" (this is your Parent Quest)
Give it a Priority of 42
Make sure the "Start Game Enabled" and "Run Once" boxes are checked
Press OK to create
SAVE YOUR MOD & BACK UP PLUGIN
STEP 3
Re-open the PARENT Quest and go to the Scripts tab
Click the ADD button and in the filter on the window that appears type
"Workshop" in the filter
Choose the "WorkshopAddLocation" Script
In the Properties Window press the Auto-Fill All button
1 property should automatically atuo fill
Push OK and when the Papyrus Window Warning appears click YES
STEP 4
Still in the PARENT Quest go to the Quest stages Tab
Add a new stage 10
Check the "Run on Start" box
Right Click in the Log Entry window and choose NEW
STEP 5
Return to your INT Quest and go to Scripts Tab
Click ADD and type Workshop in the Filter
Choose "WorkshopInitializeLocationScript"
Right click on the Script and choose Edit Source
Highlight everything except the first line Scriptname
WorkshopInitializeLocationScript extends Quest Conditional Const and copy it
Use a text editor such as Notepad++ and paste it into it
Delete the line Stop()
(This is how the script should look)
===============
function Startup()
WorkshopScript workshopRef = Workshop.GetRef() as WorkshopScript
; add children to settlement NPCs collection
SettlementNPCs.AddRefCollection(SettlementChildren)
SettlementNPCs.AddRefCollection(SettlementRobots)
WorkshopParent.InitializeLocation(workshopRef, SettlementNPCs,
SettlementLeader, MapMarker)
endFunction
===============
Return to INT Quest
Remove the WorkshopInitializeLocationScript from your INT Quest
Press ADD to add a new script
In the Add New Script Window give your script a name such as
HouldenSettlement
Make sure that it extends Quest
Check the boxes "Conditional" and "Const"
Push OK
Copy the script from Notepad++ and paste it into the source window under the
first line
Go to Build and choose Compile
In the Compiler Output it should say "Batch compile of 1 files finished. 1
succeeded, 0 failed."
Go to File and choose Save
The window should tell you "Save Succeeded"
Go to File and Exit
Hit the Properties Button and in the Properties Window hit Auto Fill like
before
1 Property will auto fill
Hit Ok to confirm then OK to confirm your Quest
SAVE YOUR MOD!
STEP 6
Go to your Custom Location
In the Keywords box right click and choose New
The keyword window will appear
Give it an Editor ID such as "LocTypeHouldenHillsRef"
Push OK and the new Keyword will appear in your custom Location
Push Ok to confirm the change
SAVE YOUR MOD
STEP 7
Return to your PARENT Quest
Go to the Quest Alias Tab
In the Aliases box right click and choose "New Ref Collection Alias"
STEP 8
In the Reference Alias Collection Window that will appear give your new alias
a name
The name should be "WorkshopRefs"
Max Intial Fill Count is 1
Check the boxes "Optional" and "Allow Reuse in Quest"
Click on "Find Matching Reference"
In the Match Conditions box right click and choose new
The Condition Item will appear
Set the Condition Function to "LocationHasKeyword"
Click on the INVALID button
The Select Function Parameters window will appear
Set Parameter one to the LocType keyword you made in Step 6
Push OK on the Select Function Parameters window
Create another Condition and set this to "HasKeyword"
Click INVALID and set this one to "WorkshopKeyword"\Push Ok to confirm
Click on the HasKeyword Condition and use the right arrows below the Match
Condition Box to move this Condition below the LocationHasKeyword
Condition
Push OK to confirm this new Alias
Push Ok on the Quest to confirm
SAVE YOUR MOD
STEP 9
Re-Open your PARENT Quest
Go to the Script Quest and open your Script Properties
Go to WorkshopsCollection and click the Edit Value button
In the Pick Alias drop down box there will only be 1 which is WorkshopRefs
choose that one
Push OK to confirm then OK to confirm your Quest
SAVE YOUR MOD
STEP 10
Go to INT Quest then to the Quest Stage Tab
Add a Stage 10, right click in Log Entry and choose NEW
Add Stage 20, right click in Log Entry and choose NEW
Return to Stage 10
Click on the "Run on start box" then right click new and make a new log
entry
In Designer Notes box type "Start the Quest"
In the Papyrus Fragment box input the following:
================================
kmyQuest.Startup()
================================
STEP 11
Go to your Settlement in the Render Window and focus in on your Workbench
Reopen your INT Quest
(For the Following you do not need to choose any reference for and these need
to Ref Collection Alias. Select Spefic Reference but leave it as
NONE)
SettlementChildren
SettlementLeader
SettlementNPCs
SettlementRobots
STEP 12
Go to the Script Tab and open the Properties on your Script
Click the Auto Fill All button
6 Properties should be Auto Filled
Click OK to confirm for all of the windows
SAVE YOUR MOD
28. Landscaping (Optional)
29. Add any Buildings including Static Collections you might have made (Optional -
See Video Tutorial)
30. Add Workbenches, beds, and Water Source (Optional - See Video Tutorial)
31. Fix and/or Repair the Navmesh (Optional. If you have added building, removed
buildings and/or clutter you will have to do this)
39. On your dekstop create a new folder and Name it after your new settlement
Inside of that folder create a new folder named Data
Inside of the new Data Folder place your plugin and BSAs from the fallout 4
Data
Close the folder and use an archive packer such as Winzip, or 7zip to pack
your mod
Remove your plugin and BSAs from the Fallout 4 Data folder
Install it on your TEST profile in your Mod Manager