# Configuration file

##########################################################################################################
# general
#--------------------------------------------------------------------------------------------------------#
# WEBSITE: http://mods.stjerncraft.com/tickdynamic   <- Head here for the documentation, if you have problems or if you have questions.
# 
# Slices are the way you control the time allottment to each world, and within each world, to Entities and TileEntities.
# Each tick the time for a tick(By default 50ms) will be distributed among all the worlds, according to how many slices they have.
# If you have 3 worlds, each with 100 slices, then each world will get 100/300 = ~33% of the time.
# So you can thus give the Overworld a maxSlices of 300, while giving the other two 100 each. This way the Overworld will get 60% of the time.
# 
# Of the time given to the world, this is further distributed to TileEntities and Entities according to their slices, the same way.
# TileEntities and Entities are given a portion of the time first given to the world, so their slices are only relative to each other within that world.If any group has unused time, then that time will be distributed to the remaining groups.
# So even if you give 1000 slices to TileEntities and 100 to Entities, as long as as TileEntities aren't using it's full time,
# Entities will be able to use more than 100 slices of time.
# 
# So the formula for slices to time percentage is: (group.maxSlices/allSiblings.maxSlices)*100
# 
# Note: maxSlices = 0 has a special meaning. It means that the group's time usage is accounted for, but not limited.
# Basically it can take all the time it needs, even if it goes above the parent maxTime, pushing its siblings down to minimumObjects.
##########################################################################################################

general {
    # How many ticks of data to use when averaging for time balancing.
    # A higher number will make it take regular spikes into account, however will make it slower to adjust to changes.
    I:averageTicks=20

    # Debug output. Warning: Setting this to true will cause a lot of console spam.
    # Only do it if developer or someone else asks for the output!
    B:debug=false

    # The default maxSlices for a new automatically added world.
    I:defaultWorldSlicesMax=100
    B:enabled=true

    ##########################################################################################################
    # entitydefaults
    #--------------------------------------------------------------------------------------------------------#
    # The default values for new Entity groups when automatically created for new worlds.
    ##########################################################################################################

    entitydefaults {
        # The minimum number of Entities to update per tick, independent of time given.
        I:minimumObjects=100

        # The number of time slices given to the group.
        I:slicesMax=100
    }

    ##########################################################################################################
    # tileentitydefaults
    #--------------------------------------------------------------------------------------------------------#
    # The default values for new TileEntity groups when automatically created for new worlds.
    ##########################################################################################################

    tileentitydefaults {
        # The minimum number of TileEntities to update per tick, independent of time given.
        I:minimumObjects=100

        # The number of time slices given to the group.
        I:slicesMax=100
    }

}


worlds {
    # The time allotted to a tick in milliseconds. 20 Ticks per second means 50ms per tick.
    # This is the base time allotment it will use when balancing the time usage between worlds and objects.
    # You can set this to less than 50ms if you want to leave a bit of buffer time for other things, or don't want to use 100% cpu.
    I:tickTime=50

    dim-37 {
        I:slicesMax=100

        entity {
            I:minimumObjects=100
            I:slicesMax=100
        }

        tileentity {
            I:minimumObjects=100
            I:slicesMax=100
        }

    }

    dim-38 {
        I:slicesMax=100

        entity {
            I:minimumObjects=100
            I:slicesMax=100
        }

        tileentity {
            I:minimumObjects=100
            I:slicesMax=100
        }

    }

    dim-39 {
        I:slicesMax=100

        entity {
            I:minimumObjects=100
            I:slicesMax=100
        }

        tileentity {
            I:minimumObjects=100
            I:slicesMax=100
        }

    }

    ##########################################################################################################
    # dim-42
    #--------------------------------------------------------------------------------------------------------#
    # The Outer Lands
    ##########################################################################################################

    dim-42 {
        I:slicesMax=100

        entity {
            I:minimumObjects=100
            I:slicesMax=100
        }

        tileentity {
            I:minimumObjects=100
            I:slicesMax=100
        }

    }

    ##########################################################################################################
    # dim-19
    #--------------------------------------------------------------------------------------------------------#
    # Bedrock
    ##########################################################################################################

    dim-19 {
        I:slicesMax=100

        entity {
            I:minimumObjects=100
            I:slicesMax=100
        }

        tileentity {
            I:minimumObjects=100
            I:slicesMax=100
        }

    }

    dim7 {
        I:slicesMax=100

        entity {
            I:minimumObjects=100
            I:slicesMax=100
        }

        tileentity {
            I:minimumObjects=100
            I:slicesMax=100
        }

    }

    dim53 {
        I:slicesMax=100

        entity {
            I:minimumObjects=100
            I:slicesMax=100
        }

        tileentity {
            I:minimumObjects=100
            I:slicesMax=100
        }

    }

    dim52 {
        I:slicesMax=100

        entity {
            I:minimumObjects=100
            I:slicesMax=100
        }

        tileentity {
            I:minimumObjects=100
            I:slicesMax=100
        }

    }

    dim51 {
        I:slicesMax=100

        entity {
            I:minimumObjects=100
            I:slicesMax=100
        }

        tileentity {
            I:minimumObjects=100
            I:slicesMax=100
        }

    }

    ##########################################################################################################
    # dim-1
    #--------------------------------------------------------------------------------------------------------#
    # Nether
    ##########################################################################################################

    dim-1 {
        I:slicesMax=100

        entity {
            I:minimumObjects=100
            I:slicesMax=100
        }

        tileentity {
            I:minimumObjects=100
            I:slicesMax=100
        }

    }

    dim50 {
        I:slicesMax=100

        entity {
            I:minimumObjects=100
            I:slicesMax=100
        }

        tileentity {
            I:minimumObjects=100
            I:slicesMax=100
        }

    }

    ##########################################################################################################
    # dim1
    #--------------------------------------------------------------------------------------------------------#
    # The End
    ##########################################################################################################

    dim1 {
        I:slicesMax=100

        entity {
            I:minimumObjects=100
            I:slicesMax=100
        }

        tileentity {
            I:minimumObjects=100
            I:slicesMax=100
        }

    }

    ##########################################################################################################
    # dim0
    #--------------------------------------------------------------------------------------------------------#
    # Overworld
    ##########################################################################################################

    dim0 {
        I:slicesMax=100

        entity {
            I:minimumObjects=100
            I:slicesMax=100
        }

        tileentity {
            I:minimumObjects=100
            I:slicesMax=100
        }

    }

    ##########################################################################################################
    # dim42
    #--------------------------------------------------------------------------------------------------------#
    # Soul Network Dimension
    ##########################################################################################################

    dim42 {
        I:slicesMax=100

        entity {
            I:minimumObjects=100
            I:slicesMax=100
        }

        tileentity {
            I:minimumObjects=100
            I:slicesMax=100
        }

    }

    ##########################################################################################################
    # dim69
    #--------------------------------------------------------------------------------------------------------#
    # Pocket Plane
    ##########################################################################################################

    dim69 {
        I:slicesMax=100

        entity {
            I:minimumObjects=100
            I:slicesMax=100
        }

        tileentity {
            I:minimumObjects=100
            I:slicesMax=100
        }

    }

    dim66 {
        I:slicesMax=100

        entity {
            I:minimumObjects=100
            I:slicesMax=100
        }

        tileentity {
            I:minimumObjects=100
            I:slicesMax=100
        }

    }

    dim-100 {
        I:slicesMax=100

        entity {
            I:minimumObjects=100
            I:slicesMax=100
        }

        tileentity {
            I:minimumObjects=100
            I:slicesMax=100
        }

    }

    dim4 {
        I:slicesMax=100

        entity {
            I:minimumObjects=100
            I:slicesMax=100
        }

        tileentity {
            I:minimumObjects=100
            I:slicesMax=100
        }

    }

    dim-112 {
        I:slicesMax=100

        entity {
            I:minimumObjects=100
            I:slicesMax=100
        }

        tileentity {
            I:minimumObjects=100
            I:slicesMax=100
        }

    }

    dim3 {
        I:slicesMax=100

        entity {
            I:minimumObjects=100
            I:slicesMax=100
        }

        tileentity {
            I:minimumObjects=100
            I:slicesMax=100
        }

    }

    dim63 {
        I:slicesMax=100

        entity {
            I:minimumObjects=100
            I:slicesMax=100
        }

        tileentity {
            I:minimumObjects=100
            I:slicesMax=100
        }

    }

    dim-16 {
        I:slicesMax=100

        entity {
            I:minimumObjects=100
            I:slicesMax=100
        }

        tileentity {
            I:minimumObjects=100
            I:slicesMax=100
        }

    }

    dim-17 {
        I:slicesMax=100

        entity {
            I:minimumObjects=100
            I:slicesMax=100
        }

        tileentity {
            I:minimumObjects=100
            I:slicesMax=100
        }

    }

    dim-18 {
        I:slicesMax=100

        entity {
            I:minimumObjects=100
            I:slicesMax=100
        }

        tileentity {
            I:minimumObjects=100
            I:slicesMax=100
        }

    }

    dim-28 {
        I:slicesMax=100

        entity {
            I:minimumObjects=100
            I:slicesMax=100
        }

        tileentity {
            I:minimumObjects=100
            I:slicesMax=100
        }

    }

    dim-29 {
        I:slicesMax=100

        entity {
            I:minimumObjects=100
            I:slicesMax=100
        }

        tileentity {
            I:minimumObjects=100
            I:slicesMax=100
        }

    }

    dim68 {
        I:slicesMax=100

        entity {
            I:minimumObjects=100
            I:slicesMax=100
        }

        tileentity {
            I:minimumObjects=100
            I:slicesMax=100
        }

    }

    dim-30 {
        I:slicesMax=100

        entity {
            I:minimumObjects=100
            I:slicesMax=100
        }

        tileentity {
            I:minimumObjects=100
            I:slicesMax=100
        }

    }

    dim-31 {
        I:slicesMax=100

        entity {
            I:minimumObjects=100
            I:slicesMax=100
        }

        tileentity {
            I:minimumObjects=100
            I:slicesMax=100
        }

    }

    dim-34 {
        I:slicesMax=100

        entity {
            I:minimumObjects=100
            I:slicesMax=100
        }

        tileentity {
            I:minimumObjects=100
            I:slicesMax=100
        }

    }

    dim-36 {
        I:slicesMax=100

        entity {
            I:minimumObjects=100
            I:slicesMax=100
        }

        tileentity {
            I:minimumObjects=100
            I:slicesMax=100
        }

    }

    dim-40 {
        I:slicesMax=100

        entity {
            I:minimumObjects=100
            I:slicesMax=100
        }

        tileentity {
            I:minimumObjects=100
            I:slicesMax=100
        }

    }

    dim-41 {
        I:slicesMax=100

        entity {
            I:minimumObjects=100
            I:slicesMax=100
        }

        tileentity {
            I:minimumObjects=100
            I:slicesMax=100
        }

    }

    dim-43 {
        I:slicesMax=100

        entity {
            I:minimumObjects=100
            I:slicesMax=100
        }

        tileentity {
            I:minimumObjects=100
            I:slicesMax=100
        }

    }

    dim-44 {
        I:slicesMax=100

        entity {
            I:minimumObjects=100
            I:slicesMax=100
        }

        tileentity {
            I:minimumObjects=100
            I:slicesMax=100
        }

    }

    dim-5000 {
        I:slicesMax=100

        entity {
            I:minimumObjects=100
            I:slicesMax=100
        }

        tileentity {
            I:minimumObjects=100
            I:slicesMax=100
        }

    }

    dim-66 {
        I:slicesMax=100

        entity {
            I:minimumObjects=100
            I:slicesMax=100
        }

        tileentity {
            I:minimumObjects=100
            I:slicesMax=100
        }

    }

    dim-67 {
        I:slicesMax=100

        entity {
            I:minimumObjects=100
            I:slicesMax=100
        }

        tileentity {
            I:minimumObjects=100
            I:slicesMax=100
        }

    }

    dim-68 {
        I:slicesMax=100

        entity {
            I:minimumObjects=100
            I:slicesMax=100
        }

        tileentity {
            I:minimumObjects=100
            I:slicesMax=100
        }

    }

    dim-69 {
        I:slicesMax=100

        entity {
            I:minimumObjects=100
            I:slicesMax=100
        }

        tileentity {
            I:minimumObjects=100
            I:slicesMax=100
        }

    }

    dim-2542 {
        I:slicesMax=100

        entity {
            I:minimumObjects=100
            I:slicesMax=100
        }

        tileentity {
            I:minimumObjects=100
            I:slicesMax=100
        }

    }

    dim-2543 {
        I:slicesMax=100

        entity {
            I:minimumObjects=100
            I:slicesMax=100
        }

        tileentity {
            I:minimumObjects=100
            I:slicesMax=100
        }

    }

    dim25 {
        I:slicesMax=100

        entity {
            I:minimumObjects=100
            I:slicesMax=100
        }

        tileentity {
            I:minimumObjects=100
            I:slicesMax=100
        }

    }

    ##########################################################################################################
    # dim-73
    #--------------------------------------------------------------------------------------------------------#
    # Outer Lands
    ##########################################################################################################

    dim-73 {
        I:slicesMax=100

        entity {
            I:minimumObjects=100
            I:slicesMax=100
        }

        tileentity {
            I:minimumObjects=100
            I:slicesMax=100
        }

    }

    dim24 {
        I:slicesMax=100

        entity {
            I:minimumObjects=100
            I:slicesMax=100
        }

        tileentity {
            I:minimumObjects=100
            I:slicesMax=100
        }

    }

    dim-2544 {
        I:slicesMax=100

        entity {
            I:minimumObjects=100
            I:slicesMax=100
        }

        tileentity {
            I:minimumObjects=100
            I:slicesMax=100
        }

    }

    dim-2545 {
        I:slicesMax=100

        entity {
            I:minimumObjects=100
            I:slicesMax=100
        }

        tileentity {
            I:minimumObjects=100
            I:slicesMax=100
        }

    }

    dim23 {
        I:slicesMax=100

        entity {
            I:minimumObjects=100
            I:slicesMax=100
        }

        tileentity {
            I:minimumObjects=100
            I:slicesMax=100
        }

    }

    dim-2546 {
        I:slicesMax=100

        entity {
            I:minimumObjects=100
            I:slicesMax=100
        }

        tileentity {
            I:minimumObjects=100
            I:slicesMax=100
        }

    }

    dim22 {
        I:slicesMax=100

        entity {
            I:minimumObjects=100
            I:slicesMax=100
        }

        tileentity {
            I:minimumObjects=100
            I:slicesMax=100
        }

    }

    dim21 {
        I:slicesMax=100

        entity {
            I:minimumObjects=100
            I:slicesMax=100
        }

        tileentity {
            I:minimumObjects=100
            I:slicesMax=100
        }

    }

    dim-2547 {
        I:slicesMax=100

        entity {
            I:minimumObjects=100
            I:slicesMax=100
        }

        tileentity {
            I:minimumObjects=100
            I:slicesMax=100
        }

    }

    dim20 {
        I:slicesMax=100

        entity {
            I:minimumObjects=100
            I:slicesMax=100
        }

        tileentity {
            I:minimumObjects=100
            I:slicesMax=100
        }

    }

    dim-2548 {
        I:slicesMax=100

        entity {
            I:minimumObjects=100
            I:slicesMax=100
        }

        tileentity {
            I:minimumObjects=100
            I:slicesMax=100
        }

    }

    dim-2549 {
        I:slicesMax=100

        entity {
            I:minimumObjects=100
            I:slicesMax=100
        }

        tileentity {
            I:minimumObjects=100
            I:slicesMax=100
        }

    }

    dim-2550 {
        I:slicesMax=100

        entity {
            I:minimumObjects=100
            I:slicesMax=100
        }

        tileentity {
            I:minimumObjects=100
            I:slicesMax=100
        }

    }

    dim-2551 {
        I:slicesMax=100

        entity {
            I:minimumObjects=100
            I:slicesMax=100
        }

        tileentity {
            I:minimumObjects=100
            I:slicesMax=100
        }

    }

    dim-2552 {
        I:slicesMax=100

        entity {
            I:minimumObjects=100
            I:slicesMax=100
        }

        tileentity {
            I:minimumObjects=100
            I:slicesMax=100
        }

    }

    dim-2553 {
        I:slicesMax=100

        entity {
            I:minimumObjects=100
            I:slicesMax=100
        }

        tileentity {
            I:minimumObjects=100
            I:slicesMax=100
        }

    }

    dim-2554 {
        I:slicesMax=100

        entity {
            I:minimumObjects=100
            I:slicesMax=100
        }

        tileentity {
            I:minimumObjects=100
            I:slicesMax=100
        }

    }

    dim-13 {
        I:slicesMax=100

        entity {
            I:minimumObjects=100
            I:slicesMax=100
        }

        tileentity {
            I:minimumObjects=100
            I:slicesMax=100
        }

    }

    dim-14 {
        I:slicesMax=100

        entity {
            I:minimumObjects=100
            I:slicesMax=100
        }

        tileentity {
            I:minimumObjects=100
            I:slicesMax=100
        }

    }

    dim-15 {
        I:slicesMax=100

        entity {
            I:minimumObjects=100
            I:slicesMax=100
        }

        tileentity {
            I:minimumObjects=100
            I:slicesMax=100
        }

    }

    dim-20 {
        I:slicesMax=100

        entity {
            I:minimumObjects=100
            I:slicesMax=100
        }

        tileentity {
            I:minimumObjects=100
            I:slicesMax=100
        }

    }

    dim-21 {
        I:slicesMax=100

        entity {
            I:minimumObjects=100
            I:slicesMax=100
        }

        tileentity {
            I:minimumObjects=100
            I:slicesMax=100
        }

    }

    dim-22 {
        I:slicesMax=100

        entity {
            I:minimumObjects=100
            I:slicesMax=100
        }

        tileentity {
            I:minimumObjects=100
            I:slicesMax=100
        }

    }

    dim-33 {
        I:slicesMax=100

        entity {
            I:minimumObjects=100
            I:slicesMax=100
        }

        tileentity {
            I:minimumObjects=100
            I:slicesMax=100
        }

    }

    dim-35 {
        I:slicesMax=100

        entity {
            I:minimumObjects=100
            I:slicesMax=100
        }

        tileentity {
            I:minimumObjects=100
            I:slicesMax=100
        }

    }

    dim152 {
        I:slicesMax=100

        entity {
            I:minimumObjects=100
            I:slicesMax=100
        }

        tileentity {
            I:minimumObjects=100
            I:slicesMax=100
        }

    }

    dim151 {
        I:slicesMax=100

        entity {
            I:minimumObjects=100
            I:slicesMax=100
        }

        tileentity {
            I:minimumObjects=100
            I:slicesMax=100
        }

    }

    dim90 {
        I:slicesMax=100

        entity {
            I:minimumObjects=100
            I:slicesMax=100
        }

        tileentity {
            I:minimumObjects=100
            I:slicesMax=100
        }

    }

    ##########################################################################################################
    # dim-50
    #--------------------------------------------------------------------------------------------------------#
    # Twilight Forest
    ##########################################################################################################

    dim-50 {
        I:slicesMax=100

        entity {
            I:minimumObjects=100
            I:slicesMax=100
        }

        tileentity {
            I:minimumObjects=100
            I:slicesMax=100
        }

    }

    dim-105 {
        I:slicesMax=100

        entity {
            I:minimumObjects=100
            I:slicesMax=100
        }

        tileentity {
            I:minimumObjects=100
            I:slicesMax=100
        }

    }

}


