This guide will cover a variety of topics, and each sub-section can be viewed independently depending on what you would like to achieve. Though if you're new to SS2, you might want to at least read through the heading of each section to learn what's possible!
The building plans actually determine the number of NPCs that can live in them, rather than any particular rules. So if you want to have a tiny shop with multiple workers, you can do that - if you want to have a 3x3 farm with just 1 guy, that is also allowed!
While not enforced, I would ask for the sake of clarity for players, avoid supporting multiple NPCs in a Single Person residential, or only providing space for 1 person in the Multi-Person homes as that would make the Residential classes far less useful for the player to quickly set up what they are aiming for.
Whenever a building plan supports multiple settlers, the HOLO Icons will reflect this to the player so they know they can assign more people. Any furniture markers are distributed evenly among all assigned settlers*.
Once you've imported or set up your building plan, there is a field on each of the Level weapon records called iMaxOccupants. Simply set this to the number of people you would like to be able to use your building for each level, and you're done!
If you can't find the level records created for your building, try filtering for the prefix you used in the import script and they should be named fairly similarly to your building plan. If you still can't find them, open the building plan's script properties, and look at the LevelPlansList property, which will tell you which formlist all of the level records are in.
If you have a building plan with a large number of furniture items, you can actually indicate which will be assigned to which NPC.
This could be done to zone off a large work plot so that each NPC stays in a particular subroom but still has multiple animation markers, or perhaps you want to add some special child animation markers for child settlers and put in your building description that the first assignment should be an adult, and the second a child for example.
To take advantage of this feature, set up the iOwner column of your Stage Items sheet. To do this, add iOwner to the first entry in column O, and then fill out a number representing which assigned NPC should get each furniture entry you want to group together for ownership (1 = first person assigned, 2 = second person assigned, etc).
Sim Settlements 2 can greatly expand the mileage of your building plans and skins, by randomizing different Stage Items. It does so by allowing you to use Formlists as valid Stage Items.
When a Formlist is used, SS2 will pick a random item from that list to spawn for that Stage Item.
This means that when you are setting up your spreadsheets, you can replace the first column entry of one of your items with the Editor ID of a Formlist, and ensure that any item in that Formlist could feasibly be displayed when the player uses your building.
We most commonly use this for swapping out groups of clutter, which you will find plentifully in SS2 or you can create your own using the knowledge you already have!
To take advantage of the SS2 Random Clutter, look for the WorldObjects > Static records with RandomClutter_ in the ID. These will almost always have an equivalent Formlist with a very similar name, and each group of items will take up a similar amount of space.
If you want to make your own randomized clutter, simply follow the same steps you did to make a building. Setting yourself up a new layer, with a StaticCollectionPivotDummy at coordinates 0/0/0, and one of our helper markers also at 0/0/0. You can find these helper markers by filtering for _ForClutter under WorldObjects > Static, these will cover a lot of common surface sizes.
You can also skip the marker and simply come up with your own restraints to ensure your groups of clutter fill in approximately the same amount of space.
The only purpose the marker actually serves is to help prevent you from going outside of the area, but you could also set up a new layer, put some items down to represent your surface, and just don't include those in your Static Collection.
For SS1 Addon vets, I originally required those helper markers due to not knowing about the StaticCollectionPivotDummy when writing the original toolkit. That model solves the big problem the helpers were solving, which is ensuring you have a controllable center for your model!
After you've created all of your custom clutter, create a new Formlist record and drop all of your Static Collections in for that type.
No matter the type of Randomized Clutter you are using, you would generally follow these steps to get it into your building plan:
This ends up acting as the proxy for the Formlist so the position/rotation/scale data from that placed item can be used for the Stage Item entry.
For example, you may have found kgSIM_RandomClutter_Alcohol_Stored_NarrowMedium01001 as the text entry on your spreadsheet which you would replace with kgSIM_RandomClutter_Alcohol_Stored_NarrowMedium.
SS1 Addon vets, SS2 does NOT support the re-randomization of clutter. This has the drawback of making your plot a little less dynamic, but I believe the benefits far outweigh this tiny sacrifice (tiny in my eyes, because after the initial "Whoa cool!" factor wears off, I don't believe many players ever notice this detail).
By eliminating the re-randomization, we have too main advantages:
- The code that needs to run upon re-entry of a settlement is faster.
- You can now re-use individual entries in your random clutter lists across multiple lists! (Previously, had you done this, the re-randomization could cause your plot to switch between different lists that used that clutter item, so I had advised in that toolkit to only ever use each form 1 time)
If you would like to learn more about custom shops, check out this video on using the Workshop Framework custom shop system. Once you learn about that, there are just a few additional things to know to use them with SS2:
Workshop Framework provides a system for displaying the actual inventory of a shopkeeper's inventory as static decorations that disappear if you purchase that item from the vendor! With Sim Settlements 2, this can be applied to building plans for a truly awesome in-game shopping experience as the markers that power it can all talk to each other through the Plot and avoid the shopkeeper ever displaying more than they actually have for sale.
To learn about using the Real Inventory Display system, check out this video from Bethesda Mod School. After you've wrapped your head around it, but before you created all of your records, read the rest of this section to see how SS2 makes it easier!
To make this system simpler to use than the base Workshop Framework version, our Import Tool actually detects the Real Inventory Display Point objects from that system in your Stage Items and creates a new invisible object for managing them. This means that the heavy data entry steps you saw in the video, where we had to plug in all of the position and rotation information into script properties, can be skipped.
Simply design your Real Inventory Display Point markers with their corresponding Formlists of items, and decorate your building with the markers. Then, when you set up your Stage Items spreadsheet, you'll fill out column M (and optionally N) for each of those entries.
In M, you'll enter the default vendor type, or one of the custom vendor types. The value you enter for each is as follows:
Column N is optional, if you would like to limit your display to the higher level vendor inventory, you can enter 1 here to limit to items from level 2 or higher; or a 2 here to limit to items from level 3 inventory only.
If you're unfamiliar with how settlement vendors work, there are three inventory groups for each shop type. All level vendors sell from the first container, level 2 and 3 vendors also sell from the second container, and level 3 vendors also sell from the third container. The optional Column N allows you to limit display to items found in the higher level containers.
If you would like to have your settlers decorate for holidays as they occur, you can add any of the SS2_HolidayControlled_ prefixed items, which can be found under WorldObjects > Activator, to your Stage Items.
These will react to the current active holiday and fill in items that occupy approximately the amount of space indicated by the marker. When no holiday dates are in play, the space will remain empty.
To learn more about Holiday Decorations, check out our Holiday System documentation.
If you would like to add any flags and banners that are tied into our Dynamic Flag system, simply add any of the SS2_Flag_Controlled prefixed items, which can be found under WorldObjects > Activator, to your Stage Items.
One of our internal Municipal style guidelines is to include at least 1 flag or banner in each building level to help tie it together with the settlement's controlling leader or faction. So if you're building a Municipal building, I would highly recommend this!
To change where the ASAM Sensor is placed when your building plan is used, or to even switch it to the Wall-Mounted version or to the Free-Standing Version, you simply need to add one of two special items to your Stage Items.
When one of these is detected in your Stage Items, an ASAM Sensor of that type will be used in the exact position and rotation of that marker object (marker objects themselves are invisible in-game).
So you can position and rotate this to decide exactly where the sensor appears and the direction it faces.
Remember that Stage Items are handled on a per level basis, so if you want to control the position/orientation/type of sensor for multiple levels of your buidling, you will need to set up one of these as a Stage Item for each level.
The HOLO Icons default to displaying in the exact same spot for all building plans for a particular plot type. If your building happens to overlap this position, you can use a special field to move them somewhere else.
On your building plan or level plan records, if you open the script properties, and expand the Advanced section, you'll find a field called PlotIconPositionOffsets, you can add 3 numbers to this property to offset the position of the HOLO Icons from their default location.
If you do this on the Building Plan record it will apply to all levels. If you set this on the Level Plan record, it will only occur for that level. If you set it on both, the Level Plan entry would be used.
You cannot skip an entry, either enter three numbers, or don't use the property. If you don't want to nudge for a particular offset, enter 0 for that.
For example to only move the Icons down by 10 units, you would enter 0 for the first, 0 for the second, and -10 for the third.
Occasionally, you will have an item that you want to exist across multiple construction stages, rather than just appearing after the building has finished. The most common use for this, is in Residential plots, where it can be a good idea to have a bed all the way through construction for each resident, even if they are just sleeping bags or invisible bed markers (ex. SS2_Marker_SleepGround_CountsAsBed).
To handle this, the spreadsheets for Stage Items actually support several additional columns you can add.
SS1 Addon vets, we no longer user 0-based stage counting, as that was confusing for non-computer science folks. We also no longer support items surviving between levels, you would simply want to replicate those items for each level you want them to exist.
You can mix and match, having some rows with the iLevel column, and some with the other two columns.