# Configuration file

accelerator {
    # Enable accelerator blocks. Requires a compatible server, as it won't work in single player
    B:enable=false

    # Maximum number of particle bunches per accelerator controller
    I:max_particle_bunches=20
}


breathing {
    # Update speed of air generation
    I:air_generation_interval_ticks=40

    # Maximum range of an air generator for each tier, measured in block
    I:air_generation_range_blocks <
        16
        48
        144
     >

    # Spam creative players with air status around them, use at your own risk.
    B:enable_air_at_entity_debug=false

    # Energy cost per air canister refilled
    I:energy_per_canister=200

    # Energy cost to sustain air distribution per open side per interval
    I:energy_per_existing_air_block <
        4
        60
        870
     >

    # Energy cost to start air distribution per open side per interval
    I:energy_per_new_air_block <
        12
        180
        2610
     >

    # Maximum energy stored
    I:max_energy_stored <
        1400
        21000
        304500
     >

    # Minimum delay between consecutive air propagation updates of the same block.
    I:simulation_delay_ticks=30

    # Maximum depth of blocks to update when a volume has changed.
    # Higher values may cause TPS lag spikes, Lower values will exponentially increase the repressurization time
    I:volume_update_depth_blocks=256
}


chunk_loader {
    # Energy consumed per chunk loaded
    I:energy_per_chunk=8

    # Maximum energy stored
    I:max_energy_stored=1000000

    # Maximum radius when loading a square shape, measured in chunks. A linear shape can be up to 1 chunk wide by (radius + 1 + radius) ^ 2 chunks long.
    I:max_radius=2
}


client {
    # Hexadecimal color code for location tile and description background (0xAARRGGBB where AA is alpha, RR is Red, GG is Green and BB is Blue component)
    S:location_background_color=0x40303030

    # Shadow casting option for current celestial object name
    B:location_has_shadow=true

    # Horizontal offset on screen, increase to move to the right
    I:location_offset_x=0

    # Vertical offset on screen, increase to move down
    I:location_offset_y=-20

    # Format for location title
    S:location_prefix=Â§l%1$s

    # Scale for location text font
    D:location_scale=1.0

    # Alignment on screen: TOP_LEFT, TOP_CENTER, TOP_RIGHT, MIDDLE_LEFT, MIDDLE_CENTER, MIDDLE_RIGHT, BOTTOM_LEFT, BOTTOM_CENTER or BOTTOM_RIGHT
    S:location_screen_alignment=MIDDLE_RIGHT

    # Text alignment: TOP_LEFT, TOP_CENTER, TOP_RIGHT, MIDDLE_LEFT, MIDDLE_CENTER, MIDDLE_RIGHT, BOTTOM_LEFT, BOTTOM_CENTER or BOTTOM_RIGHT
    S:location_text_alignment=TOP_RIGHT

    # Hexadecimal color code for location tile and description foreground (0xAARRGGBB where AA is alpha, RR is Red, GG is Green and BB is Blue component)
    S:location_text_color=0xE6B4B4F0

    # Text width as a minimum 'pixel' count
    I:location_width_min=90

    # Text width as a ratio of full screen width
    D:location_width_ratio=0.0

    # When to show armor stats in tooltips. Valid values are NEVER, ON_SNEAK, ADVANCED_TOOLTIPS, CREATIVE_ONLY, ALWAYS.
    S:tooltip_armor_stats=ALWAYS

    # When to show burn time in tooltips. Valid values are NEVER, ON_SNEAK, ADVANCED_TOOLTIPS, CREATIVE_ONLY, ALWAYS.
    S:tooltip_burn_time=ADVANCED_TOOLTIPS

    # When to show durability in tooltips. Valid values are NEVER, ON_SNEAK, ADVANCED_TOOLTIPS, CREATIVE_ONLY, ALWAYS.
    S:tooltip_durability=ALWAYS

    # When to show flammability in tooltips. Valid values are NEVER, ON_SNEAK, ADVANCED_TOOLTIPS, CREATIVE_ONLY, ALWAYS.
    S:tooltip_flammability=ADVANCED_TOOLTIPS

    # When to show fluid stats in tooltips. Valid values are NEVER, ON_SNEAK, ADVANCED_TOOLTIPS, CREATIVE_ONLY, ALWAYS.
    S:tooltip_fluid_stats=ALWAYS

    # When to show hardness & explosion resistance in tooltips. Valid values are NEVER, ON_SNEAK, ADVANCED_TOOLTIPS, CREATIVE_ONLY, ALWAYS.
    S:tooltip_hardness=ADVANCED_TOOLTIPS

    # When to show harvesting stats in tooltips. Valid values are NEVER, ON_SNEAK, ADVANCED_TOOLTIPS, CREATIVE_ONLY, ALWAYS.
    S:tooltip_harvesting_stats=ALWAYS

    # When to show opacity in tooltips. Valid values are NEVER, ON_SNEAK, ADVANCED_TOOLTIPS, CREATIVE_ONLY, ALWAYS.
    S:tooltip_opacity=ADVANCED_TOOLTIPS

    # When to show ore dictionary names in tooltips. Valid values are NEVER, ON_SNEAK, ADVANCED_TOOLTIPS, CREATIVE_ONLY, ALWAYS.
    S:tooltip_ore_dictionary_name=ALWAYS

    # When to show registry name in tooltips. Valid values are NEVER, ON_SNEAK, ADVANCED_TOOLTIPS, CREATIVE_ONLY, ALWAYS.
    S:tooltip_registry_name=ADVANCED_TOOLTIPS

    # When to show repair material in tooltips. Valid values are NEVER, ON_SNEAK, ADVANCED_TOOLTIPS, CREATIVE_ONLY, ALWAYS.
    S:tooltip_repair_material=ON_SNEAK
}


cloaking {
    # Extra blocks covered after the outer coils
    I:coil_capture_blocks=5

    # Update speed of cloak simulation
    I:field_refresh_interval_seconds=3

    # Maximum energy stored
    I:max_energy_stored=500000000

    # Maximum distance between cloaking core and any cloaked side
    I:max_field_radius=63

    # Energy cost per non-air block in a Tier1 cloak
    I:tier1_energy_per_block=32

    # Energy cost per non-air block in a Tier2 cloak
    I:tier2_energy_per_block=128
}


enantiomorphic_reactor {
    # Maximum energy stored
    I:max_energy_stored=100000000

    # Maximum number of stabilisation laser shots per seconds before loosing efficiency
    I:max_lasers=6

    # Update speed of the reactor simulation
    I:update_interval_ticks=5
}


energy_bank {
    # Energy transfer efficiency for each upgrade apply, first value is without upgrades (0.8 means 20% loss)
    D:efficiency_per_upgrade <
        0.95
        0.98
        1.0
     >

    # IC2 energy tier for each energy bank (0 is BatBox, etc.)
    I:ic2_tier <
        2
        3
        4
     >

    # Maximum energy stored for each energy bank
    I:max_energy_stored <
        800000
        4000000
        20000000
     >

    # Internal energy transferred per tick for each energy bank
    I:transfer_per_tick <
        200
        1000
        5000
     >
}


general {
    # Number of blocks to move per ticks, too high will cause lag spikes on ship jumping or deployment, too low may break the ship wirings
    I:blocks_per_tick=3500

    # Enable area protection checks from other mods or plugins, disable if you use the event system exclusively
    B:enable_protection_checks=true

    # Entity camera ID
    I:entity_camera_id=243

    # Entity particle bunch ID
    I:entity_particle_bunch_id=244

    # Entity sphere generator ID
    I:entity_sphere_generator_id=241

    # Entity star core ID
    I:entity_star_core_id=242

    # Hyperspace dimension provider ID
    I:hyperspace_provider_id=15

    # LUA scripts to load when connecting machines: 0 = none, 1 = templates in a subfolder, 2 = ready to roll (templates are still provided)
    I:lua_scripts=2

    # Folder where to save ship schematics
    S:schematic_location=warpDrive_schematics

    # Space biome ID
    I:space_biome_id=6075

    # Space dimension provider ID
    I:space_provider_id=14
}


ic2_reactor_laser {
    # Maximum component heat added to the focus every reactor tick
    I:component_heat_transfer_per_tick=54

    # Update speed of the check for reactors to cooldown. Use 10 to tick as fast as the reactor simulation
    I:cooling_interval_ticks=10

    # Heat extracted from the focus by interval
    I:cooling_per_interval=1080

    # Energy cost per heat absorbed
    D:energy_per_heat=2.0

    # Maximum heat transferred between 2 connected focus every reactor tick
    I:focus_heat_transfer_per_tick=648

    # Maximum heat stored in the focus
    I:max_heat_stored=30000

    # Maximum reactor heat added to the focus every reactor tick
    I:reactor_heat_transfer_per_tick=54
}


laser_cannon {
    # Maximum probability of energy absorption (i.e. block not breaking)
    D:block_hit_absorption_max=0.8

    # Probability of energy absorption (i.e. block not breaking) per block hardness. Set to 1.0 to always break the block.
    D:block_hit_absorption_per_block_hardness=0.01

    # Maximum energy required for breaking a block
    I:block_hit_energy_max=750000

    # Minimum energy required for breaking a block
    I:block_hit_energy_min=75000

    # Energy cost per block hardness for breaking a block
    I:block_hit_energy_per_block_hardness=150000

    # Explosion base strength, 4 is Vanilla TNT
    D:block_hit_explosion_base_strength=8.0

    # Energy per added explosion strength
    I:block_hit_explosion_energy_per_strength=125000

    # Minimum block hardness required to cause an explosion
    D:block_hit_explosion_hardness_threshold=5.0

    # Maximum explosion strength, set to 0 to disable explosion completely
    D:block_hit_explosion_max_strength=50.0

    # Energy factor applied from boosting to main laser
    D:booster_beam_energy_efficiency=0.6

    # Delay while booster beams are accepted, before actually shooting
    I:emit_fire_delay_ticks=5

    # Delay while booster beams are accepted, before actually scanning
    I:emit_scan_delay_ticks=1

    # Energy attenuation when going through a broken block
    D:energy_attenuation_per_air_block=2.0E-4

    # Minimum damage to entity hit (measured in half hearts)
    I:entity_hit_base_damage=3

    # Base energy consumed from hitting an entity
    I:entity_hit_energy=15000

    # Energy required by additional hit point (won't be consumed)
    I:entity_hit_energy_per_damage=30000

    # Minimum energy to cause explosion effect
    I:entity_hit_energy_threshold_for_explosion=900000

    # Explosion base strength, 4 is Vanilla TNT
    D:entity_hit_explosion_base_strength=4.0

    # Energy per added explosion strength
    I:entity_hit_explosion_energy_per_strength=125000

    # Maximum explosion strength, set to 0 to disable explosion completely
    D:entity_hit_explosion_max_strength=4.0

    # Maximum damage to entity hit, set to 0 to disable damage completely
    I:entity_hit_max_damage=100

    # Duration of fire effect on entity hit (in seconds)
    I:entity_hit_set_on_fire_seconds=20

    # Maximum energy in beam after accounting for boosters beams
    I:max_laser_energy=3400000

    # Maximum number of laser mediums per laser
    I:max_mediums_count=10

    # Maximum distance travelled
    I:range_max=500
}


laser_medium {
    # Maximum energy stored
    I:max_energy_stored=100000
}


lift {
    # Energy consumed per entity moved
    I:energy_per_entity=150

    # Cooldown after moving an entity
    I:entity_cooldown_ticks=40

    # Maximum energy stored
    I:max_energy_stored=900

    # Update speed of the check for entities
    I:update_interval_ticks=10
}


logging {
    # Detailed LUA logs to help debug the mod, enable it before reporting a bug
    B:enable_LUA_logs=false

    # Save XML preprocessor results as output*.xml file, enable it to debug your XML configuration files
    B:enable_XML_preprocessor_logs=false

    # Detailed accelerator logs to help debug the mod, enable it before reporting a bug
    B:enable_accelerator_logs=false

    # Detailed break/place event logs to help debug the mod, enable it before reporting a bug
    B:enable_break_place_logs=false

    # Detailed breathing logs to help debug the mod, enable it before reporting a bug
    B:enable_breathing_logs=false

    # Detailed building logs to help debug the mod, enable it before reporting a bug
    B:enable_building_logs=false

    # Detailed camera logs to help debug the mod, enable it before reporting a bug
    B:enable_camera_logs=false

    # Detailed chunk data logs to help debug the mod.
    B:enable_chunk_handler_logs=false

    # Chunk loading logs, enable it to report chunk loaders updates
    B:enable_chunk_loading_logs=true

    # Detailed collection logs to help debug the mod, enable it before reporting a bug
    B:enable_collection_logs=false

    # Dictionary logs, enable it to dump blocks hardness and blast resistance at boot
    B:enable_dictionary_logs=false

    # Detailed energy logs to help debug the mod, enable it before reporting a bug
    B:enable_energy_logs=false

    # EntityFX logs, enable it to dump entityFX registry updates
    B:enable_entity_fx_logs=false

    # Detailed forcefield logs to help debug the mod, enable it before reporting a bug
    B:enable_forcefield_logs=false

    # ForceField registry logs, enable it to dump forcefield registry updates
    B:enable_forcefield_registry_logs=false

    # Basic jump logs, should always be enabled
    B:enable_jump_logs=false

    # Detailed jump logs to help debug the mod, will spam your logs...
    B:enable_jumpblocks_logs=false

    # Profiling logs for CPU time, enable it to check for lag
    B:enable_profiling_CPU_time=true

    # Profiling logs for memory allocation, enable it to check for lag
    B:enable_profiling_memory_allocation=false

    # Profiling logs for multi-threading, enable it to check for ConcurrentModificationException
    B:enable_profiling_thread_safety=false

    # Detailed radar logs to help debug the mod, enable it before reporting a bug
    B:enable_radar_logs=false

    # Detailed rendering logs to help debug the mod.
    B:enable_rendering_logs=false

    # Starmap logs, enable it to dump starmap registry updates
    B:enable_starmap_logs=false

    # Detailed transporter logs to help debug the mod, enable it before reporting a bug
    B:enable_transporter_logs=false

    # Detailed weapon logs to help debug the mod, enable it before reporting a bug
    B:enable_weapon_logs=false

    # Detailed world generation logs to help debug the mod, enable it before reporting a bug
    B:enable_world_generation_logs=false
}


mining_laser {
    # Maximum number of laser mediums
    I:max_mediums_count=3

    # Mining duration per scanned block
    I:mine_delay_ticks=3

    # Energy cost multiplier per block when mining only ores
    D:oresonly_energy_factor=15.0

    # Energy cost per block in space
    I:planet_energy_per_block=2500

    # Energy cost per layer on a planet
    I:planet_energy_per_layer=33000

    # Mining radius without any laser medium, measured in blocks
    I:radius_no_laser_medium=4

    # Bonus to mining radius per laser medium, measured in blocks
    I:radius_per_laser_medium=1

    # Scan duration per layer
    I:scan_delay_ticks=20

    # Energy cost multiplier per block when mining with silktouch
    D:silktouch_energy_factor=1.5

    # Energy cost per block in space
    I:space_energy_per_block=1500

    # Energy cost per layer on a planet
    I:space_energy_per_layer=20000

    # Warmup duration (buffer on startup when energy source is weak)
    I:warmup_delay_ticks=20
}


radar {
    # energy cost factors {a, b, c, d}. You need to provide exactly 4 values.
    # The equation used is a + b * radius + c * radius^2 + d * radius^3
    D:factors_energy_cost <
        0.0
        0.0
        0.0
        1.0E-4
     >

    # maximum energy stored
    I:max_energy_stored=100000000

    # number of isolation blocks required to reach maximum effect (5 to 94)
    I:max_isolation_blocks=16

    # isolation effect achieved with max number of isolation blocks (0.01 to 1.00)
    D:max_isolation_effect=1.0

    # radius around core where isolation blocks count (2 to 8), higher is lagger
    I:max_isolation_range=2

    # minimum energy cost per scan (0+), independently of radius
    I:min_energy_cost=10000

    # number of isolation blocks required to get some isolation (0 to 20)
    I:min_isolation_blocks=2

    # isolation effect achieved with min number of isolation blocks (0.01 to 0.95)
    D:min_isolation_effect=0.12

    # scan delay factors {a, b, c, d}. You need to provide exactly 4 values.
    # The equation used is a + b * radius + c * radius^2 + d * radius^3, (measured in seconds)
    D:scan_delay_factors_seconds <
        1.0
        0.001
        0.0
        0.0
     >

    # minimum scan delay per scan (1+), (measured in seconds)
    I:scan_min_delay_seconds=1
}


ship {
    # Tolerance in block in case of collision before causing damages...
    I:collision_tolerance_blocks=3

    # (measured in seconds)
    I:controller_update_interval=2

    # (measured in seconds)
    I:core_isolation_update_interval=10

    # Maximum energy stored
    I:max_energy_stored=100000000

    # Maximum ship size on each axis in blocks
    I:max_side_size=127

    # Enable summoning players from another dimension
    B:summon_across_dimensions=false

    # Maximum range from which players can be summoned (measured in blocks), set to -1 for unlimited range
    I:summon_max_range=500

    # Energy cost per entity
    I:teleport_energy_per_entity=1000000

    # Maximum ship mass (in blocks) to jump on a planet
    I:volume_max_on_planet_surface=1200

    # Minimum ship mass (in blocks) to enter or exit hyperspace without a jumpgate
    I:volume_min_for_hyperspace=3000

    # Ship volume won't be refreshed unless it's older than that many seconds
    I:volume_scan_age_tolerance=120

    # List of player names which have unlimited block counts to their ship
    S:volume_unlimited_playernames <
        notch
        someone
     >

    # Random variation added to warmup (measured in ticks)
    I:warmup_random_ticks=60
}


ship_movement_costs {
    # Cooldown seconds to wait after jumping activating a jumpgate.
    # You need to provide exactly 5 values { A, B, C, D, E }. The equation used is A + B * mass + C * distance + D * ln( mass ) * exp( distance / E )
    # Result is rounded up to an integer. Use 0 to ignore that part of the equation.
    D:gate_activating_cooldown_interval_seconds <
        20.0
        0.0
        0.0
        0.0
        0.0
     >

    # energy required measured in internal units activating a jumpgate.
    # You need to provide exactly 5 values { A, B, C, D, E }. The equation used is A + B * mass + C * distance + D * ln( mass ) * exp( distance / E )
    # Result is rounded up to an integer. Use 0 to ignore that part of the equation.
    D:gate_activating_energyRequired_factors <
        20000.0
        10.0
        100.0
        0.0
        0.0
     >

    # Maximum jump length value in blocks activating a jumpgate.
    # You need to provide exactly 5 values { A, B, C, D, E }. The equation used is A + B * mass + C * distance + D * ln( mass ) * exp( distance / E )
    # Result is rounded up to an integer. Use 0 to ignore that part of the equation.
    D:gate_activating_max_jump_distance <
        100000.0
        0.1
        0.0
        0.0
        0.0
     >

    # Motion sickness duration measured in seconds activating a jumpgate.
    # You need to provide exactly 5 values { A, B, C, D, E }. The equation used is A + B * mass + C * distance + D * ln( mass ) * exp( distance / E )
    # Result is rounded up to an integer. Use 0 to ignore that part of the equation.
    D:gate_activating_sickness_seconds <
        3.0
        0.0
        0.0
        0.0
        0.0
     >

    # Warmup seconds to wait before starting jump activating a jumpgate.
    # You need to provide exactly 5 values { A, B, C, D, E }. The equation used is A + B * mass + C * distance + D * ln( mass ) * exp( distance / E )
    # Result is rounded up to an integer. Use 0 to ignore that part of the equation.
    D:gate_activating_warmup_seconds <
        10.0
        0.0
        0.0
        0.0
        0.0
     >

    # Cooldown seconds to wait after jumping entering hyperspace.
    # You need to provide exactly 5 values { A, B, C, D, E }. The equation used is A + B * mass + C * distance + D * ln( mass ) * exp( distance / E )
    # Result is rounded up to an integer. Use 0 to ignore that part of the equation.
    D:hyperspace_entering_cooldown_interval_seconds <
        60.0
        0.0
        0.0
        0.0
        0.0
     >

    # energy required measured in internal units entering hyperspace.
    # You need to provide exactly 5 values { A, B, C, D, E }. The equation used is A + B * mass + C * distance + D * ln( mass ) * exp( distance / E )
    # Result is rounded up to an integer. Use 0 to ignore that part of the equation.
    D:hyperspace_entering_energyRequired_factors <
        1.0E7
        0.0
        0.0
        0.0
        0.0
     >

    # Maximum jump length value in blocks entering hyperspace.
    # You need to provide exactly 5 values { A, B, C, D, E }. The equation used is A + B * mass + C * distance + D * ln( mass ) * exp( distance / E )
    # Result is rounded up to an integer. Use 0 to ignore that part of the equation.
    D:hyperspace_entering_max_jump_distance <
        100.0
        0.1
        0.0
        0.0
        0.0
     >

    # Motion sickness duration measured in seconds entering hyperspace.
    # You need to provide exactly 5 values { A, B, C, D, E }. The equation used is A + B * mass + C * distance + D * ln( mass ) * exp( distance / E )
    # Result is rounded up to an integer. Use 0 to ignore that part of the equation.
    D:hyperspace_entering_sickness_seconds <
        10.0
        0.0
        0.0
        0.0
        0.0
     >

    # Warmup seconds to wait before starting jump entering hyperspace.
    # You need to provide exactly 5 values { A, B, C, D, E }. The equation used is A + B * mass + C * distance + D * ln( mass ) * exp( distance / E )
    # Result is rounded up to an integer. Use 0 to ignore that part of the equation.
    D:hyperspace_entering_warmup_seconds <
        40.0
        0.0
        0.0
        0.0
        0.0
     >

    # Cooldown seconds to wait after jumping existing hyperspace.
    # You need to provide exactly 5 values { A, B, C, D, E }. The equation used is A + B * mass + C * distance + D * ln( mass ) * exp( distance / E )
    # Result is rounded up to an integer. Use 0 to ignore that part of the equation.
    D:hyperspace_exiting_cooldown_interval_seconds <
        60.0
        0.0
        0.0
        0.0
        0.0
     >

    # energy required measured in internal units existing hyperspace.
    # You need to provide exactly 5 values { A, B, C, D, E }. The equation used is A + B * mass + C * distance + D * ln( mass ) * exp( distance / E )
    # Result is rounded up to an integer. Use 0 to ignore that part of the equation.
    D:hyperspace_exiting_energyRequired_factors <
        1.0E7
        0.0
        0.0
        0.0
        0.0
     >

    # Maximum jump length value in blocks existing hyperspace.
    # You need to provide exactly 5 values { A, B, C, D, E }. The equation used is A + B * mass + C * distance + D * ln( mass ) * exp( distance / E )
    # Result is rounded up to an integer. Use 0 to ignore that part of the equation.
    D:hyperspace_exiting_max_jump_distance <
        100.0
        0.1
        0.0
        0.0
        0.0
     >

    # Motion sickness duration measured in seconds existing hyperspace.
    # You need to provide exactly 5 values { A, B, C, D, E }. The equation used is A + B * mass + C * distance + D * ln( mass ) * exp( distance / E )
    # Result is rounded up to an integer. Use 0 to ignore that part of the equation.
    D:hyperspace_exiting_sickness_seconds <
        10.0
        0.0
        0.0
        0.0
        0.0
     >

    # Warmup seconds to wait before starting jump existing hyperspace.
    # You need to provide exactly 5 values { A, B, C, D, E }. The equation used is A + B * mass + C * distance + D * ln( mass ) * exp( distance / E )
    # Result is rounded up to an integer. Use 0 to ignore that part of the equation.
    D:hyperspace_exiting_warmup_seconds <
        40.0
        0.0
        0.0
        0.0
        0.0
     >

    # Cooldown seconds to wait after jumping moving in hyperspace.
    # You need to provide exactly 5 values { A, B, C, D, E }. The equation used is A + B * mass + C * distance + D * ln( mass ) * exp( distance / E )
    # Result is rounded up to an integer. Use 0 to ignore that part of the equation.
    D:hyperspace_moving_cooldown_interval_seconds <
        30.0
        0.0
        0.0
        0.0
        0.0
     >

    # energy required measured in internal units moving in hyperspace.
    # You need to provide exactly 5 values { A, B, C, D, E }. The equation used is A + B * mass + C * distance + D * ln( mass ) * exp( distance / E )
    # Result is rounded up to an integer. Use 0 to ignore that part of the equation.
    D:hyperspace_moving_energyRequired_factors <
        10000.0
        1.0
        10.0
        0.0
        0.0
     >

    # Maximum jump length value in blocks moving in hyperspace.
    # You need to provide exactly 5 values { A, B, C, D, E }. The equation used is A + B * mass + C * distance + D * ln( mass ) * exp( distance / E )
    # Result is rounded up to an integer. Use 0 to ignore that part of the equation.
    D:hyperspace_moving_max_jump_distance <
        200.0
        0.5
        0.0
        0.0
        0.0
     >

    # Motion sickness duration measured in seconds moving in hyperspace.
    # You need to provide exactly 5 values { A, B, C, D, E }. The equation used is A + B * mass + C * distance + D * ln( mass ) * exp( distance / E )
    # Result is rounded up to an integer. Use 0 to ignore that part of the equation.
    D:hyperspace_moving_sickness_seconds <
        10.0
        0.0
        0.0
        0.0
        0.0
     >

    # Warmup seconds to wait before starting jump moving in hyperspace.
    # You need to provide exactly 5 values { A, B, C, D, E }. The equation used is A + B * mass + C * distance + D * ln( mass ) * exp( distance / E )
    # Result is rounded up to an integer. Use 0 to ignore that part of the equation.
    D:hyperspace_moving_warmup_seconds <
        20.0
        0.0
        0.0
        0.0
        0.0
     >

    # Cooldown seconds to wait after jumping landing on a planet.
    # You need to provide exactly 5 values { A, B, C, D, E }. The equation used is A + B * mass + C * distance + D * ln( mass ) * exp( distance / E )
    # Result is rounded up to an integer. Use 0 to ignore that part of the equation.
    D:planet_landing_cooldown_interval_seconds <
        60.0
        0.0
        0.0
        0.0
        0.0
     >

    # energy required measured in internal units landing on a planet.
    # You need to provide exactly 5 values { A, B, C, D, E }. The equation used is A + B * mass + C * distance + D * ln( mass ) * exp( distance / E )
    # Result is rounded up to an integer. Use 0 to ignore that part of the equation.
    D:planet_landing_energyRequired_factors <
        10000.0
        10.0
        100.0
        0.0
        0.0
     >

    # Maximum jump length value in blocks landing on a planet.
    # You need to provide exactly 5 values { A, B, C, D, E }. The equation used is A + B * mass + C * distance + D * ln( mass ) * exp( distance / E )
    # Result is rounded up to an integer. Use 0 to ignore that part of the equation.
    D:planet_landing_max_jump_distance <
        50.0
        0.1
        0.0
        0.0
        0.0
     >

    # Motion sickness duration measured in seconds landing on a planet.
    # You need to provide exactly 5 values { A, B, C, D, E }. The equation used is A + B * mass + C * distance + D * ln( mass ) * exp( distance / E )
    # Result is rounded up to an integer. Use 0 to ignore that part of the equation.
    D:planet_landing_sickness_seconds <
        0.0
        0.0
        0.0
        0.0
        0.0
     >

    # Warmup seconds to wait before starting jump landing on a planet.
    # You need to provide exactly 5 values { A, B, C, D, E }. The equation used is A + B * mass + C * distance + D * ln( mass ) * exp( distance / E )
    # Result is rounded up to an integer. Use 0 to ignore that part of the equation.
    D:planet_landing_warmup_seconds <
        20.0
        0.0
        0.0
        0.0
        0.0
     >

    # Cooldown seconds to wait after jumping moving on a planet.
    # You need to provide exactly 5 values { A, B, C, D, E }. The equation used is A + B * mass + C * distance + D * ln( mass ) * exp( distance / E )
    # Result is rounded up to an integer. Use 0 to ignore that part of the equation.
    D:planet_moving_cooldown_interval_seconds <
        40.0
        0.0
        0.0
        0.0
        0.0
     >

    # energy required measured in internal units moving on a planet.
    # You need to provide exactly 5 values { A, B, C, D, E }. The equation used is A + B * mass + C * distance + D * ln( mass ) * exp( distance / E )
    # Result is rounded up to an integer. Use 0 to ignore that part of the equation.
    D:planet_moving_energyRequired_factors <
        100.0
        10.0
        100.0
        0.0
        0.0
     >

    # Maximum jump length value in blocks moving on a planet.
    # You need to provide exactly 5 values { A, B, C, D, E }. The equation used is A + B * mass + C * distance + D * ln( mass ) * exp( distance / E )
    # Result is rounded up to an integer. Use 0 to ignore that part of the equation.
    D:planet_moving_max_jump_distance <
        50.0
        0.1
        0.0
        0.0
        0.0
     >

    # Motion sickness duration measured in seconds moving on a planet.
    # You need to provide exactly 5 values { A, B, C, D, E }. The equation used is A + B * mass + C * distance + D * ln( mass ) * exp( distance / E )
    # Result is rounded up to an integer. Use 0 to ignore that part of the equation.
    D:planet_moving_sickness_seconds <
        0.0
        0.0
        0.0
        0.0
        0.0
     >

    # Warmup seconds to wait before starting jump moving on a planet.
    # You need to provide exactly 5 values { A, B, C, D, E }. The equation used is A + B * mass + C * distance + D * ln( mass ) * exp( distance / E )
    # Result is rounded up to an integer. Use 0 to ignore that part of the equation.
    D:planet_moving_warmup_seconds <
        20.0
        0.0
        0.0
        0.0
        0.0
     >

    # Cooldown seconds to wait after jumping taking off a planet.
    # You need to provide exactly 5 values { A, B, C, D, E }. The equation used is A + B * mass + C * distance + D * ln( mass ) * exp( distance / E )
    # Result is rounded up to an integer. Use 0 to ignore that part of the equation.
    D:planet_takeoff_cooldown_interval_seconds <
        90.0
        0.0
        0.0
        0.0
        0.0
     >

    # energy required measured in internal units taking off a planet.
    # You need to provide exactly 5 values { A, B, C, D, E }. The equation used is A + B * mass + C * distance + D * ln( mass ) * exp( distance / E )
    # Result is rounded up to an integer. Use 0 to ignore that part of the equation.
    D:planet_takeoff_energyRequired_factors <
        10000.0
        10.0
        100.0
        0.0
        0.0
     >

    # Maximum jump length value in blocks taking off a planet.
    # You need to provide exactly 5 values { A, B, C, D, E }. The equation used is A + B * mass + C * distance + D * ln( mass ) * exp( distance / E )
    # Result is rounded up to an integer. Use 0 to ignore that part of the equation.
    D:planet_takeoff_max_jump_distance <
        50.0
        0.1
        0.0
        0.0
        0.0
     >

    # Motion sickness duration measured in seconds taking off a planet.
    # You need to provide exactly 5 values { A, B, C, D, E }. The equation used is A + B * mass + C * distance + D * ln( mass ) * exp( distance / E )
    # Result is rounded up to an integer. Use 0 to ignore that part of the equation.
    D:planet_takeoff_sickness_seconds <
        0.0
        0.0
        0.0
        0.0
        0.0
     >

    # Warmup seconds to wait before starting jump taking off a planet.
    # You need to provide exactly 5 values { A, B, C, D, E }. The equation used is A + B * mass + C * distance + D * ln( mass ) * exp( distance / E )
    # Result is rounded up to an integer. Use 0 to ignore that part of the equation.
    D:planet_takeoff_warmup_seconds <
        20.0
        0.0
        0.0
        0.0
        0.0
     >

    # Cooldown seconds to wait after jumping moving in space.
    # You need to provide exactly 5 values { A, B, C, D, E }. The equation used is A + B * mass + C * distance + D * ln( mass ) * exp( distance / E )
    # Result is rounded up to an integer. Use 0 to ignore that part of the equation.
    D:space_moving_cooldown_interval_seconds <
        30.0
        0.0
        0.0
        0.0
        0.0
     >

    # energy required measured in internal units moving in space.
    # You need to provide exactly 5 values { A, B, C, D, E }. The equation used is A + B * mass + C * distance + D * ln( mass ) * exp( distance / E )
    # Result is rounded up to an integer. Use 0 to ignore that part of the equation.
    D:space_moving_energyRequired_factors <
        1000.0
        10.0
        100.0
        0.0
        0.0
     >

    # Maximum jump length value in blocks moving in space.
    # You need to provide exactly 5 values { A, B, C, D, E }. The equation used is A + B * mass + C * distance + D * ln( mass ) * exp( distance / E )
    # Result is rounded up to an integer. Use 0 to ignore that part of the equation.
    D:space_moving_max_jump_distance <
        100.0
        0.1
        0.0
        0.0
        0.0
     >

    # Motion sickness duration measured in seconds moving in space.
    # You need to provide exactly 5 values { A, B, C, D, E }. The equation used is A + B * mass + C * distance + D * ln( mass ) * exp( distance / E )
    # Result is rounded up to an integer. Use 0 to ignore that part of the equation.
    D:space_moving_sickness_seconds <
        0.0
        0.0
        0.0
        0.0
        0.0
     >

    # Warmup seconds to wait before starting jump moving in space.
    # You need to provide exactly 5 values { A, B, C, D, E }. The equation used is A + B * mass + C * distance + D * ln( mass ) * exp( distance / E )
    # Result is rounded up to an integer. Use 0 to ignore that part of the equation.
    D:space_moving_warmup_seconds <
        10.0
        0.0
        0.0
        0.0
        0.0
     >
}


ship_scanner {
    # Deployment speed, measured in blocks (1-3000)
    I:deploy_blocks_per_interval=10

    # Delay between deployment of 2 sets of blocks, measured in ticks (1-60)
    I:deploy_interval_ticks=4

    # Max distance from ship scanner to ship core, measured in blocks (5-150)
    I:max_deploy_radius_blocks=50

    # Scanning speed, measured in blocks (1-5000)
    I:scan_blocks_per_second=10

    # Max distance from ship scanner to ship core, measured in blocks (5-150)
    I:search_interval_ticks=20
}


starmap {
    # Enable to bypass the check at boot. Use at your own risk!
    B:allow_overlapping_celestial_objects=false

    # (measured in seconds)
    I:registry_update_interval=10
}


transporter {
    # Maximum energy stored
    I:max_energy_stored=1000000
}


tree_farm {
    # Maximum number of laser mediums
    I:max_mediums_count=5

    # Maximum reach distance of the laser without any laser medium, measured in blocks
    I:max_reach_distance=8

    # Bonus to maximum reach distance per laser medium, measured in blocks
    I:max_reach_distance_per_laser_medium=4

    # Maximum scan radius without any laser medium, on X and Z axis, measured in blocks
    I:max_scan_radius_no_laser_medium=3

    # Bonus to maximum scan radius per laser medium, on X and Z axis, measured in blocks
    I:max_scan_radius_per_laser_medium=2
}


