MassBuilderSaveTool/src/ResearchTree/NodeIDs.h

361 lines
7.5 KiB
C

#pragma once
// MassBuilderSaveTool
// Copyright (C) 2021 Guillaume Jacquemin
//
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program. If not, see <https://www.gnu.org/licenses/>.
enum EngineIDs: Int {
// Tier 1
VerseEngine = 100000,
LoadedEngine = 100020,
MetalPlatings1 = 200000,
HeatTurbines1 = 200040,
Microcontroller1 = 200060,
CombustionController1 = 200020,
// Tier 2
ModAlloyEngine = 110000,
ChargedEngine = 110040,
ReinforcedLoadedEngine = 110020,
HeavyImpactsEnabler = 110100,
MetalPlatings2 = 210000,
HeatTurbines2 = 210040,
Microcontroller2 = 210060,
WeaponsCargo1 = 210061,
CombustionController2 = 210020,
PoweredRewiring1 = 210021,
// Tier 3
ModSteelEngine,
SuperchargedEngine,
NecriumAlloyEngine,
MetalPlatings3,
HeatTurbines3,
Microcontroller3,
WeaponsCargo2,
CombustionController3,
PoweredRewiring2,
// Tier 4
ModLunariteEngine,
ChargedLunariteEngine,
LunariteEngine,
InfusedEngine,
MetalPlatings4,
HeatTurbines4,
Microcontroller4,
WeaponsCargo3,
CombustionController4,
PoweredRewiring3,
ArmouredCargo1,
ArmouredFuelTank1,
ExtraCapacity1,
HighmetalEngine,
PowerRedirector1,
// Tier 5
AsteriteCarbonEngine,
ChargedAsteriteEngine,
AsteriteSteelEngine,
MeldedEngine,
MetalPlatings5,
HeatTurbines5,
Microcontroller5,
WeaponsCargo4,
CombustionController5,
PoweredRewiring4,
ArmouredCargo2,
ArmouredFuelTank2,
ExtraCapacity2,
CastHighmetalEngine,
PowerRedirector2,
};
enum OSIDs: Int {
// Tier 1
NeuralOS = 300010,
ExoSkelOS = 300030,
Shields1 = 400010,
Enhancements1 = 400050,
FuelSave1 = 400051,
LongRange1 = 400030,
// Tier 2
SparkOS,
ImprovedNeuralOS,
EnhancedSkeletonOS,
ExtendedArtsLibrary,
SustainableShield1,
Shields2,
SustainableRecharger1,
Enhancements2,
FuelSave2,
LongRange2,
EmpoweredArtsLibrary,
//Tier 3
BlazeOS,
NeurolinkOS,
PoweredGuardianOS,
SustainableShields2,
Shields3,
SustainableRecharger2,
Enhancements3,
FuelSave3,
LongRange3,
// Tier 4
IgnitionOS,
AlteredFuelOS,
MindlinkOS,
FramelinkOS,
SlayerOS,
SustainableShields3,
Shields4,
SustainableRecharger3,
Enhancements4,
FuelSave4,
LongRange4,
CellburnOS,
StorageShielder1,
Realignment1,
AlphaAssault1,
BetaAssault1,
// Tier 5
BrightburnOS,
OmniaOS,
FullConnectOS,
FullDiveOS,
SpartoiOS,
SustainableShields4,
Shields5,
SustainableRecharger5,
Enhancements5,
FuelSave5,
LongRange5,
FirestormOS,
StorageShielder2,
Realignment2,
AlphaAssault2,
BetaAssault2,
};
enum ArchIDs: Int { // That tree is a **fucking mess**, so this enum will be too.
// Left side T1
StandardFrame = 500099,
StrengthFrame,
BoostFrame,
SupportFrame,
CombatFrame,
DurableFibre1,
EfficientThrusters1,
MaterialsCollector1,
TempoPreserver,
// Left side T2
StopperFrame,
ReinforcedFrame,
Overtaker,
GeneratorFrame,
HeavyLoadFrame,
SiegeMechFrame,
SentryFrame,
MetalsReplacement,
ReactiveArmour1,
FrameBoostingSystemSType,
EnemyScanner1,
MaterialsCollector2,
CompositeNanorobotics,
PinpointReticle1,
// Left side T3
BlockerUnit,
Hillgard,
Atmosformer,
Revitaliser,
SupplyCarrier,
TheEnforcer,
Precelsior,
ForcefulTinkeringDType,
ReactiveArmour2,
EfficienttThrusters2,
EnemyScanner2,
MaterialsCollector3,
PressurisedGears1,
PinpointReticle2,
// Left side T4
Aurochs,
Pantheris,
Vulture,
Vitalcycler,
Amberjack,
Bloodhounds,
ManOWar,
Steelwall,
DurableFibre2,
Streamliner,
FortressConfigurations1,
Afterburners1,
PerpetualGenerator1,
DataAnalyser1,
VoidDestabiliser1,
Ragelock,
BinaryMonarchEType,
Stingray,
ShieldsformerSystem1,
ShieldsEnhancer1,
AcceleratedWalkers1,
BulletRecollector1,
EnemyScanner3,
ArmsSBattery1,
BinaryMonarchAType,
// Left side T5
Longhorn,
Lionel,
Stormbyrd,
Hydra,
Orca,
Felcaninus,
Anglerwasp,
Ramsgate,
DoomsdayCargo,
Ghostech,
ReactiveArmour3,
FrameBoostingSystemDType,
PerpetualGenerator2,
DataAnalyser2,
PoweredNanorobotics,
Styxgear,
FullMetalJacketAType,
Thornwhip,
ShieldsformerSystem2,
ShieldsRerouter,
AdditionalThrusters1,
BulletRecollector2,
EnemyInspector1,
ArmsSBattery2,
FullMetalJacketIType,
// Elemental T1/2 (there's a lone T1 node, so I won't make a separate group just for it)
EnemyObserverUnit,
BladeBlazeCanister,
BladeCryoCore,
BladeVoltAmplifier,
BlazeBulletsTech,
CryoBulletsTech,
VoltBulletsTech,
BlazePodsTech,
CryoPodsTech,
VoltPodsTech,
// Elemental T3
PowerTransferenceUnit1,
Adaptive,
BlazeArmsEnhancer,
CryoArmsEnhancer,
VoltArmsEnhancer,
// Elemental T4
PowerTransferenceUnit2,
Elemental,
BlazeTransferenceUnit,
CryoTransferenceUnit,
VoltTransferenceUnit,
QuickBurningChemicals,
CryoCoatedMetals,
VoltageOverclock,
// Elemental T5
PowerTransferenceUnit3,
Revenant,
ArmsConductionController,
TrinityCore1,
PodsConductionController,
MeltingChemicals,
LongLastingCryoChems,
VoltSplitters,
WeaponStanceControls, // This node is common to both the DW and shield sub-trees.
// Shield T2
ProtectiveCoating1,
MeteorShielder1,
// Shield T3
Retaliator,
Flagbearer1,
AegisReinforcements1,
// Shield T4
Flashspike,
ProtectiveCoating2,
MeteorShielder2,
IntegrityStrengthening1,
// Shield T5
Faithbinder,
SaintessBulwark,
MeteorShielder3,
BlizzardCore1,
// DW T2
GatheringStorm1,
WildfireStarter1,
// DW T3
MasterOfArms,
Stormwielder,
Suncaller,
// DW T4
Evoker,
GatheringStorm2,
WildfireStarter2,
GravitationDefier1,
// DW T5
Bladedancer,
Type3ArmsSBattery1,
ShieldsBatteryRegulator1,
GravitationDefier2,
// QB T2/3
// Okay, time to rant. The first node of the QB sub-tree is a tier 2 node. By itself, it's not that bad,
// except that... it's the child of Master of Arms, the first T3 node in the DW sub-tree. :DeadInside:
QuantumMechanicsResearch,
QuantumAccelerationResearch,
QuantumControlResearch,
QuantumCoatingResearch,
// QB T4
EnergyCollector1,
ParticleAccelerator1,
AmplificationModule1,
QAugmentedThrusters,
EssenceRedistributor1,
MomentumSpiker1,
// QB T5
EnergyCollector2,
ParticleAccelerator2,
AmplificationModule2,
QAugmentedShields,
EssenceRedistributor2,
MomentumSpiker2,
};