[Starsector Mods][0.95.1a] Nexerelin v0.10.5b “Sierra Nevada” (update 2022-09-17)

  • Post category:Mods
  • Post comments:0 Comments


(explanation)

Nexerelin v0.10.5b

Requires


Integrated with

Download

Previous downloads

On Nexus
Git repository

Make sure to delete your old Nexerelin folder before installing a new full version!

Having problems? Visit the

Features

  • 4X game features in Starsector
    • Factions will wage war against each other and try to conquer their enemies
    • Diplomacy events see faction relationships changing over time
    • Join a faction to gain useful support and represent them in war and peace, or start your own
    • Alliances offer mutual assistance in times of war
    • Planet descriptions can change as territory is won and lost (in development)
  • More things to do
    • Mine planets and asteroids for useful resources for trade, or some treasure
    • Use operatives to subvert other factions to your own ends
    • Requisition fleets from your colonies to carry out tasks
    • Pay tribute for the right to infringe on factions’ territory
    • Bring aid to troubled worlds to keep them from decivilization
    • Turn in prisoners for reputation or cash
    • Browse the Prism Freeport for rare and pricey ships
    • Construct remote outposts to aid exploration
  • More events
    • Remnant raids
    • Relief fleets
    • Vengeance fleets
  • New starting options
    • Play in a randomly generated Sector, or travel the star systems seen in vanilla and other mods
    • Begin your journey with a range of starting factions and ships
  • Gameplay tweaks
    • Befriend pirates to lower the effects of their activity on your colonies
    • Lower tariffs on trade
    • …and more enhancements

Report issues on GitHub

Quick help
Alliances
Mining
Faction config files

FAQ

Spoiler: click to expand
Spoiler
What is this?
This is my personal fork of

How do I win the game?

  • Conquest victory: Your faction or alliance controls a simple majority of the total market size in the sector, or two-thirds of the heavy industries (not weighted by size).
  • Diplomatic victory: You are friendly or better with every faction.
  • Story victory: Complete the Galatia Academy quest.

Note that pirate-type factions (including Luddic Path) are not counted for victory conditions with default config settings.

How do I disable a vanilla faction from interacting with the invasions, diplomacy and such?
Open its faction config in data/config/exerelinFactionConfig and set the playable tag to false.

How do I make my mod compatible with Nexerelin?
There are a few things you need to do.
(note: add needed files and csv entries in your own mod, so you don’t need a new Nexerelin release before your mod becomes Nexerelin compatible)

Spoiler: click to expand
Spoiler
1) Stop it from crashing
Your sector generation code should have something like this:

Code: java
import exerelin.campaign.SectorManager;
/*[...]*/

public class MyModPlugin {
    @Override
    public void onNewGame()
    {
boolean haveNexerelin = Global.getSettings().getModManager().isModEnabled("nexerelin");
if (!haveNexerelin || SectorManager.getManager().isCorvusMode())
    new MySectorGen().generate(Global.getSector());
    }
/*[...]*/
}

If you don't want to import Nexerelin as a library, you can check for random sector at the new game stage by checking if Corvus (or some other vanilla system/planet) exists.

Be careful with any code that targets a specific planet or star system by name! Make sure you disable it in non-Corvus mode, and don't assume a given planet will always belong to its original owner.

2) Add your faction to the list
Open data/config/exerelinFactionConfig and make a .json file with the name of your faction. Actually, copypaste one of the existing ones, like Templars, because it’s faster that way.

Now open your new file and edit it. See this page for details on the various tags and what they do.

Then make a copy of data/config/exerelinFactionConfig/mod_factions.csv in your mod. Edit this copy to contain your faction(s) (and only yours; the other factions should remain in Nexerelin's master copy).

3) Non-random sector support
Copy corvus_spawnpoints.csv in the same way and have the file contain appropriate entries for your faction. This tells Nexerelin where to spawn the player at start.

Changelog

Spoiler: click to expand
Spoiler
## v0.10.5b ##
### Gameplay ###
* Introduce system for faction-specific market conditions
    * Currently have a +10% accessibility condition for pirates and Luddic Path
* Transfer market: Option to hand to commissioning faction and auto-get governorship
* Cargo scan doesn't check for heavy armaments if player has commission or alliance
* Ground battle gives free storage unlock on victory if player is attacker
* Independents can have a special task group as a treat
* Recently captured markets can't be transferred to factions hostile to player
* Old-style vengeance fleets cancel spawn if spaceport is disrupted
* Build station mission has small chance to not spawn interfering fleet
* Player special task groups have a teleport button for when they're stuck
* Remnant mission 2: Add some cool loot to mothership
* Remnant mission 3: Can now offer to join operation after fleets move out but before they reach target system; increase payment; other tweaks
* Random sector: Constrain min/max stars in central constellation
* Add a size-based minimum raid strength to cause unrest from raiding
* Fractal Shipworks milestone unlocked by Remnant plus bounty as well

### Fixes ###
* Counter-invasions aren't modified by brawl mode; fix them adding rather than costing invasion points
* Fix bugs with special task group costs
    * Fix having multiple special task groups but only paying for one
    * Fix player special task groups costing supplies for repairs and CR recovery
    * Remove the 25% premium paid on supplies and crew salaries (was supposed to be removed previously but this was bugged)
* Stellar Networks: prevent a case of marine XP loss when checking Remnant contact missions during remote call
* Fix submarkets on governed colony not being reset when player loses commission
* Skip invalid faction starting special items when generating blueprints for own faction start's bonus picker
* Colony expedition intel doesn't crash if market desc changer isn't running
* Fix a potential bug with minimum merc company level if player max level is changed
* Fleet request menu no longer leaks location of hidden bases
* Hypershunt encounter: Fix fleet behavior; giving a beta core no longer gives Remnant rep (only alpha core does)
* Fix a bug in alliance join weighting with `ignoreAlignmentForAlliances` setting

### Text ###
* Clarify counter-invasion text when ended due to invader being repulsed
* Replace en dashes with hyphens for Chinese version
* Fix ground battle 'timer for decision' bullet point
* Fix a counter-invasion cancellation message

### Modding ###
* Compatibility with newest Adjusted Sector
* Nex raids and (probably) legacy invasions support Crew Replacer mod
    * New invasion system to come later, will likely require significant modification
* Add `isPlayerRuled` setting to faction config (early implementation, largely untested)
* Add AgentActionListener
* Own faction setup picker: Fix title in tooltip of non-package blueprints
* Add `skillsReplace` setting for AIM merc officers
* Factions marked as 'free start' in their config won't generate planets or be toggleable in random sector

## v0.10.5 ##
### Gameplay ###
* Add counter-invasions vs. player ground battles
* Victory score: Alliance score no longer summed up; instead, individual members contribute half their own score to all allies
* Special task group improvements and fixes
    * Fix fleets sometimes wandering off to do their own thing even in non-independent mode
    * Fix upkeep costs not being charged
    * No longer capped at one fleet
    * Automated Ships skill no longer available to special task group commander (automated ships will always be usable anyway)
    * Player special task groups can also be created at commissioning faction markets, for now
    * Dead player special task groups can be respawned instead of disbanded (experimental)
    * Prevent issues when transferring Secrets of the Frontier's Sierra to a task group
    * Attempt to debug variants sometimes being lost
* Restore player relations on resigning commission
    * Relations are saved on receiving commission
    * On resign, if any relations are lower than (stored relation - 10), raise them to that level
    * Relations will not be raised with factions that have ever turned hostile to player due to sat bombing
    * Can be disabled with `factionCommissionRestoredRelationshipPenalty` value in settings.json (vanilla value, not included in Nex settings by default)
* Operative improvements/fixes
    * Can recruit other operatives (requires level 3 or higher)
    * Add repeat toggle for raise/lower relations
    * Internal security mode doesn't kill cells on commissioning faction's markets
        * Can be changed in settings.json if wanted
    * Aborting a travel action aborts the queued action as well (instead of letting it be done remotely)
    * Fix operative dismissal losing the cost of queued action
    * Fix cell kill not targeting governed colonies; fix find pirate base using cell kill logic
    * Try to make specialization of operatives in bars more random, less "sticky"
* After ground battle, return marines and heavy arms to player cargo automatically if player fleet is close enough
* Can turn in AI cores to Remnant contact
* Player faction alignment can be set in (new) player faction's diplomacy profile
* Remnant mission 2: Add an illustration in appropriate dialog; tweaks
* Remnant mission 3 improvements
    * Delay straggler spawning/departure, and notify on departure
    * Give more time to offer services to attackers
    * Try to reduce time attack fleets spend avoiding nexus
    * Better handling of the faction captains belong to
* Player-initiated rebellions allow governorship discount if successful
* Old-style vengeance fleets now the default again; halve vengeance point generation if new-style fleets are in use
* Exploit mitigation for repeatedly invading and giving away a planet
* Recipient fleet in build station mission is ignored by other fleets
* No-peace-while-ongoing-invasion applies to Hegemony inspections as well
* Enemy fleet in ground battle tutorial somewhat smaller

### GUI ###
* Ground battle intel: add bullet point for time left to seize planet if desired
* Ground battle log only shows messages from last 50 turns
* Diplomacy profiles have toggle for displaying disposition towards others vs. others' disposition towards us
* Insurance intel displays ships in 2 columns (potentially more with a sufficiently wide screen)

### Fixes ###
* Compatibility with new MagicLib asteroid plugin
* Fix fleets with Follow Me not joining battles when they should
* New game faction picker groups now dynamically handled, no longer break if more than 10 groups
* Safety for `RaidAssignmentAINoWander` and memorial graveyard ship spawning crashes
* Rebellion condition: Don't remove if can't find event (can cause concurrent modification); add report when this happens
* Don't check faction vengeance events for non-live factions
* Fix UX and a potential crash in Remnant mission 1 failure path
* Fix hypershunt discovery encounter being massively oversized with some mods
* Planets that have been VIC virus bombed are rejected immediately as potential targets for colony expeditions
* Block prisoner drops from automated ships even without specific faction config
* Printing mining tools doesn't break completely on invalid variant
* Fix At The Gates dialog (and potentially mission) appearing if player skips story and then interacts with Ziggurat
* Fix admin sometimes not changing on market capture when it should
* Fix vanilla bug where cheap commodity mission doesn't use its 'local' form
* Workaround for vanilla bug where ally fleet commanders can be removed from their ships
* Don't upsize NPC colonies if growth rate is non-positive (fixes potential tug-of-war with VIC virus bomb)
* Fix false information in bluff option tooltip during build station mission

### Modding ###
* Add faction and global settings to use faction relations from config in non-random sector (instead of those applied by script)
* Alliance perma-members still leave if they die or the console command is used
* Fix handling of preferred admin memory key
* Faction alignments stored as MutableStats in memory
* Adjust aquaculture generation logic in random sector
* Random sector/own faction start procgen doesn't add colonies to planets with no-colonize memory flag

### Misc ###
* Add an easter egg with Secrets of the Frontier's Sierra

Note on using Save Transfer (and other console commands)
You may want to use the ResetRelationships command to start with fresh faction relationships (particularly if some factions died in the last run).

The SetMarketOwner command can be used to give a market to another faction (including one not currently alive in the sector).

Credits
Zaphide: the original Exerelin
Dark.Revenant: much coding help; SS+ and descendant mod compatibility
LazyWizard: Version Checker, Console Commands, other code
Soren: Player flags
Tartiflette: Prism Freeport
Weezer, Mace: Captured planet descriptions
The SS mod community: various content contributions, tips, pointers and feedback
Zeke "MesoTroniK" W.: Starsector team assistance
Alex, David, Ivaylo, StianStark: Starsector, what keeps us here
And lastly you, for playing this

Spoiler: click to expand
Metadata

true
https://i.imgur.com/3nMFPev.jpg
exerelin_config.json


Nice to see (N)exerelin back, good work Histidine. I'll have to release a Scy update to make it compatible, but in the meantime here's an updated faction file: the current one is lacking a lot of new stuff.

Since it didn't worked in Exerelin, would it be possible to use ships instead of wings to mine too? I made a mining destroyer that beg to be put to good use, and should be more efficient than a wing since it's quite bigger. I already commented out the corresponding entry for when it become possible (unless you already changed that in this case thank you).

Well, gotta get back working on that update then.

[attachment deleted by admin]

Bug when i launched the campaign, after distributing my skill points at the character creation.

Code
106480 [Thread-5] ERROR com.fs.starfarer.combat.O0OO  - java.lang.RuntimeException: Texture [urban03] from category [illustrations] not found
java.lang.RuntimeException: Texture [urban03] from category [illustrations] not found
at com.fs.starfarer.settings.StarfarerSettings.Ó00000(Unknown Source)
at com.fs.starfarer.campaign.BaseCampaignEntity.setInteractionImage(Unknown Source)
at data.scripts.world.ExerelinSectorGen.pickEntityInteractionImage$(ExerelinSectorGen.java:173)
at data.scripts.world.ExerelinSectorGen.buildSystem(ExerelinSectorGen.java:684)
at data.scripts.world.ExerelinSectorGen.generate(ExerelinSectorGen.java:383)
at com.fs.starfarer.campaign.save.CampaignGameManager.super(Unknown Source)
at com.fs.starfarer.title.OoOO.dialogDismissed(Unknown Source)
at com.fs.starfarer.ui.do.dismiss(Unknown Source)
at com.fs.starfarer.ui.impl.O0oO.dismiss(Unknown Source)
at com.fs.starfarer.campaign.save.O0oO.actionPerformed(Unknown Source)
at com.fs.starfarer.ui.i.o00000(Unknown Source)
at com.fs.starfarer.ui.OooO.processInput(Unknown Source)
at com.fs.starfarer.ui.V.o00000(Unknown Source)
at com.fs.starfarer.B.null.class$super(Unknown Source)
at com.fs.super.A.new(Unknown Source)
at com.fs.starfarer.combat.O0OO.o00000(Unknown Source)
at com.fs.starfarer.StarfarerLauncher$2.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)

Tried a few times with just Lazylibs, Shaderlibs and common radar. Most of the [urban] textures seems to be missing or something.


Bug when i launched the campaign, after distributing my skill points at the character creation.

Code
106480 [Thread-5] ERROR com.fs.starfarer.combat.O0OO  - java.lang.RuntimeException: Texture [urban03] from category [illustrations] not found
java.lang.RuntimeException: Texture [urban03] from category [illustrations] not found
at com.fs.starfarer.settings.StarfarerSettings.Ó00000(Unknown Source)
at com.fs.starfarer.campaign.BaseCampaignEntity.setInteractionImage(Unknown Source)
at data.scripts.world.ExerelinSectorGen.pickEntityInteractionImage$(ExerelinSectorGen.java:173)
at data.scripts.world.ExerelinSectorGen.buildSystem(ExerelinSectorGen.java:684)
at data.scripts.world.ExerelinSectorGen.generate(ExerelinSectorGen.java:383)
at com.fs.starfarer.campaign.save.CampaignGameManager.super(Unknown Source)
at com.fs.starfarer.title.OoOO.dialogDismissed(Unknown Source)
at com.fs.starfarer.ui.do.dismiss(Unknown Source)
at com.fs.starfarer.ui.impl.O0oO.dismiss(Unknown Source)
at com.fs.starfarer.campaign.save.O0oO.actionPerformed(Unknown Source)
at com.fs.starfarer.ui.i.o00000(Unknown Source)
at com.fs.starfarer.ui.OooO.processInput(Unknown Source)
at com.fs.starfarer.ui.V.o00000(Unknown Source)
at com.fs.starfarer.B.null.class$super(Unknown Source)
at com.fs.super.A.new(Unknown Source)
at com.fs.starfarer.combat.O0OO.o00000(Unknown Source)
at com.fs.starfarer.StarfarerLauncher$2.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)

Tried a few times with just Lazylibs, Shaderlibs and common radar. Most of the [urban] textures seems to be missing or something.

Hmm, that's odd.

What OS? I'm wondering if the Linux/Mac installers don't have the (unused in vanilla, AFAIK) urban graphics included.
Vanilla folder graphicsillustrations should contain files urban_0[1-3].jpg, with the corresponding entries in settings.json->illustrations:

Code
"urban00":"graphics/illustrations/urban00.jpg",
"urban01":"graphics/illustrations/urban01.jpg",
"urban02":"graphics/illustrations/urban02.jpg",
"urban03":"graphics/illustrations/urban03.jpg",

But I want to push another bugfix soon anyway, so I'll probably just take them out for the time being.
To do this locally: comment out lines 150-153 in data/scripts/world/ExerelinSectorGen.java

would it be possible to use ships instead of wings to mine too?

I don't actually have any plans to implement mining for now, but if I do I'll keep that in mind!


Awesome man!

If this mod gets compatible with SS+ my life is complete!

Hahaha, great work indeed!

greetings
Ahne


Hmm, that's odd.

Actually nevermind. I'm just a braindead idiot that forgot to update his game to RC2. God i feel so bad...

Anyway, congrats on updating (N)Exerelin to 0.65.2, i'm sure a lot of people will be happy to see this mod working again.


Thank you I appreciate this.
Also this should be moved to the mods thread instead of hiding in the modding area.
After adding all the mods you mentioned, and after making a character, when it is starting the game by "creating trade fleets", it crashes, saying something like
: out of bounds:10.

UPDATE:
after reinstalling SS and all mods it worked. Thanks.
another update
After doing the above and starting with a crystantite ship, picked a fight with a one-ship fleet of "neutral" faction, defeated it, took more cargo than could carry, GAME CRASHED:
427339 [Thread-5] INFO  com.fs.starfarer.combat.CombatEngine  - FP1: 5, FP2: 5, maxFP1: 200, maxFP2: 200
470935 [Thread-5] INFO  exerelin.world.InvasionFleetManager  - Get reserve size - failed to get key fake_market
475523 [Thread-5] ERROR com.fs.starfarer.combat.D  - java.lang.NullPointerException
java.lang.NullPointerException
   at exerelin.campaign.DiplomacyManager.reportBattleOccurred(DiplomacyManager.java:445)
   at com.fs.starfarer.campaign.CampaignEngine.reportBattleOccurred(Unknown Source)


Dude, why isn't Exi in here? They were around in 54 and especially in 62!

Nexerelin v0.2.2
Download

Code
v0.2.2
- Compatibility with Exigency, II and Templars (once they're updated)
-- SCY too, but I forgot to uncomment the lines in rules.csv so you'll have to do it manually unless I update again by then
- Fix crash after fighting with independents
- Agents, prisoners, saboteurs less common
- Reduce reserve damage from saboteur action
- Lower chances of detection from destroying food
- NPC covert action interval increased 30 days -> 45
- Don't change storage submarket faction on market capture

After doing the above and starting with a crystantite ship, picked a fight with a one-ship fleet of "neutral" faction, defeated it, took more cargo than could carry, GAME CRASHED:
427339 [Thread-5] INFO  com.fs.starfarer.combat.CombatEngine  - FP1: 5, FP2: 5, maxFP1: 200, maxFP2: 200
470935 [Thread-5] INFO  exerelin.world.InvasionFleetManager  - Get reserve size - failed to get key fake_market
475523 [Thread-5] ERROR com.fs.starfarer.combat.D  - java.lang.NullPointerException
java.lang.NullPointerException
   at exerelin.campaign.DiplomacyManager.reportBattleOccurred(DiplomacyManager.java:445)
   at com.fs.starfarer.campaign.CampaignEngine.reportBattleOccurred(Unknown Source)

Thanks for report, fixed.

Dude, why isn't Exi in here? They were around in 54 and especially in 62!

'cos it crashes (on account of not keeping Exerelin compatibility in mind during the recent updates)
Don't worry, it'll be updated in time.


Hey, this great, looking forward to seeing it get done.  It's so boring not having a conquer-the-Sector mod atm :)

Starting templar ship really needs to be the _sal variant.  The current one is the support one, making it nigh impossible to fight properly.

Nexerelin v0.2.3
Download

Code
v0.2.3
- Fix misreporting of market captures
- Fix SCY support
- Fix Mayorate being listed in the wrong category
- Change starting Templar Martyr variant to Saltare
- Reduce default star/planet/station count
- Remove size 2 stations

Histidine, since you are updating this very often (appreciated!) I might suggest utilizing Version Checker here :)

Hum, Scy will need an update on my end to be compatible, since I removed the "Exerelin" check. But at least it should work as soon as I release something.

Huh, i did not even realize i made my mod (N)exerelin compatible. Oh well. Time to stomp some stations with the Rebirth-class.

Leave a Reply