361 lines
7.5 KiB
C
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,
|
|
SustainableShields1,
|
|
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,
|
|
SustainableRecharger4,
|
|
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,
|
|
};
|