# Configuration file

balancing {
    # Enabling this will cancel any structure generation if another structure is present at the cooridnate already. [default: true]
    B:avoidOverlappingGeneration=true

    # Chance to use the customArtifactTag when an artifact generation tag fires. [range: 0.0 ~ 1.0, default: 0.0]
    S:customArtifactChance=0.0

    # Custom Loot Table to override when an artifact generation tag fires. [default: ]
    S:customArtifactTag=

    # Chance to use the customArtifactTag when a book generation tag fires. [range: 0.0 ~ 1.0, default: 0.0]
    S:customBookChance=0.0

    # Custom Loot Table to override when a book generation tag fires. [default: ]
    S:customBookTag=

    # Enable hacks for a few decoration types. Disabling this may fix problems but will deactivate ReC overriding those types of structures. [default: true]
    B:decorationHacks=true

    # Resource Expression that will restrict logging of structures that fail to generate. [default: ]
    S:failingStructureLogExpression=

    # Whether the nature (e.g. trees, mushrooms) added by the mod should be actively generating. [default: true]
    B:generateNature=true

    # Global toggles that can be used in expressions. You can also add your own. Ex: 'treeLeavesDecay: true'. [default: [treeLeavesDecay: true]]
    S:globalToggles <
        treeLeavesDecay: true
     >

    # If disabled, Recurrent Complex will generate structures in worlds without the structure generation option. [default: true]
    B:honorStructureGenerationOption=true

    # Resource Expression that will be applied to each loading loot table, determining if it should be set to 'active'. [default: ]
    S:inventoryGeneratorGenerationMatcher=

    # Resource Expression that will be applied to each loading loot table, determining if it should be loaded. [default: ]
    S:inventoryGeneratorLoadMatcher=

    # Maximum number of reverses per room the maze generator can do. A higher number results in a better generation success rate, but may freeze the server temporarily. [range: -1.0 ~ 100.0, default: 3.0]
    S:mazePlacementReversesPerRoom=3.0

    # Maze generation timeout, in milliseconds. After the time is over, the maze generation will just give up. [range: -1 ~ 600000, default: 20000]
    I:mazeTimeout=20000

    # Within this block radius, default structures won't spawn (in the main dimension). [range: 0.0 ~ 500.0, default: 30.0]
    S:minDistToSpawnForGeneration=30.0

    # List of spawn chance tweaks to structures: IceThorn:0.5 [default: ]
    S:spawnTweaks <
        QuakingAspen:0.0
        VillageTriplets:3.24986E-9
        ShrineSmallAir:0.0
        UndergroundCultChamber:0.0
        StatueTemple:0.0
        PyramidMazeScriptureTurn:7.8971567E-7
        StoneBoulder:1.0155812E-10
        WoodWallRemains:0.0
        CheeseGolem:6.0728817
        VillageHouseRich1:3.173691E-7
        StoneMazeSmall:7.8971567E-7
        GenericTreeHuge:1.0155812E-10
        MysticalTree:3.24986E-9
        UnnaturalCrater:0.0
        NetherThorn:3.24986E-9
        WoodThorn:3.24986E-9
        OakTreeBig:1.0155812E-10
        PirateChest:1.0
        Basswood:0.0
        StoneMazeFountain:1.0155812E-10
        IceThorn:0.0
        ForestBeacon:0.0
        NetherThorn3:2.4678615E-8
        RatMarble:1.0
        BrickHenge:0.0
        StoneMazePathBig:1.0399552E-7
        MesoMazeSpiderTurn:3.24986E-9
        NetherThorn5:1.0155812E-10
        NetherThorn4:1.0155812E-10
        SavannaTree:1.0155812E-10
        NetherThorn2:1.0399552E-7
        NetherThorn1:2.4678615E-8
        DesertBeacon:0.0
        Portalroomboss:1.0
        DinosaurSkeleton:0.0
        BabylonTower:0.0
        PyramidMazePath:0.0
        StoneLeafMound:0.0
        UndeadCheeseChurchfinal:10.000001
        JuliusCheeserCastle:1.0155812E-10
        SmallClockworkSite:1.0155812E-10
        SpruceTreeBig:2.4678615E-8
        KingRat:1.0
        SpiderPit:3.24986E-9
        PyramidMazeStorage:0.0
        ForestMazeCrossing:0.0
        MoonSlip:1.0
        VillageForgeLarge:1.0155812E-10
        MysticalTree2:1.0155812E-10
        LodgepolePine:1.0399552E-7
        RatSpireRuined:1.0
        MesoMazeCorridorCollapse:3.24986E-9
        UndyingSpire:10.000001
        SmallWoodenCottage:3.173691E-7
        SmallFortRuinsJapanese:3.24986E-9
        ForestMaze3Way:0.0
        ForestMaze:0.0
        StoneMazePagoda:0.0
        MoonBone:1.0
        AbandonedWoodTower:0.0
        BrownMushroom1:0.0
        SmallPyramid:1.0399552E-7
        CheeseSpire:5.4620404
        IceThorn4:3.24986E-9
        IceThorn3:2.4678615E-8
        IceThorn2:3.24986E-9
        IceThorn1:0.0
        PyramidMazeCorridorCollapse:0.0
        ElvenPond:0.0
        Ratkingevil:1.0
        UndergroundTreeoid:1.0399552E-7
        PyramidMazePagoda:0.0
        SmallAbandonedMine:1.0155812E-10
        BlazeSpawnerCrystal:0.0
        PyramidMazeSpiderTurn:1.0399552E-7
        SnakeTemple:1.0155812E-10
        IridiumMeteor:0.0
        BrownMushroom:0.0
        PeacefulCrypt:0.0
        MesoMazeStairCorridor:3.24986E-9
        Moontemple:3.24986E-9
        MoonHouse:1.0
        StoneIceBoulder3:0.0
        StoneIceBoulder2:2.4678615E-8
        StoneIceBoulder1:2.4678615E-8
        VillageSavannaChandlery:1.0155812E-10
        MeteorSite:0.45061865
        AlascaCedar:0.0
        StonePlantMound4:2.4678615E-8
        Rat Watchtower:1.0
        CuboneSkull:0.0
        StoneMazeLitRoom:3.173691E-7
        JungleTreeHuge:1.0155812E-10
        JungleTreeHuge1:3.24986E-9
        ShrineSmallEarth:1.0155812E-10
        ForestMazeSlimes:0.0
        GenericTree:0.0
        CheeseDungeonTNT:0.40004167
        SmallAbandonedOutpost:1.0155812E-10
        VillageSavannaKitchen:0.0
        CheeseBones:0.40004167
        DesertWatchtower:0.0
        GiganticTree1:3.24986E-9
        StoneMaze:1.0155812E-10
        ClayWaterMound:0.0
        VillageSavannaTannery:0.0
        VillageSavannaStonemason:0.0
        ForestMazeClearing:0.0
        MesoMazePagoda:0.0
        OakTree:2.4678615E-8
        VillageHouseRich:0.0
        Chest2:0.0
        Chest1:0.0
        TemplePyramid:1.0155812E-10
        VillageSavannaGlassworks:3.24986E-9
        DeadTreeLarge3:0.0
        DeadTreeLarge2:0.0
        DeadTreeLarge1:0.0
        ShrineSmallWater:0.0
        RatChurch:1.0
        BirchTree1:0.0
        MonolythUnholy:0.0
        UndergroundCrypt:0.0
        JokerTower:0.0
        CheeseGolemLoot:0.5061869
        GiantRat:1.359077
        SmallFortRuins:1.0155812E-10
        VeldtBath:0.0
        WellShrine:1.0155812E-10
        DesertFort:0.0
        FirTree:0.0
        PyramidMazePillar:3.24986E-9
        StoneMazeSpiderRoom:7.8971567E-7
        RatKingLair:1.0
        VillageSavannaLibrary:0.0
        StoneMazeShootingRange:7.8971567E-7
        DesertHut:0.0
        Rattower:1.0
        GenericTree5:1.0155812E-10
        GenericTree4:3.173691E-7
        GenericTree3:1.0155812E-10
        GenericTree2:0.0
        GenericTree1:0.0
        SmallWoodenCottage2:1.0399552E-7
        SmallWoodenCottage1:1.0399552E-7
        WoodenClockTower:0.0
        BigClockworkSite:0.0
        PyramidMazeClosedDoorway:0.0
        Mopane:1.0155812E-10
        MesoMazeStairTurn:2.4678615E-8
        VillageInn:0.0
        TemplePyramid1:1.0155812E-10
        StonePlantMound:3.24986E-9
        Cheese Bones:0.33278564
        VillageGuardTower:1.0155812E-10
        MesoMazePath:3.24986E-9
        UndyingCrack:1.0399552E-7
        VillageWoodMill:3.24986E-9
        PyramidMazeStairCorridor:1.0155812E-10
        CheesySpire:1.0673858
        CorruptedEnderTree:0.0
        WhiteWillowLarge:3.24986E-9
        TribalJungleHead:7.8971567E-7
        Fiberpalm:0.0
        GenericTree6:1.0155812E-10
        RatWatchtower:1.0
        ChurchGraveyardRuins:0.0
        BirchTreeBig1:0.0
        MoonGarbage:1.0
        StoneMazeEndChest:3.24986E-9
        MesoMazeStorage:2.4678615E-8
        SavannaTree1:0.0
        BirchTree:0.0
        LonePillars:3.173691E-7
        OldWatchtower:0.0
        SmallOutpost:1.0399552E-7
        ShrineSmallFire:0.0
        RedMushroom1:1.0
        Testcastle:0.5671064
        SpruceTree3:1.0399552E-7
        SpruceTree2:1.7068874E-6
        OakTreeHuge:1.0155812E-10
        StoneMazeBig:1.0155812E-10
        WitchPillars:3.24986E-9
        VillageMarketplace:0.0
        StonePlantMound3:2.4678615E-8
        StonePlantMound2:1.0399552E-7
        StonePlantMound1:0.0
        PyramidMazeStairTurn:0.0
        MonolythHoly:0.0
        WoodThornBig:0.0
        BirchTreeBig:0.0
        HillAltarHouse:0.0
        castle1:0.0
        SpruceTree1:1.7068874E-6
        SpruceTree:3.173691E-7
        ForestMazeEnd:0.0
        ClayWaterMound1:0.0
        MesoMazeZombieTable:0.0
        MesoMazeGrowth:0.0
        MoonWizard:1.0
        GenericTreeSmall:0.0
        PirateHideout:1.0
        ForestMazeCorridor:0.0
        CheeseTreasureVault:0.5061869
        FirTreeBig:0.0
        DinosaurSkull:0.0
        StoneMazeHuge:1.0155812E-10
        RedMushroom:1.0155812E-10
        DeadTreeLarge:0.0
        GiganticTree:3.24986E-9
        VillageChurch:0.0
        FallenPalmTree:0.0
        StoneIceBoulder:1.0155812E-10
        StoneMazeStudy:2.4678615E-8
        StonePlantBoulder:2.4678615E-8
        StoneMazePath:1.0399552E-7
        PyramidMazeZombieTable:0.0
        BigPyramid:0.0
        MysticalTree1:1.0155812E-10
        ForestMazeTurn:0.0
        MoonCheeseMine:1.0
     >

    # Resource Expression that will be applied to each loading structure, determining if it should be set to 'active'. [default: ]
    S:structureGenerationMatcher=

    # Resource Expression that will be applied to each loading structure, determining if it should be loaded. [default: ]
    S:structureLoadMatcher=

    # How often do structures spawn? [range: 0.0 ~ 10.0, default: 1.0]
    S:structureSpawnChance=1.0

    # Biome Expression that will be checked for every single structure. Use this if you want to blacklist / whitelist specific biomes that shouldn't have structures. [default: ]
    S:universalBiomeMatcher=

    # Dimension Expression that will be checked for every single structure. Use this if you want to blacklist / whitelist specific dimensions that shouldn't have structures. [default: ]
    S:universalDimensionMatcher=

    # Transformer preset names that are gonna be applied to every single generating structure. Use this if you need to enforce specific rules (e.g. "don't ever spawn wood blocks" (with a replace transformer). [default: ]
    S:universalTransformerPresets <
     >
}


controls {
    # The key to be held when you want to make a secondary selection with block selectors [default: ctrl]
    S:blockSelectorModifierKeys=ctrl
}


decoration {
    # The base weight of RC sapling generation types. The vanilla tree weight is 1 - if you want to fully replace vanilla trees, crank this up to something big. [range: 0.0 ~ 100000.0, default: 0.2]
    S:baseSaplingSpawnWeight=0.2

    # The base weight of RC village generation types. Vanilla average is about 10 - if you want to fully replace vanilla structures in villages, crank this up to something big. [range: 0 ~ 100000, default: 10]
    I:baseVillageSpawnWeight=10

    # The base weight of this decoration type. The vanilla decorator has a weight of 1 - if you want to fully replace vanilla decoration, crank this up to something big. [range: 0.0 ~ 1000.0, default: 0.2]
    S:baseWeight_big_mushroom=0.2

    # The base weight of this decoration type. The vanilla decorator has a weight of 1 - if you want to fully replace vanilla decoration, crank this up to something big. [range: 0.0 ~ 1000.0, default: 0.2]
    S:baseWeight_cactus=0.2

    # The base weight of this decoration type. The vanilla decorator has a weight of 1 - if you want to fully replace vanilla decoration, crank this up to something big. [range: 0.0 ~ 1000.0, default: 0.2]
    S:baseWeight_desert_well=0.2

    # The base weight of this decoration type. The vanilla decorator has a weight of 1 - if you want to fully replace vanilla decoration, crank this up to something big. [range: 0.0 ~ 1000.0, default: 0.2]
    S:baseWeight_fossil=0.2

    # The base weight of this decoration type. The vanilla decorator has a weight of 1 - if you want to fully replace vanilla decoration, crank this up to something big. [range: 0.0 ~ 1000.0, default: 0.2]
    S:baseWeight_mineshaft=0.2

    # The base weight of this decoration type. The vanilla decorator has a weight of 1 - if you want to fully replace vanilla decoration, crank this up to something big. [range: 0.0 ~ 1000.0, default: 0.2]
    S:baseWeight_nether_bridge=0.2

    # The base weight of this decoration type. The vanilla decorator has a weight of 1 - if you want to fully replace vanilla decoration, crank this up to something big. [range: 0.0 ~ 1000.0, default: 0.2]
    S:baseWeight_ocean_monument=0.2

    # The base weight of this decoration type. The vanilla decorator has a weight of 1 - if you want to fully replace vanilla decoration, crank this up to something big. [range: 0.0 ~ 1000.0, default: 0.2]
    S:baseWeight_scattered_feature=0.2

    # The base weight of this decoration type. The vanilla decorator has a weight of 1 - if you want to fully replace vanilla decoration, crank this up to something big. [range: 0.0 ~ 1000.0, default: 0.2]
    S:baseWeight_stronghold=0.2

    # The base weight of this decoration type. The vanilla decorator has a weight of 1 - if you want to fully replace vanilla decoration, crank this up to something big. [range: 0.0 ~ 1000.0, default: 0.2]
    S:baseWeight_tree=0.2

    # The base weight of this decoration type. The vanilla decorator has a weight of 1 - if you want to fully replace vanilla decoration, crank this up to something big. [range: 0.0 ~ 1000.0, default: 0.2]
    S:baseWeight_village=0.2

    # The chance to trigger any special sapling spawns at all. If you want to disable the big trees, set this to 0. [range: 0.0 ~ 1.0, default: 1.0]
    S:saplingTriggerChance=1.0
}


general {
    # The required permission level for /#as to function. Set to 2 for command blocks and OPs, 4 for only server, or -1 to disable. Note that this could be a security problem on low levels. [range: -1 ~ 10, default: 4]
    I:asCommandPermissionLevel=4

    # List of Command Expressions determining if a command can be executed. Example: #export:#3 | $Ivorforce [default: ]
    S:commandMatchers <
     >

    # The String that will be prefixed to every command, e.g. '#' -> '/#gen', '#paste' etc. [default: #]
    S:commandPrefix=#

    # Enabling this will make the mod register as little as possible, which enables it to be used server-side only. Note that this prevents you from editing or importing structures. [default: false]
    B:lightweightMode=false

    # Memorize decoration spawns like trees or mushrooms (for /#whatisthis). Since decoration is so common, it is recommended to use this only for debugging / balancing purposes. [default: false]
    B:memorizeDecoration=false

    # Memorize sapling spawns (for /#whatisthis). Since saplings are so common, it is recommended to use this only for debugging / balancing purposes. [default: false]
    B:memorizeSaplings=false

    # Disabling this will prevent spawn command blocks from notifying the server admins, as normal commands would. [default: false]
    B:notifyAdminOnBlockCommands=false

    # Once per world, post the status of ReC to the admins. [default: true]
    B:postWorldStatus=false

    # Whether player caches like the clipboard and previewed operations will be saved and loaded. [default: true]
    B:savePlayerCache=true
}


visual {
    # Only show the edges of negative space blocks? (Improves performance in big builds) [default: true]
    B:hideRedundantNegativeSpace=true
}


