Skip to content

Storage Facility

AMPW edited this page Aug 26, 2025 · 9 revisions

Used to store item in a colony

type: KCStorageFacility

Required parameter in the levelnode

  • maxVolume (double): the volume of the storage facility, determines how many items can be stored.

The maxVolume parameter needs to be present in the level 0 node but may be left empty in higher levels, then the lower level value is used.

Optional parameters in the levelnode

  • resourceWhitelist (string list, "," used as seperator): defines the resources that are allowed to be stored in this facility
  • resourceBlacklist (string list, "," used as seperator): defines the resources that are forbidden from being stored in this facility
  • range (float): how close the player has to be to a calculation node, default: 150
  • RangeTypes (string list, "," used as seperator): the facility types that are used as additional nodes
  • RangeFacilities (string list, "," used as seperator): the facility config names that are used as additional nodes
  • UseGravityMultiplier (bool): multiplies the range with the gravity at the facilities location. Useful on high gravity planets because landing accuratly there is much more difficult
    • MinGravity (float): Minimum gravity multiplier, default 1
    • MaxGravity (float): Maximum gravity multiplier, default 1

Range calculations

The own facility will always be used to calculate if the player is near it and the same range is used for all calculations.
All facilities (except the CAB) may be used as nodes.
The RangeTypes and RangeFacilities are used in a XOR configuration, so a facility must only be in one of the lists to be used as node.

E.g.

KCFacilityConfig
{
    name = KCStorageFacility
    displayName = Electric Storage Facility
    type = KCStorageFacility

    category = Storage

    level
    {
        0
        {
            basegroupName = KC_Base_Fuel_T1
            resources { RocketParts = 2000 }
            upgradeTime = 500
            minCABLevel = 0

            maxVolume = 500000

            ECperSecond = 50
        }
        1
        {
            basegroupName = KC_Base_Fuel_T2
            resources { RocketParts = 1000 }
            upgradeTime = 800
            minCABLevel = 1

            maxVolume = 1000000
            upgradeType = withGroupChange

            ECperSecond = 250
        }
        2
        {
            basegroupName = KC_Base_Fuel_T3
            resources { RocketParts = 1200 }
            upgradeTime = 1000
            minCABLevel = 2

            maxVolume = 2500000
            upgradeType = withGroupChange

            ECperSecond = 500
        }
    }
}

Clone this wiki locally