Reminder - in all my tutorials, green text can be skipped by modding vets, and red text can be skipped by beginners. These are side notes meant to clarify something I imagine certain readers will have questions on, and if they are not targeted at your skill level, you can skip them or ignore them if they are over your head or seem obvious.
During the tutorial where you imported your first room design, you were likely wondering what many of the fields we glossed over were for, or what other things you could do.
In this guide, we're going to go over a lot of what you can do using the XEdit import script to add more interesting functionality to your room design without any technical knowledge required!
Example image of the form we're going to be covering in this guide.
Let's start by talking a bit more about the simpler fields. The ones with extra buttons and submenus will each get their own sections below.
Name: This is what the player will see when selecting the project in Command Mode, viewing the details on the HQ Room Controls, or in the list of available options when using the Change Room Layout option from the HQ Room Controls.
EditorID Prefix: This is used by the XEdit script to add a prefix to all of the different forms that are created as a result of this script so you can quickly search them up later in the Creation Kit if you need to.
Object Type: Here you'll choose from Construction - ie. a room design meant to go in an empty room, and Upgrade which is meant to add to a Construction project. We'll get into Upgrades in another tutorial.
On a system level, Construction and Upgrades are mostly identical - the difference is in how they are presented to the player, and this particular setting lets the code know when and how to show this project to the player.
Misc Model: This list has an entry for each of the Room Shapes in GNN, and most of the time you won't change this as it will be assigned to match the shape found on the room config. This is used for selection screens where the player is using the container system to make a choice - such as the Change Room Layout option from the HQ Room Controls.
Activator Model: This is the model shown in Command Mode and consists of what we refer to as the "Blue Men", which I'm sure you're familiar with playing SS2. The most common ones we use are Stand_Hammer_Vertical for Construction, and Kneel_Wrench_Horizontal for upgrades, but you can use whichever you like for your projects.
Upgrade Slot: This determines which slot in the room this design uses as each room can only ever have one design plugged into each slot it has. For Construction projects, you should always use the Base slot. For Upgrade projects, you'd use the one that's most appropriate - or a custom one, which we'll cover in the Extra Slots section.
While each slot can only have one project, a project can actually use up multiple slots. For example, the design you did in the first tutorial of this series had you fill up the Base, Decoration, and Lighting slots. This makes it easier for the player to quickly fill out rooms without having to manually concern themselves with every slot, but also leaves lots of flexibility for upgrades, as you can individually replace what's in those slots!
We'll cover slots in more detail through the guides!
Submenu: This determines where in Command Mode this project will show up, it works in tandem with the Object Type option - Construction Object Types will end up under Facilities, while Upgrade will end up in Engineering.
You can put projects in other departments menus as well using the Creation Kit, which we'll cover in future guides.
Duration (hours): The number of in-game hours this project should take to complete. Most projects in HQ are set to 24 hours, but if your project is meant to be particularly complex, giving a longer timer could make sense here.
Give control to department: This determines which department will use the room as a workplace after the project is complete.
Most of these checkboxes will be setup for you automatically in a way that will fit what players expect to see with Construction/Upgrade projects and you won't have to mess with them.
Assign department to room at start: This assigns the department the project belongs to (determined by the Object Type dropdown - Construction = Facilities, Upgrade = Engineering) when the project is first started, causing the AI to use that room while its under construction.
This does not have anything to do with the "Give control to department" dropdown. If you want to have this project belong to another department, you'll need to make a change in the Creation Kit, which will be covered in a more advanced guide.
Assign department to room at end: This is effectively an alternative to using the "Give control to department" dropdown and will instead use the department the project belongs to (determined by the Object Type dropdown - Construction = Facilities, Upgrade = Engineering).
Use default construction markers: In each room of GNN, we've set up some construction markers, these include the construction barriers you've likely seen outside the door when a room is under construction, as well as a series of invisible animation markers for the AI to use - having this box checked will reveal those while this project is running.
There is actually a system for showing your own construction markers, but it requires making edits to the HQ cell, so is only recommended for advanced users who understand how to prevent conflicts. It will end up covered in a more advanced guide.
Disable clutter on completion: In HQ, before the player starts doing anything, each room has a lot of stuff in it, the trash - which gets removed during cleaning, and the clutter - which is everything else (including the door!). Generally you'll want this enabled so that those items are removed after your project finishes, but in some cases you may want to build onto the items that are there by default instead, and unchecking this will ensure those default items aren't removed.
We decided to separate the furniture and other items from trash and leave them when the room is cleaned to add some immersion to the system. Afterall, when you go clean your living room, you generally don't throw out all the furniture.
Real-Time Timer: If this is checked, the "Duration (hours)" field is treated as realtime seconds instead. So if you check this in, be sure to update the Duration field as well.
Room Functions are used to give your designs some system functionality. Each of these can do all sorts of things, such as add job slots, increase HQ Upkeep, cause the AI to do things, or flag the room as fulfilling roles which can trigger new HQ projects to become available.
A design can have any number of Room Functions associated with it, just be sure to balance it with appropriate upkeep and costs! (We'll cover costs in the Resources section below).
Room Functions come in a variety of flavors, these classifications aren't displayed anywhere, but knowing about them will help you think about what sorts of things you'd like to add to your project.
These are one of the most fun and important Room Functions to add, as they are responsible for a lot of immersion and interactivity between HQ Rooms. Every Construction design should generally have one of these, and some upgrades will as well. These will look very similar to the Purpose part of the room config in tone, you'll see things like Bar, Office, Living Quarters, etc in the list.
These are useful for three things: the PA System, Department Head dialogue, and unlocking other projects.
The PA System and the Department Head Dialogue are set up to react to the things the player builds, but rather than tie into specific Room Configs or projects, we used these more generic Room Functions. We did this because the Room Configs and Projects are tied to specific shapes, and we wanted them to be able to react to whether HQ has a type of thing at all. For example, the announcements about cleaning the bathrooms don't need to know if the player built a bathroom in a GNN_L Shape room, any bathroom will do.
Unlocking other projects uses them for the same reason. Often we just need to know if HQ has a particular feature available in order for it to make sense for some other thing to be available. For example, the Coffee Break policy under Administration only makes sense if there's coffee available, but it doesn't care about where the coffee is coming from - so any room with a coffee station can add that Room Function and therefore qualify for that option.
You can even create your own Room Functionality! Which we'll get to in a future guide. There's really no limit to how this system can be used for creating deep reactive sets of projects!
These increase the amount of space available in HQ's various systems. Currently there are slots for the following:
These increase the maximum amount of resource spending that can be done any given time in HQ. After Slots, this is probably the thing players will be after immediately in their room designs, particularly in the early stages of setting up an HQ.
The resource capacities you can increase are:
They are listed as +X Max Capacity Name. To keep it simple, each type of capacity has the department name in it to make easier to know which types of rooms to put them in. We used the following room types to increase these, and you are welcome to add them to other room types, but this is what players were taught during gameplay:
Each come in a large variety of numbers. If you want to use a specific number that doesn't exist in the list you can use multiple to add up to what you want, and the display code will automaticaly combine them to avoid it looking silly in-game.
This system seems to be a part where many players get confused, so I want to be sure its clear here. There are 3 factors that limit spending: HQ's room provided capacity, the workforce provided capacity, and the actual available resources available from settlements.
Imagine it like a grocery store, if you only have one checkout lane, you're only going to be able to sell groceries so fast. So you add 2 more lanes (increasing HQ's room provided capacity), but without enough staff to run the extra checkout lanes (workforce capacity) you can't make use of the facility capacity, and finally - if you run out of groceries (settlement available resources) you can't sell anything.
Research Level is a system to allow HQ itself to have a progression system. Think of these like stat points in HQ itself. These can be used as gateways to unlock more advanced projects - whether it be construction projects, upgrades, or even research projects (which we'll cover in a later guide!).
GNN doesn't make a ton of use of these, other than for the Labs system, so this is a huge space for potential addon pack content! Especially if used to flesh out the Tech Research section of the Science department. We had always dreamed of seeing new technology become available to the player as HQ's scientific capabilities became more grandiose, if that sounds exciting to you - then Research Level functionality is your friend!
Similar to the Counts As type, these were designed to allow different room designs to contribute to the same system. Where these differ, is these have a number associated, so that a single design can actually improve a Research Level by more than one.
These will all have Research or Research Level in the name. We were inconsistent with the naming due to UI space - as these will actually display on the View Details screen of the HQ Room Controls.
To add some immersion, and also add some balance, you can add Upkeep to your design. This will make it so that the player's empire must provide more basic resources to HQ.
Currently there are only 3 supported:
Each come in a large variety of numbers. If you want to use a specific number that doesn't exist in the list you can use multiple to add up to what you want, and the display code will automaticaly combine them to avoid it looking silly in-game.
Additional Upkeep types my be added to the list for rooms in the future, such as Work Energy Upkeep, or resource costs similar to the daily operating costs of plots (for players who have that option enabled).
In the list, you'll find a few entries with very special use cases. Many of them are only useful for people making their own HQs, but a few of them will be useful for specific room types.
You will also likely see some labeled "Do Not Use", these are generally placeholders for things we are still working on, or are for a specific thing within our quests.
Deciding on a set of Room Functionality can be a little daunting so here are a few tips.
Ultimately, looking at existing GNN rooms and getting familiar with the pattern we used will be your best bet for making your rooms feel good. You can also go to the community for feedback - folks who have engaged with the system heavily will have a good feel for what's needed and what feels balanced!
Once you've decided on your Room Functionality, adding them is incredibly simple. Simply click the Add button in that section, and select what you'd like to add and click OK. The blank box will let you filter by text what shows up in the dropdown box. For example, if you are looking to add job slots, you can start typing the name of the department to only show those.
You can add as many as you like, just be sure to consider balance and include some Upkeep, or increase the cost of the construction if you add a lot more than other designs found in GNN.
Another way you can add Room Functionality is via a Copy/Paste system supported by our XEdit form.
If you run the SS2\HQ_CreateOrUpdateAction script on the Misc Object with HQAction in the name for an existing Construction or Upgrade project to edit it, you can actually right-click in the Room Functions box and choose copy to copy all of the entries in it to the clipboard.
After you do that, you can run the script again on your HQAction misc object and right-click the Room Functions area to paste in those entries. This is a great way to ensure your room designs match up functionally with one you're creating an alternate design for!
On the right-half of the form, about half-way down is a button labeled Set Descriptions. Clicking this will bring up a form for setting up some text information for displaying things about your design.
Designer Name: Your name - this way player's know which designs are yours so they can seek out others if they really like your style!
Mechanics description: The box that starts with the text "inputMechanics" is what will show up in Command Mode at the top of the screen. Most of the time, all you have to do is click the Regenerate button and it will use the Room Functionality you added to create the description for you.
This will include shorthand descriptions of the room functions, and the time the project will take to complete.
You can edit what's added by the Regenerate button, or manually type your own description. It's highly recommended you at least stick to the format of using vertical pipes with spaces | to separate entries, and ending with | Completion Time: X Days/Hours, so that the descriptions match the others in style.
Design description: This is an optional field for including any additional information about the design you'd like to give the player. Generally, this is useful if your design has atypical functionality where the player might be confused.
The design description cannot currently be viewed in-game, but in a future update will be made accessible from the Room Controls menu and during selection of that project.
This is where the costs for building your design go. You simply click Add, select your resource type from the list, and
To make this a lot easier on you, it supports the same copy-paste functionality of the Room Functionality section - so if you are making an alternate design for an existing room type, it's simple to load up that one and copy its costs.
Otherwise, you'll need to make the call on what to price your design at. We don't enforce any particular rules on costs, so I'll lay out some tips to help you balance the costs.
Note that due to UI limitations, you will want to keep your total Resource entries under 10, as beyond that some of the entries will not display on some screens.
Since the core gameplay loop of HQ is about giving your staff projects to do, you'll want to make sure this project costs some work energy. So start with that.
Each department's energy is listed in the dropdown with its department name, then energy. For example Administration Energy.
When deciding how much energy to cost, we used a very simple formula of 10 points per benefit as our baseline. For example, if a design adds 3 job slots, we'd price it at a minimum of 30 work energy - 3 job slots * 10 energy per.
If the benefit feels a bit more powerful, we might go a little higher, or if the benefit feels a little weaker we might go less. We'd also often increase energy requirements for particularly complex things - for example, the Medical Lab.
You can also mix and match department energy if you like. For example, you'll find many of our projects in GNN require both Facilities and Engineering energy.
The only thing to watch out for when mixing department energy, is you will likely want to ensure that any Construction projects have a majority share of Facilities Energy in the cost, and Upgrade projects have a marjority share of Engineering Energy in the cost. Otherwise, the it could make players feel as though they are in the wrong menu, or that you made a mistake.
One place we broke this pattern frequently was with decorative upgrades, we frequently gave those to the Admin department. You can move upgrade actions to other department menus in the Creation Kit, which we'll cover in a future guide.
With most building and upgrade projects, you'll want to establish the actual materials used to construct things. For these, we often leaned on immersion, looking at the sorts of things we used in the design, and picking appropriate scrap to represent it - that part is simple, picking the numbers probably feels like a challenge though.
Similar to the Work Energy costs, we came up with a simple formula to give us a starting point: 500 resources per benefit. For example, a Living Quarters that added +5 Max Workers would cost 2500 scrap resources - 5 worker slots * 500 resource per.
Once you know your number, and approximate materials you want to use - its simple to divide that number acrosss your selected materials. You don't have to follow our formula, but its an easy starting point, and will make your costs feel comfortable to players.
You don't have to worry about people playing in Simple or Category complexity, this script will automatically calculate numbers for those gameplay settings and create appropriate forms - so you only have to set up the raw scrap component costs!
Our costs formulas probably seem incredibly high when compared to plot building plan costs - and they are. If the player is building up any reasonable amount of settlements, they will be extrordinairily rich at this phase of the game, and in order for the choice of what to build first to be meaningful, they have to be expensive enough that the player will sometimes have to choose between building two things due to cost.
There are a few other costs that will show up in the menu, some of them are special use cases that you might want to use, and some you should avoid.
You will notice a series of resources beginning with Ammo, Armor, Chems, and Weapon Parts. These are a new resource group called Supplies that will be added with the 3.0.0 update. Prior to this update, players will be unable to generate those resources, so you should avoid using them. If the 3.0.0 update has been released already, and you're reading this - give me a poke to remind me to update this documentation! -kinggath
As you saw in the first time you used this, this is where you actually import your spreadsheets. In addition to adding your layouts, you can actually use this part of the form to update your existing layouts, or if you mad a mistake, you can remove an entry entirely.
Layout Name: This field is never displayed anywhere in-game, and is primarily there for your own organization.
Upgrade Slot: This determines which slot the layout is installed into. You can read more about Slots in the Extra Slots section below.
Layout Spawns File: This is where you can add or edit the spreadsheet used to set up the items.
If you are editing an existing action, and haven't setup a replacement file during this session, this field will be blank, and instead you will see above this field "Existing Layout" and the name of the weapon record this layout corresponds with. You can actually run the script SS2\HQ_LayoutUpdater on that layout weapon record to update it directly without bringing up this form first, the benefit to that is the layout updater runs much laster than the script to bring up this entire form.
The term Layout in this case comes from the Layout system of Workshop Framework, which is what underpins the HQ system. They are set up as weapon records, as it allows for us to show additional information in certain select screens.
Before we get into Extra Slots, it's important to understand what slots are.
With HQ Rooms, we wanted you to be able to create anything you can imagine - keeping it simple with just a basic design, or going extrodinairly deep with layered upgrades. Slots effectively allow you to create a tech tree with your room designs!
Slots determine which construction and upgrade projects are available. When you clean a room and choose a room config, slots are added to HQ that layouts can be plugged into. Once a slot is filled, any other construction/upgrade projects that target that slot will be hidden again in command mode so that the player doesn't build over top of what they chose.
Each room config adds 5 slots to start: Base, Decoration, Lighting, Holiday Decorations, and Faction Decorations. Each slot can hold one layout of items.
The first 3 you are familiar with, and the other 2 should be self-explanatory. In fact, the last one, Faction Decorations - hints at one of the possible benefits of Slots.
Let's imagine you designed a security office for HQ, and you want to be able to theme it after different factions. You can actually create multiple Upgrades that target the Faction Decorations slot and only one of them can be in use at any given time. So the player can install a Brotherhood of Steel upgrade, and then the Railroad, Minutemen, and Institute ones would be hidden. If the player changes their mind later, they can use the HQ Room Control to change which upgrades they are using and pick a different faction decoration upgrade.
This technically applies to any of the slots, except for the base. So you can offer alternate lighting or decoration layouts as well!
The base slot is special, as it represents the frame on to which the other layouts are built on. Imagine it like the body of the car, if you start with a passenger car, and swap the body to a pickup truck, you no longer have a passenger car - you have a pickup truck. If you want to offer an alternate base, you should treat it as an entirely new room design.
One of the more interesting uses of the slot system is for setting up upgrades, and this is where Extra Slots come in to play.
On the form we've been working on, the Extra Slots section allows you to add additional slots to the room so that more upgrades can be attached to the room design. You simply click Add, and give a unique name for your upgrade slot. The slot name is never shown in game, but will be added to the Upgrade Slot dropdown list of any future construction/upgrade project you set up with the same Room Config as this one.
For example, let's say you are working with the Bar (GNNOfficeLevelMarbledArea_Bar) room config, and you add a Bar Stool upgrade slot, you then finish your configuration on the form we've been discussing and click OK to save it. The next time you run the form and target the same Bar (GNNOfficeLevelMarbledArea_Bar) config, your new Bar Stool upgrade slot will now show up in the Upgrade Slot dropdown, so that you can setup an Upgrade action that fits into that slot.
In game, it will play out like this: The player will build your room design, when it finishes, your Bar Stool slot will get added to HQ, which will cause your Bar Stools upgrade to appear, the player can then build that to add the Bar Stools to your bar!
It gets even better, as you can go deeper than this. You could have your Bar Stools add a new Upgrade Slot as well, and unlock even further upgrades in a sort of chain of upgrades - you'll see this in many of our labs in GNN, where building a new wing adds additional slots for upgrades within that wing. You can also simulate a tech tree, by having multiple upgrades available that use the same slot, so that the player has to choose which one to use!
This guide introduced a lot of concepts and sort of glossed over some things without giving you any exercises to follow.
Over the next few guides we'll dive into some actual walk-through examples of some of the things mentioned in this one - such as updating an existing layout, or setting up a room upgrade. So if you feel like you have a lot of half-understood knowledge right now, don't worry you'll get some clarity soon!