Hey Celest, here's your weekly prod. Any update on this effort?
Not really. I'm stuck with the following:
41339 [Thread-5] INFO com.fs.starfarer.api.impl.campaign.CoreScript - Added patrol fleet spawning script to market [Sek]
41339 [Thread-5] INFO com.fs.starfarer.api.impl.campaign.CoreScript - Added patrol fleet spawning script to market [Oris]
41339 [Thread-5] INFO com.fs.starfarer.api.impl.campaign.CoreScript - Added patrol fleet spawning script to market [Zorast]
41344 [Thread-5] INFO com.fs.starfarer.api.impl.campaign.fleets.EconomyFleetManager - 0 out of a maximum 50 trade fleets in play
41345 [Thread-5] INFO com.fs.starfarer.api.impl.campaign.fleets.EconomyFleetManager - Picked market [Sek] to spawn trade fleet from
41347 [Thread-5] INFO com.fs.starfarer.api.impl.campaign.fleets.EconomyFleetManager - Will send trade fleet to market [Oris]
41347 [Thread-5] INFO com.fs.starfarer.api.impl.campaign.fleets.EconomyFleetManager - Delivering: [], bringing back [Food]; volume: 211
41347 [Thread-5] INFO com.fs.starfarer.api.impl.campaign.fleets.EconomyFleetManager - Creating trade fleet of tier 1 for market [Sek] (volume: 211)
41365 [Thread-5] INFO com.fs.starfarer.api.impl.campaign.fleets.EconomyFleetManager - Spawned 21 point economy fleet from [Sek] to [Oris]
41365 [Thread-5] INFO com.fs.starfarer.loading.scripts.B - Loading class: java.util.UUID
41365 [Thread-5] INFO com.fs.starfarer.loading.scripts.B - Loading class: com.fs.starfarer.api.campaign.rules.MemoryAPI
41404 [Thread-5] INFO com.fs.starfarer.api.impl.campaign.events.CoreEventProbabilityManager - Created FactionCommissionMission: Caldari State
41404 [Thread-5] INFO com.fs.starfarer.api.impl.campaign.events.CoreEventProbabilityManager - Created FactionCommissionMission: Amarr Empire
41405 [Thread-5] INFO com.fs.starfarer.api.impl.campaign.events.CoreEventProbabilityManager - Created FactionCommissionMission: Minmatar Republic
41405 [Thread-5] INFO com.fs.starfarer.api.impl.campaign.events.CoreEventProbabilityManager - Created FactionCommissionMission: Gallente Federation
41406 [Thread-5] INFO com.fs.starfarer.api.impl.campaign.fleets.EconomyFleetManager - 1 out of a maximum 50 trade fleets in play
41406 [Thread-5] INFO com.fs.starfarer.api.impl.campaign.fleets.EconomyFleetManager - Picked market [Oris] to spawn trade fleet from
41407 [Thread-5] INFO com.fs.starfarer.api.impl.campaign.fleets.EconomyFleetManager - Will send trade fleet to market [Sek]
41407 [Thread-5] INFO com.fs.starfarer.api.impl.campaign.fleets.EconomyFleetManager - Delivering: [Food], bringing back []; volume: 213
41407 [Thread-5] INFO com.fs.starfarer.api.impl.campaign.fleets.EconomyFleetManager - Creating trade fleet of tier 1 for market [Oris] (volume: 213)
These are the first (and last) entries after campaign preparation starts. At least one fleet spawns fine, but the app freezes after the second. Sometimes this happens on the first fleet. I looked through EconomyFleetManager, but I didn't find any possibility for an infinite loop there, so I completely lack ideas.
edit:
In fact the issue is in fleet factory. I pointed the rpoblem down to this place, so I will probably manage to fix it soon. There is likely something wrong with fleet roles. Will return to this when I have time on weekend.
while (combatPts > 0) {
if (!cfFail && freighterPts > 0 && random.nextFloat() < doctrine.getCombatFreighterProbability()) {
float pts = Math.min(freighterPts, combatPts);
if (pts > 8) pts = 8;
float added = addRandomCombatFreighters(pts, qf, fleet, random, market);
combatPts -= added/2f;
freighterPts -= added/2f;
cfFail |= added < pts/2f;
continue;
}
if (combatPts >= 16f) {
float pts = add16PointGroup(qf, fleet, random, market, capitalOk, largeCarrierOk, combatPts - 16f, params);
combatPts -= pts;
} else if (combatPts >= 12f) {
float pts = add12PointGroup(qf, fleet, random, market, capitalOk, combatPts - 12f, params);
combatPts -= pts;
} else if (combatPts >= 8f) {
float pts = add8PointGroup(qf, fleet, random, market, capitalOk, combatPts - 8f, params);
combatPts -= pts;
} else {
float pts = addRandomCombatShips(combatPts, qf, fleet, random, market, capitalOk, true, 0f, params);
combatPts -= pts;
}
}