Fractal Softworks Forum

Please login or register.

Login with username, password and session length
Advanced search  

News:

Starsector 0.95.1a is out! (12/10/21); Blog post: Hyperspace Topography (10/12/22)

Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Topics - JAL28

Pages: [1]
1
Suggestions / Actually do the TODO stuck in Penelope Star’s code
« on: July 22, 2022, 09:41:14 PM »
Apparently there’s been a TODO on Ithaca for like 6 years that claims that it could potentially get abandoned infrastructure or something like that. So I believe that this TODO should actually be worked on or if not at least give a reason for why it was never worked on.

Hell, maybe even tie it into new update lore. I dunno.

2
Mods / [0.95.1a] Diktat Enhancement 1.2.0e
« on: October 20, 2021, 08:45:59 PM »
Diktat Enhancement

“Phillip Andrada, former Hegemony Admiral turned ‘Supreme Executor’ of the Sindrian Diktat: While originally a ruthless, charismatic and opportunistic leader who increased the Diktat’s strength tenfold during its initial birth with the usage of Domain-era tech and intelligence gathering, he now grows ever more deranged and irrational with each passing cycle, causing massive unrest amongst the Diktat hierarchy. COMSEC recommendation: no intervention necessary. Andrada will tear himself and his Diktat apart given enough time.” - classified COMSEC POI report



Powering Lobsters since 2021

Ever felt the Sindrian Diktat was too weak as a faction? Ever wanted to see it actually do anything in Nexerelin games without flopping and dying as soon as another faction remembers it exists?

Well look no further! This mod considerably buffs up the Sindrian Diktat to somewhere between Tri-Tachyon and PL/Hegemony level of size and power, giving them a new system, new markets, lots of QOL things, secret things, fighters and lots more! Also adds some non-Diktat related content; which can be toggled in settings.json if they don't suit your tastes(only on new game gen however!).

And if you don’t want the Diktat to be overtuned or come out of their little searing hidey-hole DE now adds Lite Mode, a mode toggleable in settings.json that removes most extra-Askonia DE-added content!

And if you want the Diktat to stay in Askonia only DE now adds Fortress Mode, a mode toggleable in settings.json that replaces much DE content(when applicable) with Askonia-based substitutes!

Now compatible with PAGSM(mostly).

Partially save compatible - Won’t crash your game if loaded in the midst of a save, but many features(primarily markets) will not be applied to the existing savegame.

Also note that DE can and often will break vanilla lore about the Sindrian Diktat. Be warned.

Requires MagicLib, LazyLib

Current Version: 1.2.0e


https://github.com/Jal85/Diktat-Enhancement/raw/main/Diktat%20Enhancement%201.2.0d.zip


Advisory: If you see a _MACOSX file inside Diktat Enhancement files, just throw it in the bin; it is not relevant to the content of the mod in any way.

Credits:
- Tim, Histidine, Ruddy, Hartley and many more of the Unofficial Starsector Discord for helping me iron out all the kinks in the code!
- Hartley for letting me use the names of some of Substance.Abuse's alcohols in bar descriptions
- Kirbo for helping me with Laticlavus and Vanquisher sprites
- SirLucanus for respriting the Nephrops and Metanephrops/making the Langusta so they don't look horrible
- Alfonzo for letting me use the veteran Lion's Guard officer portrait from HMI
- Nia Tahl for letting me make Ingress(LG)

Want to transform your serious and warcrime-perpetuating Diktat into a completely innocent and harmless fuel company selling nothing but fuel, lobsters and goodwill? Check out PAGSM here!

Current Features:
Spoiler
- Adds 3 new markets to Askonia(all Diktat-owned)
- Adds a new system to the north of Askonia with 3 Diktat markets and 1 Pirate market
- Adds 4 new markets, 2 new planets to various core worlds, all intended to be TT colonies that changed hands after the Second AI War(Khuno, Itztlacoliuqui, Kukayin, Cailleach, Bheur, Aisoyimstan)
- A few other minor editions to existing core star systems
- Changes to existing markets(Sindria, Volturn, Cruor)
  - Adds Mantle Bore to Cruor
  - Adds Biofactory Embryo to Volturn, added Dissident and Vice Demand
  - Adds Starfortress(replacing Battlestation), Cryoarithmetic Engine, Volturnian Lobster Brutes, Salvaged Domain-Era Orbital Works to Sindria
  - Adds Cryoarithmetic Engine, Catalytic Core to Culann
  - Adds Biofactory Embryo, Soil Nanites to Eochu Bres
- Adds unique market text for Eochu Bres, Sindria, Tri-Tachyon markets
- Adds 2 new markets in Valhalla, one independent and one Hegemony
- Adds unique faction description for Sindrian Diktat(replacing vanilla one)
- Adds special planetary conditions for Diktat worlds
- Adds special fleets hovering around major Diktat worlds + Midgard
- Adds a secret system outside the core worlds with cool lore!!!
- Adds four new fighters to the Diktat, the Flurry Heavy Bomber, the Bretasinge Defense Drone, the Bretais Support Drone, and the Nephrops(Metanephrops for PAGSM users) Lobster Mech as well as their LG variants
- Adds a few missions to the menu
- Adds a museum interaction to Volturn
- Adds 2 special NPCs to Ryzan Supercomplex
- Adds a special hullmod called Lobster Pods that greatly increases ground support strength for a high credit and OP cost, is also non-building
- Changed Diktat fleet and fighter composition to give them a fighting chance + account for the incoming Diktat nerfs from Alex
- Adds 5 new ships and variants for many of these ships
- Adds 2 LG variants of ships from vanilla and other mods
- Adds 4 new types of weapons
- Adds 8 fighters and LG/pirate variants of some of them
[close]

Ship showcase(surely you didn't think we only offered lobsters here right?):
Spoiler
Mynah

gotta go fast

Mynah(LG)

GOTTA GO FAAAAAAST

Laticlavus

PD was a myth and Andrada debunked it
Kirbo helped with this

Laticlavus(LG)

Large energies are the new trend

Exult

Cursed incarnate, also a box of bees

Starliner(LG)

Please they're just mining drones please don't ask why they have cockpits

Vanquisher

Dominator Made in Sindria
Kirbo helped with this

Vanquisher(LG)

Virgin PD vs chad all frontal hardpoints

Voyager

Bigilance now with actual lance

Ingress(LG)

Andrada's ripoff hammer
[close]
[/spoiler]

Available toggles:
Spoiler
Lite Mode
Meant for those who like their Diktat a little more vanilla-friendly.
Removes the Andor system from spawning, leaving Askonia with only its base markets. Many markets also have colony items removed or upgrades reverted. Intended for those who feel base DE is overturned but still wish to let the Diktat have an edge over its vanilla self.

Fortress Mode
Made for the people who preferred the Diktat stayed in Askonia, but prefer a tougher Diktat too.
Replaces Andor-based markets with Askonia based alternatives, and reinforces a few existing markets by way of colony items. Intended for those who don’t like Andor for whatever reason, or otherwise wanted Diktat to stay in a single, highly-fortified system.
[close]

Changelog:
Spoiler
Version 1.2.0d
- Finally squashed the 4OP annihilator shoal bug because apparently it wasn’t actually fixed

Version 1.2.0c
- Tweaked some engines on Vanquisher(LG) to activate secondary engines like burn drive/maneuvering jets
- Buffed Ingress(LG) OP from 260 to 280
- Changed Conduit Shroud mechanics; now also reduces damage somewhat against energy weapons but will halve flux dissipation while active
- Fixed a duplicated text for Capacitor Discharge
- Fixed description for Capacitor Discharge
- Fixed an issue where Lucanus’ rank and post weren’t being shown properly

Version 1.2.0b
- Added ability to buy lobster plushies for Sierra…infinitely
- Fixed issue with Bifrost Armada duplicating itself
- Added occasional random text advertising Volturnian Museum that can appear in bars

Version 1.2.0a
- Removed redundant conditions from markets(Industrial/Rural/Urbanised Polity) + toned down on liberal use of Frontier/Outpost conditions
- Added ship variants to title screen showcase and simulation screen
- Added reduced explosion hullmod to Exult’s shield module
- Removed refire time from Annihlator Rocket Shoal(this makes it fire rockets at a faster rate)
- Reduced Mining Pod LG’s price to 1 credit so people can’t cheese selling it off
- Reduced Lobster Pod’s price to 500,000 credits base(was 1,000,000 credits base)
- Added crossmod compatibility for HMI on “Curiosity caught the pheonix”
- Fixed Annihlator Rocket Shoal having 4 OP for whatever reason

Version 1.2.0
- Added a bunch of ships to the Diktat
    - Laticlavus, support destroyer with missiles
    - Laticlavus(LG), because large energy is cool
    - Mynah, fast point capper frigate
    - Mynah(LG), NYOOOOM
    - Vanquisher, a sturdy dominator ripoff
    - Vanquisher(LG), virgin PD vs chad all frontal hardpoints
    - Voyager, bigilance complete with actual lance
    - Exult, cursed 4 bay carrier
    - Starliner(LG), its just a mining barge mom
    - Ingress(LG), Andrada’s ripoff hammer
- Added a few fighters to the Diktat
    - Woodpecker, hammer those shields
    - Langusta, Homarus’ cousin born on the sunny side of Sindria
- Added a few weapons
    - Incisor MRM, fast, cheap, fragile, weak and plentiful kinetic missiles
    - PD Scatterblaster, energy Vulcan
    - Tactical Superlaser, 5x the damage, 5x the flux rate, 1.5x the range, 5x the disappointment
    - Cruor Driver, Heavy Mauler’s big bro
- Added SOTF crossmod interaction
- Added Shadowyards crossmod description changes
- Added PAGSM crossmod interaction if you find the funny secret system
- Added a secret bar interaction on Sindria if you somehow get there without a transponder
- Updated Nephrops and Metanephrops sprites courtesy of SirLucanus from unofficial SS discord
- Changed some fighter descriptions

Version 1.1.1g
- Fixed NPE if you tried to steal Drakon’s Orbital Fusion Lamp on Fortress Mode
- Fixed an issue where Opis Mining Platform’s lore interaction could be seen without turning transponder off
- Fixed an issue where DE added fleets failed to actually defend due to rep issue(*** lions guard and being useless due to no rep link with diktat)

Version 1.1.1f
- Fixed crash regarding Drakon on using Nex Random Sector
- Fixed issue where Ryzan NPCs failed to spawn in
- Fixed issue where Drakon did not have a nascent gravity well
- Updated condition image for Megafauna Attacks

Version 1.1.1e
- Removed Nexerelin requirement
- Minor changes to descriptions
- More descriptions.csv easter eggs
- Added a size 2 market to Salus L4 jump point called “Phrygian Immigration Checkpoint”
- Gave name and desc to Volturn’s station
- Added more tips to menu
- Added a boolean in settings that allows you to enable “Diktat Enhancement Fortress Mode” when starting a new save. Features of
  Diktat Enhancement Fortress Mode include:
  - Removing Diktat markets from Andor and transitioning them to Askonia-based substitutes
  - Drakon changed to Terran Eccentric, new condition added, Orbital Fusion Lamp added
  - Cruor gets a station which is named and has a unique sprite
  - Volturn’s orbital station converted to battlestation
  - Some description changes to fit new lore

Version 1.1.1d
- Just a hotfix for a bug that replaced Ragnar-Valhalla Logistical Hub with L4 Asgard Complex

Version 1.1.1c
- Minor changes to interaction to fix clash with vanilla lore
- Minor change to Salus Siphon Platform’s description
- Added tips to main menu - just a documentation since I forgot to last update
- Added a boolean in settings that allows you to enable “Diktat Enhancement Lite” when starting a new save. Features of Diktat
  Enhancement Lite include:
  - Removing Andor and all added DE markets outside of Askonia
  - Removing Biofactory Embryo from Volturn, Mantle Bore from Cruor
  - Removing Megafauna Attacks from Volturn
  - Removing Patriotic Fervour from all Diktat markets
  - Removing Salvaged Domain-Era Orbital Works from Sindria
  - Removing SP Improvement from Sindria’s Fuel Production

Version 1.1.1b
- Added unique bar descriptions for many Diktat planets
- Fixed an issue where Bretasinge and Bretais weren’t considered drone fighters
- Added bar interaction in Diktat bars if the player has a Radiant class battleship
- Added secret lore-based bar interaction in one of DE’s added markets
- Myriad description changes

Version 1.1.1a
- Tweaked the “The Lion’s Maw” mission because it was too easy
- Edited the description of the Metanephrop’s claws due to typos
- Added a funky Easter egg in descriptions.csv

Version 1.1.1
- Added LG variants to all 3 DE-added fighters
- Added the Nephrops Lobster Mech(PAGSM: Metanephrops Lobster Mech) and its LG equivalent the Homarus Battlemech
- Added a few missions in menu
- Removed Volturn’s Patriotic Fervor and replaced it with something else
- Added a function to remove non-Diktat elements from spawning in new game

Version 1.1.0
- Added a secret system outside the core worlds
- Added three new fighters to the Diktat, the Flurry Heavy Bomber, the Bretasinge Defense Drone and the Bretais Support Drone
- Added a museum interaction to Volturn
- Added 2 special NPCs to Ryzan Supercomplex
- Added minor special dialogue to the admin at Midgard
- Added a special hullmod called Lobster Pods that greatly increases ground support strength for a high credit and OP cost, is also non-building
- Changed Diktat fighter composition; they will now prioritize exclusively cheap interceptors/drones like Talon/Thunder or support fighters like Xyphos, with the only exceptions being DE-added fighters; Lion’s Guard roster features more usage of conventional bombers/heavy fighters
- Fixed an ID issue with some ships in DE fleets while PAGSM is enabled
- Fixed a few market text flavour incompatibility issues with PAGSM
- Fixed an issue where market flavour text was not compatible with PAGSM
- Cleaned up useless/redundant files and code in the mod file

Version 1.0.9
- Fixed an issue where DE-spawned special fleets spawned without officers
- Fixed an issue where the PAGSM description for Ryzan Supercomplex was not being used when PAGSM was enabled
- Reduced the size of the Andoran Belt asteroid field
- Tweaked hull frequency and known hull stats of the Diktat
- Updates to PAGSM compatibility(mostly the ever-expanding title of Andrada and compatibility with the DE fleets)

Version 1.0.8
- Adds 3 special fleets, The Pride of The Executor(over Sindria), The Lion’s Cubs(over Ryzan Supercomplex) and the Bifrost Armada(over Midgard). These fleets are often extremely tough, some of them use specially curated autofits that make them extra tough.

Version 1.0.7
- Added a new planet modifier to core Diktat planets called Patriotic Fervor(and its PAGSM counterpart Company Loyalty)
- Added PAGSM compatibility to DE-added planet modifiers
- Changed PAGSM descriptions slightly
- Fixed an issue where Ryzan Supercomplex still partially used its old description when PAGSM was enabled

Version 1.0.6
- Compatibility update with PAGSM, added markets now have different descriptions when PAGSM is used(highly recommended to be used with PAGSM compatibility update for DE)

Version 1.0.5
- Compatibility update to 0.95.1a
- Removed the Andrada interaction because vanilla already has one

Version 1.0.4
- Added Midgard and Asgard Orbital Complexes

Version 1.0.3
- Added L4/L5 asteroids to Ryzan, Bardonia and Erreichen
- Moved Andoran Gate and Stable Points to L4/5 locations
- Added a new jump point in Bardonia’s L4
- Added a new planet in Bardonia’s L5
- Added Nexerelin dependency
- Added a ring/asteroid belt to Bardonia around Savras
- Changed Parthevia’s orbit to be closer to Drakon
- Fixed an issue where Nortia Drone Command Hub used Erreichen Freeport’s market flavour text

Version 1.0.2
- Made Erreichen’s rings look better
- Moved Erreichen to Andor due to jump point duplication issue
- Added an abandoned station to Nortia’s orbit to replace Erreichen Freeport
- Added special condition to Sindria(Salvaged Domain-Era Orbital Works), replacing Pristine Nanoforge
- Added Fuel Production to Salus Siphon Platform
- Added Vast Ruins and Tech-Mining to Opis Mining Platform
- Added Story Point Improvement to Sindria’s Fuel Production(no more perpetual fuel shortage)
- Replaced Volturn’s Ground Defences with Heavy Batteries
- Added special faction description text for Sindrian Diktat
- Added special market flavor text for Kukayin and Cailleach
- Fixed an issue where mod would crash the game if Nexerelin Random Core Worlds was used(1.0.1b fix)
- Fixed an issue with one of the derelicts around Erreichen Freeport crashing the game(1.0.1a fix)
- Fixed an issue where Sindria’s battlestation would remain as a structure on Sindria, causing combat issues and overlapping ground defence/stability stats

Version 1.0.1
- Added 4 new markets, 2 new planets to various core worlds, all intended to be TT colonies that changed hands after the Second AI War(Khuno, Itztlacoliuqui, Kukayin, Cailleach, Bheur, Aisoyimstan)
- Added a new giant planet to the outer Askonia system
    * Added a new abandoned station around said planet(Erreichen Freeport) and some wrecks
- Added unique market text to Sindria
- Changes to existing TriTach markets(Eochu Bres, Culann)
    * Added Cryoarithmetic Engine, Catalytic Core to Culann
    * Added Biofactory Embryo, Soil Nanites to Eochu Bres
    * Added unique market text to Eochu Bres
- Added a barebones interaction for Andrada
- Added unique faction relationship level descriptors for the Diktat
- Fixes for way-too-fast orbits of Vermillion and Bardonia’s ring
[close]

3
Modding / Crash on initiating generation
« on: October 07, 2021, 04:34:37 PM »
Hello, when I try to start generation with my mod enabled the game always crashes why starting generation

Error message:
Spoiler
48953 [Thread-4] ERROR com.fs.starfarer.combat.CombatMain  - java.lang.NullPointerException
java.lang.NullPointerException
   at com.fs.starfarer.combat.entities.terrain.Planet.<init>(Unknown Source)
   at com.fs.starfarer.combat.entities.terrain.Planet.<init>(Unknown Source)
   at com.fs.starfarer.campaign.CampaignPlanet.<init>(Unknown Source)
   at com.fs.starfarer.campaign.CampaignPlanet.<init>(Unknown Source)
   at com.fs.starfarer.campaign.BaseLocation.addPlanet(Unknown Source)
   at data.scripts.world.systems.DE_Andor.generate(DE_Andor.java:139)
   at data.scripts.Gen.generate(Gen.java:27)
   at data.scripts.DE_ModPlugin.initDE(DE_ModPlugin.java:20)
   at data.scripts.DE_ModPlugin.onNewGame(DE_ModPlugin.java:24)
   at com.fs.starfarer.campaign.save.CampaignGameManager.super(Unknown Source)
   at com.fs.starfarer.title.TitleScreenState.dialogDismissed(Unknown Source)
   at com.fs.starfarer.ui.N.dismiss(Unknown Source)
   at com.fs.starfarer.ui.impl.K.dismiss(Unknown Source)
   at com.fs.starfarer.campaign.save.J.actionPerformed(Unknown Source)
   at com.fs.starfarer.ui.newnew.buttonPressed(Unknown Source)
   at com.fs.starfarer.ui.I.Ò00000(Unknown Source)
   at com.fs.starfarer.ui.I.processInput(Unknown Source)
   at com.fs.starfarer.ui.newnew.processInputImpl(Unknown Source)
   at com.fs.starfarer.ui.Q.processInput(Unknown Source)
   at com.fs.starfarer.ui.oO00.dispatchEventsToChildren(Unknown Source)
   at com.fs.starfarer.ui.oO00.processInputImpl(Unknown Source)
   at com.fs.starfarer.coreui.f.processInputImpl(Unknown Source)
   at com.fs.starfarer.ui.Q.processInput(Unknown Source)
   at com.fs.starfarer.ui.oO00.dispatchEventsToChildren(Unknown Source)
   at com.fs.starfarer.ui.oO00.processInputImpl(Unknown Source)
   at com.fs.starfarer.ui.Q.processInput(Unknown Source)
   at com.fs.starfarer.E.int.processInputImpl(Unknown Source)
   at com.fs.starfarer.ui.Q.processInput(Unknown Source)
   at com.fs.starfarer.ui.oO00.dispatchEventsToChildren(Unknown Source)
   at com.fs.starfarer.ui.oO00.processInputImpl(Unknown Source)
   at com.fs.starfarer.ui.N.processInputImpl(Unknown Source)
   at com.fs.starfarer.campaign.save.J.processInputImpl(Unknown Source)
   at com.fs.starfarer.ui.Q.processInput(Unknown Source)
   at com.fs.starfarer.ui.oO00.dispatchEventsToChildren(Unknown Source)
   at com.fs.starfarer.ui.oO00.processInputImpl(Unknown Source)
   at com.fs.starfarer.ui.Q.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.super(Unknown Source)
   at com.fs.starfarer.StarfarerLauncher$1.run(Unknown Source)
   at java.lang.Thread.run(Thread.java:745)
[close]

4
Suggestions / Tech Mining Improvements
« on: September 22, 2021, 07:19:06 AM »
Tech Mining is currently a really useless industry that exists literally only to line the player’s pocket with shiny baubles.

For one, Tech Mining should export a small amount of Supplied/Metals/Heavy Machinery/Ship Hulls. This is due to Tech Mining always creating these commodities without fail every month, as well as the possibility to find derelict ships in ruins.

Also, as ruins are tapped by Tech Mining, they should add growth and income multipliers to colonies depending on the percentage looted and extent of ruins. This could be due to the conversion of ruins into tourist sites(creating income) or using them as bases for new infrastructure(which leads to greater growth).

These would, potentially, make ruins useful for anyone not strapped on shiny baubles to collect as well as make them potentially viable for planets with ruins.

5
Bug Reports & Support (modded) / CTD on loading game
« on: September 22, 2021, 06:48:36 AM »
Ran into this error on a vanilla game, not sure what's causing it because I don't believe I touched the SectorGen file at all

Spoiler
19177 [Thread-4] ERROR com.fs.starfarer.combat.CombatMain  - java.lang.RuntimeException: Error loading [data.scripts.world.SectorGen]
java.lang.RuntimeException: Error loading [data.scripts.world.SectorGen]
   at com.fs.starfarer.loading.scripts.ScriptStore$3.run(Unknown Source)
   at java.lang.Thread.run(Thread.java:745)
Caused by: java.lang.ClassNotFoundException: Parsing compilation unit 'data.scripts.world.SectorGen'
   at org.codehaus.janino.JavaSourceIClassLoader.findIClass(JavaSourceIClassLoader.java:172)
   at org.codehaus.janino.IClassLoader.loadIClass(IClassLoader.java:254)
   at org.codehaus.janino.JavaSourceClassLoader.generateBytecodes(JavaSourceClassLoader.java:214)
   at org.codehaus.janino.JavaSourceClassLoader.findClass(JavaSourceClassLoader.java:178)
   at java.lang.ClassLoader.loadClass(ClassLoader.java:425)
   at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
   ... 2 more
Caused by: org.codehaus.commons.compiler.CompileException: File 'data/scripts/world/SectorGen.java', Line 55, Column 3: Expression ""StarSystemAPI system = sector.createStarSystem("" is not a type
   at org.codehaus.janino.Java$Located.throwCompileException(Java.java:111)
   at org.codehaus.janino.Java$Atom.toTypeOrCompileException(Java.java:2687)
   at org.codehaus.janino.Parser.parseBlockStatement(Parser.java:1157)
   at org.codehaus.janino.Parser.parseBlockStatements(Parser.java:1085)
   at org.codehaus.janino.Parser.parseMethodDeclarationRest(Parser.java:938)
   at org.codehaus.janino.Parser.parseClassBodyDeclaration(Parser.java:565)
   at org.codehaus.janino.Parser.parseClassBody(Parser.java:515)
   at org.codehaus.janino.Parser.parseClassDeclarationRest(Parser.java:481)
   at org.codehaus.janino.Parser.parsePackageMemberTypeDeclaration(Parser.java:269)
   at org.codehaus.janino.Parser.parseCompilationUnit(Parser.java:168)
   at org.codehaus.janino.JavaSourceIClassLoader.findCompilationUnit(JavaSourceIClassLoader.java:203)
   at org.codehaus.janino.JavaSourceIClassLoader.findIClass(JavaSourceIClassLoader.java:146)
   ... 7 more
[close]

6
Bug Reports & Support (modded) / Save fails to load when trying to play
« on: August 31, 2021, 03:10:10 AM »
Hi there, when I try to load up my save from the main menu, the game fails to start up the save and instead gives an error message, pictured below:

https://imgur.com/a/cnNARD6

Here is the related code from starsector.log I could dig up:

Spoiler
92625 [Thread-4] INFO  com.fs.starfarer.campaign.save.CampaignGameManager  - Error loading
92625 [Thread-4] ERROR com.fs.starfarer.campaign.save.CampaignGameManager  - Failed calling method
---- Debugging information ----
message             : Failed calling method
cause-exception     : java.lang.NullPointerException
cause-message       : null
method              : com.fs.starfarer.campaign.fleet.FleetMember.readResolve()
class               : com.fs.starfarer.campaign.fleet.FleetMember
required-type       : com.fs.starfarer.campaign.fleet.FleetMember
converter-type      : com.thoughtworks.xstream.converters.reflection.ReflectionConverter
line number         : 1414111
class[1]            : java.util.HashMap
converter-type[1]   : com.thoughtworks.xstream.converters.collections.MapConverter
class[2]            : com.fs.starfarer.campaign.ModAndPluginData
class[3]            : com.fs.starfarer.campaign.CampaignEngine
converter-type[2]   : com.fs.starfarer.campaign.save.oooO
version             : not available
-------------------------------
com.thoughtworks.xstream.converters.ConversionException: Failed calling method
---- Debugging information ----
message             : Failed calling method
cause-exception     : java.lang.NullPointerException
cause-message       : null
method              : com.fs.starfarer.campaign.fleet.FleetMember.readResolve()
class               : com.fs.starfarer.campaign.fleet.FleetMember
required-type       : com.fs.starfarer.campaign.fleet.FleetMember
converter-type      : com.thoughtworks.xstream.converters.reflection.ReflectionConverter
line number         : 1414111
class[1]            : java.util.HashMap
converter-type[1]   : com.thoughtworks.xstream.converters.collections.MapConverter
class[2]            : com.fs.starfarer.campaign.ModAndPluginData
class[3]            : com.fs.starfarer.campaign.CampaignEngine
converter-type[2]   : com.fs.starfarer.campaign.save.oooO
version             : not available
-------------------------------
   at com.thoughtworks.xstream.core.util.SerializationMembers.callReadResolve(SerializationMembers.java:82)
   at com.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter.unma rshal(AbstractReflectionConverter.java:282)
   at com.thoughtworks.xstream.core.TreeUnmarshaller.convert(TreeUnmarshaller.java:72)
   at com.thoughtworks.xstream.core.AbstractReferenceUnmarshaller.convert(AbstractReferenceUnmarshaller.java:70)
   at com.thoughtworks.xstream.core.TreeUnmarshaller.convertAnother(TreeUnmarshaller.java:66)
   at com.thoughtworks.xstream.core.TreeUnmarshaller.convertAnother(TreeUnmarshaller.java:50)
   at com.thoughtworks.xstream.converters.collections.AbstractCollectionConverter.rea dItem(AbstractCollectionConverter.java:73)
   at com.thoughtworks.xstream.converters.collections.MapConverter.putCurrentEntryInt oMap(MapConverter.java:106)
   at com.thoughtworks.xstream.converters.collections.MapConverter.populateMap(MapConverter.java:98)
   at com.thoughtworks.xstream.converters.collections.MapConverter.populateMap(MapConverter.java:92)
   at com.thoughtworks.xstream.converters.collections.MapConverter.unmarshal(MapConverter.java:87)
   at com.thoughtworks.xstream.core.TreeUnmarshaller.convert(TreeUnmarshaller.java:72)
   at com.thoughtworks.xstream.core.AbstractReferenceUnmarshaller.convert(AbstractReferenceUnmarshaller.java:70)
   at com.thoughtworks.xstream.core.TreeUnmarshaller.convertAnother(TreeUnmarshaller.java:66)
   at com.thoughtworks.xstream.core.TreeUnmarshaller.convertAnother(TreeUnmarshaller.java:50)
   at com.thoughtworks.xstream.converters.collections.AbstractCollectionConverter.rea dItem(AbstractCollectionConverter.java:73)
   at com.thoughtworks.xstream.converters.collections.MapConverter.putCurrentEntryInt oMap(MapConverter.java:110)
   at com.thoughtworks.xstream.converters.collections.MapConverter.populateMap(MapConverter.java:98)
   at com.thoughtworks.xstream.converters.collections.MapConverter.populateMap(MapConverter.java:92)
   at com.thoughtworks.xstream.converters.collections.MapConverter.unmarshal(MapConverter.java:87)
   at com.thoughtworks.xstream.core.TreeUnmarshaller.convert(TreeUnmarshaller.java:72)
   at com.thoughtworks.xstream.core.AbstractReferenceUnmarshaller.convert(AbstractReferenceUnmarshaller.java:70)
   at com.thoughtworks.xstream.core.TreeUnmarshaller.convertAnother(TreeUnmarshaller.java:66)
   at com.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter.unma rshallField(AbstractReflectionConverter.java:503)
   at com.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter.doUn marshal(AbstractReflectionConverter.java:429)
   at com.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter.unma rshal(AbstractReflectionConverter.java:281)
   at com.thoughtworks.xstream.core.TreeUnmarshaller.convert(TreeUnmarshaller.java:72)
   at com.thoughtworks.xstream.core.AbstractReferenceUnmarshaller.convert(AbstractReferenceUnmarshaller.java:70)
   at com.thoughtworks.xstream.core.TreeUnmarshaller.convertAnother(TreeUnmarshaller.java:66)
   at com.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter.unma rshallField(AbstractReflectionConverter.java:503)
   at com.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter.doUn marshal(AbstractReflectionConverter.java:429)
   at com.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter.unma rshal(AbstractReflectionConverter.java:281)
   at com.thoughtworks.xstream.core.TreeUnmarshaller.convert(TreeUnmarshaller.java:72)
   at com.thoughtworks.xstream.core.AbstractReferenceUnmarshaller.convert(AbstractReferenceUnmarshaller.java:70)
   at com.thoughtworks.xstream.core.TreeUnmarshaller.convertAnother(TreeUnmarshaller.java:66)
   at com.thoughtworks.xstream.core.TreeUnmarshaller.convertAnother(TreeUnmarshaller.java:50)
   at com.thoughtworks.xstream.core.TreeUnmarshaller.start(TreeUnmarshaller.java:134)
   at com.thoughtworks.xstream.core.AbstractTreeMarshallingStrategy.unmarshal(AbstractTreeMarshallingStrategy.java:32)
   at com.thoughtworks.xstream.XStream.unmarshal(XStream.java:1486)
   at com.thoughtworks.xstream.XStream.unmarshal(XStream.java:1466)
   at com.thoughtworks.xstream.XStream.fromXML(XStream.java:1346)
   at com.fs.starfarer.campaign.save.CampaignGameManager.super(Unknown Source)
   at com.fs.starfarer.campaign.save.CampaignGameManager.super(Unknown Source)
   at com.fs.starfarer.title.TitleScreenState.menuItemSelected(Unknown Source)
   at com.fs.starfarer.title.Object.actionPerformed(Unknown Source)
   at com.fs.starfarer.ui.newnew.buttonPressed(Unknown Source)
   at com.fs.starfarer.ui.I.Ò00000(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.super(Unknown Source)
   at com.fs.starfarer.StarfarerLauncher$1.run(Unknown Source)
   at java.lang.Thread.run(Thread.java:745)
Caused by: java.lang.NullPointerException
   at com.fs.starfarer.api.impl.campaign.econ.impl.BaseIndustry.getSupply(BaseIndustry.java:734)
   at com.fs.starfarer.api.impl.campaign.econ.impl.BaseIndustry.supply(BaseIndustry.java:316)
   at com.fs.starfarer.api.impl.campaign.econ.ResourceDepositsCondition.apply(ResourceDepositsCondition.java:193)
   at com.fs.starfarer.campaign.econ.Market.reapplyConditions(Unknown Source)
   at com.fs.starfarer.campaign.CharacterStats.refreshAllOutpostsEffectsForPlayerOutp osts(Unknown Source)
   at com.fs.starfarer.campaign.CharacterStats.refreshCharacterStatsEffects(Unknown Source)
   at com.fs.starfarer.api.impl.hullmods.PhaseField.onFleetSync(PhaseField.java:63)
   at com.fs.starfarer.campaign.fleet.FleetData.syncIfNeeded(Unknown Source)
   at com.fs.starfarer.campaign.fleet.FleetData.getMembers(Unknown Source)
   at com.fs.starfarer.campaign.fleet.CampaignFleet.getMembers(Unknown Source)
   at com.fs.starfarer.campaign.fleet.CampaignFleet.getFlagship(Unknown Source)
   at com.fs.starfarer.campaign.fleet.FleetMember.getCaptain(Unknown Source)
   at com.fs.starfarer.campaign.fleet.FleetMember.getCaptain(Unknown Source)
   at com.fs.starfarer.api.util.Misc.getMemberStrength(Misc.java:4246)
   at com.fs.starfarer.campaign.fleet.FleetData.updateFleetPointsUsed(Unknown Source)
   at com.fs.starfarer.campaign.fleet.FleetData.syncIfNeeded(Unknown Source)
   at com.fs.starfarer.campaign.fleet.FleetData.getCommander(Unknown Source)
   at com.fs.starfarer.campaign.fleet.FleetMember.updateStats(Unknown Source)
   at com.fs.starfarer.campaign.fleet.FleetMember.readResolve(Unknown Source)
   at sun.reflect.GeneratedMethodAccessor27.invoke(Unknown Source)
   at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
   at java.lang.reflect.Method.invoke(Method.java:606)
   at com.thoughtworks.xstream.core.util.SerializationMembers.callReadResolve(SerializationMembers.java:78)
   ... 54 more
92626 [Thread-4] INFO  com.fs.starfarer.campaign.save.CampaignGameManager  - Loading stage 11
92626 [Thread-4] INFO  com.fs.starfarer.campaign.save.CampaignGameManager  - Loading stage 12
92629 [Thread-4] INFO  data.scripts.plugins.loa_awacsordermanager  - loa_awacs_order_manager:105: advance called with null engine(this last line repeats around 100 times or so)
[close]

Hope that helps.

The game seems to fail due to something in my fleet(FleetMember or something), it may be due to me having bought ships out of a military market I could not access beforehand, but had access to due to an invasion conducted by myself beforehand(to be exact, bought a Colatlus, Dragon and Dun Scaith from Melchiresa immediately after conquering it), so those ships could potentially be the problem.

7
Suggestions / Remove the standing penalty for friendly fire
« on: August 26, 2021, 05:47:08 AM »
TLDR: Discourages players from joining large NPC battles(the ones you see so often in Nexerelin)

This penalty really doesn’t do anything for the game. What lore/logic benefits it might have is completely downplayed by how sheer counterintuitive it is when considering AI behavior. Say, you see 2 large fleets(invasion fleets perhaps) fighting, one from a faction you are friendly with. and you join the battle on the friendly faction’s side. The battle ends, you expect a boost to your rep to the friendly faction for helping them. But surprise! You get a -15 rep hit for “significant friendly fire incidents”. Ironically, the only way said incidents could have happened is that during the battle many allies clumped together and hence accidentally rammed each other. Great.

The requirements for such a penalty are remarkably vague. It appears that any damage on a ship inflicted by an allied ship in general is recorded as “friendly fire”. It does not differentiate if there was a dedicated sabotage attempt, if a stray shot hit an ally or if said ship literally just got rammed by an ally. It means, for one, that actions you never took(EG. Allies hurting each other) are still credited to you, forcing you to take the blame for something you never intended to do.

Regarding AI behavior, AI fleets during battles can occasionally become “idle”, in which they literally bundle around a single point in the tightest pack possible. They do this even when many enemies and/or stations are still present on the map, for reasons I do not know. The point is, this behavior causes numerous ramming incidents between allied ships trying to squeeze closer to each other, even causing overloads and/or deaths in ships with weaker flux capacitors or thinner armour. Keep in mind you didn’t do this.

And this is without mentioning that ships don’t seem particularly interested to avoid ramming incidents, as the player’s ships run on by they fail to move away and thus get rammed, even when they could have moved an inch to the right and get away scot free.

All this serves to breed an environment where the player is actively discouraged from helping NPCs in big fights, rather forcing the player to fight their enemies alone. Of course, in the long term an AI rework should be made to make sure the AI doesn’t breed environments rife for friendly ramming, but until then the much quicker solution would be simply to remove the rep penalty for friendly fire. Most (sane) players wouldn’t even think of firing on their allies anyway(right?).

8
Suggestions / Water World Improvements
« on: August 12, 2021, 10:27:46 PM »
Right now, Water Worlds are just “Terran, but it can only have adequate farmland which can only be accessed by an objectively inferior industry” which makes them basically inferior to any other habitable world type, unless it happens to be paired with an otherwise amazing system that basically forces you to colonize it. With these changes, Water Worlds will hopefully be able to size up to Terran Worlds of the same category(same modifiers to production) instead of being objectively inferior.

Production Modifiers for Oceans

Right now, oceans only spawn with +0 modifier to production. Hopefully, we can have Ocean Production Modifiers which will work similar to how Farmland modifiers work on Farming production.

Barren Oceans(-1 production)

“[market]’s oceans are almost devoid of life, save for the occasional fish or crustacean. Almost all feedstock must be imported from elsewhere which severely limits profitable farming.”

Adequate Oceans(+0 production)

“[market]’s oceans support a meek but stable ecosystem. While a majority of feedstock must still be imported, limited harvesting of local sea-life reduces import costs and supports a modest farming effort.”

Plentiful Oceans(+1 production)

“[market]’s oceans are teeming with life, providing a considerable boon to fish farms which can profit further by reducing imports of feedstock. Modest amounts of marine snow can also be harvested to improve growth of plant-based aquaculture farms.”

Bountiful Oceans(+2 production)

“[market]’s oceans are a biological treasure trove, hosting a vibrant and burgeoning ecosystem. The seas swarm with colossal shoals of fish capable of feeding massive seafood farms, while copious amounts of marine snow provide ample fertilizer for aquaculture farms. Almost no feedstock is imported, while [market] itself is a major exporter of such feed.”

New Export: Seafood(if someone can suggest a better name by all means do so)

Basically, this item ambodies all of the seafood industry(fish, crustaceans that aren’t Volturnian Lobsters, shellfish etc). A secondary import of Aquaculture, it has a value higher than food but a lower production rate than food(1 unit at size 3, colony size -2 I guess). It is affected, like food production, by production modifiers given by oceans. The hope is that this additional export will offset the increased upkeep that Aquaculture has compared to Farming.

9
I have a rather...interesting bug. As can be inferred from the title, despite me being vengeful(-100) with the pirates, all Pirate Bases appear as neutral(0).

Specs:
Running Nexerelin, HMI, Tahlan, US, SWP, Beyond The Sector, TASC, Kazeron Navarchy, Adjusted Sector all on the (of this post's date) latest versions that can be found on the forum(not the discord).

Notes:
-All fleets around the station are also neutral, meaning they don't attack me even when I saunter in with the transponder on. The base also grants me docking clearance.
-Surprisingly enough, pirates outside these bases(both normal pirates/worlds in the Core Worlds, bounty fleets, even raider fleets sent by said stations) are still hostile to me.
-The bug also applies to all factions; as per Nex, factions try to organize strike missions against bases. However, these missions get immediately canceled due to "faction no longer hostile".
-The bug only affected the game a few cycles(maybe 10? i dont remember), everything was perfectly fine and normal before then.

10
General Discussion / How to get rich in Starsector?
« on: July 23, 2021, 06:36:27 PM »
Everywhere I look, everyone is getting rich off presumably colonies. Everywhere, I see monthly incomes in the several hundred thousands. Meanwhile, my balance is somewhere in the low 30 thousands, decreasing further every month. Despite running 2 colonies, they are barely pulling their own weight(only one even earns over 10k a month nowadays), and my operative/administrator/SPECIFICALLY officer salaries are cutting deep into my income.

What am I doing wrong? Am I not spamming enough colonies? Am I holding good relations with the Hegemony too preciously? Am I just not selling enough drugs? Am I over-worrying about money when I really shouldn't be?

Some complications I have regarding the usual alpha core free moneyprinter setup:
-Commission with the Hegemony. I don't feel like dealing with inspections and risk losing the commission, the only thing that's keeping me from going into negative on my income
-Hegemony allied with Luddic Church, which would mean I would have 2 enemies. Not to mention they are literally the second largest alliance in my game
-Non hostile to Remnant due to Midnight Dissonant, but not high enough relations with them to get the free AI cores. This makes AI core farming more tedious since I don't feel like going back to hostile with them but I can't to get missions from Midnight that aren't bounties for the same factions I am commissioned with or trade disruption(pretty sure those are indie convoys which would be...issue riddled)

Pages: [1]