diff --git a/Localization/EN/Font.ttf b/Localization/EN/Font.ttf new file mode 100644 index 0000000..d9371a1 Binary files /dev/null and b/Localization/EN/Font.ttf differ diff --git a/Localization/EN/TranslationTable.cfg b/Localization/EN/TranslationTable.cfg new file mode 100644 index 0000000..285f4f0 --- /dev/null +++ b/Localization/EN/TranslationTable.cfg @@ -0,0 +1,510 @@ +--User Interface-------------------------------- +INTRO_Title:You look new here... +INTRO_Head:Welcome to Mechlab Maid! +INTRO_Call:For export tagging:`nWhat's your Callsign? +INTRO_Default:MW5Mercs +INTRO_Context:Allowed only Letter, Numbers, Underscore(_) and Dashes(-) allowed. +INTRO_Confirm:Callsign will be "$name", Accept? +INTRO_WhoAmI:WhoAmI? +MAIN_Title:MW5Mercs Mechlab Maid +MAIN_Status:$Num variants loaded and ready for manipulation. +MAIN_ID:ID +BTN_Import:Import Variant +BTN_Export:Export Variant +BTN_Delete:Delete Variant +BTN_OK:OK +BTN_YES:Yes +BTN_NO:No +BTN_CANCEL:Cancel +BTN_CONTINUE:Continue +HDR_Base:Base +HDR_Variant:Variant Name +MENU_Folder:Folder +MENU_Options:Options +MENU_About:About +MENU_FExport:Exported Loadouts +MENU_FSaved:Saved IALoadouts +MENU_OID:Change ID +MENU_OExport:Export All +MENU_OReload:Reload List +MENU_SaveAll:Save Changes +ABOUT_Title:About +ABOUT_Intro:MW5Mercs Mechlab Maid (32-bit) v1.0d +ABOUT_Written:Written by +ABOUT_Github:GitHub Page +ABOUT_Discord:Contact me on discord +ABOUT_Twitch:Find me on Twitch +INFO_Chassis:Chassis +INFO_Variant:Variant +INFO_Source:Source +INFO_Internal:Internal +INFO_Engine:Engine +INFO_JumpJets:JumpJets +INFO_Heatsinks:Heatsinks +INFO_ArmorType:ArmorType +INFO_ArmourTTL:Install +INFO_GYRO:Gyro +INFO_Cockpit:Cockpit +INFO_Targeting:Tarting +INFO_Sensors:Sensors +INFO_ArmorDiv:Armor Split +INFO_Ordnance:Ordnance +INFO_Munitions:Munitions +INFO_Traits:Traits +--STRUCTURE------------------------------------- +ENDO:Endo-Steel +ENDO_L:Endo-Steel +ENDO_M:Endo-Steel +ENDO_H:Endo-Steel +PENDO:Prototype Endo-Steel +PENDO_L:Prototype Endo-Steel +PENDO_M:Prototype Endo-Steel +PENDO_H:Prototype Endo-Steel +ENDO_PROTOTYPE:Prototype Endo-Steel +C79ENDO:Clan Endo-Steel +LICH_HYBRID_STRUCTURE:Lich Hybrid +INTERNAL_REPAIR_SYSTEMS:Internal Repair Systems +YACM_STRUCTURE_CLAN_FIXED:Clan Standard +YACM_ENDOSTEEL_CLAN_FIXED:Clan Endo-Steel +RSTRUCT:Reinforced +ENDO_TSM:Endo-Composite + TSM +ENDO_COMPOSITE_STRUCTURE:Endo-Composite +STRUCTURE_ENDO_BULKY_QS:Quikscell Bulky Endo-Steel +ENDO_QS:Quikscell Endo-Steel +COMPOSITE_STRUCTURE:Composite +STRUCTURE_QS:Quikscell Standard +--ARMOUR---------------------------------------- +Ferro:Ferro-Fibrous +Ferro_L:Ferro-Fibrous +Ferro_M:Ferro-Fibrous +Ferro_H:Ferro-Fibrous +LFerro:Light Ferro-Fibrous +LFerro_L:Light Ferro-Fibrous +LFerro_M:Light Ferro-Fibrous +LFerro_H:Light Ferro-Fibrous +PFerro:Prototype Ferro-Fibrous +PFerro_L:Prototype Ferro-Fibrous +PFerro_M:Prototype Ferro-Fibrous +PFerro_H:Prototype Ferro-Fibrous +Ferro_PROTOTYPE:Prototype Ferro-Fibrous +CFERRO:Clan Ferro-Fibrous +ARMOR_PRIMITIVE:Primitive +HEAVY_FERRO:Heavy Ferro-Fibrous +ARMOR_FERRO_QS:Quikscell Ferro-Fibrous +ARMOR_SPALL_LINER:Spall Liner +ARMOR_BALLISTIC_REINFORCED:Ballistic Reinforced +ARMOR_DURALAST_QS:Quikscell Duralast +ARMOR_GLADIATOR:Gladiator +YACM_ARMOR_STANDARD_CLAN_FIXED:Clan Standard +YACM_ARMOR_FERRO_CLAN_FIXED:Clan Ferro-Fibrous +BLACK_CARAPACE:Black Carapace +FERRO_LAMELLOR_CLAN:Ferro-Lamellor +ARMOR_STEALTH:Stealth +ARMOR_GLAZED:Reflective +ARMOR_REACTIVE:Reactive +ARMOR_NSS:Null Signature System +ARMOR_HEAT_DISS:Heat-Dissipating +HARDENED_FERRO:Hardened Ferro-Fibrous +HARDENED:Hardened +FERRO_CARBIDE_C:Clan Ferro-Carbide +--GYRO------------------------------------------ +GYRO1:Mobility +GYRO2:Agility +GYRO5:Flexibility +GYRO_COMPACT:Compact +GYRO_DEFENSE:Defensive +GYRO_MELEE:Melee MkI +GYRO_MELEE_MK2:Melee MkII +GYRO_MELEE_MK3:Melee MkIII +GYRO_DREADNOUGHT:Dreadnought +OMNI_GYRO_XXL:Omni Super-Light +YACM_OMNI_GYRO_FIXED:Omni +GYRO_HEAVY_DUTY:Heavy-Duty +GYRO_STABILITY:Stability +GYRO_UL:Ultra-Light +GYRO_UL_STABILIZED:Stable Ultra-Light +GYRO_XXL:Super-Light +GYRO_XL:Extra-Light +--ENGINE---------------------------------------- +ENGINE_XL:Extra-Light +ENGINE_COMPACT:Compact +ENGINE_PRIMITIVE:Primitive +ENGINE_LIGHT:Light +ENGINE_IC_XL_QS:Quikscell Combustion +ENGINE_XL_QS:Quikscell Extra-Light +ENGINE_XXL:Super-Light +ENGINE_XL_CLAN:Clan Extra-Light +ENGINE_XXL_CLAN:Clan Super-Light +SOLARIS_XXL_ENGINE_FIXED:Solaris Super-Light +ENGINE_LIGHT_FIXED:Tuned Light +YACM_ENGINE_XL_CLAN_FIXED:Clan Extra-light +YACM_ENGINE_CORE_175_FIXED:175 +YACM_ENGINE_CORE_210_FIXED:210 +YACM_ENGINE_CORE_250_FIXED:250 +YACM_ENGINE_CORE_300_FIXED:300 +YACM_ENGINE_CORE_360_FIXED:360 +YACM_ENGINE_CORE_385_FIXED:385 +ENGINE_CORE_300_FIXED:300 +--COOLING--------------------------------------- +Cooling_diss100:Double +COMPACT_HS_KIT:Compact +CLAN_DHS_KIT:Clan Double +YACM_CLAN_DHS_KIT_FIXED:Clan Double +RADICAL_PROTO_DHS_KIT:Radical Prototype Double +RADICAL_DHS_KIT:Radical Double +PROTO_DHS_KIT:Prototype Double +DHS_KIT_QS:Quikscell Double +--SENSORS--------------------------------------- +SENSORS1:Improved +SENSORS2:Powered +SENSORS3:Sniper +SENSORS_PRIMITIVE:Primitive +SENSORS_SEARCHLIGHT:Search Light +SENSORS_ARMORED:Armored +SENSORS_PROBE:Basic Probe +SENSORS_TC_QS:Quikscell Sensors +SENSORS_RISC_FIXED:RISC +--TARGETING------------------------------------- +TCOMP3PREDICTIVE:Predictive +TCOMP_MODULAR_BC:Modular +TCOMP_HEAT:Heat Management +TC_RISC_FIXED:RISC +TC_DEFIANCE:Defiance +TCOMP_NOVA:Nova +TCOMP_HEAT:Heat +TCOMP:Energy +TCOMP1:Ballistic +TCOMP_PPC_ADVANCED:Advanced PPC +TCOMP_MISSLE_ADVANCED:Advanced Missile +TCOMP_TRACE_ADVANCED:Advanced Energy +TCOMP_BALLISTIC_ADVANCED:Advanced Ballistic +TCOMP2:Missile +--COCKPIT--------------------------------------- +COCKPIT_PRIMITIVE:Primitive +COCKPIT_HOTSEAT:Hotseat +COCKPIT_SMALL:Small +COMMAND_CONSOLE:Command Console +COCKPIT_RISC_FIXED:RISC +COCKPIT_SMALL_ADVANCED:Small Advanced +COCKPIT_SMALL_ADVANCED_FIXED:Small Advanced +SLIC_SUITE:SLIC +COCKPIT_ARMORED:Armored +--AMMUNITION------------------------------------ +SRM_Artemis_AmmoEquipment:SRM Ammo 1.00T +SRM_Artemis_Half_AmmoEquipment:SRM Ammo 0.50T +SRM_Artemis_Quart_AmmoEquipment:SRM Ammo 0.25T +SRM_AmmoEquipment:SRM Ammo 1.00T +SRM_Half_AmmoEquipment:SRM Ammo 0.50T +SRM_Quart_AmmoEquipment:SRM Ammo 0.25T +LRM_AmmoEquipment:LRM Ammo (1.00T) +LRM_Half_AmmoEquipment:LRM Ammo (0.50T) +LRM_Quart_AmmoEquipment:LRM Ammo (0.25T) +LRM_Artemis_AmmoEquipment:LRM Artemis Ammo (1.00T) +LRM_Artemis_Half_AmmoEquipment:LRM Artemis Ammo (0.50T) +LRM_Artemis_Quart_AmmoEquipment:LRM Artemis Ammo (0.25T) +AMS_AmmoEquipment:AMS Ammo 1.00T +AMS_Halft_AmmoEquipment:AMS Ammo (0.50T) +AMS_Quart_AmmoEquipment:AMS Ammo (0.25T) +SmallChemLaser_AmmoEquipment:Small Chemical Laser Ammo 1.00T +MediumChemLaser_AmmoEquipment:Medium Chemical Laser Ammo 1.00T +LargeChemLaser_AmmoEquipment:Large Chemical Laser Ammo 1.00T +SmallChemLaser_Half_AmmoEquipment:Small Chemical Laser Ammo 0.50T +MediumChemLaser_Half_AmmoEquipment:Medium Chemical Laser Ammo 0.50T +LargeChemLaser_Half_AmmoEquipment:Large Chemical Laser Ammo 0.50T +SmallChemLaser_Quart_AmmoEquipment:Small Chemical Laser Ammo 0.25T +MediumChemLaser_Quart_AmmoEquipment:Medium Chemical Laser Ammo 0.25T +LargeChemLaser_Quart_AmmoEquipment:Large Chemical Laser Ammo 0.25T +MachineGun_Standard_AmmoEquipment:Machine Gun Ammo 1.00T +MachineGun_Standard_Half_AmmoEquipment:Machine Gun Ammo 0.50T +MachineGun_Standard_Quart_AmmoEquipment:Machine Gun Ammo 0.25T +CMachineGun79_Heavy_AmmoEquipment:[C] Heavy MachineGun Ammo (1.00T) +LightRifle_AmmoEquipment_Double:Light Rifle Ammo (2.00T) +LightRifle_AmmoEquipment:Light Rifle Ammo (1.00T) +LightRifle_Half_AmmoEquipment:Light Rifle Ammo (0.50T) +LightRifle_Quart_AmmoEquipment:Light Rifle Ammo (0.25T) +MediumRifle_AmmoEquipment_Double:Medium Rifle Ammo (2.00T) +MediumRifle_AmmoEquipment:Medium Rifle Ammo (1.00T) +MediumRifle_Half_AmmoEquipment:Medium Rifle Ammo (0.50T) +MediumRifle_Quart_AmmoEquipment:Medium Rifle Ammo (0.25T) +HeavyRifle_AmmoEquipment_Double:Heavy Rifle Ammo (2.00T) +HeavyRifle_AmmoEquipment:Heavy Rifle Ammo (1.00T) +HeavyRifle_Half_AmmoEquipment:Heavy Rifle Ammo (0.50T) +HeavyRifle_Quart_AmmoEquipment:Heavy Rifle Ammo (0.25T) +AC2_Standard_AmmoEquipment_Double:AutoCannon/2 Ammo (2.00T) +AC5_Standard_AmmoEquipment_Double:AutoCannon/5 Ammo (2.00T) +AC10_Standard_AmmoEquipment_Double:AutoCannon/10 Ammo (2.00T) +AC20_Standard_AmmoEquipment_Double:AutoCannon/20 Ammo (2.00T) +AC2_Standard_AmmoEquipment:AutoCannon/2 Ammo (1.00T) +AC5_Standard_AmmoEquipment:AutoCannon/5 Ammo (1.00T) +AC10_Standard_AmmoEquipment:AutoCannon/10 Ammo (1.00T) +AC20_Standard_AmmoEquipment:AutoCannon/20 Ammo (1.00T) +AC2_Standard_Half_AmmoEquipment:AutoCannon/2 Ammo (0.50T) +AC5_Standard_Half_AmmoEquipment:AutoCannon/5 Ammo (0.50T) +AC10_Standard_Half_AmmoEquipment:AutoCannon/10 Ammo (0.50T) +AC20_Standard_Half_AmmoEquipment:AutoCannon/20 Ammo (0.50T) +AC2_Standard_Quart_AmmoEquipment:AutoCannon/2 Ammo (0.25T) +AC5_Standard_Quart_AmmoEquipment:AutoCannon/5 Ammo (0.25T) +AC10_Standard_Quart_AmmoEquipment:AutoCannon/10 Ammo (0.25T) +AC20_Standard_Quart_AmmoEquipment:AutoCannon/20 Ammo (0.25T) +AC2_Ultra_AmmoEquipment_Double:AutoCannon/2 Ammo (2.00T) +AC5_Ultra_AmmoEquipment_Double:AutoCannon/5 Ammo (2.00T) +AC10_Ultra_AmmoEquipment_Double:AutoCannon/10 Ammo (2.00T) +AC20_Ultra_AmmoEquipment_Double:AutoCannon/20 Ammo (2.00T) +AC2_Ultra_AmmoEquipment:AutoCannon/2 Ammo (1.00T) +AC5_Ultra_AmmoEquipment:AutoCannon/5 Ammo (1.00T) +AC10_Ultra_AmmoEquipment:AutoCannon/10 Ammo (1.00T) +AC20_Ultra_AmmoEquipment:AutoCannon/20 Ammo (1.00T) +AC2_Ultra_Half_AmmoEquipment:AutoCannon/2 Ammo (0.50T) +AC5_Ultra_Half_AmmoEquipment:AutoCannon/5 Ammo (0.50T) +AC10_Ultra_Half_AmmoEquipment:AutoCannon/10 Ammo (0.50T) +AC20_Ultra_Half_AmmoEquipment:AutoCannon/20 Ammo (0.50T) +AC2_Ultra_Quart_AmmoEquipment:AutoCannon/2 Ammo (0.25T) +AC5_Ultra_Quart_AmmoEquipment:AutoCannon/5 Ammo (0.25T) +AC10_Ultra_Quart_AmmoEquipment:AutoCannon/10 Ammo (0.25T) +AC20_Ultra_Quart_AmmoEquipment:AutoCannon/20 Ammo (0.25T) +AC2_Light_79_AmmoEquipment:Light AutoCannon/2 Ammo (1.00T) +AC5_Light_79_AmmoEquipment:Light AutoCannon/5 Ammo (1.00T) +AC10_Light_79_AmmoEquipment:Light AutoCannon/10 Ammo (1.00T) +AC20_Light_79_AmmoEquipment:Light AutoCannon/20 Ammo (1.00T) +Gauss_Standard_AmmoEquipment:Gauss Ammo (1.00T) +NARC_AmmoEquipment_Double:NARC Ammo (2.00T) +NARC_AmmoEquipment:NARC Ammo (1.00T) +NARC_Half_AmmoEquipment:NARC Ammo (0.50T) +NARC_Quart_AmmoEquipment:NARC Ammo (0.25T) +ArrowIV_AmmoEquipment79:Arrow IV Ammo (1.00T) +--WEAPONS (ENERGY)------------------------------ +Flamer:Flamer +C79Flamer:[C] Flamer +ERFlamer79:ER Flamer +C79ERFlamer:[C] ER Flamer +SmallLaser:Small Laser +MediumLaser:Medium Laser +LargeLaser:Large Laser +SmallPulseLaser:Small Pulse Laser +MediumPulseLaser:Medium Pulse Laser +LargePulseLaser:Large Pulse Laser +SmallChemicalLaser:Small Chemical Laser +MediumChemicalLaser:Medium Chemical Laser +LargeChemicalLaser:Large Chemical Laser +ERLargeLaser:ER Large Laser +ERMediumLaser79:ER Medium Laser +ERSmallLaser79:ER Small Laser +C79ERLargeLaser:[C] ER Large Laser +C79ERMediumLaser:[C] ER Medium Laser +C79ERSmallLaser:[C] ER Small Laser +LargeLaser_ShortBurst:SB Large laser +MediumLaser_ShortBurst:SB Medium laser +SmallLaser_ShortBurst:SB Small laser +C79HeavyLargeLaser:[C] Heavy Large Laser +C79HeavyMediumLaser:[C] Heavy Medium Laser +C79HeavySmallLaser:[C] Heavy Small Laser +RISCHyperLaser79:Hyper Laser +PPC:PPC +HPPC79:Heavy PPC +LPPC79:Light PPC +ERPPC:ER PPC +--WEAPONS (BALLISTIC)--------------------------- +GaussRifle:Gauss Rifle +Light79Autocannon2:Light AutoCannon/2 +Light79Autocannon5:Light AutoCannon/5 +Light79Autocannon10:Light AutoCannon/10 +Light79Autocannon20:Light AutoCannon/20 +Autocannon2:AutoCannon/2 +Autocannon5:AutoCannon/5 +Autocannon10:AutoCannon/10 +Autocannon20:AutoCannon/20 +Ultra79Autocannon2:Ultra AutoCannon/2 +UltraAutocannon5:Ultra AutoCannon/5 +Ultra79Autocannon10:Ultra AutoCannon/10 +Ultra79Autocannon20:Ultra AutoCannon/20 +C79Autocannon2:[C] AutoCannon/2 +C79Autocannon5:[C] AutoCannon/5 +C79Autocannon10:[C] AutoCannon/10 +C79Autocannon20:[C] AutoCannon/20 +Autocannon2_Burst:Burst-Fire AC/2 +Autocannon5_Burst:Burst-Fire AC/5 +Autocannon10_Burst:Burst-Fire AC/10 +Autocannon20_Burst:Burst-Fire AC/20 +LightRifle:Light Rifle +MediumRifle:Medium Rifle +HeavyRifle:Heavy Rifle +MachineGun:Machine Gun +MachineGunArray279:Machine Gun Array X2 +MachineGunArray479:Machine Gun Array X4 +--WEAPONS (MISSILE)----------------------------- +SRM2:SRM 2 +SRM4:SRM 4 +SRM6:SRM 6 +SRM2_Artemis:SRM 2 + ART IV +SRM4_Artemis:SRM 4 + ART IV +SRM6_Artemis:SRM 6 + ART IV +SRM2_inferno79:Inferno SRM 2 +SRM4_inferno79:Inferno SRM 4 +SRM6_inferno79:Inferno SRM 6 +SRM2_MagPulse:MagPulse SRM 2 +SRM4_MagPulse:MagPulse SRM 4 +SRM6_MagPulse:MagPulse SRM 6 +StreakSRM2_Stream:Streak SRM 2 Stream +StreakSRM4_Stream:Streak SRM 4 Stream +StreakSRM6_Stream:Streak SRM 6 Stream +LRM5:LRM 5 +LRM10:LRM 10 +LRM15:LRM 15 +LRM20:LRM 20 +LRM5_Stream:LRM 5 Stream +LRM10_Stream:LRM 10 Stream +LRM15_Stream:LRM 15 Stream +LRM20_Stream:LRM 20 Stream +LRM5_Artemis:LRM 5 + ARTIV +LRM10_Artemis:LRM 10 + ARTIV +LRM15_Artemis:LRM 15 + ARTIV +LRM20_Artemis:LRM 20 + ARTIV +LRM5_Artemis_Stream:LRM 5 Stream + ARTIV +LRM10_Artemis_Stream:LRM 10 Stream + ARTIV +LRM15_Artemis_Stream:LRM 15 Stream + ARTIV +LRM20_Artemis_Stream:LRM 20 Stream + ARTIV +MML3_79:MML 3 +MML5_79:MML 5 +MML7_79:MML 7 +MML9_79:MML 7 +MRM10-79:MRM 10 +MRM20-79:MRM 20 +MRM30-79:MRM 30 +MRM40-79:MRM 40 +trueg_MML5_RISC:MML 5 RISC +trueg_MML10_RISC:MML 10 RISC +NarcBeacon:NARC +ArrowIV_79:Arrow IV +--WEAPONS (OTHER)------------------------------- +AntiMissileSystem:AMS +CLAntiMissileSystem79:[C] LAMS +LAntiMissileSystem79:LAMS +--MELEE----------------------------------------- +MechHandLight_MeleeWeaponDataAsset: +MechLowerArmLight_MeleeWeaponDataAsset: +Knuckles_Light:Knuckles +Knuckles_Medium:Knuckles +Knuckles_Heavy:Knuckles +Knuckles_Assault:Knuckles +HammerFist_Light:Hammerfist +HammerFist_Medium:Hammerfist +HammerFist_Heavy:Hammerfist +HammerFist_Assault:Hammerfist +ArenaFist_Light:Arena Fist +ArenaFist_Medium:Arena Fist +ArenaFist_Heavy:Arena Fist +ArenaFist_Assault:Arena Fist +BattleAxe_Assault:Battle Axe +Claymore_Assault:Claymore +Katana_Assault:Katana +Axe_Heavy:Heavy Axe +Longsword_Heavy:LongSword +TrenchBlade_Heavy:Trench Blade +Claws_Medium:Claw +Hatchet_Medium:Hatchet +Mace_medium:Mace +--MISCELLANEOUS--------------------------------- +YAML_VANILLA_UAVCOMPONENT: +UAVDrone_79:UAV Drone +UAVDroneAdv_79:Advanced UAV Drone +--TRAITS---------------------------------------- +MechroleTrait_Ambusher: +MechroleTrait_Scout: +MechroleTrait_Striker: +MechroleTrait_Skirmisher: +MechroleTrait_Juggernaut: +MechroleTrait_MissileBoat: +MechroleTrait_Sniper: +IncreasedAccelerationDeceleration_Trait1:+10% Accel/Decel +IncreasedAccelerationDeceleration_Trait2:+20% Accel/Decel +IncreasedArmor_Trait1:+2.5% Armor +IncreasedArmor_Trait2:+5% Armor +IncreasedBallisticDamage_Trait1:+5% Ballistic Damage +IncreasedBallisticDamage_Trait2:+10% Ballistic Damage +IncreasedBallisticRangeAndSpeed_Trait1:+7.5% Ballistic Range/Speed +IncreasedBallisticRangeAndSpeed_Trait2:+15% Ballistic Range/Speed +IncreasedEnergyDamage_Trait1:+5% Energy Damage +IncreasedEnergyDamage_Trait2:+10% Energy Damage +IncreasedEnergyRangeAndSpeed_Trait1:+7.5% Energy Range/Speed +IncreasedEnergyRangeAndSpeed_Trait2:+15% Energy Range/Speed +IncreasedHeatCapacity_Trait1:+5% Heat Capacity +IncreasedHeatCapacity_Trait2:+10% Heat Capacity +IncreasedHeatCooling_Trait1:+5% Heat Dissipation +IncreasedJJAccelXYZ_Trait1:+15% Jump Jet Speed +IncreasedJJFuelBurnTime_Trait1:+15% Jump Jet Burn Time +IncreasedJJFuelRegenTime_Trait1:+20% Jump Jet Refuel Rate +IncreasedLockRetentionAndLoseLockTime_Trait1:+25% Target Lock Retention +IncreasedMissileDamage_Trait1:+5% Missile Damage +IncreasedMissileDamage_Trait2:+10% Missile Damage +IncreasedMissileRangeAndSpeed_Trait1:+7.5% Missile Range/Speed +IncreasedMissileRangeAndSpeed_Trait2:+15% Missile Range/Speed +IncreasedSensorRange_Trait1:+10% Sensor Range +IncreasedSensorRange_Trait2:+20% Sensor Range +IncreasedStructure_Trait1:+5% Internal Structure +IncreasedStructure_Trait2:+10% Internal Structure +IncreasedTopSpeed_Trait1:+15% Top Speed +IncreasedTorsoTwistRate_Trait1:+20% Torso Twist Speed +IncreasedTurnSpeed_Trait1:+7.5% Turn Speed +IncreasedTurnSpeed_Trait2:+15% Turn Speed +IncreasedWeaponDamage_Trait1:+5% Weapon Damage +IncreasedWeaponRangeAndSpeed_Trait1:+10% Weapon Range/Speed +ReducedBallisticCooldown_Trait1:-5% Ballistic Cooldown +ReducedBallisticCooldown_Trait2:-10% Ballistic Cooldown +ReducedBallisticHeat_Trait1:-2.5% Ballistic Heat +ReducedBallisticHeat_Trait2:-5% Ballistic Heat +ReducedEnergyCooldown_Trait1:-5% Energy Cooldown +ReducedEnergyCooldown_Trait2:-10% Energy Cooldown +ReducedEnergyHeat_Trait1:-2.5% Energy Heat +ReducedEnergyHeat_Trait2:-5% Energy Heat +ReducedHeatGeneration_Trait1:-5% Heat Generation +ReducedLaserDuration_Trait1:-7.5% Laser Duration +ReducedMissileCooldown_Trait1:-5% Missile Cooldown +ReducedMissileCooldown_Trait2:-10% Missile Cooldown +ReducedMissileHeat_Trait1:-2.5% Missile Heat +ReducedMissileHeat_Trait2:-5% Missile Heat +ReducedMissileSpread_Trait1:-7.5% Missile Spread +ReducedWeaponCooldown_Trait1:-7.5% Weapon Cooldown +ReducedWeaponHeat_Trait1:-2.5% Weapon Heat +--CHASSIS-[NOT YET USED]------------------------ + +ANH:Annihilator +ARC:Archer +AS7:Atlas +ASN:Assassin +AWS:Awesome +BJ:Blackjack +BL:BlackKnight +BLR:Battlemaster +BNC:Banshee +CDA:Cicada +CN9:Centurion +COM:Commando +CP:Cyclops +CRB:Crab +DRG:Dragon +ENF:Enforcer +FLE:Flea +FS9:Firestarter +GHR:Grasshopper +GRF:Griffin +JM6:Jaegermech +JR7:Jenner +JVN:Javelin +KGC:KingCrab +LCT:Locust +LDR:Loaderking +MAD:Marauder +MDD:MadDog +PNT:Panther +PXH:PhoenixHawk +RFL:Rifleman +RGH:Roughneck +RVN:Raven +SDR:Spider +STG:Stinger +STK:Stalker +TP:Trooper +UM:Urbanmech +WHM:Warhammer +WSP:Wasp +WTH:Whitworth \ No newline at end of file diff --git a/main.txt b/main.txt index 91f05b9..325af00 100644 --- a/main.txt +++ b/main.txt @@ -1,45 +1,39 @@ #SingleInstance Ignore #NoEnv - +DetectHiddenWindows, on SetTitleMatchMode 2 SetWorkingDir %A_ScriptDir% -;------------------------------------- -;TODO: -; RELEASE TO PUBLIC -;------------------------------------- +;OnExit(MainGuiClose, -1) +OnExit, MainGuiClose + + +;Initialize Configuration +IniRead, $LoadoutPath, .\Config.ini, Options, Path , % A_AppData "\..\Local\MW5Mercs\Saved\SavedLoadouts\InstantAction.json" +IniRead, $WhoAmI, .\Config.ini, Options, WhoAmI, * +IniRead, $Locale, .\Config.ini, Options, Locale, EN $ExtractDir := A_Temp "\Tmp$00192\" FileCreateDir, % $ExtractDir if (!A_IsCompiled) { - FileCopy, RobotoMono-Regular.TTF, % $ExtractDir "RobotoMono-Regular.TTF" - FileCopy, TT_Equipment.cfg, % $ExtractDir "TT_Equipment.cfg" - FileCopy, TT_Chassis.cfg, % $ExtractDir "TT_Chassis.cfg" FileCopy, Icon.ico, % $ExtractDir "Icon.ico" FileCopy, about.jpg, % $ExtractDir "about.jpg" } else { - FileInstall, RobotoMono-Regular.TTF, % $ExtractDir "RobotoMono-Regular.TTF", 1 - FileInstall, TT_Equipment.cfg, % $ExtractDir "TT_Equipment.cfg", 1 - FileInstall, TT_Chassis.cfg, % $ExtractDir "TT_Chassis.cfg", 1 - FileInstall, Icon.ico, % $ExtractDir "icon.ico", 1 - FileInstall, about.jpg, % $ExtractDir "about.jpg", 1 + FileInstall, Icon.ico, % $ExtractDir "icon.ico" + FileInstall, about.jpg, % $ExtractDir "about.jpg" } Menu, Tray, Icon, % $ExtractDir "icon.ico" -DllCall( "GDI32.DLL\AddFontResourceEx", Str,$ExtractDir "RobotoMono-Regular.TTF",UInt,(FR_PRIVATE:=0x10), Int,0) - -;Initialize Loadout File Path -IniRead, $LoadoutPath, .\Config.ini, Options, Path , % A_AppData "\..\Local\MW5Mercs\Saved\SavedLoadouts\InstantAction.json" -IniRead, $WhoAmI, .\Config.ini, Options, WhoAmI, * +DllCall( "GDI32.DLL\AddFontResourceEx", Str,"Localization\" $Locale "\Font.TTF",UInt,(FR_PRIVATE:=0x10), Int,0) Intro: If ($Init || (strlen($WhoAmI)<2)) { Gui, Main:Hide ;If we are changing callsign later - Gui, Intro:New, +HwndWinID -AlwaysOnTop -Resize +Caption +SysMenu +Border + Gui, Intro:New, -AlwaysOnTop -Resize +Caption +SysMenu +Border Gui, -0x30000 Gui, Intro:Margin, 10,10 Gui, Intro:Color, C4CBCC, 000000 @@ -62,14 +56,15 @@ If ($Init || (strlen($WhoAmI)<2)) About: if(!$Init) { - Gui, About:New, +HwndWinID +AlwaysOnTop -Resize +Caption +SysMenu +Border + Gui, About:New, +AlwaysOnTop -Resize +Caption +SysMenu +Border Gui, -0x30000 Gui, About:Font, bold Gui, About:Margin, 20,20 Gui, About:Color, C4CBCC, 000000 - Gui, About:Add, Text,Left x+95 y20 -border, MW5Mercs Mechlab Maid (32-bit) v1.0`n + Gui, About:Add, Text,Left x+95 y20 -border, MW5Mercs Mechlab Maid (32-bit) v1.0d`n Gui, About:Font, normal - Gui, About:Add, Text,Left xp y+1 -border, Written by: NasumiRayne / Chozo4 `n`nGitHub Page: + Gui, About:Add, Text,Left xp y+1 -border, Written by: NasumiRayne / Chozo4 + Gui, About:Add, Text,Left xp y+1 -border, Translated by: NasumiRayne / Chozo4 `n`nGitHub Page: Gui, About:Add, Link,xp y+1,https://github.com/Chozo4 Gui, About:Add, Text,Left xp y+1 -border, `nContact me on discord: Gui, About:Add, Link,xp y+1,NasumiRayne#1510 @@ -77,11 +72,11 @@ if(!$Init) Gui, About:Add, Link,xp y+1,https://twitch.tv/Chozo4 Gui, About:Add, Text,Center W80 H80 X20 Y35 +border, SENPAI`nNOTICED`nME! Gui, About:Add, Picture , wp yp xp hp, % $ExtractDir "about.jpg" - Gui, About:Add, Button, xp y+30 H30 wp gAboutClose -hidden +default, OK + Gui, About:Add, Button, xp y+40 H30 wp gAboutClose -hidden +default, OK } Main: -Gui, Main:New, +HwndWinID -AlwaysOnTop -Resize +Caption -ToolWindow +Border +OwnDialogs +Gui, Main:New, +LastFound +HwndWinID -AlwaysOnTop -Resize +Caption -ToolWindow +Border +OwnDialogs Gui, Main:Margin, 0,0 Gui, Main:Color, C4CBCC, F0F0F0 Gui, Main:Font,, Verdana @@ -90,7 +85,7 @@ Gui, Main:Add, Button,x+10 yp gExportFunc,Export Variant Gui, Main:Add, Button,x+10 yp gDeleteFunc,Delete Variant Gui, Main:Add, Edit, x+10 yp r1 vLOPath w380 -VScroll -HScroll +Border +ReadOnly, % $LoadoutPath Gui, Main:Add, Button, x+10 yp gLOPath, ... -Gui, Main:Add, listview,c101010 Checked Count100 -Multi AltSubmit grid w350 h500 x0 y40 vLoadoutList gUpdateReadout, #|Base|Variant Name +Gui, Main:Add, listview,c101010 Checked Count1000 -Multi AltSubmit grid w350 h500 x0 y40 vLoadoutList gUpdateReadout, #|Base|Variant Name gui, Main:font, c0x000000 s9, Roboto Mono Regular Gui, Main:Add, Edit, w400 hp+0 x+0 yp -Wrap +ReadOnly vReadout Gui, Main:Add, StatusBar,center, @@ -225,7 +220,7 @@ if ($init) MainGuiClose: if !$ModCount { - DllCall( "GDI32.DLL\RemoveFontResourceEx",Str,$ExtractDir "RobotoMono-Regular.TTF",UInt,(FR_PRIVATE:=0x10),Int,0) + DllCall( "GDI32.DLL\RemoveFontResourceEx",Str,".\Localization\" $Locale "\Font.TTF",UInt,(FR_PRIVATE:=0x10),Int,0) FileRemoveDir, % $ExtractDir, 1 ExitApp } @@ -237,7 +232,7 @@ IfMsgBox Yes else IfMsgBox Cancel return -DllCall( "GDI32.DLL\RemoveFontResourceEx",Str,$ExtractDir "RobotoMono-Regular.TTF",UInt,(FR_PRIVATE:=0x10),Int,0) +DllCall( "GDI32.DLL\RemoveFontResourceEx",Str,".\Localization\" $Locale "\Font.TTF",UInt,(FR_PRIVATE:=0x10),Int,0) FileRemoveDir, % $ExtractDir, 1 ExitApp return @@ -254,21 +249,22 @@ return ConsultTranslationTable($Find) ;For comparing component against translation table of known item IDs { - Global $ExtractDir + Global $Locale Static $Trans := [] if !NumGet(&$Trans + 4*A_PtrSize) - Loop, read, % $ExtractDir "TT_Equipment.cfg" + Loop, read, % ".\Localization\" $Locale "\TranslationTable.cfg" if inStr(A_LoopReadLine,":") $Out := StrSplit(A_LoopReadLine,":"), $Trans[$Out[1]] := $Out[2] - if substr($Find,1,3) = "std" ;screw adding every engine to the translation table + if ((substr($Find,1,3) = "std") || (substr($Find,1,3) = "LFE")) ;screw adding every engine to the translation table return substr($Find,4) - return $Trans[$Find]?$Trans[$Find]:$Find + ;return $Trans[$Find]?$Trans[$Find]:$Find + return $Trans.hasKey($Find)?$Trans[$Find]:"*" $Find } -GetComponentBySlot($Data,$Slot,$Fallback="") ;extend to check for multiples, including location, and return array +GetComponentBySlot($Data,$Slot,$Fallback="") ;TODO: extend to check for multiples, including location, and return array { RegExMatch($Data,"is):" $Slot """.*?Asset:(.*?)""",$out) return $out1?ConsultTranslationTable($out1):$Fallback @@ -282,6 +278,21 @@ StrPad($S,$ToLen,$PadWith=" ",$PadRight=0) return $PadRight?substr($S,1,$ToLen):substr($S,1-$ToLen) } +TabulateAmmo($Ammo) +{ + if (inStr($Ammo,"huge") || inStr($Ammo,"3.0")) + return 3.00 + if (inStr($Ammo,"double") || inStr($Ammo,"2.0")) + return 2.00 + if (inStr($Ammo,"half") || inStr($Ammo,"0.5")) + return 0.50 + if (inStr($Ammo,"quart") || inStr($Ammo,"0.25")) + return 0.25 + + return 1.00 +} + + PopulateDetails($Selected) { critical @@ -318,23 +329,30 @@ PopulateDetails($Selected) ;$text .= " H: " $Armor.Head " CT: " $Armor.CenterTorso " LA: " $Armor.LeftArm " RA: " $Armor.RightArm "`n" ;$text .= "LT: " $Armor.LeftTorso " RT: " $Armor.RightTorso " LL: " $Armor.LeftLeg " RL: " $Armor.RightLeg "`n" - $text .= "`n`n Ordnance`n" strpad("",34,chr(9472),1) - $LastPos := 0, $Tmp := {0:0}, $Armaments := {} ;Get Weapons List + $text .= "`n`n Ordnance`n" strpad("",29,chr(9472),1) " " strpad("",29,chr(9472),1) + $LastPos := 0, $Tmp := {0:0}, $Armaments := {}, $Index := 0 ;Get Weapons List While ($LastPos := RegExMatch($Selected[0], "isO)WeaponDataAsset:(.*?)""", $Tmp, $LastPos += StrLen($Tmp[0]))) - $Armaments[$Tmp[1]] := $Armaments[$Tmp[1]]?$Armaments[$Tmp[1]]+1:1 + { + ;$Tmp[1]:= InStr($Tmp[1],"_lvl")?substr($Tmp[1],1,InStr($Tmp[1],"_lvl")):$Tmp[1] + $TmpVal := substr($Tmp[1],1,InStr($Tmp[1],"_Lvl")?InStr($Tmp[1],"_Lvl")-1:StrLen($Tmp[1])) ;Strip Tiers + $Armaments[$TmpVal] := $Armaments[$TmpVal]?$Armaments[$TmpVal]+1:1 + } For $k, $v in $Armaments - $text .= !InStr($k, "YAML_")?("`n" $v "x " ConsultTranslationTable(RegExReplace($k,"i)_lvl[0-9]",""))):"" - - $text .= "`n`n Munitions`n" strpad("",34,chr(9472),1) - $LastPos := 0, $Tmp := {0:0}, $Ammunition := {} + $text .= ($t:=ConsultTranslationTable($k))?((Mod($Index++,2)?" ":"`n") strpad($v "x " $t,25," ",1)):"" + + ;52 width (26 each) + $text .= "`n`n Munitions`n" strpad("",29,chr(9472),1) " " strpad("",29,chr(9472),1) + $LastPos := 0, $Tmp := {0:0}, $Ammunition := {}, $Index := 0 While ($LastPos := RegExMatch($Selected[0], "isO)MWAmmoDataAsset:(.*?)""", $Tmp, $LastPos += StrLen($Tmp[0]))) $Ammunition[$Tmp[1]] := $Ammunition[$Tmp[1]]?$Ammunition[$Tmp[1]]+1:1 For $k, $v in $Ammunition - $text .= !InStr($k, "YAML_")?("`n" $v "x " ConsultTranslationTable($k)):"" - - + $text .= ($t:=ConsultTranslationTable($k))?"`n" substr($v,1,instr($v,".")+2) "X " $t:"" + + $text .= "`n`n Traits`n" strpad("",29,chr(9472),1) " " strpad("",29,chr(9472),1) + $LastPos := 0, $Tmp := {0:0}, $Ammunition := {}, $Index := 0 + While ($LastPos := RegExMatch($Selected[3], "isO)MWMechTraitDataAsset:(.*?)""", $Tmp, $LastPos += StrLen($Tmp[0]))) + $text .= ($t:=ConsultTranslationTable($Tmp[1]))?((Mod($Index++,2)?" ":"`n") strpad($t,25," ",1)):"" - GuiControl,,Readout, % $text } @@ -467,7 +485,7 @@ else If (A_GuiEvent = "I" && ($SelRow := A_EventInfo?A_EventInfo:LV_GetNext(0)) return LoadoutList: - + StartTime := A_TickCount $isValid := inStr(($F := FileOpen($LoadoutPath, "r")).Read(16), "Loadouts"),$F.Close() if (!$isValid) { @@ -478,19 +496,29 @@ LoadoutList: if (!FileExist($LoadoutPath ".bak")) ;keep firstrun backup FileCopy, % $LoadoutPath, % $LoadoutPath ".bak" + tooltip, Compiling List... $ModCount := 0 FileRead, Loadouts, % $LoadoutPath $LastPos := 1, $LO := {0:0}, $Row := {} - While ($LastPos := RegExMatch(Loadouts, "isO)(""mechDataAssetId"".*?MWMechDataAsset:)(.*?)"".*?customName"": ""(.*?)"".*?("".*?InstalledTraits.*?])", $LO, $LastPos += StrLen($LO[0]))) - $Row[A_Index] := {0:"{`r`n " $LO[0] "`r`n}", 1:RegExReplace(StrReplace($LO[2], "_MDA", ""), "(_.*)", ""), 2:$LO[3]} - + While ($LastPos := RegExMatch(Loadouts, "isOS)""mechDataAssetId"".*?MWMechDataAsset:(.*?)"".*?customName"": ""(.*?)"".*?""installedTraits""(.*?)]", $LO, $LastPos += StrLen($LO[0]))) + { + ;msgbox % $LO[0] [a-zA-Z0-9]{1,3} + ;$Row[A_Index] := {0:"{`r`n " $LO[0] "`r`n}", 1:RegExReplace(StrReplace($LO[1], "_MDA", ""), "(_.*)", ""), 2:$LO[2],3:$LO[3]} + RegExMatch($LO[1], "sO)([A-Z0-9]+[-].+?)_", $F) + + $Row[A_Index] := {0:"{`r`n " $LO[0] "`r`n}", 1:$F[1]?$F[1]:StrReplace($LO[1], "_MDA", ""), 2:$LO[2],3:$LO[3]} + } SB_SetText(NumGet(&$Row + 4*A_PtrSize) . " variants loaded and ready for manipulation.", 1) - GuiControl, -Redraw, LoadoutList + tooltip Populating... + GuiControl, disable, LoadoutList + sleep 1 + SendMessage, 0xB, 0, 0,, ahk_id %WinID% + GuiControl, -Redraw, LoadoutList LV_Delete() for $k, $v in $Row lv_add(,$k,$v[1],$v[2]) @@ -500,11 +528,17 @@ LoadoutList: ;LV_ModifyCol(1,"60") LV_ModifyCol(2,"Sort") LV_ModifyCol(3,"AutoHDR") + SendMessage, 0xB, 1, 0,, ahk_id %WinID% + GuiControl, enable, LoadoutList GuiControl, +Redraw, LoadoutList - - Tooltip + + tooltip % "Time to build: " A_TickCount - StartTime "ms" + SetTimer, ClearTooltip, 2000 return +ClearTooltip: + tooltip +return