mirror of
https://github.com/PHIDIAS0303/ExpCluster.git
synced 2026-11-14 00:14:52 +09:00
Research Milestone (#517)
* new research milestone * energy * revert * minute * moving * config
This commit is contained in:
1 parent
637e47bf8c
commit
ce29218f14
3 files changed
+184
-58
No files matched your search
@@ -297,6 +297,8 @@ export const features: Feature[] = [
|
||||
description: "A GUI tracking research against target times, the targets live in config/research_data.lua",
|
||||
fields: [
|
||||
str("log_file", "Log file", "Where the milestone times are written within script-output", "log/research.log"),
|
||||
num("milestone_rate", "Target rate", "Targeted Milestone Science Research Rate", 45, 5, "SPM"),
|
||||
num("milestone_warmup_time", "Warmup time", "Warmup time given before start counting.", 10, 0, "minutes"),
|
||||
],
|
||||
},
|
||||
{
|
||||
|
||||
@@ -18,63 +18,184 @@ local data = {
|
||||
},
|
||||
milestone = {
|
||||
["base"] = {
|
||||
["automation"] = 600,
|
||||
["logistics"] = 300,
|
||||
["steel-processing"] = 300,
|
||||
["logistic-science-pack"] = 300,
|
||||
["electronics"] = 300,
|
||||
["fast-inserter"] = 300,
|
||||
["steel-axe"] = 300,
|
||||
["automation-2"] = 300,
|
||||
["advanced-material-processing"] = 300,
|
||||
["engine"] = 300,
|
||||
["fluid-handling"] = 300,
|
||||
["oil-processing"] = 300,
|
||||
["sulfur-processing"] = 300,
|
||||
["plastics"] = 300,
|
||||
["advanced-circuit"] = 300,
|
||||
["chemical-science-pack"] = 300,
|
||||
["modules"] = 300,
|
||||
["logistics-2"] = 300,
|
||||
["railway"] = 300,
|
||||
["research-speed-1"] = 300,
|
||||
["research-speed-2"] = 300,
|
||||
["battery"] = 300,
|
||||
["concrete"] = 300,
|
||||
["flammables"] = 300,
|
||||
["low-density-structure"] = 300,
|
||||
["advanced-material-processing-2"] = 300,
|
||||
["productivity-module"] = 300,
|
||||
["production-science-pack"] = 300,
|
||||
["processing-unit"] = 300,
|
||||
["advanced-oil-processing"] = 300,
|
||||
["electric-engine"] = 300,
|
||||
["robotics"] = 300,
|
||||
["construction-robotics"] = 300,
|
||||
["worker-robots-speed-1"] = 300,
|
||||
["worker-robots-speed-2"] = 300,
|
||||
["utility-science-pack"] = 300,
|
||||
["productivity-module-2"] = 300,
|
||||
["speed-module-2"] = 300,
|
||||
["rocket-fuel"] = 300,
|
||||
["effect-transmission"] = 300,
|
||||
["productivity-module-3"] = 300,
|
||||
["speed-module-3"] = 300,
|
||||
["rocket-silo"] = 300,
|
||||
["space-science-pack"] = 300,
|
||||
"automation",
|
||||
"logistics",
|
||||
"steel-processing",
|
||||
"logistic-science-pack",
|
||||
"electronics",
|
||||
"fast-inserter",
|
||||
"steel-axe",
|
||||
"automation-2",
|
||||
"advanced-material-processing",
|
||||
"engine",
|
||||
"fluid-handling",
|
||||
"oil-processing",
|
||||
"sulfur-processing",
|
||||
"plastics",
|
||||
"advanced-circuit",
|
||||
"chemical-science-pack",
|
||||
"modules",
|
||||
"logistics-2",
|
||||
"railway",
|
||||
"research-speed-1",
|
||||
"research-speed-2",
|
||||
"battery",
|
||||
"concrete",
|
||||
"flammables",
|
||||
"low-density-structure",
|
||||
"advanced-material-processing-2",
|
||||
"productivity-module",
|
||||
"production-science-pack",
|
||||
"processing-unit",
|
||||
"advanced-oil-processing",
|
||||
"electric-engine",
|
||||
"robotics",
|
||||
"construction-robotics",
|
||||
"worker-robots-speed-1",
|
||||
"worker-robots-speed-2",
|
||||
"utility-science-pack",
|
||||
"productivity-module-2",
|
||||
"speed-module-2",
|
||||
"rocket-fuel",
|
||||
"effect-transmission",
|
||||
"productivity-module-3",
|
||||
"speed-module-3",
|
||||
"rocket-silo",
|
||||
"space-science-pack",
|
||||
},
|
||||
["space-age"] = {
|
||||
["logistic-science-pack"] = 3600,
|
||||
["military-science-pack"] = 3600,
|
||||
["chemical-science-pack"] = 5400,
|
||||
["utility-science-pack"] = 7200,
|
||||
["production-science-pack"] = 7200,
|
||||
["space-science-pack"] = 7200,
|
||||
["metallurgic-science-pack"] = 10800,
|
||||
["electromagnetic-science-pack"] = 10800,
|
||||
["agricultural-science-pack"] = 10800,
|
||||
["cryogenic-science-pack"] = 10800,
|
||||
["promethium-science-pack"] = 14400,
|
||||
"automation",
|
||||
"electric-mining-drill",
|
||||
"logistics",
|
||||
"fast-inserter",
|
||||
"steel-processing",
|
||||
"logistic-science-pack",
|
||||
"gun-turret",
|
||||
"automation-2",
|
||||
"advanced-material-processing",
|
||||
"engine",
|
||||
"logistics-2",
|
||||
"automobilism",
|
||||
"fluid-handling",
|
||||
"oil-gathering",
|
||||
"research-speed-1",
|
||||
"research-speed-2",
|
||||
"circuit-network",
|
||||
"toolbelt",
|
||||
"electric-energy-distribution-1",
|
||||
"concrete",
|
||||
"solar-energy",
|
||||
"plastics",
|
||||
"advanced-circuit",
|
||||
"sulfur-processing",
|
||||
"chemical-science-pack",
|
||||
"battery",
|
||||
"bulk-inserter",
|
||||
"inserter-capacity-bonus-1",
|
||||
"inserter-capacity-bonus-2",
|
||||
"mining-productivity-1",
|
||||
"modules",
|
||||
"productivity-module",
|
||||
"speed-module",
|
||||
"efficiency-module",
|
||||
"advanced-oil-processing",
|
||||
"lubricant",
|
||||
"electric-engine",
|
||||
"robotics",
|
||||
"construction-robotics",
|
||||
"worker-robots-speed-1",
|
||||
"worker-robots-speed-2",
|
||||
"electric-energy-accumulators",
|
||||
"explosives",
|
||||
"military",
|
||||
"stone-wall",
|
||||
"military-2",
|
||||
"military-science-pack",
|
||||
"heavy-armor",
|
||||
"modular-armor",
|
||||
"solar-panel-equipment",
|
||||
"battery-equipment",
|
||||
"physical-projectile-damage-1",
|
||||
"weapon-shooting-speed-1",
|
||||
"repair-pack",
|
||||
"radar",
|
||||
"landfill",
|
||||
"quality-module",
|
||||
"flammables",
|
||||
"processing-unit",
|
||||
"low-density-structure",
|
||||
"rocket-fuel",
|
||||
"logistic-robotics",
|
||||
"advanced-material-processing-2",
|
||||
"rocket-silo",
|
||||
"uranium-mining",
|
||||
"research-speed-3",
|
||||
"research-speed-4",
|
||||
"worker-robots-storage-1",
|
||||
"mining-productivity-2",
|
||||
"railway",
|
||||
"production-science-pack",
|
||||
"utility-science-pack",
|
||||
"physical-projectile-damage-2",
|
||||
"weapon-shooting-speed-2",
|
||||
"stronger-explosives-1",
|
||||
"power-armor",
|
||||
"exoskeleton-equipment",
|
||||
"personal-roboport-equipment",
|
||||
"nuclear-power",
|
||||
"space-platform-thruster",
|
||||
"planet-discovery-gleba",
|
||||
"logistic-system",
|
||||
"effect-transmission",
|
||||
"speed-module-2",
|
||||
"research-speed-5",
|
||||
"worker-robots-speed-3",
|
||||
"worker-robots-speed-4",
|
||||
"worker-robots-storage-2",
|
||||
"automation-3",
|
||||
"productivity-module-2",
|
||||
"efficiency-module-2",
|
||||
"quality-module-2",
|
||||
"planet-discovery-fulgora",
|
||||
"kovarex-enrichment-process",
|
||||
"military-3",
|
||||
"military-4",
|
||||
"power-armor-mk2",
|
||||
"fission-reactor-equipment",
|
||||
"battery-mk2-equipment",
|
||||
"stronger-explosives-2",
|
||||
"physical-projectile-damage-3",
|
||||
"weapon-shooting-speed-3",
|
||||
"planet-discovery-vulcanus",
|
||||
"research-speed-6",
|
||||
"worker-robots-speed-5",
|
||||
"worker-robots-speed-6",
|
||||
"worker-robots-storage-3",
|
||||
"carbon-fiber",
|
||||
"rocketry",
|
||||
"rocket-turret",
|
||||
"captivity",
|
||||
"biolab",
|
||||
"advanced-asteroid-processing",
|
||||
"asteroid-reprocessing",
|
||||
"planet-discovery-aquilo",
|
||||
"physical-projectile-damage-4",
|
||||
"weapon-shooting-speed-4",
|
||||
"physical-projectile-damage-5",
|
||||
"weapon-shooting-speed-5",
|
||||
"physical-projectile-damage-6",
|
||||
"weapon-shooting-speed-6",
|
||||
"physical-projectile-damage-7",
|
||||
"stronger-explosives-3",
|
||||
"stronger-explosives-4",
|
||||
"stronger-explosives-5",
|
||||
"stronger-explosives-6",
|
||||
"stronger-explosives-7",
|
||||
"stronger-explosives-8",
|
||||
"quantum-processor",
|
||||
"railgun",
|
||||
"fusion-reactor",
|
||||
"promethium-science-pack",
|
||||
}
|
||||
},
|
||||
inf_res = {
|
||||
|
||||
@@ -10,6 +10,8 @@ local research_data = require("modules/exp_scenario/config/research_data")
|
||||
|
||||
local feature, config = Feature.register("research_milestones", {
|
||||
log_file = "log/research.log", -- where the milestone times are written
|
||||
milestone_rate = 45, -- Targeted Milestone Science Research Rate, In terms of SPM.
|
||||
milestone_warmup_time = 10, -- Warmup time given before start counting. In terms of minutes.
|
||||
})
|
||||
|
||||
local table_to_json = helpers.table_to_json
|
||||
@@ -41,11 +43,12 @@ local research_targets = {
|
||||
|
||||
do --- Calculate the research targets
|
||||
local research_index = 1
|
||||
local total_time = 0
|
||||
for name, time in pairs(research_data.milestone[research_data.mod_set]) do
|
||||
local total_time = config.milestone_warmup_time * 60
|
||||
for _, name in pairs(research_data.milestone[research_data.mod_set]) do
|
||||
if prototypes.technology[name] and (not prototypes.technology[name].hidden) then
|
||||
research_targets.index_lookup[name] = research_index
|
||||
total_time = total_time + time * 60
|
||||
-- The number is affected by multiplier already
|
||||
total_time = total_time + math.ceil(prototypes.technology[name].research_unit_count * 60 / config.milestone_rate)
|
||||
|
||||
research_targets.target_times[research_index] = {
|
||||
name = name,
|
||||
|
||||
Reference in new issue
Block a user