I have a crash where if an event report has a message priority DELIVER_IMMEDIATELY, and its on-delivery script causes another event to be reported with DELIVER_IMMEDIATELY, the game NPEs.
ERROR com.fs.starfarer.combat.CombatMain - java.lang.NullPointerException
java.lang.NullPointerException
at com.fs.starfarer.campaign.comms.CommSystem.deliverMessages(Unknown Source)
at com.fs.starfarer.campaign.comms.CommSystem.addMessage(Unknown Source)
at com.fs.starfarer.campaign.comms.CommSystem.addMessage(Unknown Source)
at com.fs.starfarer.campaign.CampaignEngine.reportEventStage(Unknown Source)
at com.fs.starfarer.api.impl.campaign.missions.FactionCommissionMissionEvent.startEvent(FactionCommissionMissionEvent.java:86)
at com.fs.starfarer.campaign.events.CampaignEventManager.startEvent(Unknown Source)
at com.fs.starfarer.api.impl.campaign.missions.FactionCommissionMission.playerAccept(FactionCommissionMission.java:72)
at com.fs.starfarer.ui.newui.CommDirectoryDialog.actionPerformed(Unknown Source)
at com.fs.starfarer.ui.j.o00000(Unknown Source)
at com.fs.starfarer.ui.I.processInput(Unknown Source)
at com.fs.starfarer.ui.V.o00000(Unknown Source)
at com.fs.starfarer.BaseGameState.traverse(Unknown Source)
at com.fs.state.AppDriver.begin(Unknown Source)
at com.fs.starfarer.combat.CombatMain.main(Unknown Source)
at com.fs.starfarer.StarfarerLauncher$1.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
Steps to reproduce (don't have a minimal mod handy right now, unfortunately):
- Start a Nexerelin game with "free start" faction (in vanilla section of dialog)
- Console command:
setrelationship hegemony 51- Console command:
createalliance hegemony player_npc- Open Jangala's comm board and accept a commission
Changing the message priority
here to ENSURE_DELIVERY prevents the crash.