@EarlyRepeatableTechCost = 50000
@EarlyRepeatableTechLevelCost = 5000
@EarlyRepatableTechFactor = 0.5
@RepeatableCategoryFactor = 0.01
@RepeatableDifferntFactor = 0.05
@EarlyRepeatableWeight = 12.5
@EarlyRepeatableTier = 5
@SpecializationPenalty = 0.6
@SpecializationLevel = 0.75

tech_repeatable_improved_tile_mineral_output = {
	area = engineering
	cost = @EarlyRepeatableTechCost
	cost_per_level = @EarlyRepeatableTechLevelCost
	tier = @EarlyRepeatableTier
	category = { industry }
	levels = -1
	prerequisites = { "tech_ship_armor_4" }
	weight = @EarlyRepeatableWeight
	
	weight_modifier = {
		modifier = {
			factor = @EarlyRepatableTechFactor
			check_variable = { which = repeatable_mineral_output value > 0 }
		}
		modifier = {
			factor = @EarlyRepatableTechFactor
			check_variable = { which = repeatable_mineral_output value > 1 }
		}
		modifier = {
			factor = @EarlyRepatableTechFactor
			check_variable = { which = repeatable_mineral_output value > 2 }
		}
		modifier = {
			factor = @EarlyRepatableTechFactor
			check_variable = { which = repeatable_mineral_output value > 3 }
		}
		modifier = {
			factor = @EarlyRepatableTechFactor
			check_variable = { which = repeatable_mineral_output value > 4 }
		}
		modifier = {
			factor = @EarlyRepatableTechFactor
			check_variable = { which = repeatable_mineral_output value > 5 }
		}
		modifier = {
			factor = @EarlyRepatableTechFactor
			check_variable = { which = repeatable_mineral_output value > 6 }
		}
		modifier = {
			factor = @EarlyRepatableTechFactor
			check_variable = { which = repeatable_mineral_output value > 7 }
		}
		modifier = {
			factor = @EarlyRepatableTechFactor
			check_variable = { which = repeatable_mineral_output value > 8 }
		}
	} 
	
	ai_weight = {
		factor = 1.0
	}
	
	#When a tech is added to the list of tech alternatives it will register each entry in weight_groups to a list. such as economy, or repeatable, or whatever
	#Then all remaining potential techs will multiply their weight with the corresponding mod_weight_if_group_picked.
	#So if the first tech picked has the weight group 'repeatable', all other techs with a mod_weight_if_group_picked 'repeatable = 0.4', for example, will multiply their weight with 0.4
	weight_groups = {
		production_repeatable
	}
	mod_weight_if_group_picked = {
		production_repeatable = @RepeatableCategoryFactor
    }
    mod_weight_if_group_picked = {
		ship_repeatable = @RepeatableDifferntFactor
	}	
	modifier = {
		planet_jobs_minerals_produces_mult = 0.05
	}
}

tech_repeatable_improved_military_station_damage = {
	area = engineering
	cost = @EarlyRepeatableTechCost
	cost_per_level = @EarlyRepeatableTechLevelCost
	tier = @EarlyRepeatableTier
	category = { voidcraft }
	levels = -1
	prerequisites = { "tech_space_defense_station_improvement" }
	weight = @EarlyRepeatableWeight
	
	weight_modifier = {
		modifier = {
			factor = @EarlyRepatableTechFactor
			check_variable = { which = repeatable_station_damage value > 0 }
		}
		modifier = {
			factor = @EarlyRepatableTechFactor
			check_variable = { which = repeatable_station_damage value > 1 }
		}
		modifier = {
			factor = @EarlyRepatableTechFactor
			check_variable = { which = repeatable_station_damage value > 2 }
		}
		modifier = {
			factor = @EarlyRepatableTechFactor
			check_variable = { which = repeatable_station_damage value > 3 }
		}
		modifier = {
			factor = @EarlyRepatableTechFactor
			check_variable = { which = repeatable_station_damage value > 4 }
		}
		modifier = {
			factor = @EarlyRepatableTechFactor
			check_variable = { which = repeatable_station_damage value > 5 }
		}
		modifier = {
			factor = @EarlyRepatableTechFactor
			check_variable = { which = repeatable_station_damage value > 6 }
		}
		modifier = {
			factor = @EarlyRepatableTechFactor
			check_variable = { which = repeatable_station_damage value > 7 }
		}
		modifier = {
			factor = @EarlyRepatableTechFactor
			check_variable = { which = repeatable_station_damage value > 8 }
		}
		modifier = {
			factor = @EarlyRepatableTechFactor
			check_variable = { which = repeatable_station_damage value > 9 }
		}
	}
	
	ai_weight = {
		factor = 1.0
	}
	
	weight_groups = {
		ship_repeatable
	}
	mod_weight_if_group_picked = {
		ship_repeatable = @RepeatableCategoryFactor
    }	
    mod_weight_if_group_picked = {
		production_repeatable = @RepeatableDifferntFactor
	}
	modifier = {
		shipclass_military_station_damage_mult = 0.1
	}
}

tech_repeatable_improved_military_station_health = {
	area = engineering
	cost = @EarlyRepeatableTechCost
	cost_per_level = @EarlyRepeatableTechLevelCost
	tier = @EarlyRepeatableTier
	category = { voidcraft }
	levels = -1
	prerequisites = { "tech_starbase_4" }
	weight = @EarlyRepeatableWeight
	
	weight_modifier = {
		modifier = {
			factor = @EarlyRepatableTechFactor
			check_variable = { which = repeatable_station_health value > 0 }
		}
		modifier = {
			factor = @EarlyRepatableTechFactor
			check_variable = { which = repeatable_station_health value > 1 }
		}
		modifier = {
			factor = @EarlyRepatableTechFactor
			check_variable = { which = repeatable_station_health value > 2 }
		}
		modifier = {
			factor = @EarlyRepatableTechFactor
			check_variable = { which = repeatable_station_health value > 3 }
		}
		modifier = {
			factor = @EarlyRepatableTechFactor
			check_variable = { which = repeatable_station_health value > 4 }
		}
		modifier = {
			factor = @EarlyRepatableTechFactor
			check_variable = { which = repeatable_station_health value > 5 }
		}
		modifier = {
			factor = @EarlyRepatableTechFactor
			check_variable = { which = repeatable_station_health value > 6 }
		}
		modifier = {
			factor = @EarlyRepatableTechFactor
			check_variable = { which = repeatable_station_health value > 7 }
		}
		modifier = {
			factor = @EarlyRepatableTechFactor
			check_variable = { which = repeatable_station_health value > 8 }
		}
		modifier = {
			factor = @EarlyRepatableTechFactor
			check_variable = { which = repeatable_station_health value > 9 }
		}
	}
	
	ai_weight = {
		factor = 1.0
	}
	
	weight_groups = {
		ship_repeatable
	}
	mod_weight_if_group_picked = {
		ship_repeatable = @RepeatableCategoryFactor
    }	
    mod_weight_if_group_picked = {
		production_repeatable = @RepeatableDifferntFactor
	}
	modifier = {
		shipclass_military_station_hull_mult = 0.1
	}
}


tech_repeatable_improved_armor_output = {
	area = engineering
	cost = @EarlyRepeatableTechCost
	cost_per_level = @EarlyRepeatableTechLevelCost
	tier = @EarlyRepeatableTier
	category = { materials }
	ai_update_type = all
	levels = -1
	prerequisites = { "tech_ship_armor_4" }
	weight = @EarlyRepeatableWeight
	
	weight_modifier = {
		modifier = {
			factor = @EarlyRepatableTechFactor
			check_variable = { which = repeatable_armor_mult value > 0 }
		}
		modifier = {
			factor = @EarlyRepatableTechFactor
			check_variable = { which = repeatable_armor_mult value > 1 }
		}
		modifier = {
			factor = @EarlyRepatableTechFactor
			check_variable = { which = repeatable_armor_mult value > 2 }
		}
		modifier = {
			factor = @EarlyRepatableTechFactor
			check_variable = { which = repeatable_armor_mult value > 3 }
		}
		modifier = {
			factor = @EarlyRepatableTechFactor
			check_variable = { which = repeatable_armor_mult value > 4 }
		}
		modifier = {
			factor = @EarlyRepatableTechFactor
			check_variable = { which = repeatable_armor_mult value > 5 }
		}
		modifier = {
			factor = @EarlyRepatableTechFactor
			check_variable = { which = repeatable_armor_mult value > 6 }
		}
		modifier = {
			factor = @EarlyRepatableTechFactor
			check_variable = { which = repeatable_armor_mult value > 7 }
		}
		modifier = {
			factor = @EarlyRepatableTechFactor
			check_variable = { which = repeatable_armor_mult value > 8 }
		}
		modifier = {
			factor = @EarlyRepatableTechFactor
			check_variable = { which = repeatable_armor_mult value > 9 }
		}
	}
	
	ai_weight = {
		factor = 1.0
	}
	
	weight_groups = {
		ship_repeatable
	}
	mod_weight_if_group_picked = {
		ship_repeatable = @RepeatableCategoryFactor
    }	
    mod_weight_if_group_picked = {
		production_repeatable = @RepeatableDifferntFactor
	}
	modifier = {
		ship_armor_mult = 0.05
	}
}

tech_repeatable_weapon_type_explosive_damage = {
	area = engineering
	cost = @EarlyRepeatableTechCost
	cost_per_level = @EarlyRepeatableTechLevelCost
	tier = @EarlyRepeatableTier
	category = { propulsion }
	ai_update_type = military
	levels = -1
	prerequisites = { "tech_torpedoes_2" }
	weight = @EarlyRepeatableWeight
	
	weight_modifier = {
		modifier = {
			factor = @EarlyRepatableTechFactor
			check_variable = { which = repeatable_explosive_damage value > 0 }
		}
		modifier = {
			factor = @EarlyRepatableTechFactor
			check_variable = { which = repeatable_explosive_damage value > 1 }
		}
		modifier = {
			factor = @EarlyRepatableTechFactor
			check_variable = { which = repeatable_explosive_damage value > 2 }
		}
		modifier = {
			factor = @EarlyRepatableTechFactor
			check_variable = { which = repeatable_explosive_damage value > 3 }
		}
		modifier = {
			factor = @EarlyRepatableTechFactor
			check_variable = { which = repeatable_explosive_damage value > 4 }
		}
		modifier = {
			factor = @EarlyRepatableTechFactor
			check_variable = { which = repeatable_explosive_damage value > 5 }
		}
		modifier = {
			factor = @EarlyRepatableTechFactor
			check_variable = { which = repeatable_explosive_damage value > 6 }
		}
		modifier = {
			factor = @EarlyRepatableTechFactor
			check_variable = { which = repeatable_explosive_damage value > 7 }
		}
		modifier = {
			factor = @EarlyRepatableTechFactor
			check_variable = { which = repeatable_explosive_damage value > 8 }
		}
		modifier = {
			factor = @EarlyRepatableTechFactor
			check_variable = { which = repeatable_explosive_damage value > 9 }
		}
	}
	
	ai_weight = {
		factor = 1.0
	}
	
	weight_groups = {
		ship_repeatable
	}
	mod_weight_if_group_picked = {
		ship_repeatable = @RepeatableCategoryFactor
    }	
    mod_weight_if_group_picked = {
		production_repeatable = @RepeatableDifferntFactor
	}
	
	modifier = {
		weapon_type_explosive_weapon_damage_mult = 0.05
	}
}

tech_repeatable_weapon_type_explosive_fire_rate = {
	area = engineering
	cost = @EarlyRepeatableTechCost
	cost_per_level = @EarlyRepeatableTechLevelCost
	tier = @EarlyRepeatableTier
	category = { propulsion }
	ai_update_type = military
	levels = -1
	prerequisites = { "tech_missiles_4" }
	weight = @EarlyRepeatableWeight
	
	weight_modifier = {
		modifier = {
			factor = @EarlyRepatableTechFactor
			check_variable = { which = repeatable_explosive_rate value > 0 }
		}
		modifier = {
			factor = @EarlyRepatableTechFactor
			check_variable = { which = repeatable_explosive_rate value > 1 }
		}
		modifier = {
			factor = @EarlyRepatableTechFactor
			check_variable = { which = repeatable_explosive_rate value > 2 }
		}
		modifier = {
			factor = @EarlyRepatableTechFactor
			check_variable = { which = repeatable_explosive_rate value > 3 }
		}
		modifier = {
			factor = @EarlyRepatableTechFactor
			check_variable = { which = repeatable_explosive_rate value > 4 }
		}
		modifier = {
			factor = @EarlyRepatableTechFactor
			check_variable = { which = repeatable_explosive_rate value > 5 }
		}
		modifier = {
			factor = @EarlyRepatableTechFactor
			check_variable = { which = repeatable_explosive_rate value > 6 }
		}
		modifier = {
			factor = @EarlyRepatableTechFactor
			check_variable = { which = repeatable_explosive_rate value > 7 }
		}
		modifier = {
			factor = @EarlyRepatableTechFactor
			check_variable = { which = repeatable_explosive_rate value > 8 }
		}
		modifier = {
			factor = @EarlyRepatableTechFactor
			check_variable = { which = repeatable_explosive_rate value > 9 }
		}
	}
	
	ai_weight = {
		factor = 1.0
	}
	
	weight_groups = {
		ship_repeatable
	}
	mod_weight_if_group_picked = {
		ship_repeatable = @RepeatableCategoryFactor
    }	
    mod_weight_if_group_picked = {
		production_repeatable = @RepeatableDifferntFactor
	}
	
	modifier = {
		weapon_type_explosive_weapon_fire_rate_mult = 0.05
	}
}

tech_repeatable_weapon_type_kinetic_damage = {
	area = engineering
	cost = @EarlyRepeatableTechCost
	cost_per_level = @EarlyRepeatableTechLevelCost
	tier = @EarlyRepeatableTier
	category = { propulsion }
	ai_update_type = military
	levels = -1
	prerequisites = { "tech_kinetic_artillery_1" }
	weight = @EarlyRepeatableWeight
	
	weight_modifier = {
		modifier = {
			factor = @EarlyRepatableTechFactor
			check_variable = { which = repeatable_kinetic_damage value > 0 }
		}
		modifier = {
			factor = @EarlyRepatableTechFactor
			check_variable = { which = repeatable_kinetic_damage value > 1 }
		}
		modifier = {
			factor = @EarlyRepatableTechFactor
			check_variable = { which = repeatable_kinetic_damage value > 2 }
		}
		modifier = {
			factor = @EarlyRepatableTechFactor
			check_variable = { which = repeatable_kinetic_damage value > 3 }
		}
		modifier = {
			factor = @EarlyRepatableTechFactor
			check_variable = { which = repeatable_kinetic_damage value > 4 }
		}
		modifier = {
			factor = @EarlyRepatableTechFactor
			check_variable = { which = repeatable_kinetic_damage value > 5 }
		}
		modifier = {
			factor = @EarlyRepatableTechFactor
			check_variable = { which = repeatable_kinetic_damage value > 6 }
		}
		modifier = {
			factor = @EarlyRepatableTechFactor
			check_variable = { which = repeatable_kinetic_damage value > 7 }
		}
		modifier = {
			factor = @EarlyRepatableTechFactor
			check_variable = { which = repeatable_kinetic_damage value > 8 }
		}
		modifier = {
			factor = @EarlyRepatableTechFactor
			check_variable = { which = repeatable_kinetic_damage value > 9 }
		}
	}
	
	ai_weight = {
		factor = 1.0
	}
	
	weight_groups = {
		ship_repeatable
	}
	mod_weight_if_group_picked = {
		ship_repeatable = @RepeatableCategoryFactor
    }	
    mod_weight_if_group_picked = {
		production_repeatable = @RepeatableDifferntFactor
	}
	
	modifier = {
		weapon_type_kinetic_weapon_damage_mult = 0.05
	}
}

tech_repeatable_weapon_type_kinetic_fire_rate = {
	area = engineering
	cost = @EarlyRepeatableTechCost
	cost_per_level = @EarlyRepeatableTechLevelCost
	tier = @EarlyRepeatableTier
	category = { propulsion }
	ai_update_type = military
	levels = -1
	prerequisites = { "tech_autocannons_2" }
	weight = @EarlyRepeatableWeight
	
	weight_modifier = {
		modifier = {
			factor = @EarlyRepatableTechFactor
			check_variable = { which = repeatable_kinetic_rate value > 0 }
		}
		modifier = {
			factor = @EarlyRepatableTechFactor
			check_variable = { which = repeatable_kinetic_rate value > 1 }
		}
		modifier = {
			factor = @EarlyRepatableTechFactor
			check_variable = { which = repeatable_kinetic_rate value > 2 }
		}
		modifier = {
			factor = @EarlyRepatableTechFactor
			check_variable = { which = repeatable_kinetic_rate value > 3 }
		}
		modifier = {
			factor = @EarlyRepatableTechFactor
			check_variable = { which = repeatable_kinetic_rate value > 4 }
		}
		modifier = {
			factor = @EarlyRepatableTechFactor
			check_variable = { which = repeatable_kinetic_rate value > 5 }
		}
		modifier = {
			factor = @EarlyRepatableTechFactor
			check_variable = { which = repeatable_kinetic_rate value > 6 }
		}
		modifier = {
			factor = @EarlyRepatableTechFactor
			check_variable = { which = repeatable_kinetic_rate value > 7 }
		}
		modifier = {
			factor = @EarlyRepatableTechFactor
			check_variable = { which = repeatable_kinetic_rate value > 8 }
		}
		modifier = {
			factor = @EarlyRepatableTechFactor
			check_variable = { which = repeatable_kinetic_rate value > 9 }
		}
	}
	
	ai_weight = {
		factor = 1.0
	}
	
	weight_groups = {
		ship_repeatable
	}
	mod_weight_if_group_picked = {
		ship_repeatable = @RepeatableCategoryFactor
    }	
    mod_weight_if_group_picked = {
		production_repeatable = @RepeatableDifferntFactor
	}
	
	modifier = {
		weapon_type_kinetic_weapon_fire_rate_mult = 0.05
	}
}

tech_repeatable_weapon_type_strike_craft_fire_damage = {
	area = engineering
	cost = @EarlyRepeatableTechCost
	cost_per_level = @EarlyRepeatableTechLevelCost
	tier = @EarlyRepeatableTier
	category = { voidcraft }
	ai_update_type = military
	levels = -1
	prerequisites = { "tech_strike_craft_3" }
	weight = @EarlyRepeatableWeight
	
	weight_modifier = {
		modifier = {
			factor = @EarlyRepatableTechFactor
			check_variable = { which = repeatable_strike_craft_damage value > 0 }
		}
		modifier = {
			factor = @EarlyRepatableTechFactor
			check_variable = { which = repeatable_strike_craft_damage value > 1 }
		}
		modifier = {
			factor = @EarlyRepatableTechFactor
			check_variable = { which = repeatable_strike_craft_damage value > 2 }
		}
		modifier = {
			factor = @EarlyRepatableTechFactor
			check_variable = { which = repeatable_strike_craft_damage value > 3 }
		}
		modifier = {
			factor = @EarlyRepatableTechFactor
			check_variable = { which = repeatable_strike_craft_damage value > 4 }
		}
		modifier = {
			factor = @EarlyRepatableTechFactor
			check_variable = { which = repeatable_strike_craft_damage value > 5 }
		}
		modifier = {
			factor = @EarlyRepatableTechFactor
			check_variable = { which = repeatable_strike_craft_damage value > 6 }
		}
		modifier = {
			factor = @EarlyRepatableTechFactor
			check_variable = { which = repeatable_strike_craft_damage value > 7 }
		}
		modifier = {
			factor = @EarlyRepatableTechFactor
			check_variable = { which = repeatable_strike_craft_damage value > 8 }
		}
		modifier = {
			factor = @EarlyRepatableTechFactor
			check_variable = { which = repeatable_strike_craft_damage value > 9 }
		}
	}
	
	ai_weight = {
		factor = 1.0
	}
	
	weight_groups = {
		ship_repeatable
	}
	mod_weight_if_group_picked = {
		ship_repeatable = @RepeatableCategoryFactor
    }	
    mod_weight_if_group_picked = {
		production_repeatable = @RepeatableDifferntFactor
	}
	
	modifier = {
		weapon_type_strike_craft_weapon_damage_mult = 0.10
	}
}

tech_repeatable_weapon_type_strike_craft_fire_rate = {
	area = engineering
	cost = @EarlyRepeatableTechCost
	cost_per_level = @EarlyRepeatableTechLevelCost
	tier = @EarlyRepeatableTier
	category = { voidcraft }
	ai_update_type = military
	levels = -1
	prerequisites = { "tech_strike_craft_3" }
	weight = @EarlyRepeatableWeight
	
	weight_modifier = {
		modifier = {
			factor = @EarlyRepatableTechFactor
			check_variable = { which = repeatable_strike_craft_rate value > 0 }
		}
		modifier = {
			factor = @EarlyRepatableTechFactor
			check_variable = { which = repeatable_strike_craft_rate value > 1 }
		}
		modifier = {
			factor = @EarlyRepatableTechFactor
			check_variable = { which = repeatable_strike_craft_rate value > 2 }
		}
		modifier = {
			factor = @EarlyRepatableTechFactor
			check_variable = { which = repeatable_strike_craft_rate value > 3 }
		}
		modifier = {
			factor = @EarlyRepatableTechFactor
			check_variable = { which = repeatable_strike_craft_rate value > 4 }
		}
		modifier = {
			factor = @EarlyRepatableTechFactor
			check_variable = { which = repeatable_strike_craft_rate value > 5 }
		}
		modifier = {
			factor = @EarlyRepatableTechFactor
			check_variable = { which = repeatable_strike_craft_rate value > 6 }
		}
		modifier = {
			factor = @EarlyRepatableTechFactor
			check_variable = { which = repeatable_strike_craft_rate value > 7 }
		}
		modifier = {
			factor = @EarlyRepatableTechFactor
			check_variable = { which = repeatable_strike_craft_rate value > 8 }
		}
		modifier = {
			factor = @EarlyRepatableTechFactor
			check_variable = { which = repeatable_strike_craft_rate value > 9 }
		}
	}
	
	ai_weight = {
		factor = 1.0
	}
	
	weight_groups = {
		ship_repeatable
	}
	mod_weight_if_group_picked = {
		ship_repeatable = @RepeatableCategoryFactor
    }	
    mod_weight_if_group_picked = {
		production_repeatable = @RepeatableDifferntFactor
	}
	
	modifier = {
		weapon_type_strike_craft_weapon_fire_rate_mult = 0.10
	}
}

tech_repeatable_reduced_building_time = {
	area = engineering
	cost = @EarlyRepeatableTechCost
	cost_per_level = @EarlyRepeatableTechLevelCost
	tier = @EarlyRepeatableTier
	category = { industry }
	levels = 5
	prerequisites = { "tech_construction_templates" }
	weight = @EarlyRepeatableWeight
	
	weight_modifier = {
		modifier = {
			factor = @EarlyRepatableTechFactor
			check_variable = { which = repeatable_building_time value > 0 }
		}
		modifier = {
			factor = @EarlyRepatableTechFactor
			check_variable = { which = repeatable_building_time value > 1 }
		}
		modifier = {
			factor = @EarlyRepatableTechFactor
			check_variable = { which = repeatable_building_time value > 2 }
		}
		modifier = {
			factor = @EarlyRepatableTechFactor
			check_variable = { which = repeatable_building_time value > 3 }
		}
		modifier = {
			factor = @EarlyRepatableTechFactor
			check_variable = { which = repeatable_building_time value > 4 }
		}
		modifier = {
			factor = @EarlyRepatableTechFactor
			check_variable = { which = repeatable_building_time value > 5 }
		}
	}
	
	ai_weight = {
		factor = 1.0
	}
	
	weight_groups = {
		production_repeatable
	}
	mod_weight_if_group_picked = {
		production_repeatable = @RepeatableCategoryFactor
    }
    mod_weight_if_group_picked = {
		ship_repeatable = @RepeatableDifferntFactor
	}
	modifier = {
		planet_building_build_speed_mult = 0.10
	}
}
