Advertisement
tomdodd4598

Untitled

Aug 5th, 2022
878
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1.     protected static void syncConfig(boolean loadFromFile) {
  2.         if (loadFromFile) {
  3.             config.load();
  4.         }
  5.        
  6.         PROPERTY_ORDER_MAP.clear();
  7.        
  8.         PROPERTY_ORDER_MAP.put(CATEGORY_WORLD_GEN, new ArrayList<>());
  9.         PROPERTY_ORDER_MAP.put(CATEGORY_PROCESSOR, new ArrayList<>());
  10.         PROPERTY_ORDER_MAP.put(CATEGORY_GENERATOR, new ArrayList<>());
  11.         PROPERTY_ORDER_MAP.put(CATEGORY_ENERGY_STORAGE, new ArrayList<>());
  12.         PROPERTY_ORDER_MAP.put(CATEGORY_FISSION, new ArrayList<>());
  13.         PROPERTY_ORDER_MAP.put(CATEGORY_FUSION, new ArrayList<>());
  14.         PROPERTY_ORDER_MAP.put(CATEGORY_HEAT_EXCHANGER, new ArrayList<>());
  15.         PROPERTY_ORDER_MAP.put(CATEGORY_TURBINE, new ArrayList<>());
  16.         PROPERTY_ORDER_MAP.put(CATEGORY_QUANTUM, new ArrayList<>());
  17.         PROPERTY_ORDER_MAP.put(CATEGORY_TOOL, new ArrayList<>());
  18.         PROPERTY_ORDER_MAP.put(CATEGORY_ARMOR, new ArrayList<>());
  19.         PROPERTY_ORDER_MAP.put(CATEGORY_ENTITY, new ArrayList<>());
  20.         PROPERTY_ORDER_MAP.put(CATEGORY_RADIATION, new ArrayList<>());
  21.         PROPERTY_ORDER_MAP.put(CATEGORY_REGISTRATION, new ArrayList<>());
  22.         PROPERTY_ORDER_MAP.put(CATEGORY_MISC, new ArrayList<>());
  23.        
  24.         ore_dims = sync(CATEGORY_WORLD_GEN, "ore_dims", new int[] {0, 2, -6, -100, 4598, -9999, -11325}, Integer.MIN_VALUE, Integer.MAX_VALUE, LIST);
  25.         ore_dims_list_type = sync(CATEGORY_WORLD_GEN, "ore_dims_list_type", false);
  26.         ore_gen = sync(CATEGORY_WORLD_GEN, "ore_gen", new boolean[] {true, true, true, true, true, true, true, true}, ARRAY);
  27.         ore_size = sync(CATEGORY_WORLD_GEN, "ore_size", new int[] {6, 6, 6, 3, 3, 4, 4, 5}, 1, Integer.MAX_VALUE, ARRAY);
  28.         ore_rate = sync(CATEGORY_WORLD_GEN, "ore_rate", new int[] {5, 4, 6, 3, 6, 6, 6, 4}, 1, Integer.MAX_VALUE, ARRAY);
  29.         ore_min_height = sync(CATEGORY_WORLD_GEN, "ore_min_height", new int[] {0, 0, 0, 0, 0, 0, 0, 0}, 1, 255, ARRAY);
  30.         ore_max_height = sync(CATEGORY_WORLD_GEN, "ore_max_height", new int[] {48, 40, 36, 32, 32, 28, 28, 24}, 1, 255, ARRAY);
  31.         ore_drops = sync(CATEGORY_WORLD_GEN, "ore_drops", new boolean[] {false, false, false, false, false, false, false}, ARRAY);
  32.         ore_hide_disabled = sync(CATEGORY_WORLD_GEN, "ore_hide_disabled", false);
  33.         ore_harvest_levels = sync(CATEGORY_WORLD_GEN, "ore_harvest_levels", new int[] {1, 1, 1, 2, 2, 2, 2, 2}, 0, 15, ARRAY);
  34.        
  35.         wasteland_biome = sync(CATEGORY_WORLD_GEN, "wasteland_biome", true);
  36.         wasteland_biome_weight = sync(CATEGORY_WORLD_GEN, "wasteland_biome_weight", 5, 0, 255);
  37.         wasteland_dimension_gen = sync(CATEGORY_WORLD_GEN, "wasteland_dimension_gen", true);
  38.         wasteland_dimension = sync(CATEGORY_WORLD_GEN, "wasteland_dimension", 4598, Integer.MIN_VALUE, Integer.MAX_VALUE);
  39.         mushroom_spread_rate = sync(CATEGORY_WORLD_GEN, "mushroom_spread_rate", 16, 0, 511);
  40.         mushroom_gen = sync(CATEGORY_WORLD_GEN, "mushroom_gen", true);
  41.         mushroom_gen_size = sync(CATEGORY_WORLD_GEN, "mushroom_gen_size", 32, 0, 511);
  42.         mushroom_gen_rate = sync(CATEGORY_WORLD_GEN, "mushroom_gen_rate", 64, 0, 511);
  43.        
  44.         processor_time_multiplier = sync(CATEGORY_PROCESSOR, "processor_time_multiplier", 1D, 0.001D, 255D);
  45.         processor_power_multiplier = sync(CATEGORY_PROCESSOR, "processor_power_multiplier", 1D, 0D, 255D);
  46.         processor_time = sync(CATEGORY_PROCESSOR, "processor_time", new int[] {400, 800, 800, 400, 400, 600, 800, 600, 3200, 600, 400, 600, 800, 600, 1600, 600, 2400, 1200, 400}, 1, 128000, ARRAY);
  47.         processor_power = sync(CATEGORY_PROCESSOR, "processor_power", new int[] {20, 10, 10, 20, 10, 10, 40, 20, 40, 10, 0, 40, 10, 20, 10, 10, 10, 10, 20}, 0, 16000, ARRAY);
  48.         speed_upgrade_power_laws_fp = sync(CATEGORY_PROCESSOR, "speed_upgrade_power_laws_fp", new double[] {1D, 2D}, 1D, 15D, ARRAY);
  49.         speed_upgrade_multipliers_fp = sync(CATEGORY_PROCESSOR, "speed_upgrade_multipliers_fp", new double[] {1D, 1D}, 0D, 15D, ARRAY);
  50.         energy_upgrade_power_laws_fp = sync(CATEGORY_PROCESSOR, "energy_upgrade_power_laws_fp", new double[] {1D}, 1D, 15D, ARRAY);
  51.         energy_upgrade_multipliers_fp = sync(CATEGORY_PROCESSOR, "energy_upgrade_multipliers_fp", new double[] {1D}, 0D, 15D, ARRAY);
  52.         upgrade_stack_sizes = sync(CATEGORY_PROCESSOR, "upgrade_stack_sizes", new int[] {64, 64}, 1, 64, ARRAY);
  53.         rf_per_eu = sync(CATEGORY_PROCESSOR, "rf_per_eu", 16, 1, 65536);
  54.         enable_ic2_eu = sync(CATEGORY_PROCESSOR, "enable_ic2_eu", true);
  55.         enable_gtce_eu = sync(CATEGORY_PROCESSOR, "enable_gtce_eu", true);
  56.         enable_mek_gas = sync(CATEGORY_PROCESSOR, "enable_mek_gas", true);
  57.         machine_update_rate = sync(CATEGORY_PROCESSOR, "machine_update_rate", 20, 1, 1200);
  58.         processor_passive_rate = sync(CATEGORY_PROCESSOR, "processor_passive_rate", new double[] {0.125, 10, 5}, 0D, 4000D, ARRAY);
  59.         passive_push = sync(CATEGORY_PROCESSOR, "passive_push", true);
  60.         cobble_gen_power = sync(CATEGORY_PROCESSOR, "cobble_gen_power", 0D, 0D, 255D);
  61.         ore_processing = sync(CATEGORY_PROCESSOR, "ore_processing", true);
  62.         manufactory_wood = sync(CATEGORY_PROCESSOR, "manufactory_wood", new int[] {6, 4}, 1, 64, ARRAY);
  63.         rock_crusher_alternate = sync(CATEGORY_PROCESSOR, "rock_crusher_alternate", false);
  64.         gtce_recipe_integration = sync(CATEGORY_PROCESSOR, "gtce_recipe_integration", new boolean[] {true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true}, ARRAY);
  65.         gtce_recipe_logging = sync(CATEGORY_PROCESSOR, "gtce_recipe_logging", false);
  66.         smart_processor_input = sync(CATEGORY_PROCESSOR, "smart_processor_input", true);
  67.         passive_permeation = sync(CATEGORY_PROCESSOR, "passive_permeation", true);
  68.         factor_recipes = sync(CATEGORY_PROCESSOR, "factor_recipes", false);
  69.         processor_particles = sync(CATEGORY_PROCESSOR, "processor_particles", true);
  70.        
  71.         rtg_power = sync(CATEGORY_GENERATOR, "rtg_power", new int[] {1, 40, 10, 200}, 1, Integer.MAX_VALUE, ARRAY);
  72.         solar_power = sync(CATEGORY_GENERATOR, "solar_power", new int[] {5, 20, 80, 320}, 1, Integer.MAX_VALUE, ARRAY);
  73.         decay_lifetime = sync(CATEGORY_GENERATOR, "decay_lifetime", new double[] {12000D / 0.75D, 12000D / 1.2D, 1200D, 12000D / 2.2D, 12000D / 3D, 12000D / 18D, 12000D / 28D, 12000D / 80D, 12000D / 1000D}, 1D, 16777215D, ARRAY);
  74.         decay_power = sync(CATEGORY_GENERATOR, "decay_power", new double[] {0.75D, 1.2D, 1D, 2.2D, 3D, 18D, 28D, 80D, 1000D}, 0D, 32767D, ARRAY);
  75.        
  76.         battery_block_capacity = sync(CATEGORY_ENERGY_STORAGE, "battery_block_capacity", new int[] {1600000, 6400000, 25600000, 102400000, 32000000, 128000000, 512000000, 2048000000}, 1, Integer.MAX_VALUE, ARRAY);
  77.         battery_block_max_transfer = sync(CATEGORY_ENERGY_STORAGE, "battery_block_max_transfer", new int[] {16000, 64000, 256000, 1024000, 320000, 1280000, 5120000, 20480000}, 1, Integer.MAX_VALUE, ARRAY);
  78.         battery_block_energy_tier = sync(CATEGORY_ENERGY_STORAGE, "battery_block_energy_tier", new int[] {1, 2, 3, 4, 3, 4, 5, 6}, 1, 10, ARRAY);
  79.         battery_item_capacity = sync(CATEGORY_ENERGY_STORAGE, "battery_item_capacity", new int[] {8000000}, 1, Integer.MAX_VALUE, ARRAY);
  80.         battery_item_max_transfer = sync(CATEGORY_ENERGY_STORAGE, "battery_item_max_transfer", new int[] {80000}, 1, Integer.MAX_VALUE, ARRAY);
  81.         battery_item_energy_tier = sync(CATEGORY_ENERGY_STORAGE, "battery_item_energy_tier", new int[] {3}, 1, 10, ARRAY);
  82.        
  83.         fission_fuel_time_multiplier = sync(CATEGORY_FISSION, "fission_fuel_time_multiplier", 1D, 0.001D, 255D);
  84.         fission_fuel_heat_multiplier = sync(CATEGORY_FISSION, "fission_fuel_heat_multiplier", 1D, 0D, 255D);
  85.         fission_fuel_efficiency_multiplier = sync(CATEGORY_FISSION, "fission_fuel_efficiency_multiplier", 1D, 0D, 255D);
  86.         fission_fuel_radiation_multiplier = sync(CATEGORY_FISSION, "fission_fuel_radiation_multiplier", 1D, 0D, 255D);
  87.         fission_source_efficiency = sync(CATEGORY_FISSION, "fission_source_efficiency", new double[] {0.9D, 0.95D, 1D}, 0D, 255D, ARRAY);
  88.         fission_sink_cooling_rate = sync(CATEGORY_FISSION, "fission_sink_cooling_rate", new int[] {55, 50, 85, 80, 70, 105, 90, 100, 110, 115, 145, 65, 95, 200, 195, 75, 120, 60, 160, 130, 125, 150, 175, 170, 165, 180, 140, 135, 185, 190, 155, 205}, 0, 32767, ARRAY);
  89.         fission_sink_rule = sync(CATEGORY_FISSION, "fission_sink_rule", new String[] {"one cell", "one moderator", "one cell && one moderator", "one redstone sink", "two axial glowstone sinks", "one obsidian sink", "two moderators", "one cell && one casing", "exactly two iron sinks", "two water sinks", "exactly one water sink && two lead sinks", "one reflector", "one reflector && one iron sink", "one cell && one gold sink", "one moderator && one prismarine sink", "one water sink", "two axial lapis sinks", "one iron sink", "exactly one quartz sink && one casing", "exactly two axial lead sinks && one casing", "exactly one moderator && one casing", "two cells", "one quartz sink && one lapis sink", "two glowstone sinks && one tin sink", "one gold sink && one prismarine sink", "one redstone sink && one end_stone sink", "one end_stone sink && one copper sink", "two axial reflectors", "two copper sinks && one purpur sink", "exactly two redstone sinks", "three moderators", "three cells"}, ARRAY);
  90.         fission_heater_cooling_rate = sync(CATEGORY_FISSION, "fission_heater_cooling_rate", new int[] {55, 50, 85, 80, 70, 105, 90, 100, 110, 115, 145, 65, 95, 200, 195, 75, 120, 60, 160, 130, 125, 150, 175, 170, 165, 180, 140, 135, 185, 190, 155, 205}, 0, 32767, ARRAY);
  91.         fission_heater_rule = sync(CATEGORY_FISSION, "fission_heater_rule", new String[] {"one vessel", "one moderator", "one vessel && one moderator", "one redstone heater", "two axial glowstone heaters", "one obsidian heater", "two moderators", "one vessel && one casing", "exactly two iron heaters", "two standard heaters", "exactly one standard heater && two lead heaters", "one reflector", "one reflector && one iron heater", "one vessel && one gold heater", "one moderator && one prismarine heater", "one standard heater", "two axial lapis heaters", "one iron heater", "exactly one quartz heater && one casing", "exactly two axial lead heaters && one casing", "exactly one moderator && one casing", "two vessels", "one quartz heater && one lapis heater", "two glowstone heaters && one tin heater", "one gold heater && one prismarine heater", "one redstone heater && one end_stone heater", "one end_stone heater && one copper heater", "two axial reflectors", "two copper heaters && one purpur heater", "exactly two redstone heaters", "three moderators", "three vessels"}, ARRAY);
  92.         fission_moderator_flux_factor = sync(CATEGORY_FISSION, "fission_moderator_flux_factor", new int[] {10, 22, 36}, 0, 32767, ARRAY);
  93.         fission_moderator_efficiency = sync(CATEGORY_FISSION, "fission_moderator_efficiency", new double[] {1.1D, 1.05D, 1D}, 0D, 255D, ARRAY);
  94.         fission_reflector_efficiency = sync(CATEGORY_FISSION, "fission_reflector_efficiency", new double[] {0.5D, 0.25D}, 0D, 255D, ARRAY);
  95.         fission_reflector_reflectivity = sync(CATEGORY_FISSION, "fission_reflector_reflectivity", new double[] {1D, 0.5D}, 0D, 1D, ARRAY);
  96.         fission_shield_heat_per_flux = sync(CATEGORY_FISSION, "fission_shield_heat_per_flux", new double[] {5D}, 0D, 32767D, ARRAY);
  97.         fission_shield_efficiency = sync(CATEGORY_FISSION, "fission_shield_efficiency", new double[] {0.5D}, 0D, 255D, ARRAY);
  98.         fission_irradiator_heat_per_flux = sync(CATEGORY_FISSION, "fission_irradiator_heat_per_flux", new double[] {0D, 0D, 0D}, 0D, 32767D, ARRAY);
  99.         fission_irradiator_efficiency = sync(CATEGORY_FISSION, "fission_irradiator_efficiency", new double[] {0D, 0D, 0.5D}, 0D, 32767D, ARRAY);
  100.         fission_cooling_efficiency_leniency = sync(CATEGORY_FISSION, "fission_cooling_efficiency_leniency", 10, 0, 32767);
  101.         fission_sparsity_penalty_params = sync(CATEGORY_FISSION, "fission_sparsity_penalty_params", new double[] {0.5D, 0.75D}, 0D, 1D, ARRAY);
  102.         fission_decay_mechanics = sync(CATEGORY_FISSION, "fission_decay_mechanics", false);
  103.         fission_decay_build_up_times = sync(CATEGORY_FISSION, "fission_decay_build_up_times", new double[] {24000D, 24000D, 24000D}, 0D, Integer.MAX_VALUE, ARRAY);
  104.         fission_decay_lifetimes = sync(CATEGORY_FISSION, "fission_decay_lifetimes", new double[] {6000D, 8000D, 12000D}, 0D, Integer.MAX_VALUE, ARRAY);
  105.         fission_decay_equilibrium_factors = sync(CATEGORY_FISSION, "fission_decay_equilibrium_factors", new double[] {1D, 5D, 1D}, 0D, 255D, ARRAY);
  106.         fission_decay_daughter_multipliers = sync(CATEGORY_FISSION, "fission_decay_daughter_multipliers", new double[] {5D, 5D}, 0D, 255D, ARRAY);
  107.         fission_decay_term_multipliers = sync(CATEGORY_FISSION, "fission_decay_term_multipliers", new double[] {0.95D, 0.05D}, 0D, 1D, ARRAY);
  108.         fission_overheat = sync(CATEGORY_FISSION, "fission_overheat", true);
  109.         fission_explosions = sync(CATEGORY_FISSION, "fission_explosions", false);
  110.         fission_meltdown_radiation_multiplier = sync(CATEGORY_FISSION, "fission_meltdown_radiation_multiplier", 1D, 0D, 255D);
  111.         fission_heat_damage = sync(CATEGORY_FISSION, "fission_heat_damage", false);
  112.         fission_min_size = sync(CATEGORY_FISSION, "fission_min_size", 1, 1, 255);
  113.         fission_max_size = sync(CATEGORY_FISSION, "fission_max_size", 24, 3, 255);
  114.         fission_comparator_max_temp = sync(CATEGORY_FISSION, "fission_comparator_max_temp", 1600, 20, 2400);
  115.         fission_neutron_reach = sync(CATEGORY_FISSION, "fission_neutron_reach", 4, 1, 255);
  116.         fission_heat_dissipation = sync(CATEGORY_FISSION, "fission_heat_dissipation", new boolean[] {true, false}, ARRAY);
  117.         fission_emergency_cooling_multiplier = sync(CATEGORY_FISSION, "fission_emergency_cooling_multiplier", 1D, 0.001D, 255D);
  118.         fission_sound_volume = sync(CATEGORY_FISSION, "fission_sound_volume", 1D, 0D, 15D);
  119.        
  120.         fission_thorium_fuel_time = sync(CATEGORY_FISSION, "fission_thorium_fuel_time", new int[] {14400, 14400, 18000, 11520, 18000}, 1, Integer.MAX_VALUE, ARRAY);
  121.         fission_thorium_heat_generation = sync(CATEGORY_FISSION, "fission_thorium_heat_generation", new int[] {40, 40, 32, 50, 32}, 0, 32767, ARRAY);
  122.         fission_thorium_efficiency = sync(CATEGORY_FISSION, "fission_thorium_efficiency", new double[] {1.25D, 1.25D, 1.25D, 1.25D, 1.25D}, 0D, 32767D, ARRAY);
  123.         fission_thorium_criticality = sync(CATEGORY_FISSION, "fission_thorium_criticality", new int[] {199, 234, 293, 199, 234}, 0, 32767, ARRAY);
  124.         fission_thorium_decay_factor = sync(CATEGORY_FISSION, "fission_thorium_decay_factor", arrayCopies(5, 0.04D), 0D, 1D, ARRAY);
  125.         fission_thorium_self_priming = sync(CATEGORY_FISSION, "fission_thorium_self_priming", new boolean[] {false, false, false, false, false}, ARRAY);
  126.         fission_thorium_radiation = sync(CATEGORY_FISSION, "fission_thorium_radiation", new double[] {RadSources.TBU_FISSION, RadSources.TBU_FISSION, RadSources.TBU_FISSION, RadSources.TBU_FISSION, RadSources.TBU_FISSION}, 0D, 1000D, ARRAY);
  127.        
  128.         fission_uranium_fuel_time = sync(CATEGORY_FISSION, "fission_uranium_fuel_time", new int[] {2666, 2666, 3348, 2134, 3348, 2666, 2666, 3348, 2134, 3348, 4800, 4800, 6000, 3840, 6000, 4800, 4800, 6000, 3840, 6000}, 1, Integer.MAX_VALUE, ARRAY);
  129.         fission_uranium_heat_generation = sync(CATEGORY_FISSION, "fission_uranium_heat_generation", new int[] {216, 216, 172, 270, 172, 216 * 3, 216 * 3, 172 * 3, 270 * 3, 172 * 3, 120, 120, 96, 150, 96, 120 * 3, 120 * 3, 96 * 3, 150 * 3, 96 * 3}, 0, 32767, ARRAY);
  130.         fission_uranium_efficiency = sync(CATEGORY_FISSION, "fission_uranium_efficiency", new double[] {1.1D, 1.1D, 1.1D, 1.1D, 1.1D, 1.15D, 1.15D, 1.15D, 1.15D, 1.15D, 1D, 1D, 1D, 1D, 1D, 1.05D, 1.05D, 1.05D, 1.05D, 1.05D}, 0D, 32767D, ARRAY);
  131.         fission_uranium_criticality = sync(CATEGORY_FISSION, "fission_uranium_criticality", new int[] {66, 78, 98, 66, 78, 66 / 2, 78 / 2, 98 / 2, 66 / 2, 78 / 2, 87, 102, 128, 87, 102, 87 / 2, 102 / 2, 128 / 2, 87 / 2, 102 / 2}, 0, 32767, ARRAY);
  132.         fission_uranium_decay_factor = sync(CATEGORY_FISSION, "fission_uranium_decay_factor", arrayCopies(20, 0.065D), 0D, 1D, ARRAY);
  133.         fission_uranium_self_priming = sync(CATEGORY_FISSION, "fission_uranium_self_priming", new boolean[] {false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false}, ARRAY);
  134.         fission_uranium_radiation = sync(CATEGORY_FISSION, "fission_uranium_radiation", new double[] {RadSources.LEU_233_FISSION, RadSources.LEU_233_FISSION, RadSources.LEU_233_FISSION, RadSources.LEU_233_FISSION, RadSources.LEU_233_FISSION, RadSources.HEU_233_FISSION, RadSources.HEU_233_FISSION, RadSources.HEU_233_FISSION, RadSources.HEU_233_FISSION, RadSources.HEU_233_FISSION, RadSources.LEU_235_FISSION, RadSources.LEU_235_FISSION, RadSources.LEU_235_FISSION, RadSources.LEU_235_FISSION, RadSources.LEU_235_FISSION, RadSources.HEU_235_FISSION, RadSources.HEU_235_FISSION, RadSources.HEU_235_FISSION, RadSources.HEU_235_FISSION, RadSources.HEU_235_FISSION}, 0D, 1000D, ARRAY);
  135.        
  136.         fission_neptunium_fuel_time = sync(CATEGORY_FISSION, "fission_neptunium_fuel_time", new int[] {1972, 1972, 2462, 1574, 2462, 1972, 1972, 2462, 1574, 2462}, 1, Integer.MAX_VALUE, ARRAY);
  137.         fission_neptunium_heat_generation = sync(CATEGORY_FISSION, "fission_neptunium_heat_generation", new int[] {292, 292, 234, 366, 234, 292 * 3, 292 * 3, 234 * 3, 366 * 3, 234 * 3}, 0, 32767, ARRAY);
  138.         fission_neptunium_efficiency = sync(CATEGORY_FISSION, "fission_neptunium_efficiency", new double[] {1.1D, 1.1D, 1.1D, 1.1D, 1.1D, 1.15D, 1.15D, 1.15D, 1.15D, 1.15D}, 0D, 32767D, ARRAY);
  139.         fission_neptunium_criticality = sync(CATEGORY_FISSION, "fission_neptunium_criticality", new int[] {60, 70, 88, 60, 70, 60 / 2, 70 / 2, 88 / 2, 60 / 2, 70 / 2}, 0, 32767, ARRAY);
  140.         fission_neptunium_decay_factor = sync(CATEGORY_FISSION, "fission_neptunium_decay_factor", arrayCopies(10, 0.07D), 0D, 1D, ARRAY);
  141.         fission_neptunium_self_priming = sync(CATEGORY_FISSION, "fission_neptunium_self_priming", new boolean[] {false, false, false, false, false, false, false, false, false, false}, ARRAY);
  142.         fission_neptunium_radiation = sync(CATEGORY_FISSION, "fission_neptunium_radiation", new double[] {RadSources.LEN_236_FISSION, RadSources.LEN_236_FISSION, RadSources.LEN_236_FISSION, RadSources.LEN_236_FISSION, RadSources.LEN_236_FISSION, RadSources.HEN_236_FISSION, RadSources.HEN_236_FISSION, RadSources.HEN_236_FISSION, RadSources.HEN_236_FISSION, RadSources.HEN_236_FISSION}, 0D, 1000D, ARRAY);
  143.        
  144.         fission_plutonium_fuel_time = sync(CATEGORY_FISSION, "fission_plutonium_fuel_time", new int[] {4572, 4572, 5760, 3646, 5760, 4572, 4572, 5760, 3646, 5760, 3164, 3164, 3946, 2526, 3946, 3164, 3164, 3946, 2526, 3946}, 1, Integer.MAX_VALUE, ARRAY);
  145.         fission_plutonium_heat_generation = sync(CATEGORY_FISSION, "fission_plutonium_heat_generation", new int[] {126, 126, 100, 158, 100, 126 * 3, 126 * 3, 100 * 3, 158 * 3, 100 * 3, 182, 182, 146, 228, 146, 182 * 3, 182 * 3, 146 * 3, 228 * 3, 146 * 3}, 0, 32767, ARRAY);
  146.         fission_plutonium_efficiency = sync(CATEGORY_FISSION, "fission_plutonium_efficiency", new double[] {1.2D, 1.2D, 1.2D, 1.2D, 1.2D, 1.25D, 1.25D, 1.25D, 1.25D, 1.25D, 1.25D, 1.25D, 1.25D, 1.25D, 1.25D, 1.3D, 1.3D, 1.3D, 1.3D, 1.3D}, 0D, 32767D, ARRAY);
  147.         fission_plutonium_criticality = sync(CATEGORY_FISSION, "fission_plutonium_criticality", new int[] {84, 99, 124, 84, 99, 84 / 2, 99 / 2, 124 / 2, 84 / 2, 99 / 2, 71, 84, 105, 71, 84, 71 / 2, 84 / 2, 105 / 2, 71 / 2, 84 / 2}, 0, 32767, ARRAY);
  148.         fission_plutonium_decay_factor = sync(CATEGORY_FISSION, "fission_plutonium_decay_factor", arrayCopies(20, 0.075D), 0D, 1D, ARRAY);
  149.         fission_plutonium_self_priming = sync(CATEGORY_FISSION, "fission_plutonium_self_priming", new boolean[] {false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false}, ARRAY);
  150.         fission_plutonium_radiation = sync(CATEGORY_FISSION, "fission_plutonium_radiation", new double[] {RadSources.LEP_239_FISSION, RadSources.LEP_239_FISSION, RadSources.LEP_239_FISSION, RadSources.LEP_239_FISSION, RadSources.LEP_239_FISSION, RadSources.HEP_239_FISSION, RadSources.HEP_239_FISSION, RadSources.HEP_239_FISSION, RadSources.HEP_239_FISSION, RadSources.HEP_239_FISSION, RadSources.LEP_241_FISSION, RadSources.LEP_241_FISSION, RadSources.LEP_241_FISSION, RadSources.LEP_241_FISSION, RadSources.LEP_241_FISSION, RadSources.HEP_241_FISSION, RadSources.HEP_241_FISSION, RadSources.HEP_241_FISSION, RadSources.HEP_241_FISSION, RadSources.HEP_241_FISSION}, 0D, 1000D, ARRAY);
  151.        
  152.         fission_mixed_fuel_time = sync(CATEGORY_FISSION, "fission_mixed_fuel_time", new int[] {4354, 4354, 5486, 3472, 5486, 3014, 3014, 3758, 2406, 3758}, 1, Integer.MAX_VALUE, ARRAY);
  153.         fission_mixed_heat_generation = sync(CATEGORY_FISSION, "fission_mixed_heat_generation", new int[] {132, 132, 106, 166, 106, 192, 192, 154, 240, 154}, 0, 32767, ARRAY);
  154.         fission_mixed_efficiency = sync(CATEGORY_FISSION, "fission_mixed_efficiency", new double[] {1.05D, 1.05D, 1.05D, 1.05D, 1.05D, 1.15D, 1.15D, 1.15D, 1.15D, 1.15D}, 0D, 32767D, ARRAY);
  155.         fission_mixed_criticality = sync(CATEGORY_FISSION, "fission_mixed_criticality", new int[] {80, 94, 118, 80, 94, 68, 80, 100, 68, 80}, 0, 32767, ARRAY);
  156.         fission_mixed_decay_factor = sync(CATEGORY_FISSION, "fission_mixed_decay_factor", arrayCopies(10, 0.075D), 0D, 1D, ARRAY);
  157.         fission_mixed_self_priming = sync(CATEGORY_FISSION, "fission_mixed_self_priming", new boolean[] {false, false, false, false, false, false, false, false, false, false}, ARRAY);
  158.         fission_mixed_radiation = sync(CATEGORY_FISSION, "fission_mixed_radiation", new double[] {RadSources.MIX_239_FISSION, RadSources.MIX_239_FISSION, RadSources.MIX_239_FISSION, RadSources.MIX_239_FISSION, RadSources.MIX_239_FISSION, RadSources.MIX_241_FISSION, RadSources.MIX_241_FISSION, RadSources.MIX_241_FISSION, RadSources.MIX_241_FISSION, RadSources.MIX_241_FISSION}, 0D, 1000D, ARRAY);
  159.        
  160.         fission_americium_fuel_time = sync(CATEGORY_FISSION, "fission_americium_fuel_time", new int[] {1476, 1476, 1846, 1180, 1846, 1476, 1476, 1846, 1180, 1846}, 1, Integer.MAX_VALUE, ARRAY);
  161.         fission_americium_heat_generation = sync(CATEGORY_FISSION, "fission_americium_heat_generation", new int[] {390, 390, 312, 488, 312, 390 * 3, 390 * 3, 312 * 3, 488 * 3, 312 * 3}, 0, 32767, ARRAY);
  162.         fission_americium_efficiency = sync(CATEGORY_FISSION, "fission_americium_efficiency", new double[] {1.35D, 1.35D, 1.35D, 1.35D, 1.35D, 1.4D, 1.4D, 1.4D, 1.4D, 1.4D}, 0D, 32767D, ARRAY);
  163.         fission_americium_criticality = sync(CATEGORY_FISSION, "fission_americium_criticality", new int[] {55, 65, 81, 55, 65, 55 / 2, 65 / 2, 81 / 2, 55 / 2, 65 / 2}, 0, 32767, ARRAY);
  164.         fission_americium_decay_factor = sync(CATEGORY_FISSION, "fission_americium_decay_factor", arrayCopies(10, 0.08D), 0D, 1D, ARRAY);
  165.         fission_americium_self_priming = sync(CATEGORY_FISSION, "fission_americium_self_priming", new boolean[] {false, false, false, false, false, false, false, false, false, false}, ARRAY);
  166.         fission_americium_radiation = sync(CATEGORY_FISSION, "fission_americium_radiation", new double[] {RadSources.LEA_242_FISSION, RadSources.LEA_242_FISSION, RadSources.LEA_242_FISSION, RadSources.LEA_242_FISSION, RadSources.LEA_242_FISSION, RadSources.HEA_242_FISSION, RadSources.HEA_242_FISSION, RadSources.HEA_242_FISSION, RadSources.HEA_242_FISSION, RadSources.HEA_242_FISSION}, 0D, 1000D, ARRAY);
  167.        
  168.         fission_curium_fuel_time = sync(CATEGORY_FISSION, "fission_curium_fuel_time", new int[] {1500, 1500, 1870, 1200, 1870, 1500, 1500, 1870, 1200, 1870, 2420, 2420, 3032, 1932, 3032, 2420, 2420, 3032, 1932, 3032, 2150, 2150, 2692, 1714, 2692, 2150, 2150, 2692, 1714, 2692}, 1, Integer.MAX_VALUE, ARRAY);
  169.         fission_curium_heat_generation = sync(CATEGORY_FISSION, "fission_curium_heat_generation", new int[] {384, 384, 308, 480, 308, 384 * 3, 384 * 3, 308 * 3, 480 * 3, 308 * 3, 238, 238, 190, 298, 190, 238 * 3, 238 * 3, 190 * 3, 298 * 3, 190 * 3, 268, 268, 214, 336, 214, 268 * 3, 268 * 3, 214 * 3, 336 * 3, 214 * 3}, 0, 32767, ARRAY);
  170.         fission_curium_efficiency = sync(CATEGORY_FISSION, "fission_curium_efficiency", new double[] {1.45D, 1.45D, 1.45D, 1.45D, 1.45D, 1.5D, 1.5D, 1.5D, 1.5D, 1.5D, 1.5D, 1.5D, 1.5D, 1.5D, 1.5D, 1.55D, 1.55D, 1.55D, 1.55D, 1.55D, 1.55D, 1.55D, 1.55D, 1.55D, 1.55D, 1.6D, 1.6D, 1.6D, 1.6D, 1.6D}, 0D, 32767D, ARRAY);
  171.         fission_curium_criticality = sync(CATEGORY_FISSION, "fission_curium_criticality", new int[] {56, 66, 83, 56, 66, 56 / 2, 66 / 2, 83 / 2, 56 / 2, 66 / 2, 64, 75, 94, 64, 75, 64 / 2, 75 / 2, 94 / 2, 64 / 2, 75 / 2, 61, 72, 90, 61, 72, 61 / 2, 72 / 2, 90 / 2, 61 / 2, 72 / 2}, 0, 32767, ARRAY);
  172.         fission_curium_decay_factor = sync(CATEGORY_FISSION, "fission_curium_decay_factor", arrayCopies(30, 0.085D), 0D, 1D, ARRAY);
  173.         fission_curium_self_priming = sync(CATEGORY_FISSION, "fission_curium_self_priming", new boolean[] {false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false}, ARRAY);
  174.         fission_curium_radiation = sync(CATEGORY_FISSION, "fission_curium_radiation", new double[] {RadSources.LECm_243_FISSION, RadSources.LECm_243_FISSION, RadSources.LECm_243_FISSION, RadSources.LECm_243_FISSION, RadSources.LECm_243_FISSION, RadSources.HECm_243_FISSION, RadSources.HECm_243_FISSION, RadSources.HECm_243_FISSION, RadSources.HECm_243_FISSION, RadSources.HECm_243_FISSION, RadSources.LECm_245_FISSION, RadSources.LECm_245_FISSION, RadSources.LECm_245_FISSION, RadSources.LECm_245_FISSION, RadSources.LECm_245_FISSION, RadSources.HECm_245_FISSION, RadSources.HECm_245_FISSION, RadSources.HECm_245_FISSION, RadSources.HECm_245_FISSION, RadSources.HECm_245_FISSION, RadSources.LECm_247_FISSION, RadSources.LECm_247_FISSION, RadSources.LECm_247_FISSION, RadSources.LECm_247_FISSION, RadSources.LECm_247_FISSION, RadSources.HECm_247_FISSION, RadSources.HECm_247_FISSION, RadSources.HECm_247_FISSION, RadSources.HECm_247_FISSION, RadSources.HECm_247_FISSION}, 0D, 1000D, ARRAY);
  175.        
  176.         fission_berkelium_fuel_time = sync(CATEGORY_FISSION, "fission_berkelium_fuel_time", new int[] {2166, 2166, 2716, 1734, 2716, 2166, 2166, 2716, 1734, 2716}, 1, Integer.MAX_VALUE, ARRAY);
  177.         fission_berkelium_heat_generation = sync(CATEGORY_FISSION, "fission_berkelium_heat_generation", new int[] {266, 266, 212, 332, 212, 266 * 3, 266 * 3, 212 * 3, 332 * 3, 212 * 3}, 0, 32767, ARRAY);
  178.         fission_berkelium_efficiency = sync(CATEGORY_FISSION, "fission_berkelium_efficiency", new double[] {1.65D, 1.65D, 1.65D, 1.65D, 1.65D, 1.7D, 1.7D, 1.7D, 1.7D, 1.7D}, 0D, 32767D, ARRAY);
  179.         fission_berkelium_criticality = sync(CATEGORY_FISSION, "fission_berkelium_criticality", new int[] {62, 73, 91, 62, 73, 62 / 2, 73 / 2, 91 / 2, 62 / 2, 73 / 2}, 0, 32767, ARRAY);
  180.         fission_berkelium_decay_factor = sync(CATEGORY_FISSION, "fission_berkelium_decay_factor", arrayCopies(10, 0.09D), 0D, 1D, ARRAY);
  181.         fission_berkelium_self_priming = sync(CATEGORY_FISSION, "fission_berkelium_self_priming", new boolean[] {false, false, false, false, false, false, false, false, false, false}, ARRAY);
  182.         fission_berkelium_radiation = sync(CATEGORY_FISSION, "fission_berkelium_radiation", new double[] {RadSources.LEB_248_FISSION, RadSources.LEB_248_FISSION, RadSources.LEB_248_FISSION, RadSources.LEB_248_FISSION, RadSources.LEB_248_FISSION, RadSources.HEB_248_FISSION, RadSources.HEB_248_FISSION, RadSources.HEB_248_FISSION, RadSources.HEB_248_FISSION, RadSources.HEB_248_FISSION}, 0D, 1000D, ARRAY);
  183.        
  184.         fission_californium_fuel_time = sync(CATEGORY_FISSION, "fission_californium_fuel_time", new int[] {1066, 1066, 1334, 852, 1334, 1066, 1066, 1334, 852, 1334, 2000, 2000, 2504, 1600, 2504, 2000, 2000, 2504, 1600, 2504}, 1, Integer.MAX_VALUE, ARRAY);
  185.         fission_californium_heat_generation = sync(CATEGORY_FISSION, "fission_californium_heat_generation", new int[] {540, 540, 432, 676, 432, 540 * 3, 540 * 3, 432 * 3, 676 * 3, 432 * 3, 288, 288, 230, 360, 230, 288 * 3, 288 * 3, 230 * 3, 360 * 3, 230 * 3}, 0, 32767, ARRAY);
  186.         fission_californium_efficiency = sync(CATEGORY_FISSION, "fission_californium_efficiency", new double[] {1.75D, 1.75D, 1.75D, 1.75D, 1.75D, 1.8D, 1.8D, 1.8D, 1.8D, 1.8D, 1.8D, 1.8D, 1.8D, 1.8D, 1.8D, 1.85D, 1.85D, 1.85D, 1.85D, 1.85D}, 0D, 32767D, ARRAY);
  187.         fission_californium_criticality = sync(CATEGORY_FISSION, "fission_californium_criticality", new int[] {51, 60, 75, 51, 60, 51 / 2, 60 / 2, 75 / 2, 51 / 2, 60 / 2, 60, 71, 89, 60, 71, 60 / 2, 71 / 2, 89 / 2, 60 / 2, 71 / 2}, 0, 32767, ARRAY);
  188.         fission_californium_decay_factor = sync(CATEGORY_FISSION, "fission_californium_decay_factor", arrayCopies(20, 0.1D), 0D, 1D, ARRAY);
  189.         fission_californium_self_priming = sync(CATEGORY_FISSION, "fission_californium_self_priming", new boolean[] {true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true}, ARRAY);
  190.         fission_californium_radiation = sync(CATEGORY_FISSION, "fission_californium_radiation", new double[] {RadSources.LECf_249_FISSION, RadSources.LECf_249_FISSION, RadSources.LECf_249_FISSION, RadSources.LECf_249_FISSION, RadSources.LECf_249_FISSION, RadSources.HECf_249_FISSION, RadSources.HECf_249_FISSION, RadSources.HECf_249_FISSION, RadSources.HECf_249_FISSION, RadSources.HECf_249_FISSION, RadSources.LECf_251_FISSION, RadSources.LECf_251_FISSION, RadSources.LECf_251_FISSION, RadSources.LECf_251_FISSION, RadSources.LECf_251_FISSION, RadSources.HECf_251_FISSION, RadSources.HECf_251_FISSION, RadSources.HECf_251_FISSION, RadSources.HECf_251_FISSION, RadSources.HECf_251_FISSION}, 0D, 1000D, ARRAY);
  191.        
  192.         fusion_fuel_time_multiplier = sync(CATEGORY_FUSION, "fusion_fuel_time_multiplier", 1D, 0.001D, 255D);
  193.         fusion_fuel_heat_multiplier = sync(CATEGORY_FUSION, "fusion_fuel_heat_multiplier", 1D, 0D, 255D);
  194.         fusion_fuel_efficiency_multiplier = sync(CATEGORY_FUSION, "fusion_fuel_efficiency_multiplier", 1D, 0D, 255D);
  195.         fusion_fuel_radiation_multiplier = sync(CATEGORY_FUSION, "fusion_fuel_radiation_multiplier", 1D, 0D, 255D);
  196.         fusion_overheat = sync(CATEGORY_FUSION, "fusion_overheat", true);
  197.         fusion_meltdown_radiation_multiplier = sync(CATEGORY_FUSION, "fusion_meltdown_radiation_multiplier", 1D, 0D, 255D);
  198.         fusion_min_size = sync(CATEGORY_FUSION, "fusion_min_size", 1, 1, 255);
  199.         fusion_max_size = sync(CATEGORY_FUSION, "fusion_max_size", 24, 1, 255);
  200.         fusion_comparator_max_efficiency = sync(CATEGORY_FUSION, "fusion_comparator_max_efficiency", 90, 1, 100);
  201.         fusion_electromagnet_power = sync(CATEGORY_FUSION, "fusion_electromagnet_power", 250D, 0D, Integer.MAX_VALUE);
  202.         fusion_plasma_craziness = sync(CATEGORY_FUSION, "fusion_plasma_craziness", true);
  203.         fusion_sound_volume = sync(CATEGORY_FUSION, "fusion_sound_volume", 1D, 0D, 15D);
  204.        
  205.         fusion_fuel_time = sync(CATEGORY_FUSION, "fusion_fuel_time", new double[] {100D, 150D, 200D, 200D, 350D, 400D, 600D, 200D, 250D, 250D, 400D, 450D, 650D, 300D, 300D, 450D, 500D, 700D, 300D, 450D, 500D, 700D, 600D, 650D, 850D, 700D, 900D, 1100D}, 1D, 32767D, ARRAY);
  206.         fusion_fuel_heat_generation = sync(CATEGORY_FUSION, "fusion_fuel_heat_generation", new double[] {44200D, 112300D, 30D, 303600D, 35100D, 133000D, 44400D, 50700D, 172600D, 225200D, 171600D, 85900D, 26100D, 90100D, 109900D, 91500D, 43500D, 700D, 131500D, 115100D, 72700D, 14000D, 106800D, 55200D, 15700D, 22900D, 45D, 5D}, 0D, Integer.MAX_VALUE, ARRAY);
  207.         // TODO: multiply by R
  208.         fusion_fuel_optimal_temperature = sync(CATEGORY_FUSION, "fusion_fuel_optimal_temperature", new double[] {3635D, 1022D, 4964D, 2740D, 5972D, 4161D, 13432D, 949D, 670D, 2160D, 3954D, 4131D, 13853D, 736D, 2137D, 4079D, 4522D, 27254D, 5420D, 7800D, 7937D, 24266D, 11268D, 11927D, 30399D, 13630D, 166414D, 293984D}, 500D, 20000D, ARRAY);
  209.         fusion_radiation = sync(CATEGORY_FUSION, "fusion_radiation", new double[] {RadSources.FUSION / 64D, RadSources.FUSION / 64D, (RadSources.FUSION + RadSources.TRITIUM + RadSources.NEUTRON) / 64D, RadSources.FUSION / 64D, (RadSources.FUSION + RadSources.TRITIUM) / 64D, RadSources.FUSION / 64D, RadSources.FUSION / 64D, (RadSources.FUSION + RadSources.TRITIUM / 2D + RadSources.NEUTRON / 2D) / 64D, (RadSources.FUSION + RadSources.TRITIUM + RadSources.NEUTRON) / 64D, RadSources.FUSION / 64D, RadSources.FUSION / 64D, (RadSources.FUSION + RadSources.NEUTRON) / 64D, (RadSources.FUSION + RadSources.NEUTRON) / 64D, (RadSources.FUSION + 2 * RadSources.TRITIUM + 2 * RadSources.NEUTRON) / 64D, (RadSources.FUSION + RadSources.NEUTRON) / 64D, (RadSources.FUSION + RadSources.NEUTRON) / 64D, (RadSources.FUSION + 2 * RadSources.NEUTRON) / 64D, (RadSources.FUSION + 2 * RadSources.NEUTRON) / 64D, RadSources.FUSION / 64D, RadSources.FUSION / 64D, RadSources.FUSION / 64D, RadSources.FUSION / 64D, RadSources.FUSION / 64D, (RadSources.FUSION + RadSources.NEUTRON) / 64D, (RadSources.FUSION + RadSources.NEUTRON) / 64D, (RadSources.FUSION + 2 * RadSources.NEUTRON) / 64D, (RadSources.FUSION + 2 * RadSources.NEUTRON) / 64D, (RadSources.FUSION + 2 * RadSources.NEUTRON) / 64D}, 0D, 1000D, ARRAY);
  210.        
  211.         heat_exchanger_min_size = sync(CATEGORY_HEAT_EXCHANGER, "heat_exchanger_min_size", 1, 1, 255);
  212.         heat_exchanger_max_size = sync(CATEGORY_HEAT_EXCHANGER, "heat_exchanger_max_size", 24, 2, 255);
  213.         heat_exchanger_conductivity = sync(CATEGORY_HEAT_EXCHANGER, "heat_exchanger_conductivity", new double[] {1D, 1.1D, 1.2D}, 0.01D, 15D, ARRAY);
  214.         heat_exchanger_coolant_mult = sync(CATEGORY_HEAT_EXCHANGER, "heat_exchanger_coolant_mult", 5D, 0.001D, Integer.MAX_VALUE);
  215.         heat_exchanger_alternate_exhaust_recipe = sync(CATEGORY_HEAT_EXCHANGER, "heat_exchanger_alternate_exhaust_recipe", false);
  216.        
  217.         turbine_min_size = sync(CATEGORY_TURBINE, "turbine_min_size", 1, 1, 255);
  218.         turbine_max_size = sync(CATEGORY_TURBINE, "turbine_max_size", 24, 3, 255);
  219.         turbine_blade_efficiency = sync(CATEGORY_TURBINE, "turbine_blade_efficiency", new double[] {1D, 1.1D, 1.2D}, 0.01D, 15D, ARRAY);
  220.         turbine_blade_expansion = sync(CATEGORY_TURBINE, "turbine_blade_expansion", new double[] {1.4D, 1.6D, 1.8D}, 1D, 15D, ARRAY);
  221.         turbine_stator_expansion = sync(CATEGORY_TURBINE, "turbine_stator_expansion", 0.75D, 0.01D, 1D);
  222.         turbine_coil_conductivity = sync(CATEGORY_TURBINE, "turbine_coil_conductivity", new double[] {0.88D, 0.9D, 1D, 1.04D, 1.06D, 1.12D}, 0.01D, 15D, ARRAY);
  223.         turbine_coil_rule = sync(CATEGORY_TURBINE, "turbine_coil_rule", new String[] {"one bearing || one connector", "one magnesium coils", "two magnesium coil", "one aluminum coil", "one beryllium coil", "one gold coil && one copper coil"}, ARRAY);
  224.         turbine_connector_rule = sync(CATEGORY_TURBINE, "turbine_connector_rule", new String[] {"one of any coil"}, ARRAY);
  225.         turbine_power_per_mb = sync(CATEGORY_TURBINE, "turbine_power_per_mb", new double[] {16D, 4D, 4D}, 0D, 255D, ARRAY);
  226.         turbine_expansion_level = sync(CATEGORY_TURBINE, "turbine_expansion_level", new double[] {4D, 2D, 2D}, 1D, 255D, ARRAY);
  227.         turbine_spin_up_multiplier = sync(CATEGORY_TURBINE, "turbine_spin_up_multiplier", new double[] {1D, 1D, 1D}, 0D, 255D, ARRAY);
  228.         turbine_mb_per_blade = sync(CATEGORY_TURBINE, "turbine_mb_per_blade", 100, 1, 32767);
  229.         turbine_throughput_leniency_params = sync(CATEGORY_TURBINE, "turbine_throughput_leniency_params", new double[] {0.5D, 0.75D}, 0D, 1D, ARRAY);
  230.         turbine_tension_throughput_factor = sync(CATEGORY_TURBINE, "turbine_tension_throughput_factor", 2D, 1D, 255D);
  231.         turbine_tension_leniency = sync(CATEGORY_TURBINE, "turbine_tension_leniency", 0.05D, 0D, 1D);
  232.         turbine_power_bonus_multiplier = sync(CATEGORY_TURBINE, "turbine_power_bonus_multiplier", 1D, 0D, 255D);
  233.         turbine_sound_volume = sync(CATEGORY_TURBINE, "turbine_sound_volume", 1D, 0D, 15D);
  234.         turbine_particles = sync(CATEGORY_TURBINE, "turbine_particles", 0.025D, 0D, 1D);
  235.         turbine_render_blade_width = sync(CATEGORY_TURBINE, "turbine_render_blade_width", NCMath.SQRT2, 0.01D, 4D);
  236.         turbine_render_rotor_expansion = sync(CATEGORY_TURBINE, "turbine_render_rotor_expansion", 4D, 1D, 15D);
  237.         turbine_render_rotor_speed = sync(CATEGORY_TURBINE, "turbine_render_rotor_speed", 1D, 0D, 15D);
  238.        
  239.         quantum_dedicated_server = sync(CATEGORY_QUANTUM, "quantum_dedicated_server", false);
  240.         quantum_max_qubits_live = sync(CATEGORY_QUANTUM, "quantum_max_qubits_live", 7, 1, 14);
  241.         quantum_max_qubits_code = sync(CATEGORY_QUANTUM, "quantum_max_qubits_code", 16, 1, 32);
  242.         quantum_angle_precision = sync(CATEGORY_QUANTUM, "quantum_angle_precision", 16, 4, 1024);
  243.        
  244.         tool_mining_level = sync(CATEGORY_TOOL, "tool_mining_level", new int[] {2, 2, 3, 3, 3, 3, 4, 4}, 0, 15, ARRAY);
  245.         tool_durability = sync(CATEGORY_TOOL, "tool_durability", new int[] {547, 547 * 5, 929, 929 * 5, 1245, 1245 * 5, 1928, 1928 * 5}, 1, 32767, ARRAY);
  246.         tool_speed = sync(CATEGORY_TOOL, "tool_speed", new double[] {8D, 8D, 10D, 10D, 11D, 11D, 12D, 12D}, 1D, 255D, ARRAY);
  247.         tool_attack_damage = sync(CATEGORY_TOOL, "tool_attack_damage", new double[] {2.5D, 2.5D, 3D, 3D, 3D, 3D, 3.5D, 3.5D}, 0D, 255D, ARRAY);
  248.         tool_enchantability = sync(CATEGORY_TOOL, "tool_enchantability", new int[] {6, 6, 15, 15, 12, 12, 20, 20}, 1, 255, ARRAY);
  249.         tool_handle_modifier = sync(CATEGORY_TOOL, "tool_handle_modifier", new double[] {0.85D, 1.1D, 1D, 0.75D}, 0.01D, 10D, ARRAY);
  250.        
  251.         armor_durability = sync(CATEGORY_ARMOR, "armor_durability", new int[] {22, 30, 34, 42, 0}, 1, 127, ARRAY);
  252.         armor_toughness = sync(CATEGORY_ARMOR, "armor_toughness", new double[] {1D, 2D, 1D, 2D, 0D}, 0D, 8D, ARRAY);
  253.         armor_enchantability = sync(CATEGORY_ARMOR, "armor_enchantability", new int[] {6, 15, 12, 20, 5}, 1, 255, ARRAY);
  254.         armor_boron = sync(CATEGORY_ARMOR, "armor_boron", new int[] {2, 5, 7, 3}, 1, 25, ARRAY);
  255.         armor_tough = sync(CATEGORY_ARMOR, "armor_tough", new int[] {3, 6, 7, 3}, 1, 25, ARRAY);
  256.         armor_hard_carbon = sync(CATEGORY_ARMOR, "armor_hard_carbon", new int[] {3, 5, 7, 3}, 1, 25, ARRAY);
  257.         armor_boron_nitride = sync(CATEGORY_ARMOR, "armor_boron_nitride", new int[] {3, 6, 8, 3}, 1, 25, ARRAY);
  258.         armor_hazmat = sync(CATEGORY_ARMOR, "armor_hazmat", new int[] {3, 6, 7, 3}, 1, 25, ARRAY);
  259.        
  260.         entity_tracking_range = sync(CATEGORY_ENTITY, "entity_tracking_range", 64, 1, 255);
  261.        
  262.         radiation_enabled = sync(CATEGORY_RADIATION, "radiation_enabled", true);
  263.        
  264.         radiation_immune_players = sync(CATEGORY_RADIATION, "radiation_immune_players", new String[] {}, LIST);
  265.         radiation_world_chunks_per_tick = sync(CATEGORY_RADIATION, "radiation_world_chunks_per_tick", 5, 1, 400);
  266.         radiation_player_tick_rate = sync(CATEGORY_RADIATION, "radiation_player_tick_rate", 5, 1, 400);
  267.         radiation_worlds = sync(CATEGORY_RADIATION, "radiation_worlds", new String[] {"4598_2.25"}, LIST);
  268.         radiation_biomes = sync(CATEGORY_RADIATION, "radiation_biomes", new String[] {"nuclearcraft:nuclear_wasteland_0.25"}, LIST);
  269.         radiation_structures = sync(CATEGORY_RADIATION, "radiation_structures", new String[] {}, LIST);
  270.         radiation_world_limits = sync(CATEGORY_RADIATION, "radiation_world_limits", new String[] {}, LIST);
  271.         radiation_biome_limits = sync(CATEGORY_RADIATION, "radiation_biome_limits", new String[] {}, LIST);
  272.         radiation_from_biomes_dims_blacklist = sync(CATEGORY_RADIATION, "radiation_from_biomes_dims_blacklist", new int[] {144}, Integer.MIN_VALUE, Integer.MAX_VALUE, LIST);
  273.        
  274.         radiation_ores = sync(CATEGORY_RADIATION, "radiation_ores", new String[] {"depletedFuelIC2U_" + (RadSources.URANIUM_238 * 4D + RadSources.PLUTONIUM_239 / 9D), "depletedFuelIC2MOX_" + RadSources.PLUTONIUM_239 * 28D / 9D}, LIST);
  275.         radiation_items = sync(CATEGORY_RADIATION, "radiation_items", new String[] {"ic2:nuclear:0_0.000000000048108553", "ic2:nuclear:1_" + RadSources.URANIUM_235, "ic2:nuclear:2_" + RadSources.URANIUM_238, "ic2:nuclear:3_" + RadSources.PLUTONIUM_239, "ic2:nuclear:4_0.000000833741517857143", "ic2:nuclear:5_" + RadSources.URANIUM_235 / 9D, "ic2:nuclear:6_" + RadSources.URANIUM_238 / 9D, "ic2:nuclear:7_" + RadSources.PLUTONIUM_239 / 9D, "ic2:nuclear:8_0.000000000048108553", "ic2:nuclear:9_0.000000833741517857143", "ic2:nuclear:10_" + RadSources.PLUTONIUM_238 * 3D, "ic2:nuclear:11_" + (RadSources.URANIUM_238 * 4D + RadSources.PLUTONIUM_239 / 9D), "ic2:nuclear:12_" + (RadSources.URANIUM_238 * 4D + RadSources.PLUTONIUM_239 / 9D) * 2D, "ic2:nuclear:13_" + (RadSources.URANIUM_238 * 4D + RadSources.PLUTONIUM_239 / 9D) * 4D, "ic2:nuclear:14_" + RadSources.PLUTONIUM_239 * 28D / 9D, "ic2:nuclear:15_" + RadSources.PLUTONIUM_239 * 2D * 28D / 9D, "ic2:nuclear:16_" + RadSources.PLUTONIUM_239 * 4D * 28D / 9D}, LIST);
  276.         radiation_blocks = sync(CATEGORY_RADIATION, "radiation_blocks", new String[] {}, LIST);
  277.         radiation_fluids = sync(CATEGORY_RADIATION, "radiation_fluids", new String[] {}, LIST);
  278.         radiation_foods = sync(CATEGORY_RADIATION, "radiation_foods", new String[] {"minecraft:golden_apple:0_-20_0.1", "minecraft:golden_apple:1_-100_0.5", "minecraft:golden_carrot:0_-4_0", "minecraft:spider_eye:0_0_0.5", "minecraft:poisonous_potato:0_0_0.5", "minecraft:fish:3_0_2", "minecraft:rabbit_stew:0_0_0.1", "minecraft:chorus_fruit:0_0_-0.25", "minecraft:beetroot:0_0_0.25", "minecraft:beetroot_soup:0_0_1.5", "quark:golden_frog_leg:0_-4_0"}, LIST);
  279.         radiation_ores_blacklist = sync(CATEGORY_RADIATION, "radiation_ores_blacklist", new String[] {}, LIST);
  280.         radiation_items_blacklist = sync(CATEGORY_RADIATION, "radiation_items_blacklist", new String[] {}, LIST);
  281.         radiation_blocks_blacklist = sync(CATEGORY_RADIATION, "radiation_blocks_blacklist", new String[] {}, LIST);
  282.         radiation_fluids_blacklist = sync(CATEGORY_RADIATION, "radiation_fluids_blacklist", new String[] {}, LIST);
  283.        
  284.         max_player_rads = sync(CATEGORY_RADIATION, "max_player_rads", 1000D, 1D, 1000000000D);
  285.         radiation_player_decay_rate = sync(CATEGORY_RADIATION, "radiation_player_decay_rate", 0.0000005D, 0D, 1D);
  286.         max_entity_rads = sync(CATEGORY_RADIATION, "max_entity_rads", new String[] {}, LIST);
  287.         radiation_entity_decay_rate = sync(CATEGORY_RADIATION, "radiation_entity_decay_rate", 0.001D, 0D, 1D);
  288.         radiation_spread_rate = sync(CATEGORY_RADIATION, "radiation_spread_rate", 0.1D, 0D, 1D);
  289.         radiation_spread_gradient = sync(CATEGORY_RADIATION, "radiation_spread_gradient", 0.5D, 1D, 1000000000D);
  290.         radiation_decay_rate = sync(CATEGORY_RADIATION, "radiation_decay_rate", 0.001D, 0D, 1D);
  291.         radiation_lowest_rate = sync(CATEGORY_RADIATION, "radiation_lowest_rate", 0.000000000000001D, 0D, 1D);
  292.         radiation_chunk_limit = sync(CATEGORY_RADIATION, "radiation_chunk_limit", -1D, -1D, Double.MAX_VALUE);
  293.        
  294.         radiation_sound_volumes = sync(CATEGORY_RADIATION, "radiation_sound_volumes", new double[] {1D, 1D, 1D, 1D, 1D, 1D, 1D, 1D}, 0D, 15D, ARRAY);
  295.         radiation_check_blocks = sync(CATEGORY_RADIATION, "radiation_check_blocks", true);
  296.         radiation_block_effect_max_rate = sync(CATEGORY_RADIATION, "radiation_block_effect_max_rate", 0, 0, 15);
  297.         radiation_rain_mult = sync(CATEGORY_RADIATION, "radiation_rain_mult", 1D, 0.000001D, 1000000D);
  298.         radiation_swim_mult = sync(CATEGORY_RADIATION, "radiation_swim_mult", 2D, 0.000001D, 1000000D);
  299.        
  300.         radiation_feral_ghoul_attack = sync(CATEGORY_RADIATION, "radiation_feral_ghoul_attack", RadSources.CAESIUM_137, 0.000001D, 1000000D);
  301.        
  302.         radiation_radaway_amount = sync(CATEGORY_RADIATION, "radiation_radaway_amount", 300D, 0.001D, 1000000000D);
  303.         radiation_radaway_slow_amount = sync(CATEGORY_RADIATION, "radiation_radaway_slow_amount", 300D, 0.001D, 1000000000D);
  304.         radiation_radaway_rate = sync(CATEGORY_RADIATION, "radiation_radaway_rate", 5D, 0.001D, 1000000000D);
  305.         radiation_radaway_slow_rate = sync(CATEGORY_RADIATION, "radiation_radaway_slow_rate", 0.025D, 0.00001D, 10000000D);
  306.         radiation_poison_time = sync(CATEGORY_RADIATION, "radiation_poison_time", 60D, 1D, 1000000D);
  307.         radiation_radaway_cooldown = sync(CATEGORY_RADIATION, "radiation_radaway_cooldown", 0D, 0D, 100000D);
  308.         radiation_rad_x_amount = sync(CATEGORY_RADIATION, "radiation_rad_x_amount", 25D, 0.001D, 1000000000D);
  309.         radiation_rad_x_lifetime = sync(CATEGORY_RADIATION, "radiation_rad_x_lifetime", 12000D, 20D, 1000000000D);
  310.         radiation_rad_x_cooldown = sync(CATEGORY_RADIATION, "radiation_rad_x_cooldown", 0D, 0D, 100000D);
  311.         radiation_shielding_level = sync(CATEGORY_RADIATION, "radiation_shielding_level", new double[] {0.01D, 0.1D, 1D}, 0.000000000000000001D, 1000D, ARRAY);
  312.         radiation_tile_shielding = sync(CATEGORY_RADIATION, "radiation_tile_shielding", true);
  313.         radiation_scrubber_fraction = sync(CATEGORY_RADIATION, "radiation_scrubber_fraction", 0.125D, 0.001D, 1D);
  314.         radiation_scrubber_radius = sync(CATEGORY_RADIATION, "radiation_scrubber_radius", 4, 1, 10);
  315.         radiation_scrubber_non_linear = sync(CATEGORY_RADIATION, "radiation_scrubber_non_linear", true);
  316.         radiation_scrubber_param = sync(CATEGORY_RADIATION, "radiation_scrubber_param", new double[] {2.14280951676725D, 3D, 4D, 2D}, 1D, 15D, ARRAY);
  317.         radiation_scrubber_time = sync(CATEGORY_RADIATION, "radiation_scrubber_time", new int[] {12000, 2400, 96000}, 1, Integer.MAX_VALUE, ARRAY);
  318.         radiation_scrubber_power = sync(CATEGORY_RADIATION, "radiation_scrubber_power", new int[] {200, 40, 20}, 0, Integer.MAX_VALUE, ARRAY);
  319.         radiation_scrubber_efficiency = sync(CATEGORY_RADIATION, "radiation_scrubber_efficiency", new double[] {1D, 5D, 0.25D}, 0D, 255D, ARRAY);
  320.         radiation_geiger_block_redstone = sync(CATEGORY_RADIATION, "radiation_geiger_block_redstone", 3D, -127D, 127D);
  321.        
  322.         radiation_shielding_default_recipes = sync(CATEGORY_RADIATION, "radiation_shielding_default_recipes", true);
  323.         radiation_shielding_item_blacklist = sync(CATEGORY_RADIATION, "radiation_shielding_item_blacklist", new String[] {"nuclearcraft:helm_hazmat", "nuclearcraft:chest_hazmat", "nuclearcraft:legs_hazmat", "nuclearcraft:boots_hazmat", "ic2:hazmat_helmet", "ic2:hazmat_chestplate", "ic2:hazmat_leggings", "ic2:rubber_boots", "extraplanets:tier1_space_suit_helmet", "extraplanets:tier1_space_suit_chest", "extraplanets:tier1_space_suit_jetpack_chest", "extraplanets:tier1_space_suit_leggings", "extraplanets:tier1_space_suit_boots", "extraplanets:tier1_space_suit_gravity_boots", "extraplanets:tier2_space_suit_helmet", "extraplanets:tier2_space_suit_chest", "extraplanets:tier2_space_suit_jetpack_chest", "extraplanets:tier2_space_suit_leggings", "extraplanets:tier2_space_suit_boots", "extraplanets:tier2_space_suit_gravity_boots", "extraplanets:tier3_space_suit_helmet", "extraplanets:tier3_space_suit_chest", "extraplanets:tier3_space_suit_jetpack_chest", "extraplanets:tier3_space_suit_leggings", "extraplanets:tier3_space_suit_boots", "extraplanets:tier3_space_suit_gravity_boots", "extraplanets:tier4_space_suit_helmet", "extraplanets:tier4_space_suit_chest", "extraplanets:tier4_space_suit_jetpack_chest", "extraplanets:tier4_space_suit_leggings", "extraplanets:tier4_space_suit_boots", "extraplanets:tier4_space_suit_gravity_boots"}, LIST);
  324.         radiation_shielding_custom_stacks = sync(CATEGORY_RADIATION, "radiation_shielding_custom_stacks", new String[] {}, LIST);
  325.         radiation_shielding_default_levels = sync(CATEGORY_RADIATION, "radiation_shielding_default_levels", new String[] {"nuclearcraft:helm_hazmat_2.0", "nuclearcraft:chest_hazmat_3.0", "nuclearcraft:legs_hazmat_2.0", "nuclearcraft:boots_hazmat_2.0", "ic2:hazmat_helmet_2.0", "ic2:hazmat_chestplate_3.0", "ic2:hazmat_leggings_2.0", "ic2:rubber_boots_2.0", "ic2:quantum_helmet_2.0", "ic2:quantum_chestplate_3.0", "ic2:quantum_leggings_2.0", "ic2:quantum_boots_2.0", "gravisuite:gravichestplate_3.0", "ic2:itemarmorquantumhelmet_2.0", "ic2:itemarmorquantumchestplate_3.0", "ic2:itemarmorquantumlegs_2.0", "ic2:itemarmorquantumboots_2.0", "gravisuit:gravisuit_3.0", "gravisuit:nucleargravisuit_3.0", "extraplanets:tier1_space_suit_helmet_1.0", "extraplanets:tier1_space_suit_chest_1.5", "extraplanets:tier1_space_suit_jetpack_chest_1.5", "extraplanets:tier1_space_suit_leggings_1.0", "extraplanets:tier1_space_suit_boots_1.0", "extraplanets:tier1_space_suit_gravity_boots_1.0", "extraplanets:tier2_space_suit_helmet_1.3", "extraplanets:tier2_space_suit_chest_1.95", "extraplanets:tier2_space_suit_jetpack_chest_1.95", "extraplanets:tier2_space_suit_leggings_1.3", "extraplanets:tier2_space_suit_boots_1.3", "extraplanets:tier2_space_suit_gravity_boots_1.3", "extraplanets:tier3_space_suit_helmet_1.6", "extraplanets:tier3_space_suit_chest_2.4", "extraplanets:tier3_space_suit_jetpack_chest_2.4", "extraplanets:tier3_space_suit_leggings_1.6", "extraplanets:tier3_space_suit_boots_1.6", "extraplanets:tier3_space_suit_gravity_boots_1.6", "extraplanets:tier4_space_suit_helmet_2.0", "extraplanets:tier4_space_suit_chest_3.0", "extraplanets:tier4_space_suit_jetpack_chest_3.0", "extraplanets:tier4_space_suit_leggings_2.0", "extraplanets:tier4_space_suit_boots_2.0", "extraplanets:tier4_space_suit_gravity_boots_2.0"}, LIST);
  326.        
  327.         radiation_hardcore_stacks = sync(CATEGORY_RADIATION, "radiation_hardcore_stacks", true);
  328.         radiation_hardcore_containers = sync(CATEGORY_RADIATION, "radiation_hardcore_containers", 0D, 0D, 1D);
  329.         radiation_dropped_items = sync(CATEGORY_RADIATION, "radiation_dropped_items", true);
  330.         radiation_death_persist = sync(CATEGORY_RADIATION, "radiation_death_persist", true);
  331.         radiation_death_persist_fraction = sync(CATEGORY_RADIATION, "radiation_death_persist_fraction", 0.75D, 0D, 1D);
  332.         radiation_death_immunity_time = sync(CATEGORY_RADIATION, "radiation_death_immunity_time", 90D, 0D, 3600D);
  333.        
  334.         // TODO
  335.         radiation_rads_text_color = sync(CATEGORY_RADIATION, "radiation_rads_text_color", new String[] {"0.0_f", "30.0_e", "50.0_6", "70.0_c", "90.0_4"}, LIST);
  336.         radiation_rate_text_color = sync(CATEGORY_RADIATION, "radiation_rate_text_color", new String[] {"0.0_f", "0.000000001_e", "0.001_6", "0.1_c", "1.0_4"}, LIST);
  337.         radiation_positive_food_rads_text_color = sync(CATEGORY_RADIATION, "radiation_positive_food_rads_text_color", new String[] {"0.0_f", "0.1_e", "1.0_6", "10.0_c", "100.0_4"}, LIST);
  338.         radiation_negative_food_rads_text_color = sync(CATEGORY_RADIATION, "radiation_negative_food_rads_text_color", new String[] {"0.0_b", "-10.0_9", "-100.0_d"}, LIST);
  339.         radiation_positive_food_resistance_text_color = sync(CATEGORY_RADIATION, "radiation_positive_food_resistance_text_color", new String[] {"0.0_f"}, LIST);
  340.         radiation_negative_food_resistance_text_color = sync(CATEGORY_RADIATION, "radiation_negative_food_resistance_text_color", new String[] {"0.0_7"}, LIST);
  341.        
  342.         radiation_player_debuff_lists = sync(CATEGORY_RADIATION, "radiation_player_debuff_lists", new String[] {"40.0_minecraft:weakness@1", "55.0_minecraft:weakness@1,minecraft:mining_fatigue@1", "70.0_minecraft:weakness@2,minecraft:mining_fatigue@1,minecraft:hunger@1", "80.0_minecraft:weakness@2,minecraft:mining_fatigue@2,minecraft:hunger@1,minecraft:poison@1", "90.0_minecraft:weakness@3,minecraft:mining_fatigue@3,minecraft:hunger@2,minecraft:poison@1,minecraft:wither@1"}, LIST);
  343.         radiation_passive_debuff_lists = sync(CATEGORY_RADIATION, "radiation_passive_debuff_lists", new String[] {"40.0_minecraft:weakness@1", "55.0_minecraft:weakness@1,minecraft:mining_fatigue@1", "70.0_minecraft:weakness@2,minecraft:mining_fatigue@1,minecraft:hunger@1", "80.0_minecraft:weakness@2,minecraft:mining_fatigue@2,minecraft:hunger@1,minecraft:poison@1", "90.0_minecraft:weakness@3,minecraft:mining_fatigue@3,minecraft:hunger@2,minecraft:poison@1,minecraft:wither@1"}, LIST);
  344.         radiation_mob_buff_lists = sync(CATEGORY_RADIATION, "radiation_mob_buff_lists", new String[] {"40.0_minecraft:speed@1", "55.0_minecraft:speed@1,minecraft:strength@1", "70.0_minecraft:speed@1,minecraft:strength@1,minecraft:resistance@1", "80.0_minecraft:speed@1,minecraft:strength@1,minecraft:resistance@1,minecraft:absorption@1", "90.0_minecraft:speed@1,minecraft:strength@1,minecraft:resistance@1,minecraft:absorption@1,minecraft:regeneration@1"}, LIST);
  345.         radiation_player_rads_fatal = sync(CATEGORY_RADIATION, "radiation_player_rads_fatal", true);
  346.         radiation_passive_rads_fatal = sync(CATEGORY_RADIATION, "radiation_passive_rads_fatal", true);
  347.         radiation_mob_rads_fatal = sync(CATEGORY_RADIATION, "radiation_mob_rads_fatal", true);
  348.        
  349.         radiation_horse_armor = sync(CATEGORY_RADIATION, "radiation_horse_armor", false);
  350.        
  351.         radiation_hud_size = sync(CATEGORY_RADIATION, "radiation_hud_size", 1D, 0.1D, 10D);
  352.         radiation_hud_position = sync(CATEGORY_RADIATION, "radiation_hud_position", 225D, 0D, 360D);
  353.         radiation_hud_position_cartesian = sync(CATEGORY_RADIATION, "radiation_hud_position_cartesian", new double[] {}, 0D, 1D, LIST);
  354.         radiation_hud_text_outline = sync(CATEGORY_RADIATION, "radiation_hud_text_outline", false);
  355.         radiation_require_counter = sync(CATEGORY_RADIATION, "radiation_require_counter", true);
  356.         radiation_chunk_boundaries = sync(CATEGORY_RADIATION, "radiation_chunk_boundaries", true);
  357.         radiation_unit_prefixes = sync(CATEGORY_RADIATION, "radiation_unit_prefixes", 0, 0, 15);
  358.        
  359.         radiation_badge_durability = sync(CATEGORY_RADIATION, "radiation_badge_durability", 250D, 0.000000000000000001D, 1000D);
  360.         radiation_badge_info_rate = sync(CATEGORY_RADIATION, "radiation_badge_info_rate", 0.1D, 0.000000000000000001D, 1D);
  361.        
  362.         register_processor = sync(CATEGORY_REGISTRATION, "register_processor", new boolean[] {true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true}, ARRAY);
  363.         register_passive = sync(CATEGORY_REGISTRATION, "register_passive", new boolean[] {true, true, true}, ARRAY);
  364.         register_battery = sync(CATEGORY_REGISTRATION, "register_battery", new boolean[] {true, true}, ARRAY);
  365.         register_quantum = sync(CATEGORY_REGISTRATION, "register_quantum", true);
  366.         register_tool = sync(CATEGORY_REGISTRATION, "register_tool", new boolean[] {true, true, true, true}, ARRAY);
  367.         register_tic_tool = sync(CATEGORY_REGISTRATION, "register_tic_tool", new boolean[] {true, true, true, true, true, true, true, true}, ARRAY);
  368.         register_armor = sync(CATEGORY_REGISTRATION, "register_armor", new boolean[] {true, true, true, true}, ARRAY);
  369.         register_conarm_armor = sync(CATEGORY_REGISTRATION, "register_conarm_armor", new boolean[] {true, true, true, true, true, true, true, true}, ARRAY);
  370.         register_entity = sync(CATEGORY_REGISTRATION, "register_entity", new boolean[] {true}, ARRAY);
  371.         register_fluid_blocks = sync(CATEGORY_REGISTRATION, "register_fluid_blocks", false);
  372.         register_cofh_fluids = sync(CATEGORY_REGISTRATION, "register_cofh_fluids", false);
  373.         register_projecte_emc = sync(CATEGORY_REGISTRATION, "register_projecte_emc", true);
  374.        
  375.         give_guidebook = sync(CATEGORY_MISC, "give_guidebook", true);
  376.         single_creative_tab = sync(CATEGORY_MISC, "single_creative_tab", false);
  377.         ctrl_info = sync(CATEGORY_MISC, "ctrl_info", false);
  378.         jei_chance_items_include_null = sync(CATEGORY_MISC, "jei_chance_items_include_null", false);
  379.         rare_drops = sync(CATEGORY_MISC, "rare_drops", false);
  380.         dungeon_loot = sync(CATEGORY_MISC, "dungeon_loot", false);
  381.         corium_solidification = sync(CATEGORY_MISC, "corium_solidification", new int[] {0, 1, 2, -6, -100, 4598, -9999, -11325}, Integer.MIN_VALUE, Integer.MAX_VALUE, LIST);
  382.         corium_solidification_list_type = sync(CATEGORY_MISC, "corium_solidification_list_type", false);
  383.         ore_dict_raw_material_recipes = sync(CATEGORY_MISC, "ore_dict_raw_material_recipes", false);
  384.         ore_dict_priority_bool = sync(CATEGORY_MISC, "ore_dict_priority_bool", true);
  385.         ore_dict_priority = sync(CATEGORY_MISC, "ore_dict_priority", new String[] {"minecraft", "thermalfoundation", "techreborn", "nuclearcraft", "immersiveengineering", "mekanism", "ic2", "appliedenergistics2", "refinedstorage", "actuallyadditions", "libvulpes", "advancedrocketry", "thaumcraft", "biomesoplenty"}, LIST);
  386.         hwyla_enabled = sync(CATEGORY_MISC, "hwyla_enabled", true);
  387.        
  388.         setCategoryPropertyOrders(config);
  389.        
  390.         BasicRecipeHandler.initGTCEIntegration();
  391.        
  392.         radiation_enabled_public = radiation_enabled;
  393.         radiation_horse_armor_public = radiation_horse_armor;
  394.        
  395.         if (config.hasChanged()) {
  396.             config.save();
  397.         }
  398.     }
Advertisement
RAW Paste Data Copied
Advertisement