buildEnemyStats = (masterId, idx) => {
				const ship = { masterId: masterId };
				if (predicatedShips) {
					ship.HPInit = predicatedShips[idx].hp;
				}
				// If new enemy and not in sim yet, fill stats
				if (masterId > simAbyssMasterIdMax) {
					const master = KC3Master.ship(masterId) || {};
					ship.stats = {
						type: master.api_stype,
					};
					if (KC3Master.abyssalShip(masterId)) {
						const stats = KC3Master.abyssalShip(masterId);
						ship.stats.HP = stats.api_taik;
						ship.stats.FP = stats.api_houg;
						ship.stats.TP = stats.api_raig;
						ship.stats.AA = stats.api_tyku;
						ship.stats.AR = stats.api_souk;
						const equips = stats.kc3_slots || [];
						ship.stats.SLOTS = stats.api_maxeq || equips.map(() => 0);
						ship.equips = equips.map(id => ({
							masterId: id,
							stats: this.buildEquipMasterStats(id)
						}));
					}
				}
				return ship;
			}
Prepares encounter/real battle data for simulator export while on sortie.
@param enemyData - an instance include enemy formation and ship master IDs of fleets.
@param resultFleets - predicated fleets data from BP module output.
@param realBattle - indicates real battle data not from encounter.
@return the constructed data object for exporting to simulator.
@see https://kc3kai.github.io/kancolle-replay/simulator-import-help.html