Nicely done, makes the ships' growth more organic albeit at the cost of extra supplies.
Any chance of making hullmods that actually decrease upkeep of supplies in the future?
Dig the concept. Have you considered a hullmod that rectifies the penalties from converted hanger?
Very cool mod, I look forward to playing with it!
However, I would highly recommend nullifying the Starship Legends level checks if the player doesn't have it installed, as you are currently artificially isolating the part of your audience that doesn't play with Starship Legends.
Maybe you could replace it with some other requirement instead?
Very cool mod, I look forward to playing with it!
However, I would highly recommend nullifying the Starship Legends level checks if the player doesn't have it installed, as you are currently artificially isolating the part of your audience that doesn't play with Starship Legends.
Maybe you could replace it with some other requirement instead?
I'm not able to add a different requirement atm, however I did just update the version with an alternate data folder you can use instead which removes the starship legends requirement. It does how ever increase the purchase price of Notable, Superior and Exceptional upgrade packages by 5 fold.
boolean hasStarshipLegends = Global.getSettings().getModManager().isModEnabled("sun_starship_legends");
Should you want to, you can perform a very simple check to see if the player has Starship Legends installed viaCodeFrom there, you can use that boolean in if/else checks to determine what the player's requirements should be.boolean hasStarshipLegends = Global.getSettings().getModManager().isModEnabled("sun_starship_legends");
Hey, thanks for integrating starship legends this way! That's a cool feature ;D
(And, yeah, it's definitely better for all content to be accessible without other mods, so I'm glad there's a solution!)
I know this mod doesn't exactly scream 'balance', but wouldn't it make more sense for Augmentation mods to have reversed progression? With Standard giving what Penultimate gives and Penultimate what Standard gives right now?I think the diminishing returns scheme that ctuncks is going for makes the most sense. If you really want that extra bit of power, you're going to have to pay for it. There's similar systems in Starsector already, like salvage gantries being less and less useful the more of them you have.
I know this mod doesn't exactly scream 'balance', but wouldn't it make more sense for Augmentation mods to have reversed progression? With Standard giving what Penultimate gives and Penultimate what Standard gives right now?I think the diminishing returns scheme that ctuncks is going for makes the most sense. If you really want that extra bit of power, you're going to have to pay for it. There's similar systems in Starsector already, like salvage gantries being less and less useful the more of them you have.
I still haven't been able to replicate those crashes you were having, have you gotten any more?I ended up starting a new playthrough without ARRUS since it was about that time anyways, haven't gotten the crashes since. Perhaps it was an odd interaction with some other mod in my list? I wish the error made more sense.
I just discovered this mod today. It's so hard to find something to increase op, thanks for making this.
Edit: I didn't really look closely at the numbers but wow that is a lot of op or maybe it just feels that way to me.
Oh right starship legends was suppose to help gate the op increases. I forgot I messed with starship legend's exp multi. Still I thought the mods would cost like a million or something.
mod abandoned?
I’m having a lot of fun with this mod, I really like your ideas with the rectifications, upgrades and augmentations. Im glad I found it and thank you for making it.
Very cool mod. Definitely not balanced, but I see it as turning the game into more of an character RPG, where you focus on one or two ships that progressively get stronger rather than creating a fleet. It's sort of like a build-your-own supership.
With testing so far, most everything seems to work with .96a, with the exception Converted Hangar with the new hullmod on the Invictus ship. Converted Hangar in this case act as normal, giving only one fighter slot and increasing OP cost, rather than providing two fighter slots and no negatives like it's suppose to on the Invictus.
Awesome. Thanks for the reply.mod abandoned?
It's not abandoned, I just took a break when 0.96 was about to launch and then got very distracted by Tears of the Kingdom. I'm currently working on it for 0.96.
Fatal.Null Crash #1: I go to visit a lead on an equipment cache I got from the storyteller, loot the cache. It contains two ARRUS Hullmod blueprint-thingies, among other things. Right next to the equipment cache is a Hegemony Deserter bounty fleet, which I go to fight. Game crashes shortly into the battle not long after enemy ships are on screen and the shooting starts. When I restarted the game and went through the same sequence of events, I was able to complete the battle just fine. Odd. Did typical campaign stuff, modifying ships, and simulator battles. Simulator battles worked fine. I don't get into any more actual battles until the next crash(es). I never got around to installing any of the new hullmods despite unlocking two of them.
Fatal.Null Crash#2 and 3 and so on:
I go to destroy a Pirate Base. Engage a small armada of Pirate ships and the station itself. Not long after enemy ships are on screen and the shooting starts, fatal.null crash. Reboot the game, same exact sequence of events, game crashes about the same time.
While writing this up, I tried just fighting the pirate fleet (not the station) and deployed only my destroyer flagship, completed the battle with no problems. Go on to battle the station and a small group of ships, and deploy seven or eight ships of my own? Game crashes before anything has a chance to explode. I thought maybe it could be ARRUS hullmods on the enemy ships but when I examined their fleet on the pre-battle screen I didn't see anything out of the ordinary. Now I've been spawning enemy fleets and doing battles with different ships deployed and I can't seem to figure out what will consistentlycause it to crash, but it always does after a few, and the error is always the same.
I'm having similar problems too, with fatal:null errors every time I've moused over an ARRUS hullmod.
310228 [Thread-3] ERROR com.fs.starfarer.combat.CombatMain - java.lang.NullPointerException
java.lang.NullPointerException
at data.hullmods.ZDA_Sup_Diag.addPostDescriptionSection(ZDA_Sup_Diag.java:53)
at com.fs.starfarer.ui.impl.StandardTooltipV2$12.createImpl(Unknown Source)
at com.fs.starfarer.ui.impl.StandardTooltipV2Expandable.create(Unknown Source)
at com.fs.starfarer.ui.impl.StandardTooltipV2Expandable.beforeShown(Unknown Source)
at com.fs.starfarer.ui.thissuper.showTooltip(Unknown Source)
at com.fs.starfarer.ui.O0Oo.oÒ0000(Unknown Source)
at com.fs.starfarer.ui.O0Oo.processInput(Unknown Source)
at com.fs.starfarer.ui.thissuper.processInput(Unknown Source)
at com.fs.starfarer.ui.g$Oo.processInputImpl(Unknown Source)
at com.fs.starfarer.ui.thissuper.processInput(Unknown Source)
at com.fs.starfarer.ui.interfacenew.dispatchEventsToChildren(Unknown Source)
at com.fs.starfarer.ui.interfacenew.processInputImpl(Unknown Source)
at com.fs.starfarer.ui.g.processInputImpl(Unknown Source)
at com.fs.starfarer.ui.thissuper.processInput(Unknown Source)
at com.fs.starfarer.ui.interfacenew.dispatchEventsToChildren(Unknown Source)
at com.fs.starfarer.ui.interfacenew.processInputImpl(Unknown Source)
at com.fs.starfarer.ui.thissuper.processInput(Unknown Source)
at com.fs.starfarer.ui.interfacenew.dispatchEventsToChildren(Unknown Source)
at com.fs.starfarer.ui.interfacenew.processInputImpl(Unknown Source)
at com.fs.starfarer.ui.thissuper.processInput(Unknown Source)
at com.fs.starfarer.ui.interfacenew.dispatchEventsToChildren(Unknown Source)
at com.fs.starfarer.ui.interfacenew.processInputImpl(Unknown Source)
at com.fs.starfarer.ui.public.processInputImpl(Unknown Source)
at com.fs.starfarer.coreui.refit.ModPickerDialogV3.processInputImpl(Unknown Source)
at com.fs.starfarer.ui.thissuper.processInput(Unknown Source)
at com.fs.starfarer.ui.interfacenew.dispatchEventsToChildren(Unknown Source)
at com.fs.starfarer.ui.interfacenew.processInputImpl(Unknown Source)
at com.fs.starfarer.ui.thissuper.processInput(Unknown Source)
at com.fs.starfarer.title.TitleScreenState.processInput(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.o00000(Unknown Source)
at com.fs.starfarer.StarfarerLauncher$1.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
These hullmods are 100% confirmed to cause a fatal:null error when moused over in the main menu mission's refit screen, as well as the upgrade packages themselves. (I think)
- Crew Diagnstics
- Supply Diagnostics
- Fuel Diagnostics
Thanks for offering your help to me, as I am but a humble meatball.
It happened while I was trying to refit a ship in a main menu mission, and yes, I am playing on the latest version of SS.
So do you mean that they won’t crash the game in the campaign?
ctuncks Hi there! Can you update mod for 097 version?
Will the new release be compatible with saves created in v0.65 of this mod w/ Starsector v0.97RC(insert#here), or will a new start be required?ctuncks Hi there! Can you update mod for 097 version?
I'm currently working on both updating it and finishing off one of the newer features, distributing hullmods to the CPU, just hit a snag on module ships/stations.
Will the new release be compatible with saves created in v0.65 of this mod w/ Starsector v0.97RC(insert#here), or will a new start be required?ctuncks Hi there! Can you update mod for 097 version?
I'm currently working on both updating it and finishing off one of the newer features, distributing hullmods to the CPU, just hit a snag on module ships/stations.
*CLICK* Nicectuncks Hi there! Can you update mod for 097 version?
I'm currently working on both updating it and finishing off one of the newer features, distributing hullmods to the CPU, just hit a snag on module ships/stations.
1273384 [Thread-2] ERROR com.fs.starfarer.combat.CombatMain - java.lang.NullPointerException: Cannot invoke "com.fs.starfarer.api.combat.ShipAPI.getVariant()" because "ship" is null
java.lang.NullPointerException: Cannot invoke "com.fs.starfarer.api.combat.ShipAPI.getVariant()" because "ship" is null
at data.hullmods.Augmentations.ZDA_Aug_Sui.addPostDescriptionSection(ZDA_Aug_Sui.java:80) ~[?:?]
at com.fs.starfarer.api.campaign.impl.items.ModSpecItemPlugin.createTooltip(ModSpecItemPlugin.java:211) ~[starfarer.api.jar:?]
at com.fs.starfarer.campaign.ui.trade.CargoDataGridView$1.createImpl(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.impl.StandardTooltipV2Expandable.create(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.impl.StandardTooltipV2Expandable.beforeShown(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.thissuper.showTooltip(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.O0Oo.super.new(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.O0Oo.processInput(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.thissuper.processInput(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.o000.dispatchEventsToChildren(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.o000.processInputImpl(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.campaign.ui.trade.CargoDataGridView.processInputImpl(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.thissuper.processInput(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.g$Oo.processInputImpl(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.thissuper.processInput(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.o000.dispatchEventsToChildren(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.o000.processInputImpl(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.g.processInputImpl(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.thissuper.processInput(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.o000.dispatchEventsToChildren(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.o000.processInputImpl(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.campaign.ui.oOoO.processInputImpl(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.thissuper.processInput(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.o000.dispatchEventsToChildren(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.o000.processInputImpl(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.thissuper.processInput(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.o000.dispatchEventsToChildren(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.o000.processInputImpl(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.coreui.voidnew.processInputImpl(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.thissuper.processInput(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.o000.dispatchEventsToChildren(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.o000.processInputImpl(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.newui.o0OO.processInputImpl(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.thissuper.processInput(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.o000.dispatchEventsToChildren(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.o000.processInputImpl(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.O.processInputImpl(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.newui.L.processInputImpl(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.thissuper.processInput(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.o000.dispatchEventsToChildren(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.o000.processInputImpl(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.O.processInputImpl(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.newui.o0Oo.processInputImpl(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.thissuper.processInput(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.o000.dispatchEventsToChildren(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.o000.processInputImpl(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.thissuper.processInput(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.campaign.CampaignState.processInput(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.BaseGameState.traverse(Unknown Source) ~[port_obf.jar:?]
at com.fs.state.AppDriver.begin(Unknown Source) ~[port.common_obf.jar:?]
at com.fs.starfarer.combat.CombatMain.main(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.StarfarerLauncher.super(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.StarfarerLauncher$1.run(Unknown Source) ~[port_obf.jar:?]
at java.base/java.lang.Thread.run(Thread.java:1575) [?:?]
Woo, this mod returns!
Did run into one mouseover crash thus far though, I just recall the hullmod had a like... Domain of Man icon on it...Quote1273384 [Thread-2] ERROR com.fs.starfarer.combat.CombatMain - java.lang.NullPointerException: Cannot invoke "com.fs.starfarer.api.combat.ShipAPI.getVariant()" because "ship" is null
java.lang.NullPointerException: Cannot invoke "com.fs.starfarer.api.combat.ShipAPI.getVariant()" because "ship" is null
at data.hullmods.Augmentations.ZDA_Aug_Sui.addPostDescriptionSection(ZDA_Aug_Sui.java:80) ~[?:?]
at com.fs.starfarer.api.campaign.impl.items.ModSpecItemPlugin.createTooltip(ModSpecItemPlugin.java:211) ~[starfarer.api.jar:?]
at com.fs.starfarer.campaign.ui.trade.CargoDataGridView$1.createImpl(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.impl.StandardTooltipV2Expandable.create(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.impl.StandardTooltipV2Expandable.beforeShown(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.thissuper.showTooltip(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.O0Oo.super.new(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.O0Oo.processInput(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.thissuper.processInput(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.o000.dispatchEventsToChildren(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.o000.processInputImpl(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.campaign.ui.trade.CargoDataGridView.processInputImpl(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.thissuper.processInput(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.g$Oo.processInputImpl(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.thissuper.processInput(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.o000.dispatchEventsToChildren(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.o000.processInputImpl(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.g.processInputImpl(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.thissuper.processInput(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.o000.dispatchEventsToChildren(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.o000.processInputImpl(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.campaign.ui.oOoO.processInputImpl(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.thissuper.processInput(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.o000.dispatchEventsToChildren(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.o000.processInputImpl(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.thissuper.processInput(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.o000.dispatchEventsToChildren(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.o000.processInputImpl(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.coreui.voidnew.processInputImpl(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.thissuper.processInput(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.o000.dispatchEventsToChildren(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.o000.processInputImpl(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.newui.o0OO.processInputImpl(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.thissuper.processInput(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.o000.dispatchEventsToChildren(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.o000.processInputImpl(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.O.processInputImpl(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.newui.L.processInputImpl(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.thissuper.processInput(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.o000.dispatchEventsToChildren(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.o000.processInputImpl(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.O.processInputImpl(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.newui.o0Oo.processInputImpl(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.thissuper.processInput(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.o000.dispatchEventsToChildren(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.o000.processInputImpl(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.thissuper.processInput(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.campaign.CampaignState.processInput(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.BaseGameState.traverse(Unknown Source) ~[port_obf.jar:?]
at com.fs.state.AppDriver.begin(Unknown Source) ~[port.common_obf.jar:?]
at com.fs.starfarer.combat.CombatMain.main(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.StarfarerLauncher.super(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.StarfarerLauncher$1.run(Unknown Source) ~[port_obf.jar:?]
at java.base/java.lang.Thread.run(Thread.java:1575) [?:?]
135702 [Thread-2] ERROR com.fs.starfarer.combat.CombatMain - java.lang.NullPointerException: Cannot invoke "com.fs.starfarer.loading.specs.P.hasTag(String)" because "<local3>" is null
java.lang.NullPointerException: Cannot invoke "com.fs.starfarer.loading.specs.P.hasTag(String)" because "<local3>" is null
at com.fs.starfarer.loading.specs.HullVariantSpec.hasDMods(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.codex.CodexData.Object(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.codex.CodexData.<init>(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.codex.oOOO.<init>(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.codex.oOOO.Ô00000(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.loading.ResourceLoaderState.init(Unknown Source) ~[port_obf.jar:?]
at com.fs.state.AppDriver.begin(Unknown Source) ~[port.common_obf.jar:?]
at com.fs.starfarer.combat.CombatMain.main(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.StarfarerLauncher.super(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.StarfarerLauncher$1.run(Unknown Source) ~[port_obf.jar:?]
at java.base/java.lang.Thread.run(Thread.java:1575) [?:?]
@ TimeDiver: I'm not exactly sure where the conflict is coming up, but it seems a HullVariantSpec is an issue. It seems to be related to D-Mods, so it might be something related to my Stopgap Suite, but I haven't touched it in awhile.Found the issue, and its my own damn fault.
I notice you've got a fair number of mods that haven't been updated for awhile I don't know if you found an alternate source or manually updated the mod_info yourself, but that is a potential avenue for a conflict. Additionally you also have some mods that have been recently involved in a certain controversy involving inserted crash code (delayed) and bricking save files. In fact depending on what versions you are running you may have the triggers to set those off.Yeah, I found out about the whole charlie-foxtrot with <name redacted> and their subsequent banning from the Starsector modding community; can't really remove them until I start a new campaign, but I'm planning on trying some 'bootleg' versions from my backups, when I get the free time to do so.
@ TimeDiver: I'm not exactly sure where the conflict is coming up, but it seems a HullVariantSpec is an issue. It seems to be related to D-Mods, so it might be something related to my Stopgap Suite, but I haven't touched it in awhile.Found the issue, and its my own damn fault.
I edited some .variant files to add some of Experimental Hull Modifications' hullmods to them, and some/all of EHM's hullmods are treated as d-mods by the game engine, causing a CTD when your mod detects them on game load.
Undoing those changes to the .variant files (i.e. restored an older weekly backup of my Starsector 'mods' folder) and there's no longer any CTD-during-game load.QuoteI notice you've got a fair number of mods that haven't been updated for awhile I don't know if you found an alternate source or manually updated the mod_info yourself, but that is a potential avenue for a conflict. Additionally you also have some mods that have been recently involved in a certain controversy involving inserted crash code (delayed) and bricking save files. In fact depending on what versions you are running you may have the triggers to set those off.Yeah, I found out about the whole charlie-foxtrot with <name redacted> and their subsequent banning from the Starsector modding community; can't really remove them until I start a new campaign, but I'm planning on trying some 'bootleg' versions from my backups, when I get the free time to do so.
I've played around a bit with Experimental Hull Modifications, but didn't know they counted as D-Mods. Maybe I should change the way a d-mods are detected and just have a boolean that detects the relevant d-mods rather than all of them.The exact cause is even more messed-up.
@ TimeDiver I really did have to remove a lot of them from mission use, too many of them pull campaign data that was leading to null crashes. It was just easier restricting them.Understood, but I believe that updating the first post of the thread to indicate a lack of save compatibility between 0.65 and 0.8 (requiring dangerous edits to campaign.xml to get around) would be prudent.
@ TimeDiver I really did have to remove a lot of them from mission use, too many of them pull campaign data that was leading to null crashes. It was just easier restricting them.Understood, but I believe that updating the first post of the thread to indicate a lack of save compatibility between 0.65 and 0.8 (requiring dangerous edits to campaign.xml to get around) would be prudent.
Gotta say, this certainly makes your early/mid game rough until you can find the Augmentation Suite somewhere, as randomly generated NPC fleets can be packing some seriously heavy amount of hullmods.
That being said, the new way you have things split up is certainly much nicer looking, and you only have to find the 'base' hullmod instead of trying to find each individual level. So once you get those base hullmods, you're ready to go!
Mind my early/mid game likely gets so rough because I'm running a lot of other mods that add more hullmods, so there's just a variety of good combat ones they start pulling from.
Noticed that when I hover over enemy ships to recover after combat, it sometimes makes a coin clinking sound and suddenly several story points and lots of credits are gone without me doing anything. Only happens to ships that have the upgrade package and only once per ship. It also only takes story points if the ship has a superior or greater package, the notable ones only makes the sound. Definitely something to do with this mod, as I added it to my modded run mid-save, and only just started to have it happen now.
From my guess, when I hover over the ship it's seeing the ship having upgrade packages, and taking what it would cost to add the packages (the credits and story points) out of my account. This also only seems to occur if I've already learned the Augmentation Suite hullmod.
This happens even when I cut my modlist down to only this, Nexerelin, and console commands (along with their dependencies) on a new save, so it's likely not a compatibility issue, and I'm running the 0.97 version.
Any idea what is happening here?
Hello there! Just downloaded this mod to try it out today, it seems very interesting, but have been getting an error several minutes after loading my save. Seems to be linked to augment generation for NPC fleets, and has been happening in my colonies' system for the most part.@ctuncks: I get a very similar CTD, but for me it occurs when I try to view El Psi's Ship and Weapon Pack (latest version) bounty, after accepting it:Spoiler1741750 [Thread-2] ERROR com.fs.starfarer.combat.CombatMain - java.lang.NullPointerException: Cannot invoke "com.fs.starfarer.api.loading.WeaponSpecAPI.getType()" because the return value of "com.fs.starfarer.api.combat.ShipVariantAPI.getWeaponSpec(String)" is null
java.lang.NullPointerException: Cannot invoke "com.fs.starfarer.api.loading.WeaponSpecAPI.getType()" because the return value of "com.fs.starfarer.api.combat.ShipVariantAPI.getWeaponSpec(String)" is null
at data.aaz_ar_hull_scripts.ZDA_Augment_Inflation_Listener.reportFleetInflated(ZDA_Augment_Inflation_Listener.java:2721) ~[?:?]
at com.fs.starfarer.api.campaign.listeners.ListenerUtil.reportFleetInflated(ListenerUtil.java:400) ~[starfarer.api.jar:?]
at com.fs.starfarer.campaign.fleet.CampaignFleet.inflateIfNeeded(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.impl.ooOO$2.ÒÕO000(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.impl.ooOO$2.beforeShown(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.campaign.F.super(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.campaign.CampaignEngine.advance(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.campaign.CampaignState.advance(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.BaseGameState.traverse(Unknown Source) ~[port_obf.jar:?]
at com.fs.state.AppDriver.begin(Unknown Source) ~[port.common_obf.jar:?]
at com.fs.starfarer.combat.CombatMain.main(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.StarfarerLauncher.super(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.StarfarerLauncher$1.run(Unknown Source) ~[port_obf.jar:?]
at java.base/java.lang.Thread.run(Thread.java:1575) [?:?][close]
Hello there! Just downloaded this mod to try it out today, it seems very interesting, but have been getting an error several minutes after loading my save. Seems to be linked to augment generation for NPC fleets, and has been happening in my colonies' system for the most part.@ctuncks: I get a very similar CTD, but for me it occurs when I try to view a Ship and Weapon Pack (latest version) bounty, after accepting it:Spoiler1741750 [Thread-2] ERROR com.fs.starfarer.combat.CombatMain - java.lang.NullPointerException: Cannot invoke "com.fs.starfarer.api.loading.WeaponSpecAPI.getType()" because the return value of "com.fs.starfarer.api.combat.ShipVariantAPI.getWeaponSpec(String)" is null
java.lang.NullPointerException: Cannot invoke "com.fs.starfarer.api.loading.WeaponSpecAPI.getType()" because the return value of "com.fs.starfarer.api.combat.ShipVariantAPI.getWeaponSpec(String)" is null
at data.aaz_ar_hull_scripts.ZDA_Augment_Inflation_Listener.reportFleetInflated(ZDA_Augment_Inflation_Listener.java:2721) ~[?:?]
at com.fs.starfarer.api.campaign.listeners.ListenerUtil.reportFleetInflated(ListenerUtil.java:400) ~[starfarer.api.jar:?]
at com.fs.starfarer.campaign.fleet.CampaignFleet.inflateIfNeeded(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.impl.ooOO$2.ÒÕO000(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.impl.ooOO$2.beforeShown(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.campaign.F.super(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.campaign.CampaignEngine.advance(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.campaign.CampaignState.advance(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.BaseGameState.traverse(Unknown Source) ~[port_obf.jar:?]
at com.fs.state.AppDriver.begin(Unknown Source) ~[port.common_obf.jar:?]
at com.fs.starfarer.combat.CombatMain.main(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.StarfarerLauncher.super(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.StarfarerLauncher$1.run(Unknown Source) ~[port_obf.jar:?]
at java.base/java.lang.Thread.run(Thread.java:1575) [?:?][close]Spoiler1540638 [Thread-2] ERROR com.fs.starfarer.combat.CombatMain - java.lang.NullPointerException: Cannot invoke "com.fs.starfarer.api.loading.WeaponSpecAPI.getType()" because the return value of "com.fs.starfarer.api.combat.ShipVariantAPI.getWeaponSpec(String)" is null
java.lang.NullPointerException: Cannot invoke "com.fs.starfarer.api.loading.WeaponSpecAPI.getType()" because the return value of "com.fs.starfarer.api.combat.ShipVariantAPI.getWeaponSpec(String)" is null
at data.aaz_ar_hull_scripts.ZDA_Augment_Inflation_Listener.reportFleetInflated(ZDA_Augment_Inflation_Listener.java:2721) ~[?:?]
at com.fs.starfarer.api.campaign.listeners.ListenerUtil.reportFleetInflated(ListenerUtil.java:400) ~[starfarer.api.jar:?]
at com.fs.starfarer.campaign.fleet.CampaignFleet.inflateIfNeeded(Unknown Source) ~[port_obf.jar:?]
at data.scripts.campaign.intel.SWP_IBBIntel.createSmallDescription(SWP_IBBIntel.java:929) ~[?:?]
at com.fs.starfarer.campaign.comms.v2.EventsPanel.super(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.campaign.comms.v2.EventsPanel.actionPerformed(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.o0O0.buttonPressed(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.int.Ò00000(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.int.processInput(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.o0O0.processInputImpl(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.thissuper.processInput(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.g$Oo.processInputImpl(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.thissuper.processInput(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.o000.dispatchEventsToChildren(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.o000.processInputImpl(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.g.processInputImpl(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.thissuper.processInput(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.o000.dispatchEventsToChildren(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.o000.processInputImpl(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.thissuper.processInput(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.o000.dispatchEventsToChildren(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.o000.processInputImpl(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.campaign.comms.v2.EventsPanel.processInputImpl(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.thissuper.processInput(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.o000.dispatchEventsToChildren(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.o000.processInputImpl(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.campaign.comms.return.processInputImpl(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.thissuper.processInput(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.o000.dispatchEventsToChildren(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.o000.processInputImpl(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.newui.o0OO.processInputImpl(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.thissuper.processInput(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.o000.dispatchEventsToChildren(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.o000.processInputImpl(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.O.processInputImpl(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.newui.L.processInputImpl(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.thissuper.processInput(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.o000.dispatchEventsToChildren(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.o000.processInputImpl(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.thissuper.processInput(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.campaign.CampaignState.processInput(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.BaseGameState.traverse(Unknown Source) ~[port_obf.jar:?]
at com.fs.state.AppDriver.begin(Unknown Source) ~[port.common_obf.jar:?]
at com.fs.starfarer.combat.CombatMain.main(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.StarfarerLauncher.super(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.StarfarerLauncher$1.run(Unknown Source) ~[port_obf.jar:?]
at java.base/java.lang.Thread.run(Thread.java:1575) [?:?][close]
Yes, it was a multi-module ship, and yes, the ship is from Dark.Revenant's Ship and Weapon Pack (swp_boss_sporeship_cus.variant). Edited previous reply accordingly.Hello there! Just downloaded this mod to try it out today, it seems very interesting, but have been getting an error several minutes after loading my save. Seems to be linked to augment generation for NPC fleets, and has been happening in my colonies' system for the most part.@ctuncks: I get a very similar CTD, but for me it occurs when I try to view a Ship and Weapon Pack (latest version) bounty, after accepting it:Spoiler1741750 [Thread-2] ERROR com.fs.starfarer.combat.CombatMain - java.lang.NullPointerException: Cannot invoke "com.fs.starfarer.api.loading.WeaponSpecAPI.getType()" because the return value of "com.fs.starfarer.api.combat.ShipVariantAPI.getWeaponSpec(String)" is null
java.lang.NullPointerException: Cannot invoke "com.fs.starfarer.api.loading.WeaponSpecAPI.getType()" because the return value of "com.fs.starfarer.api.combat.ShipVariantAPI.getWeaponSpec(String)" is null
at data.aaz_ar_hull_scripts.ZDA_Augment_Inflation_Listener.reportFleetInflated(ZDA_Augment_Inflation_Listener.java:2721) ~[?:?]
at com.fs.starfarer.api.campaign.listeners.ListenerUtil.reportFleetInflated(ListenerUtil.java:400) ~[starfarer.api.jar:?]
at com.fs.starfarer.campaign.fleet.CampaignFleet.inflateIfNeeded(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.impl.ooOO$2.ÒÕO000(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.impl.ooOO$2.beforeShown(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.campaign.F.super(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.campaign.CampaignEngine.advance(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.campaign.CampaignState.advance(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.BaseGameState.traverse(Unknown Source) ~[port_obf.jar:?]
at com.fs.state.AppDriver.begin(Unknown Source) ~[port.common_obf.jar:?]
at com.fs.starfarer.combat.CombatMain.main(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.StarfarerLauncher.super(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.StarfarerLauncher$1.run(Unknown Source) ~[port_obf.jar:?]
at java.base/java.lang.Thread.run(Thread.java:1575) [?:?][close]Spoiler1540638 [Thread-2] ERROR com.fs.starfarer.combat.CombatMain - java.lang.NullPointerException: Cannot invoke "com.fs.starfarer.api.loading.WeaponSpecAPI.getType()" because the return value of "com.fs.starfarer.api.combat.ShipVariantAPI.getWeaponSpec(String)" is null
java.lang.NullPointerException: Cannot invoke "com.fs.starfarer.api.loading.WeaponSpecAPI.getType()" because the return value of "com.fs.starfarer.api.combat.ShipVariantAPI.getWeaponSpec(String)" is null
at data.aaz_ar_hull_scripts.ZDA_Augment_Inflation_Listener.reportFleetInflated(ZDA_Augment_Inflation_Listener.java:2721) ~[?:?]
at com.fs.starfarer.api.campaign.listeners.ListenerUtil.reportFleetInflated(ListenerUtil.java:400) ~[starfarer.api.jar:?]
at com.fs.starfarer.campaign.fleet.CampaignFleet.inflateIfNeeded(Unknown Source) ~[port_obf.jar:?]
at data.scripts.campaign.intel.SWP_IBBIntel.createSmallDescription(SWP_IBBIntel.java:929) ~[?:?]
at com.fs.starfarer.campaign.comms.v2.EventsPanel.super(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.campaign.comms.v2.EventsPanel.actionPerformed(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.o0O0.buttonPressed(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.int.Ò00000(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.int.processInput(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.o0O0.processInputImpl(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.thissuper.processInput(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.g$Oo.processInputImpl(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.thissuper.processInput(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.o000.dispatchEventsToChildren(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.o000.processInputImpl(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.g.processInputImpl(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.thissuper.processInput(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.o000.dispatchEventsToChildren(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.o000.processInputImpl(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.thissuper.processInput(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.o000.dispatchEventsToChildren(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.o000.processInputImpl(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.campaign.comms.v2.EventsPanel.processInputImpl(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.thissuper.processInput(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.o000.dispatchEventsToChildren(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.o000.processInputImpl(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.campaign.comms.return.processInputImpl(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.thissuper.processInput(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.o000.dispatchEventsToChildren(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.o000.processInputImpl(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.newui.o0OO.processInputImpl(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.thissuper.processInput(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.o000.dispatchEventsToChildren(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.o000.processInputImpl(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.O.processInputImpl(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.newui.L.processInputImpl(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.thissuper.processInput(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.o000.dispatchEventsToChildren(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.o000.processInputImpl(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.thissuper.processInput(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.campaign.CampaignState.processInput(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.BaseGameState.traverse(Unknown Source) ~[port_obf.jar:?]
at com.fs.state.AppDriver.begin(Unknown Source) ~[port.common_obf.jar:?]
at com.fs.starfarer.combat.CombatMain.main(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.StarfarerLauncher.super(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.StarfarerLauncher$1.run(Unknown Source) ~[port_obf.jar:?]
at java.base/java.lang.Thread.run(Thread.java:1575) [?:?][close]
Do you know if the bounty had a module ship in it? The line in question is seeing if a module of a ship has an inbuilt ballistic weapon. Also was it Dark.Revenant's Ship and Weapon Pack?
It's going to require a new save however since I'll need to alter the inflation script.Apologies if I come off as a bit obtuse in my reply, but... does this mean starting an entirely new campaign, or will an older save from before said bounty was added be sufficient? Or not, because scripts are 'baked' into the campaign.xml file somehow?
It's going to require a new save however since I'll need to alter the inflation script.Apologies if I come off as a bit obtuse in my reply, but... does this mean starting an entirely new campaign, or will an older save from before said bounty was added be sufficient? Or not, because scripts are 'baked' into the campaign.xml file somehow?
CTD occurred upon accepting the bounty, which as I stated in an earlier reply, was averted (even after accepting said custom bounty) by setting "zda_augment_pack_enable_boolean" to FALSE in this mod's settings.json file and re-starting Starsector.It's going to require a new save however since I'll need to alter the inflation script.Apologies if I come off as a bit obtuse in my reply, but... does this mean starting an entirely new campaign, or will an older save from before said bounty was added be sufficient? Or not, because scripts are 'baked' into the campaign.xml file somehow?
That depends, did your game crash when you accepted the bounty or when you encountered the bounty? Inflation normally takes place when you make contact with a fleet, but I'm not sure how that interacts with custom bounties. Otherwise my 2 major fixes should be ok to add to a current save.
CTD occurred upon accepting the bounty, which as I stated in an earlier reply, was averted (even after accepting said custom bounty) by setting "zda_augment_pack_enable_boolean" to FALSE in this mod's settings.json file and re-starting Starsector.It's going to require a new save however since I'll need to alter the inflation script.Apologies if I come off as a bit obtuse in my reply, but... does this mean starting an entirely new campaign, or will an older save from before said bounty was added be sufficient? Or not, because scripts are 'baked' into the campaign.xml file somehow?
That depends, did your game crash when you accepted the bounty or when you encountered the bounty? Inflation normally takes place when you make contact with a fleet, but I'm not sure how that interacts with custom bounties. Otherwise my 2 major fixes should be ok to add to a current save.
Should I test the actual encounter with "zda_augment_pack_enable_boolean" set to FALSE? Or is it enough to revert to a slightly older save once you've uploaded the hotfixed .jar file?
New fixes are in (hopefully). Salvaging ships with Augment hullmods was leading to the hullmods being removed and than upgraded (couldn't fin the cause) now if moused over there is an error beep, but that's just the augment resetting to the level it should be at.Disclaimer: The below results are NOT from a freshly-started new campaign, but from an earlier save that pre-dates accepting the El Psi bounty mission that caused so many issues.
The error popping up from multi module ships should also be fixed now (was an error in how inbuilt weapons were being detected).
It should be save compatible, but if you disabled the CPU inflater to keep playing then all currently inflated fleets (especially persistent bounties already taken) won't receive any augmentations due to the nature of inflation.
Sorry to add yet another crash log to the mix. Crash upon clicking "Recover" after selecting ships from a UAF bounty. List of ships include the UAF's Novaeria (that is a ship that has modules, which is probably the reason as the log includes the Scion hullmod). Re-doing the battle with zda_augment_pack_enable_boolean set to false allowed me to recover the ships without issue.
Crash log:Spoiler1590764 [Thread-2] ERROR com.fs.starfarer.combat.CombatMain - java.util.ConcurrentModificationException
java.util.ConcurrentModificationException: null
at java.base/java.util.LinkedHashMap$LinkedHashIterator.nextNode(LinkedHashMap.java:1023) ~[?:?]
at java.base/java.util.LinkedHashMap$LinkedKeyIterator.next(LinkedHashMap.java:1046) ~[?:?]
at data.hullmods.Systems.ZDA_Scion_Con_Sys.advanceInCampaign(ZDA_Scion_Con_Sys.java:50) ~[?:?]
at com.fs.starfarer.campaign.fleet.FleetData.syncIfNeeded(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.campaign.fleet.FleetData.getMembers(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.campaign.fleet.CampaignFleet.getMembers(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.campaign.fleet.CampaignFleet.getFlagship(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.campaign.fleet.FleetMember.getCaptain(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.campaign.fleet.FleetData.addFleetMember(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.campaign.fleet.FleetData.addFleetMember(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.api.impl.campaign.FleetEncounterContext.recoverShips(FleetEncounterContext.java:1734) ~[starfarer.api.jar:?]
at com.fs.starfarer.api.impl.campaign.FleetInteractionDialogPluginImpl$3.pickedFleetMembers(FleetInteractionDialogPluginImpl.java:1581) ~[starfarer.api.jar:?]
at com.fs.starfarer.ui.newui.FleetMemberRecoveryDialog.advance(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.o000.advanceImpl(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.O.advanceImpl(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.newui.o0Oo.advanceImpl(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.thissuper.advance(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.o000.advanceImpl(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.thissuper.advance(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.campaign.CampaignState.advance(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.BaseGameState.traverse(Unknown Source) ~[port_obf.jar:?]
at com.fs.state.AppDriver.begin(Unknown Source) ~[port.common_obf.jar:?]
at com.fs.starfarer.combat.CombatMain.main(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.StarfarerLauncher.super(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.StarfarerLauncher$1.run(Unknown Source) ~[port_obf.jar:?]
at java.base/java.lang.Thread.run(Thread.java:1575) [?:?][close]
Sorry to add yet another crash log to the mix. Crash upon clicking "Recover" after selecting ships from a UAF bounty. List of ships include the UAF's Novaeria (that is a ship that has modules, which is probably the reason as the log includes the Scion hullmod). Re-doing the battle with zda_augment_pack_enable_boolean set to false allowed me to recover the ships without issue.
Crash log:Spoiler1590764 [Thread-2] ERROR com.fs.starfarer.combat.CombatMain - java.util.ConcurrentModificationException
java.util.ConcurrentModificationException: null
at java.base/java.util.LinkedHashMap$LinkedHashIterator.nextNode(LinkedHashMap.java:1023) ~[?:?]
at java.base/java.util.LinkedHashMap$LinkedKeyIterator.next(LinkedHashMap.java:1046) ~[?:?]
at data.hullmods.Systems.ZDA_Scion_Con_Sys.advanceInCampaign(ZDA_Scion_Con_Sys.java:50) ~[?:?]
at com.fs.starfarer.campaign.fleet.FleetData.syncIfNeeded(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.campaign.fleet.FleetData.getMembers(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.campaign.fleet.CampaignFleet.getMembers(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.campaign.fleet.CampaignFleet.getFlagship(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.campaign.fleet.FleetMember.getCaptain(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.campaign.fleet.FleetData.addFleetMember(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.campaign.fleet.FleetData.addFleetMember(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.api.impl.campaign.FleetEncounterContext.recoverShips(FleetEncounterContext.java:1734) ~[starfarer.api.jar:?]
at com.fs.starfarer.api.impl.campaign.FleetInteractionDialogPluginImpl$3.pickedFleetMembers(FleetInteractionDialogPluginImpl.java:1581) ~[starfarer.api.jar:?]
at com.fs.starfarer.ui.newui.FleetMemberRecoveryDialog.advance(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.o000.advanceImpl(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.O.advanceImpl(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.newui.o0Oo.advanceImpl(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.thissuper.advance(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.o000.advanceImpl(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.thissuper.advance(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.campaign.CampaignState.advance(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.BaseGameState.traverse(Unknown Source) ~[port_obf.jar:?]
at com.fs.state.AppDriver.begin(Unknown Source) ~[port.common_obf.jar:?]
at com.fs.starfarer.combat.CombatMain.main(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.StarfarerLauncher.super(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.StarfarerLauncher$1.run(Unknown Source) ~[port_obf.jar:?]
at java.base/java.lang.Thread.run(Thread.java:1575) [?:?][close]
Do you know if it was a standard bounty (vanilla type) or a magic bounty I'm currently testing some Ship and Weapon IBB bounties and there's some oddities with them being inflated multiple times. Not sure if a similar issue might exist with the UAF bounties.
Got another few hotfixes for the experimental downloads.Quick-and-dirty testing with SWP bounties no longer result in CTDs, nor did I notice abnormal/multiple sets of ARRUS hullmods being present on those bounties that didn't CTD-upon-encounter-or-selected-on-the-Intel-screen with v0.8.003 and earlier.
https://pastebin.com/Wg9Zvigh
Not sure what caused this crash, it was when I was randomly flying around in hyperspace.
https://pastebin.com/Wg9Zvigh
Not sure what caused this crash, it was when I was randomly flying around in hyperspace.
Sorry what version were you using? I've done a little editing at the line where it crashed, need to known if it needs another look or not.
https://pastebin.com/Wg9Zvigh
Not sure what caused this crash, it was when I was randomly flying around in hyperspace.
Sorry what version were you using? I've done a little editing at the line where it crashed, need to known if it needs another look or not.
Had the same crash happen using 0.8.004
Got another few hotfixes for the experimental downloads.Quick-and-dirty testing with SWP bounties no longer result in CTDs, nor did I notice abnormal/multiple sets of ARRUS hullmods being present on those bounties that didn't CTD-upon-encounter-or-selected-on-the-Intel-screen with v0.8.003 and earlier.
Haven't gotten around to testing any scenarios with UAF and More Military Missions (though I DO have those present and enabled in my current Starsector campaign), but I'll pay attention to what happens if/when I end up fighting them at some point.
@ TimeDiver If you're willing to help could you please start a new save under the Persean League any fly around and buzz any of their fleets with Monitors in them (should be a few) by all rights it should cause a similar crash since like the Sporeship the Monitor is equipped with 2 built in Ballistic weapons (The check for which is causing that crash)?Just did so (all ARRUS mod settings are at defaults), got the following CTD upon hovering my mouse cursor over one such fleet:
@ TimeDiver Ok I can see the Ruthless sector is having an error before my code shows up, I'm going to quickly install that and try it myself.Just tried a new start without Ruthless Sector enabled; did not get the CTD, so now to figure out which Ruthless Sector setting might be responsible, since I customized no small number of Ruthless Sector's settings through LunaLib.
@ TimeDiver Ok I can see the Ruthless sector is having an error before my code shows up, I'm going to quickly install that and try it myself.Just tried a new start without Ruthless Sector enabled; did not get the CTD, so now to figure out which Ruthless Sector setting might be responsible, since I customized no small number of Ruthless Sector's settings through LunaLib.
Having said the above? An entirely new campaign start was required; I couldn't just load the already-created campaign (even 'fresh' from its Nexerelin start in Thule, the very first save created), got the same CTD even with Ruthless Sector disabled.
So is the completely fresh start, allowing you to see inflated Monitors now? I could only test Ruthless sector from a new campaign and didn't run into any of those errors.Correct; Ruthless Sector had to be disabled entirely, but while I can safely view Monitors, a different fleet (spawned by Knights of Ludd) results in a crash-to-desktop instead.
https://pastebin.com/Wg9Zvigh
Not sure what caused this crash, it was when I was randomly flying around in hyperspace.
Sorry what version were you using? I've done a little editing at the line where it crashed, need to known if it needs another look or not.
Had the same crash happen using 0.8.004
Would you mind posting the crash log if possible?
18474741 [Thread-2] ERROR com.fs.starfarer.combat.CombatMain - java.lang.NullPointerException: Cannot invoke "com.fs.starfarer.api.loading.WeaponSpecAPI.getType()" because the return value of "com.fs.starfarer.api.SettingsAPI.getWeaponSpec(String)" is null
java.lang.NullPointerException: Cannot invoke "com.fs.starfarer.api.loading.WeaponSpecAPI.getType()" because the return value of "com.fs.starfarer.api.SettingsAPI.getWeaponSpec(String)" is null
at data.aaz_ar_hull_scripts.ZDA_Augment_Inflation_Listener.reportFleetInflated(ZDA_Augment_Inflation_Listener.java:587) ~[?:?]
at com.fs.starfarer.api.campaign.listeners.ListenerUtil.reportFleetInflated(ListenerUtil.java:400) ~[starfarer.api.jar:?]
at com.fs.starfarer.campaign.fleet.CampaignFleet.inflateIfNeeded(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.ui.impl.StandardTooltipV2.createFleetTooltip(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.campaign.F.super(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.campaign.CampaignEngine.advance(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.campaign.CampaignState.advance(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.BaseGameState.traverse(Unknown Source) ~[port_obf.jar:?]
at com.fs.state.AppDriver.begin(Unknown Source) ~[port.common_obf.jar:?]
at com.fs.starfarer.combat.CombatMain.main(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.StarfarerLauncher.super(Unknown Source) ~[port_obf.jar:?]
at com.fs.starfarer.StarfarerLauncher$1.run(Unknown Source) ~[port_obf.jar:?]
at java.base/java.lang.Thread.run(Thread.java:1575) [?:?]