Schematics

Schematics are Coffee Stain Studios' answer to a research system. Schematics hold information about requirements, visuals, and rewards of research milestones.

Everything that is technical progress ingame is a schematic. From the analyzing stuff in the M.A.M, to the HUB Upgrades, to a AWESOME Shop purchases, to the Tier stages of the Space Elevator, everything is a Schematic.

The requirements (item costs, prerequisites, time) of a schematic are directly set in the schematic, but the rewards are defined by so called "unlocks". These unlocks can be anything from new recipes over new buildings to now inventory slots.

If you want to implement custom milestones or M.A.M researches in your mod, you’ll need to make schematics.

FGUnlock (UFGUnlock)

This is the class describing a reward you get when a schematic gets unlocked. It can be anything from recipes or other schematics to inventory slots.

CSS already provides a couple of these as native classes but also Blueprint wrapper classes allowing for a even easier and better usage in the schematics so you don’t need to create many custom unlocks derived from the CSS ones to set the default values. Instead the BP wrappers allow you to define these default values in the schematic directly.

Below is a list of available unlocks you can use and their BP wrappers:

BP Wrapper Description of Function

UnlockArmEquipmentSlot

Gives the player additional arm equipment slots. Having more than 6 causes the inventory screen to look weird, but they still work.

UnlockBuildEfficiency

Allows the player to see the calculated values in machine UIs regarding how many items are being produced/consumed per second. The base game already does this in one of the early tiers.

UnlockBuildOverclock

Allows the player to access machine overclock/underclock settings. The base game already does this with power shard research.

UnlockGiveItem

Gives the player an item when the schematic is unlocked.

UnlockInventorySlot

Gives the player additional inventory slots.

UnlockMap

Allows the player to access the ingame minimap screen. The base game already does this with the map research.

UnlockRecipe

Unlocks crafting or building recipes for use by the player.

UnlockScannableResource

Adds a resource to the resource scanner.

UnlockSchematic

Unlocks another FGSchematic when this one is completed.

UnlockSubsystem

FGSchematic (UFGSchematic)

The FGSchematic class holds the general information about a research milestone. These research milestones can be anything from a M.A.M research node, to a HUB Upgrade, to a Space Elevator Tier.

  • M Type

    The type of the schematic, which determines if it’s part of the tutorial system, M.A.M, AWESOME Shop, a Milestone, etc.

  • M Display Name

    The in-game name of our schematic exactly as it is displayed to the player.

  • M Schematic Category

    Defines the category in which this schematic gets grouped into.

  • M Sub Categories

    Array, defines in which sub groups the schematic should get categorized into.

  • M Tech Tier

    Determines in which Tier the schematic will appear under in the HUB. 0 is during the 'tutorial' and displays the Upgrade HUB button instead of the launch button.

  • M Time to Complete

    This defines the time (in seconds) the space ship will be away after purchase of the schematic, or how long it takes the M.A.M to process the research node.

  • M Schematic Icon

    The icon displayed on the schematic in the HUB or M.A.M.

  • M Cost

    An array of item amounts which are required to purchase the schematic.

  • M Unlocks

    This array contains the rewards the player will get when unlocking this schematic. It is a array of FGUnlocks.

  • M Schematic Dependencies

    This array allows for a schematic’s to be hidden until either other schematics are purchased (BPSchematicPurchasedDependency) or a specific item is picked up (BPItemPickedUpDependency).

    All items of the array must be satisfied for the schematic to be visible.
      Both allow you to select multiple schematics/items.
      If you enable Require All, all of the Schematics/Items
      in that group must be purchased/found for the schematic to be visible.
      If Require All is not checked, only one is required.
      Note that items that you use as a Item Pickup dependency must have the `HasPickedUpItem`
      flag set on their item descriptors for their pickup to be tracked and this requirement to work.
    * {blank}
    M Include In Builds

    This defines in which builds the schematic should be able to get loaded/cooked. Presumably, this is what Coffee Stain uses to keep their developer milestones made for testing from being shipped with the main game. Its recommended to set this to PublicBuilds, otherwise players probably won’t be able to use your mod.