TSO SWIFT SIMULATOR
by Mannerheim


Para los que no lo conocéis el simulador, este simulador es muy completo y te permite crear una guía gráfica para tus aventuras.
Despliega el Spoiler para echarle un vistazo a cómo se ven las guías que puedes generar.
Spoiler

El día 13/11/2022 TSO Swift Simulator por fin recibió una actualización y ya cuenta con el General Determinado y la General Milagrosa.

El simulador oficial no está traducido a español, por lo que en este post os mostraré cómo ponerlo.



Instalación
v2.1.7

Descarga directa

La instalación es simple: Descomprime el archivo y abre la carpeta, encuentra un archivo con nombre "TSOS.exe", ese archivo es el que usarás para abrir el Simulador.
Para más comodidad, siempre recomiendo crear un acceso directo del .exe para el escritorio.


Registro de cambios (Changelog)

Post TSOTesting

Autor: Mannerheim TSOTesting|UK-Newfoundland


TRADUCCIÓN AL ESPAÑOL
por Mazimus332

Para traducir el simulador a Español sigue los pasos.

Crea un documento de texto con nombre "es-es.txt" y pega el siguiente código ahí.
Código:
{
  "#author": "Mazimus332",
  "global.ElapsedTime": "***Tiempo transcurrido",
  "global.DayShort": "***d",
  "global.HourShort": "***h",
  "global.MinuteShort": "***m",
  "global.SecondShort": "***s",
  "global.Camp": "***Campamento",
  "global.Camps": "***Campamentos",
  "global.CampRegular": "***Campamento normal",
  "global.CampLeader": "***Campamento de líderes",
  "global.ShowAll": "***Mostrar todo",
  "global.Sector": "***Sector",
  "global.Sectors": "***Sectores",
  "global.ButtonOK": "***OK",
  "global.ColorTransparency": "***Transparencia de color",
  "global.ButtonCancel": "***Cancelar",
  "global.ButtonClear": "***Borrar",
  "global.ButtonBack": "***Atrás",
  "global.ButtonOpen": "***Abrir",
  "global.ButtonClose": "***Cerrar",
  "global.ButtonEdit": "***Editar",
  "global.ButtonCopy": "***Copiar",
  "global.ButtonDelete": "***Eliminar",
  "global.ButtonVerify": "***Verificar",
  "global.FileExport": "***Exportar",
  "global.ButtonFullscreen": "***Vista de pantalla completa",
  "global.ButtonRemove": "***Quitar",
  "global.ButtonAddCustom": "***Agregar personalizado",
  "global.ButtonAdd": "***Agregar nuevo",
  "global.ButtonConfirm": "***Confirmar",
  "global.ButtonSelectAll": "***Seleccionar todo",
  "global.ButtonUnselectAll": "***Deseleccionar todo",
  "global.ButtonResetNames": "***Restablecer nombres",
  "global.ButtonMoveUp": "***Mover hacia arriba",
  "global.ButtonMoveDown": "***Mover hacia abajo",
  "global.ButtonHide": "***Ocultar",
  "global.ButtonFavorite": "***Favorito",
  "global.ButtonSwitchTroops": "***Cambiar Tropas",
  "global.ButtonClearTroops": "***Borrar Tropas",
  "global.ButtonTools": "***Herramientas",
  "global.ButtonSelectCamp": "***Seleccionar Campamento",
  "global.Map": "***Mapa",
  "global.AllMaps": "***Todos los mapas",
  "global.Text": "***Texto",
  "global.Name": "***Nombre",
  "global.Notes": "***Notas",
  "global.Type": "***Tipo",
  "global.Icon": "***Icono",
  "global.None": "***Ninguno",
  "global.Save": "***Guardar",
  "global.Select": "***Seleccionar",
  "global.General": "***General",
  "global.Generals": "***Generales",
  "global.Default": "***Predeterminado",
  "global.Undefined": "***Sin definir",
  "global.Options": "***Opciones",
  "global.AdvOptions": "***Opciones Avanzadas",
  "global.Settings": "***Configuración",
  "global.Hotkey": "***Tecla de acceso directo",
  "global.Loading": "***                        Cargando...\r\nTraducción al español por Mazimus332",
  "global.Search": "***Buscar",
  "global.SelectUnitTypes": "***Seleccionar tipos de unidades",
  "global.ResetDefaults": "***Restablecer valores predeterminados",
  "global.RefreshView": "***Actualizar vista",
  "global.ZoomViewTooltip": "***(CTRL + rueda del ratón = zoom rápido)",
  "global.NumGenerals": "***Número de generales",
  "attackinfo.Title": "***Ataque",
  "attackinfo.Player": "***Jugador",
  "attackinfo.Everyone": "***Todos",
  "attackinfo.Enemy": "***Enemigos",
  "attackinfo.TypeUndefined": "***Indefinido",
  "attackinfo.TypeAttack": "***Ataque",
  "attackinfo.TypeBlock": "***Bloqueo",
  "attackinfo.TypeIgnore": "***Ignorar",
  "attackinfo.TypeChainAttack": "***Ataque en cadena",
  "attackinfo.TypeOptional": "***Opcional (Extra XP)",
  "attackinfo.Round": "***Ronda",
  "attackinfo.UnitDies": "***Muertes",
  "attackinfo.Phase": "***Fase",
  "attackinfo.Block": "***Bloqueo",
  "attackinfo.CombatRounds": "***Rondas de combate",
  "attackinfo.WinChance": "***% de victoria",
  "attackinfo.BattleSnapshot": "***Snapshot de una sola batalla durante la simulación",
  "attackinfo.AvgPlayerLosses": "***Pérdidas promedio de jugadores",
  "attackinfo.AvgEnemyLosses": "***Promedio de pérdidas enemigas",
  "attackinfo.PlayerTroops": "***Tropas del jugador",
  "attackinfo.EnemyTroops": "***Tropas enemigas",
  "attackinfo.EnemyDefeated": "***Enemigo derrotado",
  "attackinfo.NoLosses": "***Sin pérdidas",
  "attackinfo.UnableToWin": "***Incapaz de ganar",
  "attackinfo.BarracksTime": "***Tiempo en cuartel",
  "attackinfo.UnitLossesValue": "***Valor de pérdida de unidad",
  "attackinfo.UnitRecovery": "***Unidades recuperadas por habilidades",
  "camptip.Assassin": "***El campamento puede ser derrotado con {ASSASSIN}",
  "camptip.BallistaAssassin": "***El campamento puede ser derrotado con {BALLISTA} y {ASSASSIN}",
  "camptip.ArrowsChance": "***El campamento podría ganar con {ARROWS}",
  "camptip.Arrows": "***El campamento puede ser derrotado con {ARROWS}",
  "camptip.NoLossesChance": "***El campamento no tiene unidades de {FIRSTSTRIKE}. Es posible ganar el combate sin pérdidas.",
  "unitinfo.TypeBoss": "***Jefe",
  "unitinfo.TypeWeakest": "***Objetivo más débil",
  "unitinfo.TypeOffensive": "***Ofensiva",
  "unitinfo.TypeSwift": "***Veloz",
  "unitinfo.TypeHeavy": "***Pesado",
  "unitinfo.TypeDefensive": "***Defensivo",
  "apperror.Title": "***Error de la aplicación",
  "apperror.QuitApp": "***Cerrar aplicación",
  "apperror.CopyClipboard": "***Copiar mensaje de error",
  "error.Title": "***Error",
  "error.SelectPlayer": "***Seleccionar jugador",
  "error.SelectGeneral": "***¡Selecciona un general!",
  "error.SelectOneGeneral": "***¡Selecciona al menos un general!",
  "error.SelectTroops": "***¡Selecciona tropas!",
  "error.SelectEnemyTroops": "***¡Selecciona tropas enemigas!",
  "error.SelectCampOrEnemyTroops": "***¡Selecciona un campamento o las tropas enemigas!",
  "error.SelectAtleast2Camps": "***¡Selecciona por lo menos 2 campamentos!",
  "error.TooManyTroops": "***¡Demasiadas tropas!",
  "error.EnterName": "***Ingrese un nombre",
  "error.EnterValue": "***Ingrese un valor",
  "error.SelectType": "***¡Selecciona un tipo!",
  "error.SelectRow": "***¡Selecciona una fila!",
  "error.MissingGeneral": "***Falta general",
  "error.MissingData": "***Carpeta de archivo de datos (tiedostot) no encontrada",
  "error.UnableToSave": "***No se pueden guardar los archivos en la ubicación del programa",
  "error.GeneralWithNoTroops": "***¡Se seleccionó {GEN} pero no se establecieron parámetros de tropas!",
  "error.GeneralWithZeroLoss": "***Se seleccionó {GEN} pero todas las pérdidas máximas están establecidas en cero",
  "error.CantDeleteLastAttackGroup": "***No se puede eliminar el último grupo de ataque porque se necesita al menos uno",
  "warning.Title": "***Advertencia",
  "warning.GeneralAlreadyAdded": "***¡Este general ya ha sido agregado!",
  "warning.SelectOneMap": "***¡Al menos un mapa debe ser visible!",
  "warning.ResetGeneralNames": "***Esto restablecerá los nombres de los generales a sus nombres originales. ¿Continuar?",
  "warning.NoGenerals": "***No se han definido generales. ¿Está seguro de que desea cerrar la ventana?",
  "warning.WeatherChange": "***Tenga en cuenta que cambiar el clima en una guía existente puede invalidar todos los ataques registrados.",
  "warning.WeatherMultiple": "***Ha seleccionado múltiples condiciones climáticas. ¿Está seguro de que desea continuar?",
  "warning.LastMapSetup": "***No se puede eliminar. ¡Siempre debe haber al menos una guía!",
  "warning.SelectOneTroopType": "***¡Se debe seleccionar al menos un tipo de tropa!",
  "warning.DeleteSelectedRow": "***¿Está seguro de que desea eliminar la fila seleccionada?",
  "warning.RestartMayBeRequired": "***¡Nota! Los cambios pueden requerir actualizar o reiniciar la aplicación",
  "warning.UnitValuesDisabled": "***¡Atención! El uso de valores de unidad en la simulación no está habilitado en la configuración",
  "warning.UseDefinedSettings": "***¿Está seguro de que desea continuar con la configuración definida?",
  "warning.RestartRequired": "***Los cambios requieren reiniciar la aplicación. ¿Reiniciar ahora?",
  "warning.MCCDebuffMix": "***No se recomienda usar el Simulador de mapas en aventuras que contengan buffs o debuffs, ya que pueden estar activos o inactivos en diferentes etapas y generar pérdidas adicionales. ¿Está seguro de que desea continuar?\r\n\nEn caso de continuar, tenga en cuenta la presencia de los efectos de zona a lo largo de la aventura y simule en función del orden de la guía que quiera crear.",
  "warning.GeneralUnitCombinations": "***{GEN} ha sido seleccionado con más de 4 tropas, lo que puede resultar en una gran cantidad de combinaciones y aumentar drásticamente el tiempo de simulación. ¿Está seguro de que desea continuar?",
  "warning.ClearGenAutoSaveResults": "***Esto eliminará todos los resultados guardados automáticamente de {GEN} de todos campamentos. ¿Está seguro de que desea continuar?",
  "warning.DeleteAttackGroup": "***¿Está seguro de que desea eliminar el grupo de ataque seleccionado?",
  "warning.DeleteGeneralFromAttackGroup": "***¿Está seguro de que desea eliminar {GEN} del grupo de ataque?",
  "warning.GeneralEditWinChance": "***La probabilidad de ganar con estas tropas es de un {CHANCE}. ¿Seguro que quieres continuar?",
  "warning.NoRisiSelected": "***No ha seleccioado ninguna variante de {RISI}. ¿Está seguro de que desea continuar?",
  "message.AddGenerals": "***Agrega tus generales con sus habilidades para usarlos en las simulaciones",
  "message.SelectCamp": "***Selecciona un campamento",
  "message.NoWeather": "***Sin clima",
  "message.UseUnitTypeInWaves": "***Probar unidad en olas de ataque",
  "message.NoGeneralsToAdd": "***No hay generales para agregar",
  "message.ImageExportedOpenNow": "***Imagen exportada. ¿Quieres abrirla ahora?",
  "attackgroup.Title": "***Grupo de ataque",
  "attackgroup.MakeDefault": "***Hacer de este el grupo de ataque predeterminado",
  "attackgroup.Default": "***Grupo de ataque predeterminado",
  "attackgroup.Manage": "***Administrar grupos de ataque",
  "mapsetup.Title": "***Guía",
  "export.ColorBorders": "***Color del borde",
  "export.ColorBackground1": "***Color de fondo (inicio)",
  "export.ColorBackground2": "***Color de fondo (final)",
  "export.TextNormal": "***Color del texto, normal",
  "export.TextGreen": "***Color del texto, verde",
  "export.TextRed": "***Color del texto, rojo",
  "export.RandomTheme": "***Tema aleatorio",
  "export.ImageList": "***Lista de imágenes",
  "export.CampTypes": "***Tipos de campamento",
  "export.HideTotalLosses": "***Ocultar pérdidas totales",
  "export.HideTotalAttacks": "***Ocultar número de ataques",
  "export.AttackersInImages": "***Mostrar atacantes en el mapa",
  "minimap.HotkeySetCompleted": "***Shift + Clic: Marcar campamento como completado",
  "minimap.HotkeySetIgnored": "***CTRL + Clic en campamento: Marcar campamento como ignorado",
  "minimap.HotkeySimulate": "***Clic derecho en campamento: Simular",
  "mapsetuptools.Title": "***Herramientas de guía",
  "mapsetuptools.CampNames": "***Nombres de campamentos",
  "mapsetuptools.Autoname": "***Autonombra todos los campamentos usando el número de sector y alfabeto aleatorio",
  "mapsetuptools.AutonameNumber": "***Autonombra todos los campamentos usando el número de sector y número aleatorio",
  "mapsetuptools.CopyGuide": "***Copiar de otra guía",
  "mapsetuptools.DoNothing": "***No hacer nada",
  "mapsetuptools.ClearNames": "***Borrar todos los nombres de los campamentos",
  "mapsetuptools.DefaultNames": "***Usar nombres de campamento predeterminados",
  "mapsetuptools.CampTypes": "***Tipos de campamento",
  "mapsetuptools.SetTypeSelected": "***Establecer todo al tipo seleccionado",
  "mapsetuptools.Attacks": "***Ataques",
  "mapsetuptools.ClearWavesAndMain": "***Borrar todas las olas de ataques y ataques principales de todos los campamentos",
  "mapsetuptools.ClearAutoSavedAttacks": "***Borrar todos los mejores ataques guardados automáticamente desde esta guía",
  "mapsetups.Title": "***Guías",
  "unitvalues.Title": "***Valores de unidades",
  "localization.Title": "***Localización y personalización del texto de la aplicación",
  "localization.Key": "***Tecla",
  "localization.TypeApp": "***Aplicación",
  "localization.TypeGame": "***Juego",
  "localization.Original": "***Original (inglés y/o idioma de los elementos activos del juego)",
  "localization.CopyOriginal": "***Copiar original",
  "localization.User": "***Definido por el usuario",
  "localization.UserEmpty": "***Mostrar solo filas vacías",
  "localization.SelectFile": "***Seleccione un archivo de localización/personalización",
  "localization.CancelChanges": "***¿Está seguro de que desea cerrar la ventana sin guardar?",
  "localization.OverwriteOriginal": "***Está a punto de guardar los cambios en los archivos de traducción de la aplicación, pero todos los cambios se perderán si se actualiza la aplicación. ¿Está seguro de que desea continuar?",
  "taboverview.Title": "***Descripción general de la guía",
  "taboverview.View": "***Etiquetas de mapa",
  "tabsimcamp.Title": "***Simulador de campamento",
  "tabsimcamp.AttackWaves": "***Olas de ataque",
  "tabsimcamp.MainAttack": "***Atacante principal",
  "tabsimcamp.ViewAttackOthrGuides": "***Ver ataque en otras guías",
  "tabsimmap.Title": "***Simulador de mapas",
  "tabsimmap.SetAttackToEmpty": "***Establecer los mejores resultados como ataques principales cuando no haya un ataque existente",
  "tabsimmap.SetAttackReplace": "***Reemplazar los ataques existentes por el mejor resultado de la simulación",
  "tabsimmap.SetAttackNone": "***No establecer atacantes principales",
  "tabsimmap.SkipBlockedIgnored": "***Omitir todos los campamentos marcados como bloqueados o ignorados",
  "tabsimmap.SkipMainAttack": "***Omitir todos los campamentos que ya tienen un ataque creado",
  "tabsimmap.SkipSimulatedGenerals": "***No simular un general en un campamento que ya tiene resultados del general en cuestión.",
  "tabsimmap.NoUnitMultiplier": "***No usar el multiplicador de valor de unidad para la clasificación de resultados",
  "tabsimmap.ToolsResetAttacksWithBest": "***Restablecer ataques principales usando los mejores ataques guardados y la configuración actual (sin volver a simular)",
  "tabsimmap.ToolsClearAll": "***Borrar todos los ataques guardados automáticamente",
  "tabsimmap.CampResim": "***Resimular este campamento",
  "tabsimmap.CampClear": "***Borrar los ataques guardados de este campamento",
  "tabsimmap.GeneralStats": "***Estadísticas de los generales",
  "tabsimmap.GeneralStats1st": "***1er lugar",
  "tabsimmap.GeneralStats2nd": "***2do lugar",
  "tabsimmap.GeneralStats3rd": "***3er lugar",
  "tabsimmap.GeneralStatsOther": "***Otro",
  "tabsimmap.GeneralStatsWins": "***Victorias",
  "tabsimmap.GeneralStatsWin%": "***% de Victoria",
  "tabsimmap.GeneralStatsAvgLoss": "***Valor promedio de pérdidas",
  "tabsimmap.GeneralStatsScore": "***Puntuación",
  "tabsimchain.Title": "***Simulador de ataque en cadena",
  "tabsimchain.SelectInfo": "***Clic izquierdo para seleccionar/deseleccionar campamentos, clic derecho para deseleccionar todo",
  "tabsimchain.DefeatedInCamp": "***Derrotado en el campamento",
  "tabsimchain.SetAttacksAsMain": "***Establecer ataques como ataques principales para los campamentos seleccionados",
  "tabsimchain.ResetCampValues": "***Restablecer valores a los valores predeterminados del campamento",
  "tabsimscustom.Title": "***Simulación personalizada",
  "tabsimscustom.CombatLog": "***Registro de combate",
  "tabsimscustom.NoDetaillog": "***No registrar peleas individuales",
  "tabcomparison.Title": "***Comparar guías",
  "tabcomparison.ShowTotalBestFail": "***Mostrar números totales para mejores ataques y ataques fallados.",
  "tabcomparison.ShowGenerals": "***Mostrar números totales para ataques de generales.",
  "tabcomparison.ShowTotalLosses": "***Mostrar pérdidas totales de unidades",
  "tabcomparison.ShowTotalLossesValue": "***Mostrar el valor total de las pérdidas de unidades",
  "tabcomparison.SelectMapSetups": "***Seleccionar guías para comparar",
  "tabmarkers.Title": "***Marcadores de guía",
  "tabmarkers.Info": "***Haz clic derecho en el mapa para agregar marcadores. Arrastra las teclas de flecha o el mouse para mover el marcador seleccionado. Las flechas de marcador se pueden agregar desde/hacia campamentos y marcadores.",
  "tabmarkers.MapMarkerAdd": "***Añadir un marcador",
  "tabmarkers.ArrowsTitle": "***Flechas",
  "tabmarkers.LabelPosition": "***Posición de la etiqueta",
  "tabmarkers.Shape": "***Forma",
  "tabmarkers.InvisibleMarker": "***Marcador invisible",
  "general.ColorTag": "***Etiqueta de color",
  "general.ColorTagDesc": "***El color se puede usar para distinguir rápidamente generales con la misma imagen de otros",
  "general.SimulationHotkey": "***Tecla de acceso directo para simular",
  "general.SimulationHotkeyTooltip": "***Tecla de acceso directo para simular este único general",
  "general.UnitValue": "***Multiplicador de valor de unidades",
  "general.UnitValueDesc": "***Esto se puede usar para priorizar generales sobre otros en los resultados.\r\nPor ejemplo, Mary todavía tiene +100% XP, por lo que podría tener un multiplicador de 0.75 para clasificarlo por encima de otros, pese a tener mayores pérdidas.",
  "general.Abbreviation": "***Abreviatura",
  "general.ResetSkills": "***Restablecer Habilidades",
  "general.Simulate": "***Haz clic para simular solo con este general",
  "maplist.Title": "***Mapas",
  "maplist.HideFavorite": "***Ocultar/Favorito...",
  "maplist.HideAll": "***Ocultar todo",
  "maplist.UnhideAll": "***Mostrar todo",
  "maplist.FavoriteAll": "***Todos favoritos",
  "maplist.UnfavoriteAll": "***No favoritos todos",
  "tabComboSim.Title": "***Simulador Banzai",
  "tabComboSim.SetAttack": "***Establecer ataques exitosos como ataques principales para la guía",
  "mapinfo.Title": "***Información de la guía",
  "mapinfo.SuggestTroops": "***Sugerir tropas mínimas",
  "mapsummary.Title": "***Resumen de la guía",
  "mapsummary.MapNotes": "***Notas de la guía",
  "mapsummary.NoCampNames": "***No se han asignado nombres a los campamentos",
  "mapsummary.AutoFix": "***Arreglar automáticamente",
  "mapsummary.EditMapInfo": "***Editar información",
  "mapsummary.VerifyMainAttacks": "***Verificar ataques con una nueva re-simulación de {NUMBER} eventos",
  "mapsummary.ExportImage": "***Exportar imagen",
  "mapsummary.ExportSetupName": "***Nombre de guía",
  "mapsummary.ExportBarracksTime": "***Tiempo en cuarteles",
  "mapsummary.ExportTheme": "***Tema",
  "mapsummary.ExportSingleImage": "***Usar una sola imagen de mapa",
  "mapsummary.AutoScroll": "***Desplazar automáticamente al campamento seleccionado",
  "mapsummary.UseFirstAid": "***Calcular víctimas con \"Primeros auxilios\" (estimación aproximada)",
  "mapsummary.RequiredGenerals": "***Generales requeridos",
  "mapsummary.RequiredTroops": "***Tropas requeridas",
  "mapsummary.SuggestedMinTroops": "***Tropas mínimas sugeridas",
  "mapsummary.MainAttackers": "***Atacantes principales",
  "mapsummary.NormalUnits": "***Unidades normales",
  "mapsummary.AttackBuffs": "***Potenciadores de ataque",
  "mapsummary.EliteUnits": "***Unidades de élite",
  "mapsummary.BothUnits": "***Ambos",
  "mapsummary.Attacks": "***Ataques",
  "mapsummary.BestAttacks": "***Mejor",
  "mapsummary.BestAttacksShared": "***Compartido",
  "mapsummary.FailAttacks": "***Error",
  "mapsummary.PlayerLosses": "***Pérdidas",
  "mapsummary.AverageLossValue": "***Valor de pérdidas promedio",
  "mapsummary.BarracksRecoveryTime": "***Tiempo de recuperación del cuartel con potenciadores",
  "mapsummary.AverageBarracksRecoveryTime": "***Tiempo promedio de recuperación en cuartel con potenciadores",
  "mapsummary.XPEstimate": "***XP estimada (olas de ataque la reducen)",
  "mapsummary.XPFromSkipped": "***XP de campamentos omitidos/bloqueados",
  "mapsummary.XP": "***XP",
  "mapsummary.Efficiency": "***Eficiencia, XP/valor de unidad",
  "sim.AddSelectAttackers": "***Añadir generales a grupos",
  "sim.AttackUnit": "***Unidad de ataque",
  "sim.AttackUnits": "***Unidades de ataque",
  "sim.ClickSetSector": "***Haga clic en un campamento para establecer a qué sector pertenecerá en la imagen de la guía.",
  "sim.AttackUnitsTooltip": "***Unidades que se usarán para encontrar una combinación de ataque que derrote al bando, o unidades que se usarán en olas de ataque",
  "sim.MaxLosses": "***Pérdidas máximas",
  "sim.SimulateAttackWaves": "***Simular ataques principales + olas de ataque automáticamentee",
  "sim.AttackWaveOnDefeat": "***1) Si el general es derrotado, intenta encontrar una ola de ataque que ayude al general a ganar",
  "sim.AttackWaveOnWin": "***2) Si el general gana, intenta encontrar una ola de ataque que reduzca las pérdidas principales a cero",
  "sim.AttackWaveOnWinNoFirstStrike": "***2.1) Intentar solo cuando el enemigo no tenga unidades de {FIRSTSTRIKE}",
  "sim.AttackWaveOnWinEliteUnits": "***2.2) Simular solo cuando se usan unidades de élite",
  "sim.AttackWaveSwiftOnFirstStrike": "***3) Solo usar {CAV/KNG} cuando el campamento enemigo tenga {FIRSTSTRIKE}",
  "sim.MaxWavesPerCamp": "***Máximo de olas por campamento",
  "sim.MaxAttackPerCamp": "***Ataques máximos por campamento",
  "sim.MainAttacks": "***Ataques principales",
  "sim.FixedAttacks": "***Lista de ataques típicos",
  "sim.SimulateOnlySelected": "***Simular solo generales seleccionados por el usuario",
  "sim.SimulateOnlyMainAttacker": "***Simular solo el atacante principal actual para el campamento",
  "sim.SimulateOnlySavedAttackers": "***Simular solo los mejores atacantes guardados para el campamento",
  "sim.SpecialFeatures": "***Características experimentales. Úsalas solo cuando sepas que las necesitas:",
  "sim.RunOptimization": "***Ejecutar una fasee de optimización de resultados cuando el valor de \"Paso\" de la simulación sea igual o mayor que 5",
  "sim.RunOptimizationTooltip": "***PARA CASOS ESPECIALES DE USO, LENTO\r\n\nCuando está habilitada, se realizará una fase de optimización adicional para los resultados de la simulación inicial.\r\nSimula ambas direcciones a partir del resultado original agregando y eliminando una unidad por tipo de unidad.\r\nHasta que llegue el siguiente valor de paso.\r\nPor ejemplo, con el valor 5, intentará el ataque de \"A150, B80\" combinando \" A145-155, B75-85\"",
  "sim.SimulateBelowCapacity": "***Combinaciones de ataque por debajo de la capacidad total del general",
  "sim.SimulateBelowCapacityTooltip": "***PARA CASOS DE USO ESPECIAL, LENTO\r\n\nEsto se puede usar, por ejemplo, para aventuras de bajo nivel o cuando el jugador tiene un número limitado de tropas disponibles",
  "sim.TryXbowCannons": "***A) Prueba automáticamente {XBOW} y {CANNON} en simulación",
  "sim.NoCavOnFirstStrikeFlank": "***B) No uses {CAV} cuando el enemigo tiene {FIRSTSTRIKE} + {FLANK}",
  "sim.UseEliteReplacement": "***C) Reemplazar {RECRUIT} con {ELITE} para obtener protección adicional para las unidades más débiles",
  "sim.UseEliteReplacementTooltip": "***{ELITE} solo se usará cuando el ataque del jugador incluya unidades más débiles y el enemigo no tenga {FIRSTSRIKE} + {FLANK}",
  "sim.TryBothSwordsman": "***A) Prueba automáticamente {S} y {MS} en simulación",
  "sim.TryAmBsg": "***B) Prueba automáticamente {AM} y {BSG} en simulación",
  "sim.KnightOnFirstStike": "***C) Solo usar {KNIGHT} cuando el enemigo tenga {FIRSTSTRIKE}",
  "sim.NoMarksmanOnFlank": "***D) No uses {M}, {AM} o {MM} cuando el enemigo tiene {FIRSTSTRIKE} + {FLANK}",
  "sim.NoBesiegerOnFlank": "***E) No uses {BSG} cuando el enemigo tiene {FIRSTSTRIKE} con {FLANK}",
  "sim.NotRecommendedForGen": "***¡No se recomienda usar esta característica con '{GEN}: {TRAIT}'!",
  "sim.GenMenuSimulate": "***Simular solo con este general",
  "sim.GenMenuSelect": "***Seleccionar solo este general",
  "sim.GenMenuCopy": "***Copiar número máximo de unidades, pérdidas y configuraciones",
  "sim.GenMenuPaste": "***Pegar unidades máximas, pérdidas y configuraciones",
  "sim.GenMenuSetMain": "***Establece a este general como el atacante principal en cada campamento donde los resultados guardados estén disponibles",
  "sim.GenMenuClearAutoSaved": "***Borrar todos los resultados guardados automáticamente para este general desde todos los campamentos",
  "sim.GenMenuRemoveFromGroup": "***Eliminar general del grupo de ataque",
  "sim.ManageAttackGroups": "***Administra tus grupos de ataque antes de comenzar a simular",
  "sim.MainMenu": "***Opciones, Herramientas y Ayuda",
  "sim.MainMenuLanguageElements": "***Idioma de los elementos del juego",
  "sim.MainMenuLanguageApp": "***Idioma de la aplicación",
  "sim.MainMenuFeedback": "***Comentarios (foro de servidor de prueba)",
  "sim.MainMenuChangelog": "***Registro de cambios (enlace de Google Drive)",
  "sim.MainMenuAbout": "***Acerca de",
  "sim.ManageMaps": "***Gestionar lista de mapas",
  "sim.ActiveMapSetup": "***Mapa activo (nombres de campamento, tipos, notas...)",
  "sim.ManageMapSetups": "***Administrar guías (Clima)",
  "sim.GuideTools": "***Herramientas de guía",
  "sim.ButtonSimulate": "***Simular (F9)",
  "sim.ButtonSimulateNow": "***Simular ahora",
  "sim.ButtonCancelSim": "***Cancelar (ESC)",
  "sim.ButtonSimulateTooltip": "***Iniciar simulación (F9)",
  "sim.Simulations": "Simulaciones",
  "sim.SimulationsTooltip": "***Número de repeticiones de simulación para realizar por combinación de unidad atacante.\r\nLos valores más altos producen resultados más precisos, pero toman más tiempo, mientras que los valores más pequeños hacen lo contrario.\r\n\nUn valor de 200 a 500 es suficiente en la mayoría de los casos con muy pocas posibilidades de resultados inesperados.\r\nLos valores por encima de 1000 son muy fiables.",
  "sim.SimSteps": "***Pasos",
  "sim.SimStepsTooltip": "***Número de unidades a sumar al intentar diferentes combinaciones de unidades por simulación.\r\nComo ejemplo, el valor de 5 significa que el ataque se intenta con la unidad A como 5, 10, 15, 20... tropas\r\nluego acompañado de la unidad B con 0, 5, 10, 15... posiblemente seguido de las unidades C, D, E...\r\n-Un valor de 5 da los mejores resultados en términos de velocidad y precisión\r\n-Los valores 10-20 se recomiendan para computadoras más antiguas y lentas\r\n- Los valores 1 y 2 se recomiendan solo para computadoras rápidas",
  "sim.OpenPlaythrough": "***Abrir ventana de juego para esta guía",
  "sim.TotalNumber": "***Total",
  "sim.CheckboxCampCompleted": "***Campamento completado",
  "sim.AutomaticallySavedAttack": "***Ataque guardado automáticamente",
  "sim.AutomaticallySavedBestAttacks": "***Mejores ataques guardados automáticamente",
  "sim.SimulateMapWith1RMMA": "***Registrar ataque adicional con {MMA} y 1{REC}",
  "sim.MenuSetMainAttack": "***Establecer como ataque principal para el campamento seleccionado",
  "sim.MenuCopyAttackClipboard": "***Copiar al portapapeles",
  "sim.MenuCopyAttack": "***Copiar ataque a la pestaña de simulación personalizada",
  "sim.MenuCopyEnemies": "***Copiar tropas enemigas a otra pestaña",
  "sim.MenuRunAttack": "***Lanzar ataque en la pestaña de simulación personalizada",
  "sim.MenuSimulateTroopsInCampTab": "***Simular para el campamento seleccionado en la pestaña Buscar al mejor atacante",
  "sim.MenuDisableTroopCheck": "***Deshabilitar verificación de límite de tropas",
  "sim.MenuResetCompleted": "***Restablecer estado completado en todos los campamentos",
  "sim.MenuSectorColors": "***Usar etiquetas de sector de colores",
  "sim.MenuSectorActiveSectorLabels": "***Mostrar solo etiquetas de sectores activos",
  "sim.MenuMapLabelType": "***Tipo de etiqueta de mapa",
  "sim.MenuMapLabelTypeGeneral": "***Mostrar solo nombres generales",
  "sim.MenuMapLabelTypeName": "***Mostrar solo nombres de campamentos",
  "sim.MenuMapLabelTypeBoth": "***Mostrar ambos",
  "sim.NotSimulated": "***No simulado",
  "playthrough.MainAttackVerified": "***El resultado del ataque se ha verificado con una re-simulación de {NÚMERO} eventos.",
  "playthrough.ResetSize": "***Restablecer tamaño de ventana a predeterminado",
  "playthrough.MinimapLocation": "***Cambiar ubicación del minimapa",
  "playthrough.MinimapLocationTop": "***Minimapa en la parte superior",
  "playthrough.MinimapLocationBottom": "***Minimapa en la parte inferior",
  "playthrough.MinimapLocationLeft": "***Minimapa a la izquierda",
  "playthrough.MinimapLocationRight": "***Minimapa a la derecha",
  "playthrough.OpenAttack": "***Abrir en ventana de juego",
  "simresults.Title": "***Resultados de la simulación",
  "simresults.Preparing": "***Preparando...",
  "simresults.Optimizing": "***Victoria, optimizando ataque...",
  "simresults.UnitCombination": "***Combinación de unidades",
  "simresults.GeneralDefeatedWaves": "***Derrotado, intentando con olas de ataque...",
  "simresults.GeneralVictoryWaves": "***Victoria, probando olas de ataque para reducir pérdidas...",
  "simresults.CheckboxKeepTop": "***Mantener la forma por encima de todo",
  "settings.Title": "***Configuración de la aplicación",
  "settings.Subtitle": "***Nota: Algunas configuraciones pueden requerir actualización para que surtan efecto.",
  "settings.Barracks": "***Barracks (configuración compartida)",
  "settings.BarracksNormal": "***Cuartel",
  "settings.BarracksElite": "***Cuartel de élite",
  "settings.BarracksLevel": "***Nivel de cuartel",
  "settings.BarracksLevelDesc": "***El nivel del cuartel afectará los tiempos mostrados",
  "settings.BarracksBuff": "***Velocidad de potenciador del cuartel %",
  "settings.BarracksBuffDesc": "***La velocidad del potenciador de los cuarteles afectará los tiempos mostrados.\r\nEjempl: Myers (+300%) + Guía de reclutamiento (200%) = 500%",
  "settings.ShowUnitEfficiency": "***Mostrar eficiencia de la unidad",
  "settings.ShowUnitEfficiencyDesc": "***Mostrar valores de eficiencia de la unidad en el resumen de la guía",
  "settings.EfficiencyWarning": "***Límite de ineficiencia de unidades normales",
  "settings.EfficiencyWarningDesc": "***Se muestra en rojo por debajo de este valor",
  "settings.EfficiencyWarningElite": "***Límite de ineficiencia de unidades de élite",
  "settings.EfficiencyWarningEliteDesc": "***Se muestra en rojo por debajo de este valor",
  "settings.NeverCounOneUnitAttackLoss": "***Nunca contar ataques de una unidad como pérdidas",
  "settings.NeverCounOneUnitAttackLossDesc": "***De esta manera no se mostrará en las pérdidas totales.",
  "settings.SummaryResimulations": "***Número de re-simulaciones para realizar en ataques",
  "settings.SummaryResimulationsDesc": "***Número de re-simulaciones a realizar para verificar ataques. El valor debe estar entre 500 y 30000",
  "settings.Playthrough": "***Ventana de reproducción",
  "settings.PlaythroughActivityReminder": "***Minutos de recordatorio de actividad",
  "settings.PlaythroughActivityReminderDesc": "***Si la ventana de reproducción está inactiva durante determinados minutos, comenzará a parpadear en la barra de tareas para recordarle que debe continuar. Un valor de 0 significa que la función está desactivada.",
  "settings.PlaythroughAutoscale": "***Escalar elementos superficiales al tamaño del mapa",
  "settings.PlaythroughAutoscaleDesc": "***Iconos y etiquetas de campamento de minimapa de escala automática por tamaño de mapa",
  "settings.PlaythroughCampLabel": "***Fuente de la etiqueta del campamento",
  "settings.PlaythroughResimulations": "***Número de re-simulaciones para verificar el ataque principal",
  "settings.PlaythroughResimulationsDesc": "***Número de re-simulaciones para verificar el ataque principal. El valor debe estar entre 100 y 20000.",
  "settings.Simulation": "***Simulación",
  "settings.SwordsmanMultiplier": "***Multiplicador de pérdidas de espadachín",
  "settings.SwordsmanMultiplierDesc": "***Cuando se habilita el cambio automático entre espadachín y espadachín a caballo, las pérdidas máximas del espadachín se establecerán como pérdidas máximas del espadachín montado multiplicadas por este valor. El valor debe estar entre 1 y 2.\r\n\nPor ejemplo si tus Espadachines a Caballo tienen defindo como máximo 100 pérdidas y el multiplicador está establecido en 1.5, las máximas pérdidas para el Espadachín serán de 150.",
  "settings.ResultsGenerals": "***Número de mejores ataques de un general",
  "settings.ResultsGeneralsDesc": "***Número de mejores ataques a mostrar por general. El valor debe estar entre 1 y 20",
  "settings.ResultsTotal": "***Número de mejores ataques (resumen)",
  "settings.ResultsTotalDesc": "***Número de resultados de ataques exitosos para mostrar en el resumen final de todos los ataques. El valor debe estar entre 5 y 30",
  "settings.Minimap": "***Minimapa",
  "settings.SectorColors": "***Color del Sector",
  "settings.SectorColorsDesc": "***Color de fondo de diferentes etiquetas de sector. Los colores cambiarán cuando haya más sectores que colores.",
  "settings.MinimapFont": "***Fuente de la etiqueta del campamento",
  "settings.CampColor": "***Color de campamento normal",
  "settings.LeaderCampColor": "***Color de campamento de líder",
  "settings.CompletedCampColor": "***Color de campamento completado",
  "settings.IgnoredCampColor": "***Color de campamento ignorado",
  "settings.BlockedCampColor": "***Color de campamento a bloquear",
  "settings.ChainAttackCampColor": "***Color de ataque en cadena",
  "settings.OptionalCampColor": "***Color de Campamento Opcional",
  "settings.UndefinedCampTransparency": "***Transparencia de campamento indefinido",
  "settings.UndefinedCampTransparencyDesc": "***Valor de transparencia de campamentos indefinidos en el minimapa. El valor debe estar entre 0 y 90%",
  "settings.DefaultCampTransparency": "***Transparencia de campamento predeterminado",
  "settings.DefaultCampTransparencyDesc": "***Valor de transparencia para campamentos no indefinidos en el minimapa. El valor debe estar entre 0 y 90%",
  "settings.SaveCompleted": "***Guardar campamentos completados",
  "settings.SaveCompletedDesc": "***Te permite guardar campamentos completados para que puedas reiniciar el programa o cambiar de mapa sin perder el progreso",
  "settings.HideIgnoredLabels": "***Ocultar etiquetas para campamentos ignorados",
  "settings.HideUndefinedLabels": "***Ocultar etiquetas para campamentos indefinidos",
  "settings.HideBlockedLabels": "***Ocultar etiquetas para campamentos bloqueados",
  "settings.Performance": "***Rendimiento",
  "settings.UIPerformance": "***Habilitar el modo de rendimiento de la interfaz de usuario",
  "settings.UIPerformanceDesc": "***Habilitar el modo de rendimiento de la interfaz de usuario que reduce la cantidad de controles y mejora el funcionamiento de la aplicación en computadoras más antiguas."
}
Una vez hecho eso, modifica la extensión del archivo por ".json", es decir, tu archivo debería tener el nombre "es-es.json".

Coloca el archivo que has creado en la carpeta de instalación del simulador
"[...]\TSOSIM\tiedostot\ohjelmakielet"



Finalmente, abre el simulador y dirígete a "Language for the application..."



Y selecciona "español (España, alfabetización internacional)"