# Configuration file

~CONFIG_VERSION: 0.4.0-RC2

##########################################################################################################
# client
#--------------------------------------------------------------------------------------------------------#
# Options for the Matter overdrive client
##########################################################################################################

client {
    # Use the custom holo shader for holographic items [default: true]
    B:"use holo shader"=true

    # Should Matter Overdrive check for newer versions, every time the world starts
    B:version_check=false
}


##########################################################################################################
# machine options
#--------------------------------------------------------------------------------------------------------#
# Machine Options.
##########################################################################################################

"machine options" {
    # The range of the Charge Station
    I:"charge station range"=16

    replicator {
        # The total replication cost of each matter value. The energy cost is calculated like so: (matterAmount*EnergyCost)
        I:cost.replication.energy=16000

        # Fail chance of the Replicator in percent.
        D:fail=0.05

        # Should vent particles be displayed
        B:particles.vent=true

        # The replication speed in ticks per matter value
        I:speed.replication=120

        # How much energy can the replicator hold
        I:storage.energy=512000

        # How much matter can the replicator hold
        I:storage.matter=1024

        # The volume of the Machine
        D:volume=1.0

        # The volume of the replication animation
        D:volume.replicate=1.0
    }

    network_switch {
        # The volume of the Machine
        D:volume=1.0
    }

    transporter {
        # The volume of the Machine
        D:volume=1.0
    }

    matter_analyzer {
        # The volume of the Machine
        D:volume=1.0
    }

    pattern_storage {
        # Sould vent particles be displayed
        B:particles.vent=true

        # How much energy can the Pattern Storage hold
        I:storage.energy=64000

        # The Transfer speed of the Pattern Storage
        I:transfer.energy=128

        # The volume of the Machine
        D:volume=1.0
    }

    matter_recycler {
        # The volume of the Machine
        D:volume=1.0
    }

    gravitational_stabilizer {
        # The volume of the Machine
        D:volume=1.0
    }

    decomposer {
        # Decomposing cost per matter
        I:cost.decompose=8000

        # The speed in ticks, of decomposing. (per matter)
        I:speed.decompose=80

        # How much energy can the Matter Decomposer hold
        I:storage.energy=512000

        # How much matter can the Matter Decomposer hold
        I:storage.matter=1024
        D:volume=1.0
    }

    pattern_monitor {
        # The volume of the Machine
        D:volume=1.0
    }

    fusion_reactor_controller {
        # The time delay between each structure check
        I:check.delay=40

        # The maximum distance of the anomaly
        I:distance.anomaly=3

        # How much matter is drained per tick. Dependant on the size of the anomaly as well
        D:drain.matter=0.0125

        # The volume of the Machine
        D:volume=1.0
    }

    solar_panel {
        # The volume of the Machine
        D:volume=1.0
    }

    android_station {
        # The volume of the Machine
        D:volume=1.0
    }

    star_map {
        # The volume of the Machine
        D:volume=1.0
    }

    charging_station {
        # The volume of the Machine
        D:volume=1.0
    }

}


##########################################################################################################
# matter network
#--------------------------------------------------------------------------------------------------------#
# Matter Network Options.
##########################################################################################################

"matter network" {
    # The maximum amount of network packet broadcasts per tick.
    I:"max broadcasts per tick"=128
}


##########################################################################################################
# matter registry
#--------------------------------------------------------------------------------------------------------#
# Configuration for the Matter Network
##########################################################################################################

"matter registry" {
    # Shoud Matter be automaticly calculated from Recipes [default: true]
    B:"automatic matter calculation from recipe"=true

    # Blacklist for items in the matter registry. Automatic Recipe calculation will ignore recipes with these items. Just add the unlocalized name or the ore dictionary name in the list.
    S:blacklist <
     >

    ##########################################################################################################
    # new items
    #--------------------------------------------------------------------------------------------------------#
    # Registration of new items and the amount of matter they contain. Add them like so: I:[unlocalized name or ore Dictionary name]=[matter amount]
    ##########################################################################################################

    "new items" {
    }

    ##########################################################################################################
    # item overrides
    #--------------------------------------------------------------------------------------------------------#
    # Overriding of existing items and the amount of matter they contain. Add them like so: I:[unlocalized name or ore Dictionary name]=[matter amount]
    ##########################################################################################################

    "item overrides" {
    }

}


output {

    energy {
        # The Energy Output per tick. Dependant on the size of the anomaly as well
        I:tile.fusion_reactor_controller=2048
    }

}


##########################################################################################################
# server
#--------------------------------------------------------------------------------------------------------#
# Options form the Matter Overdrive server
##########################################################################################################

server {
    # Should the blocks drop entities or be directly consumed when destroyed by the gravitational anomaly [default: true]
    B:"gravitational anomaly block entities"=true

    # Should blocks be turned into falling blocks when broken [default: true]
    B:"gravitational anomaly falling blocks"=true

    # Should other mod fluid blocks be consumed by the anomaly [default: true]
    B:"gravitational anomaly forge fluids"=true

    # Should vanilla fluid block such as water and lava be consumed by the anomaly [default: true]
    B:"gravitational anomaly vanilla fluids"=true
}


##########################################################################################################
# starmap
#--------------------------------------------------------------------------------------------------------#
# Star Map Galaxy Options
##########################################################################################################

starmap {
    # The multiplier for the building and ship building times [range: 0.0 ~ 10.0, default: 1.0]
    S:"galaxy build time multiply"=1.0

    # The multiplier for the ship travel times [range: 0.0 ~ 10.0, default: 1.0]
    S:"galaxy travel time multiply"=1.0

    # The maximum amount of planets pre star system [range: 0 ~ 8, default: 4]
    I:max_planet_count=4

    # The maximum amount of stars in a galaxy [range: 0 ~ 512000, default: 2304]
    I:max_star_count=2304

    # The minimum amount of planets per star system [range: 0 ~ 8, default: 1]
    I:min_planet_count=1

    # The minimum amount of stars in a galaxy [range: 0 ~ 512000, default: 2048]
    I:min_star_count=2048

    # The chance of adding a prefix to a Star System's name [range: 0.0 ~ 1.0, default: 1.0]
    S:name_prefix_chance=1.0

    # The chance of adding a suffix to a Star System's name [range: 0.0 ~ 1.0, default: 0.8]
    S:name_suffix_chance=0.8

    # The amount of quadrants the galaxy should be divided into. The amount is cubed. x ^ 3. For example 3 ^ 3 = 27 quadrants. [range: 1 ~ 6, default: 3]
    I:quadrant_count=3
}


storage {

    energy {
        # How much energy can the Fusion Reactor Controller hold
        I:tile.fusion_reactor_controller=100000000
    }

    matter {
        # How much matter can the Fusion Reactor Controller hold
        I:tile.fusion_reactor_controller=2048
    }

}


##########################################################################################################
# world gen
#--------------------------------------------------------------------------------------------------------#
# World Generation options.
##########################################################################################################

"world gen" {
    # Spawn Chance of Gravity Anomaly pre chunk [range: 0.0 ~ 1.0, default: 0.005]
    S:"gravitational anomaly spawn chance"=0.005

    # Dimension id's in which the gravitational anomaly should spawn in
    I:gravitational_anomaly_dimensions <
        -1
        0
        2
     >

    # A blacklist of all the Dimensions ores shouldn't spawn in
    I:ore_gen_blacklist <
        -1
        2
     >

    # The spawn change of the Rogue Android [range: 0 ~ 100, default: 3]
    I:rogue_android.spawn.chance=3

    # The blacklist for Android spawn biomes [default: [Hell], [Sky]]
    S:rouge.biome.blacklist <
        Hell
        Sky
     >
    I:rouge_android.spawn.chance=3

    # Should Matter Overdrive Ore Blocks be Generated ?
    B:"spawn ores"=false

    # Should other Matter Overdrive World Blocks be Generated?
    B:"spawn other"=true
    B:spawn.tile.dilithium_ore=false
    B:spawn.tile.gravitational_anomaly=true
    B:spawn.tile.tritanium_ore=false
}


