Coder Social home page Coder Social logo

nexerelin's People

Contributors

bishem avatar blothorn avatar brandond avatar carabusx avatar cmcaine avatar hi117 avatar histidine91 avatar isturdy avatar john-candlebury avatar kevin0117rc avatar lukas22041 avatar manpapper avatar nikothedude avatar nissa-seru avatar sprunk avatar techpriestenginseer avatar trylobot avatar zaphide avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

nexerelin's Issues

FireBest ExerelinNGCStep4Description

๐Ÿ‘‰ ๐Ÿ‘ˆ
image
A 2nd FireBest for another trigger plz ๐Ÿฅบ It's for a very very cool friend who likes custom frigates that disguise as fighters!!!

ExerelinNewGameSetup.java

system.setBaseName(name) needs to be moved down or reused at the end of the generatePrismInOwnSystem function.

Unable to load save game

Running a fairly light package of mods content-wise, I'll list them here:

  • A New Level of Confidence 20 2.1
  • Better Deserving Smods 1.54
  • Combat Chatter 1.12
  • Commissioned Crews 1.999999ggg
  • Dynamic Tariffs 1.4
  • Fast Engine Rendering 1.1.2
  • Fleet Action History 1.0.8
  • Fleet Size by DP 1.0.1b
  • Iron Shell 1.181
  • Lazy Lib 2.7b
  • Leading Pip 1.9.1
  • Logistics Notifications 1.4.4
  • Low Maintenance v1.1
  • MagicLib 0.42.1
  • Nexerlin 0.10.5.b
  • Officer Extension 0.4.3
  • Scaling Skill Limits 0.2
  • Speedup 0.7.2
  • zz GraphicsLib 1.6.1

Installed Nexerlin and Iron Shell and continued an already existing save game. Game worked as expected until I quit out of the game and then loaded the game again, where it gave me a Nexerlin-specific issue, likely something to do with mercenaries.
The full log will be attached to hopefully provide full context/information on how and why the issue happens.

starsector_errorlog.log

27004 [Thread-3] INFO  exerelin.campaign.intel.merc.MercDataManager  - Loading mercenary data
27005 [Thread-3] INFO  com.fs.starfarer.loading.LoadingUtils  - Loading JSON from [DIRECTORY: C:\Program Files (x86)\Fractal Softworks\Starsector\starsector-core\..\mods\Nexerelin (data/config/exerelin/mercConfig.json)]
27006 [Thread-3] INFO  exerelin.campaign.intel.merc.MercDataManager  -   Loading merc company: trigun
27007 [Thread-3] INFO  exerelin.campaign.intel.merc.MercDataManager  -   Loading merc company: menFromVolturn
27007 [Thread-3] INFO  exerelin.campaign.intel.merc.MercDataManager  -   Loading merc company: westernesseKingsOwn
27008 [Thread-3] INFO  exerelin.campaign.intel.merc.MercDataManager  -   Loading merc company: dickerson
27008 [Thread-3] INFO  exerelin.campaign.intel.merc.MercDataManager  -   Loading merc company: steinerGuards
27008 [Thread-3] INFO  exerelin.campaign.intel.merc.MercDataManager  -   Loading merc company: theJokers
27008 [Thread-3] INFO  exerelin.campaign.intel.merc.MercDataManager  -   Loading merc company: pilgrimsGrace
27008 [Thread-3] INFO  exerelin.campaign.intel.merc.MercDataManager  -   Loading merc company: dorasSurvey
27008 [Thread-3] INFO  exerelin.campaign.intel.merc.MercDataManager  -   Loading merc company: endbringer
27037 [Thread-3] INFO  com.fs.starfarer.campaign.save.CampaignGameManager  - Error loading
27037 [Thread-3] 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              : exerelin.campaign.intel.merc.MercContractIntel.readResolve()
class               : exerelin.campaign.intel.merc.MercContractIntel
required-type       : exerelin.campaign.intel.merc.MercContractIntel
converter-type      : com.thoughtworks.xstream.converters.reflection.ReflectionConverter
line number         : 24314
class[1]            : java.util.ArrayList
converter-type[1]   : com.thoughtworks.xstream.converters.collections.CollectionConverter
class[2]            : java.util.LinkedHashMap
converter-type[2]   : com.thoughtworks.xstream.converters.collections.MapConverter
class[3]            : com.fs.starfarer.campaign.rules.Memory
class[4]            : com.fs.starfarer.campaign.econ.Market
class[5]            : com.fs.starfarer.campaign.CampaignPlanet
class[6]            : com.fs.util.container.repo.ObjectRepository
class[7]            : com.fs.starfarer.campaign.StarSystem
class[8]            : com.fs.starfarer.campaign.CircularOrbit
class[9]            : com.fs.starfarer.rpg.Person
class[10]           : com.fs.starfarer.api.impl.campaign.missions.hub.BaseHubMission$PersonMadeRequired
class[11]           : com.fs.starfarer.api.impl.campaign.missions.cb.MilitaryCustomBounty
class[12]           : com.fs.starfarer.api.impl.campaign.missions.hub.MissionFleetAutoDespawn
class[13]           : com.fs.starfarer.campaign.fleet.CampaignFleet
class[14]           : com.fs.starfarer.api.impl.campaign.procgen.Constellation
class[15]           : com.fs.starfarer.api.impl.campaign.intel.bases.PirateBaseIntel
class[16]           : exerelin.campaign.intel.NexPirateActivity
class[17]           : com.fs.starfarer.campaign.econ.MarketCondition
class[18]           : com.fs.starfarer.api.impl.campaign.missions.SecurityCodes
class[19]           : com.fs.starfarer.campaign.Faction
class[20]           : com.fs.starfarer.campaign.CircularOrbitPointDown
class[21]           : com.fs.starfarer.campaign.CustomCampaignEntity
class[22]           : java.util.HashMap
class[23]           : exerelin.campaign.ColonyManager
class[24]           : java.util.LinkedHashSet
class[25]           : com.fs.starfarer.loading.specs.FactionProduction
class[26]           : com.fs.starfarer.campaign.econ.Submarket
class[27]           : com.fs.starfarer.campaign.econ.reach.ReachEconomy
class[28]           : com.fs.starfarer.campaign.econ.reach.ReachEconomyStepper
class[29]           : com.fs.starfarer.campaign.econ.Economy
class[30]           : com.fs.starfarer.campaign.StarSystem$UpdateFromHyperspaceLocation
class[31]           : com.fs.starfarer.campaign.BaseLocation$LocationToken
class[32]           : com.fs.starfarer.campaign.Hyperspace
class[33]           : com.fs.starfarer.campaign.CampaignEngine
converter-type[3]   : com.fs.starfarer.campaign.save.oooO
version             : not available
-------------------------------

Factions without warships (ie: combat_<size> in default_roles) don't get any ships for random start

The function getRandomStartShipsForType(StartFleetType type) in NexFactionConfig.java gets confused if a faction has no ships for a particular role defined, such as having no combat_small ships, and doesn't add any ship for the random pull. The "fallback" role doesn't seem to work fully, for medium and large combat ships. This edge case is most noticeable in factions that have phase_small but no combat_small. Per non-modded settings, phase ships shouldn't go into the non-phase combat category.

I have a cludge for my specific case which adds phase ships to non-phase combat default-roles, but that has further knock on effects (such as not being able to add the harbinger to the combat_medium without it being the only destroyer that TriTachyon gets in a random start, due to TriTachyon having harbinger as a preferred hull).

Might suggest using the faction factionDoctrine's phaseShips value in the .faction file to add some number of phase ships to the random list, which would fix the case for some rolls (plus increase the pool for random ships).

https://github.com/Histidine91/Nexerelin/blob/master/jars/sources/ExerelinCore/exerelin/utilities/NexFactionConfig.java#L889

Sabotaging undisruptible industries

Hello,

I noticed that sometimes operatives try to sabotage structures that cannot be interrupted. Although the message for a successful sabotage states that structure will be disrupted for x days, the structure won't actually be disrupted. So I wondered if it would make sense to check for BaseIndustry.canBeDisrupted() when trying to sabotage a structure.

image

image

Thank you for your consideration and your great mod!

Game version:
0.97a-RC11

Mods:
Console Commands 2023.5.05
Detailed Combat Results 5.4.0
Fleet Journal 1.1.3
LazyLib 2.8b
MagicLib 1.4.3
Nexerelin 0.11.2b
Officer Extension 0.6.7
zz GraphicsLib 1.9.0

  • My private mod, containing an industry which overrides BaseIndustry.canBeDisrupted() to return false

Autonomous colonies do not appear to pay for imports from your faction?

I was told on Discord that your autonomous colonies would pay for imports from your faction and count for purpose of market size.

So for example a size 6 colony would pay 6k to import 6 units of food and therefore increase the market size for food by 6k, and I could therefore increase market size without needing to give away colonies to another faction.

But in my testing, this does not work. The market size is not increased at all, although the colony shows up in the consumer list as paying for the good.

As an example :

screenshot076

Here, Shikoku is listed as imporitng 8 units of food for $8k, but the market size does not increase by 8k unless i transfer it to a faction instead of making them autonomous.

Officer Training/Officer Management +1 max agent not working.

Version : Nexerelin 0.10b

After investing in Officer Training, I wasn't allowed to recruit a third agent.
Maxing the Leadership tree to get both Officer Training and Officer Management didn't increase the max agent count either.

Both skills have "+1 maximum agents" in their tooltips.

Special start scenarios

Ported from Bitbucket:

  • Mono-Corvus: Everyone starts in one super-sized system, like old times
  • Imperial Collapse: One faction controls most of the sector but is badly destabilized; other factions have a stable world each
  • Colonization: All would-be starting planets are held by derelicts, need to be invaded

NPC Rayan Arroyo missing - Salvation mission

Hello,

Running through the story line and working on the Salvation mission. It had me go to the Tri-tach system with Eochu Bres.
The mission states that Rayan would be at this station and I would need to talk to him. I cannot find him at all.
I opened the save file and found him listed, but I'm not quite sure what variable would need to be tweaked to make him appear.
Any thoughts or help?

Thanks!

EDIT - This was user error. I went back to the Prism port and spoke with the quest giver. I then went back to Eochu Bres, and Rayan was there.

Crash when trying to do groundbattle mission

Got groundbattle-thing mission in Corvus, had to go to Ilm station but when i clicked on the contact everything crashed.

Here is the logs :

java.lang.VerifyError: Bad type on operand stack
Exception Details:
Location:
exerelin/campaign/intel/groundbattle/plugins/CataphractStrikeAbilityPlugin.dialogAddVisualPanel(Lcom/fs/starfarer/api/campaign/InteractionDialogAPI;)V @539: invokevirtual
Reason:
Type 'exerelin/campaign/intel/groundbattle/plugins/CataphractStrikeAbilityPlugin$1' (current frame, stack[1]) is not assignable to 'exerelin/campaign/ui/InteractionDialogCustomPanelPlugin$ButtonEntry'
Current Frame:
bci: @539
flags: { }
locals: { 'exerelin/campaign/intel/groundbattle/plugins/CataphractStrikeAbilityPlugin', 'com/fs/starfarer/api/campaign/InteractionDialogAPI', float, float, 'java/awt/Color', 'com/fs/starfarer/api/campaign/FactionAPI', 'java/awt/Color', 'java/awt/Color', 'java/awt/Color', 'com/fs/starfarer/api/ui/CustomPanelAPI', 'com/fs/starfarer/api/ui/TooltipMakerAPI', 'exerelin/campaign/ui/InteractionDialogCustomPanelPlugin', 'java/util/List', 'java/util/List', 'java/util/Iterator', 'com/fs/starfarer/api/fleet/FleetMemberAPI', 'com/fs/starfarer/api/ui/CustomPanelAPI', 'com/fs/starfarer/api/ui/TooltipMakerAPI', 'com/fs/starfarer/api/ui/TooltipMakerAPI', 'java/lang/String', float, 'java/lang/String', integer, 'java/lang/String', 'com/fs/starfarer/api/ui/LabelAPI', float, 'java/lang/String', 'com/fs/starfarer/api/ui/ButtonAPI', 'exerelin/campaign/intel/groundbattle/plugins/CataphractStrikeAbilityPlugin$1' }
stack: { 'exerelin/campaign/ui/InteractionDialogCustomPanelPlugin', 'exerelin/campaign/intel/groundbattle/plugins/CataphractStrikeAbilityPlugin$1' }
Bytecode:
0000000: 0b45 1270 46b8 0047 3a04 b800 713a 0519
0000010: 05b9 0072 0100 3a06 1905 b900 7301 003a
0000020: 0719 05b9 0074 0100 3a08 2b04 b800 75b8
0000030: 0076 3a09 b800 773a 0ab8 0078 3a0b 2ab8
0000040: 0079 b900 7a01 00b6 007b 3a0c bb00 3459
0000050: b700 623a 0d19 0cb9 0028 0100 3a0e 190e
0000060: b900 2901 0099 01e5 190e b900 2a01 00c0
0000070: 007c 3a0f 1909 2512 7d01 b900 7e04 003a
0000080: 1019 1019 0f12 7d12 7db8 007f 3a11 1910
0000090: 1911 b900 8002 0012 810b b900 8203 0057
00000a0: 1910 25b2 0083 6612 8166 127d 03b9 0084
00000b0: 0400 3a12 190f b900 5301 003a 1319 1219
00000c0: 130b 1904 04bd 004b 5903 190f b900 5301
00000d0: 0053 b900 8505 0057 190f b900 5801 00b9
00000e0: 0086 0100 3814 bb00 4c59 b700 4d19 0fb9
00000f0: 005e 0100 b900 8701 0012 146a b600 8812
0000100: 4fb6 0050 b600 513a 152a 190f b600 8936
0000110: 1617 14b8 008a 3a17 1912 bb00 4c59 b700
0000120: 4d19 17b6 0050 128b b600 5012 8cb6 0050
0000130: 128d b600 5019 15b6 0050 1254 b600 50b6
0000140: 0051 24b9 008e 0300 3a18 1918 05bd 004b
0000150: 5903 1917 5359 0419 1553 b900 8f02 0019
0000160: 1815 1699 0008 1904 a700 06b8 0090 b900
0000170: 9102 002a 190f b600 1e38 19bb 004c 59b7
0000180: 004d 1719 b600 8812 4fb6 0050 b600 513a
0000190: 1a19 12bb 004c 59b7 004d 1292 b600 5019
00001a0: 1ab6 0050 b600 510b 1904 04bd 004b 5903
00001b0: 191a 53b9 0085 0500 5715 1699 006d 1912
00001c0: 1293 04b8 0094 190f 1906 1907 1908 1295
00001d0: 1296 24b9 0097 0900 3a1b 191b 2ab4 001d
00001e0: 190f a600 0704 a700 0403 b900 9802 00bb
00001f0: 0099 592a 191b bb00 4c59 b700 4d12 9ab6
0000200: 0050 190f b900 9b01 00b6 0050 b600 5119
0000210: 0f2b b700 9c3a 1c19 0b19 1cb6 009d 190d
0000220: 191c b900 6602 0057 1910 1912 b900 8002
0000230: 0019 1112 9eb9 009f 0300 5719 0a19 1012
0000240: 9eb9 00a0 0300 57a7 fe17 190d b900 2801
0000250: 003a 0e19 0eb9 0029 0100 9900 1919 0eb9
0000260: 002a 0100 c000 a13a 0f19 0f19 0db5 00a2
0000270: a7ff e3b8 00a3 b1
Stackmap Table:
full_frame(@94,{Object[#294],Object[#295],Float,Float,Object[#353],Object[#354],Object[#353],Object[#353],Object[#353],Object[#355],Object[#356],Object[#357],Object[#307],Object[#307],Object[#299]},{})
full_frame(@363,{Object[#294],Object[#295],Float,Float,Object[#353],Object[#354],Object[#353],Object[#353],Object[#353],Object[#355],Object[#356],Object[#357],Object[#307],Object[#307],Object[#299],Object[#358],Object[#355],Object[#356],Object[#356],Object[#359],Float,Object[#359],Integer,Object[#359],Object[#360]},{Object[#360]})
full_frame(@366,{Object[#294],Object[#295],Float,Float,Object[#353],Object[#354],Object[#353],Object[#353],Object[#353],Object[#355],Object[#356],Object[#357],Object[#307],Object[#307],Object[#299],Object[#358],Object[#355],Object[#356],Object[#356],Object[#359],Float,Object[#359],Integer,Object[#359],Object[#360]},{Object[#360],Object[#353]})
full_frame(@489,{Object[#294],Object[#295],Float,Float,Object[#353],Object[#354],Object[#353],Object[#353],Object[#353],Object[#355],Object[#356],Object[#357],Object[#307],Object[#307],Object[#299],Object[#358],Object[#355],Object[#356],Object[#356],Object[#359],Float,Object[#359],Integer,Object[#359],Object[#360],Float,Object[#359],Object[#361]},{Object[#361]})
full_frame(@490,{Object[#294],Object[#295],Float,Float,Object[#353],Object[#354],Object[#353],Object[#353],Object[#353],Object[#355],Object[#356],Object[#357],Object[#307],Object[#307],Object[#299],Object[#358],Object[#355],Object[#356],Object[#356],Object[#359],Float,Object[#359],Integer,Object[#359],Object[#360],Float,Object[#359],Object[#361]},{Object[#361],Integer})
chop_frame(@552,1)
full_frame(@586,{Object[#294],Object[#295],Float,Float,Object[#353],Object[#354],Object[#353],Object[#353],Object[#353],Object[#355],Object[#356],Object[#357],Object[#307],Object[#307]},{})
append_frame(@595,Object[#299])
chop_frame(@627,1)

Request a fleet issues

I asked my allied faction to prepare a colony fleet to colonise a planet and twice they didn't send any fleet after preparation time left.

Tested on both Try-Tachyon and Hegemony.

Chasing Omega Fragment Bug

When a chasing Omega Fragment, found near a Hypershunt, demands an AI Core to leave you alone and you give it to it, the core isn't actually removed from your cargo.

Don't have pics sadly. This happened to me with a Beta Core but I've been told it happens with the others too.

Problems with the way the AI manages colonies

-The AI doesnt turn hazard pay on, so for some colonies, they will never grow.

-The AI doesnt actually care about hazard costs, so when the AI colonizes a very high hazard rating planet with valuable deposits, it dramatically reduces how much money the player can make from colonies.

-The AI only seems to build a few basic buildings, they never seem to upgrade to a battlestation for example, or a mega port.

-Another problem is that the game economy was never designed for the AI expanding, so when the AI starts colonizing and building industries, they dramatically reduce how much money player colonies make because each AI colony now imports in less of the player's goods.

Softcode getAdminScore

public static int getAdminScore(MarketAPI market, PersonAPI person) {
		String postId = person.getPostId();
		if (postId == null) return -1;
		
		if (postId.equals(Ranks.POST_FACTION_LEADER) && person.getFaction() == market.getFaction())
			return 3;
		else if (postId.equals(Ranks.POST_STATION_COMMANDER)) 
		{
			if (market.getPrimaryEntity().hasTag(Tags.STATION))
				return 2;
			return 0;
		}
		else if (postId.equals(Ranks.POST_ADMINISTRATOR))
			return 1;
		
		return -1;
	}

Regarding this code, is it possible to add a condition within the next Nex's update to check for tags in a person like "Nex_PreferredAdmin" and have it be the same priority as a Faction Leader?

I have an administrator that neither has the post of a station commander, administrator, nor faction leader. However, she will boost up the market significantly when put back in her rightful administration spot.

Object id is not found

When I run the game with Nexerelin enabled, the game crashes and a error message pops up (see below). I'm not sure what file is missing or what I should add to fix this. Any help would be appreciated.
Screenshot 2021-12-29 120207

Libraries required to build?

Hello!
So I made a local fork of the mod, hoping to contribute some, probably simple, Mercenary and Mining content in the future, or at the very least just update the Docs with the libraries you need to locally compile Nexerelin.

From reading the code, this is the list of currently required libraries:

-Starsector Core
-AppropoLight
-DynaSector
-Lazylib
-Lazylib Console
-MagicLib
-Ship and Weapon Pack
-Templars
-Underworld
-Vayra Sector
-VIC

But I'm still missing at least a library, especially the one with these packages:

import data.scripts.ungprules.tags.UNGP_CharacterTag;
import data.scripts.utils.UNGP_BaseBuff;

Probably both from the same mod, but I cant figure the acronym.

Fatal error on new game initilization.

Hello.
This is a fresh install of Starsector, I have no other mods other than the libraries the mod itself lists.
The game works perfectly fine up until I actually try and initilze a new game, where it crashes with the message
Fatal: com/fs/starfarer/api.impl/campaign/enc/EncounterManager
Cause:com.fs.starfarer.api.impl.campaign.enc.EncounterManager
Here is my log file:
starsector.log
l
The problem occurs 100% of the time, at least for campaign, missions seems to work.
The game is up to date, so I have no idea what to do.
I hope to hear back from you soon, and have a good day.

Game crash after invasion ended

Context: Game crash a second later after an invasion from Hegemony lost against Fang society ground defense, i'm hardlock from my save atm. (around 30s away from crash ๐Ÿ˜ญ)

I tried different version, all crashed.

  • Latest nex in mod forum
  • Discord beta nex (0.11.0x)

Starsector Log

149354 [Thread-3] INFO  exerelin.campaign.intel.invasion.InvasionIntel  - Invasion event ending
149509 [Thread-3] INFO  com.fs.starfarer.api.impl.campaign.fleets.misc.MiscFleetRouteManager  - Created misc [NexMiscAcademyFleetCreator] First Salem to Galatia Academy Station
149542 [Thread-3] INFO  exerelin.campaign.intel.rebellion.RebellionIntel  - Updating rebellion on Classus: day 25
149542 [Thread-3] INFO  exerelin.campaign.intel.rebellion.RebellionIntel  -   Stability: 3.0
149542 [Thread-3] INFO  exerelin.campaign.intel.rebellion.RebellionIntel  -   Initial force strengths: 55.742603, 30.888292
149542 [Thread-3] INFO  exerelin.campaign.intel.rebellion.RebellionIntel  -   Government engagement strength: 10.163507
149542 [Thread-3] INFO  exerelin.campaign.intel.rebellion.RebellionIntel  -   Rebel engagement strength: 6.8838224
149542 [Thread-3] INFO  exerelin.campaign.intel.rebellion.RebellionIntel  -   Updated force strengths: 55.562397, 30.216133
149542 [Thread-3] INFO  exerelin.campaign.intel.rebellion.RebellionIntel  -   Conflict intensity: 17.936495
149669 [Thread-3] INFO  exerelin.campaign.intel.groundbattle.GBUtils  - Setting garrison damage for Alphidae: 0.178
149669 [Thread-3] INFO  exerelin.campaign.ColonyManager  - Market Urid adding 0.03 profit margin (360 profit, 11500 cost)
149669 [Thread-3] INFO  exerelin.campaign.ColonyManager  - This will be worth 13 XP at month end (about 125/month)
149669 [Thread-3] INFO  exerelin.campaign.ColonyManager  - Reached bonus level 4 from market size 60
149689 [Thread-7] INFO  sound.oo0OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO  - Cleaning up music with id [Blackrock.ogg]
149733 [Thread-9] INFO  sound.oo0OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO  - Creating streaming player for music with id [Mobilization.ogg]
149738 [Thread-9] INFO  sound.H  - Playing music with id [Mobilization.ogg]
150260 [Thread-3] ERROR com.fs.starfarer.combat.CombatMain  - java.lang.NullPointerException
java.lang.NullPointerException
	at com.fs.starfarer.loading.specs.HullVariantSpec.setHullSpec(Unknown Source)
	at com.fs.starfarer.loading.specs.HullVariantSpec.<init>(Unknown Source)
	at com.fs.starfarer.settings.StarfarerSettings$1.createEmptyVariant(Unknown Source)
	at indevo.industries.changeling.industry.population.MonasticOrderSubIndustry.createAndPrepareMember(MonasticOrderSubIndustry.java:181)
	at indevo.industries.changeling.industry.population.MonasticOrderSubIndustry.reportEconomyTick(MonasticOrderSubIndustry.java:142)
	at com.fs.starfarer.api.campaign.listeners.ListenerUtil.reportEconomyTick(ListenerUtil.java:118)
	at com.fs.starfarer.campaign.econ.reach.ReachEconomyStepper.doEndOfStepStuff(Unknown Source)
	at com.fs.starfarer.campaign.econ.reach.ReachEconomyStepper.nextFrame(Unknown Source)
	at com.fs.starfarer.campaign.econ.Economy.advance(Unknown Source)
	at com.fs.starfarer.campaign.CampaignEngine.advance(Unknown Source)
	at com.fs.starfarer.campaign.CampaignState.advance(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(Thread.java:750)

Mod list:

  "aotd_lost_glory",
  "Cryo_but_better",
  "aod_core",
  "aod_vos",
  "HMI_brighton",
  "CaptainsLog",
  "combatactivators",
  "chatter",
  "lw_console",
  "HMI_SV",
  "HMI",
  "hte",
  "IndEvo",
  "lw_lazylib",
  "lunalib",
  "MagicLib",
  "MoreMilitaryMissions",
  "nexerelin",
  "pt_qolpack",
  "assortment_of_things",
  "secretsofthefrontier",
  "speedUp",
  "stelnet",
  "which_industry",
  "whichmod",
  "audio_plus",
  "shaderLib"

Market prices all flattened

I recently started a new game with a couple added mods on top of my usual collection:

-Apex Design Collective
-Slightly Better Tech Mining
-Another Portrait Pack
-Captain's Log
-Fast Engine Rendering

I also increased the max battle size to 1000 and the maximum colony size to 7 in the config file.

I noticed that almost all of the prices were pretty much the same across all star systems. One of the only exceptions was drugs which showed a margin of about 50 credits at the most. By going through and deactivating and activating different mods, and even deactivating and slowly reactivating mods one at a time, I managed to narrow the issue down to Nexerelin as turning it on causes the problem to appear and turning it off causes it to go away and reverting the config settings or leaving them changed doesn't appear to have any effect. Thanks in advance.

Outsourceable things for 0.95 update

  • SP option for agent actions to guarantee success.
    • Might want to refund the SP if the action is aborted.
      • If so, and the SP point use gives bonus XP, perhaps grant said bonus XP only on action completion? Or see if bonus XP can go negative if the player has used some of it and then we take it back.
  • Derelict Empire improvements
    • Make it use our own custom mod faction (clone the vanilla faction), so we can change its balance without touching regular derelicts.
    • Will require changing nex_marketPostOpenDerelicts and the two rules below it in rules.csv to point to the new factions.
    • Will require custom handling to make missions the player can receive not send them to the new derelict faction's markets. But I'll handle this later.

Crash on blueprint raid call for Derelict Empire scenario.

Was raiding a DE location for blueprints when the game crashed due to trying to call a blueprint that doesn't exist. The issue looks like a mispelling

1431085 [Thread-3] INFO sound.oo0O - Cleaning up music with id [miscallenous_corvus_campaign_music.ogg]
1431381 [Thread-3] ERROR com.fs.starfarer.combat.CombatMain - java.lang.RuntimeException: Ship hull spec [expsp_fascine_Fighter_wingt] not found!
java.lang.RuntimeException: Ship hull spec [expsp_fascine_Fighter_wingt] not found!
at com.fs.starfarer.loading.M.o00000(Unknown Source)
at com.fs.starfarer.loading.SpecStore.o00000(Unknown Source)
at com.fs.starfarer.loading.SpecStore.o00000(Unknown Source)
at com.fs.starfarer.campaign.ui.trade.C.renderShipWithCorners(Unknown Source)
at com.fs.starfarer.api.campaign.impl.items.FighterBlueprintItemPlugin.render(FighterBlueprintItemPlugin.java:95)
at com.fs.starfarer.campaign.ui.trade.C.render(Unknown Source)
at com.fs.starfarer.campaign.ui.trade.CargoStackView.renderAtCenter(Unknown Source)
at com.fs.starfarer.campaign.ui.trade.CargoStackView.renderImpl(Unknown Source)
at com.fs.starfarer.ui.o00O.render(Unknown Source)
at com.fs.starfarer.ui.v.renderImpl(Unknown Source)
at com.fs.starfarer.campaign.ui.trade.CargoDataGridView.renderImpl(Unknown Source)
at com.fs.starfarer.ui.o00O.render(Unknown Source)
at com.fs.starfarer.ui.e$Oo.renderImpl(Unknown Source)
at com.fs.starfarer.ui.o00O.render(Unknown Source)
at com.fs.starfarer.ui.v.renderImpl(Unknown Source)
at com.fs.starfarer.ui.e.renderImpl(Unknown Source)
at com.fs.starfarer.ui.o00O.render(Unknown Source)
at com.fs.starfarer.ui.v.renderImpl(Unknown Source)
at com.fs.starfarer.campaign.ui.oOoO.renderImpl(Unknown Source)
at com.fs.starfarer.ui.o00O.render(Unknown Source)
at com.fs.starfarer.ui.v.renderImpl(Unknown Source)
at com.fs.starfarer.campaign.ui.E.renderImpl(Unknown Source)
at com.fs.starfarer.ui.o00O.render(Unknown Source)
at com.fs.starfarer.ui.v.renderImpl(Unknown Source)
at com.fs.starfarer.ui.o00O.render(Unknown Source)
at com.fs.starfarer.ui.v.renderImpl(Unknown Source)
at com.fs.starfarer.ui.newui.class.renderImpl(Unknown Source)
at com.fs.starfarer.ui.o00O.render(Unknown Source)
at com.fs.starfarer.ui.v.renderImpl(Unknown Source)
at com.fs.starfarer.ui.Oo0O.renderImpl(Unknown Source)
at com.fs.starfarer.ui.newui.K.renderImpl(Unknown Source)
at com.fs.starfarer.ui.o00O.render(Unknown Source)
at com.fs.starfarer.ui.v.renderImpl(Unknown Source)
at com.fs.starfarer.ui.Oo0O.renderImpl(Unknown Source)
at com.fs.starfarer.ui.newui.for.renderImpl(Unknown Source)
at com.fs.starfarer.ui.newui.Stringsuper.renderImpl(Unknown Source)
at com.fs.starfarer.ui.o00O.render(Unknown Source)
at com.fs.starfarer.ui.v.renderImpl(Unknown Source)
at com.fs.starfarer.ui.o00O.render(Unknown Source)
at com.fs.starfarer.campaign.CampaignState.render(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)

From the error it looks like it was trying to pull up a blueprint for Fascine Fighter Wingt instead of Fascine Fighter Wing

Bug with how pirates target your colonies in Nex?

I've been told that in vanilla, pirates will still target your colonies even if you are friendly to them. In Nex, this doesnt appear to be the case, which i think is better.

The problem is when you momentarily become hostile to them (e.g. if you take a commission). The pirates will very quickly start targeting your colonies...and they do not stop once you become friendly with them again. You have to kill the pirate base to make them stop, but doing that makes them go hostile if you use a base strike mission or do it with the transponder on.

Also, resigning a commission after ordering a base strike mission on the pirates will instantly cancel it because the pirates are no longer hostile to you, but they will still be listed as raiding your colonies and the debuff will not go away till you kill the base.

Is there any chance you can remove the debuff once you become friendly to them again?

Not sure if intended, but the luddic path still seems to keep targeting your colonies with sleeper cells even if you are friendly to them.

v0.10: "Special Functions" shows when selecting "Construct an Outpost" on a planet and going back

A fully operational "Special Functions" option appears on un-colonized worlds by selecting "Construct an Outpost" and going back. The menu disappears when exiting the menu for the planet, but not when clicking "Perform a Survey."

This was tested on Duhzak, the unexplored core system (between Corvus and Askonia) with default starting locations.

The following are the other mods I have installed:
A New Level of Confidence 25 1.1
Automatic Orders 0.3.2
Autosave 1.1c
Better Colonies 1.61
Industrial.Evolution 2.0.c
LazyLib 2.6
MagicLib 0.33rc1
Nexrelin 0.10
SpeedUp 0.7.1
Starship Legends 1.5.1
Version Checker 2.0b
zz GraphicsLib 1.5.1

Revamp mining tools GUI

As per this forum post:

Got a Qol request for mining. Given the amount of mods with weapons that can be used for mining, would it be possible to have a option in the show mining weapons/ships tab to output a trimmed down list of stuff? Like, say, top 3 items per weapon type and mount size? And maybe another option that gives the best per type/mount but have it checked against whatever blueprints you currently have unlocked?

Thinking about it, the dialog system for the current mining tools display is probably clunky enough (for both dev and user) that I'd prefer to do an entire 'modern' GUI panel for it (Stelnet's various intel items would be a good idea of the concept). Might not do this in the near future though!

Some desired features:

  • Sort by size/mining power/etc.
  • Draw pretty graphics for ship/weapon/wing if possible
  • Text filtering

Crash when adding upgraded version of that industry in picker

Hi, I've found a reproduceable bug when adding military base bonus in the picker menu. To replicate this issue, start a save in "own faction" option and get a start-up planet with Patrol HQ, once you see the picker popup menu, trying to add military base bonus will result a game crash with nullpointer error. The following is the error log:

[Thread-3] ERROR com.fs.starfarer.combat.CombatMain - java.lang.NullPointerException
java.lang.NullPointerException
at com.fs.starfarer.api.impl.campaign.econ.impl.BaseIndustry.startUpgrading(BaseIndustry.java:572)
at exerelin.utilities.NexUtilsMarket.upgradeIndustryToTarget(NexUtilsMarket.java:481)
at exerelin.world.factionsetup.AddOrUpgradeIndustry.apply(AddOrUpgradeIndustry.java:29)
at exerelin.world.factionsetup.FactionSetupHandler.applyItems(FactionSetupHandler.java:198)
at exerelin.campaign.ui.OwnFactionSetupScript$FactionSetupDialog$1.pickedCargo(OwnFactionSetupScript.java:100)
at com.fs.starfarer.ui.newui.oooo.advance(Unknown Source)
at com.fs.starfarer.ui.interfacenew.advanceImpl(Unknown Source)
at com.fs.starfarer.ui.public.advanceImpl(Unknown Source)
at com.fs.starfarer.ui.newui.classsuper.advanceImpl(Unknown Source)
at com.fs.starfarer.ui.thissuper.advance(Unknown Source)
at com.fs.starfarer.ui.interfacenew.advanceImpl(Unknown Source)
at com.fs.starfarer.ui.thissuper.advance(Unknown Source)
at com.fs.starfarer.campaign.CampaignState.advance(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(Thread.java:750)

Endgame event

Moved from Bitbucket

When the player has won or nearly so (or at a fixed point), surprise! Massive fleets and battlestations appear in every inhabited system, to bombard every planet and station into extinction. Defeat the invaders and save humanity before it is scoured from the Sector.

Eligible endgame factions (if alive):

  • Templars
  • Remnants
  • Weird Exigency factions

Intel reports leak info about "unknown" factions.

When a faction successfully covers their tracks after an operation, the intel report still shows up if filtered by that faction, revealing to the player who was behind the operation.
leakyintel
In this example, the filter lets us see that the prv is responsible for lowering relations between the Hegemony and Luddic Church, even though the intel report says that it was done by "an unknown faction".

Story line not compatible with random generation

That sad we can't access story quest and use random generation. Is there any particular reason ? Since I wait mod update before try out 0.95a I kind of miss all story features by using my usual mod list.

Harass players when mining

Basic concept: When player mines in one location for a while, an enemy fleet comes to bother them, to make things more "interesting". This could be a pirate/Pather fleet (but perhaps not if player is not hostile to these factions, to avoid unwanted reputation drain), or a patrol of a major faction to which the player is hostile. When mining in uninhabited systems, it could also be a derelict or Remnant fleet.

Suggested implementation:

  • In MiningHelperLegacy, when player completes a mine operation, increment a value in global memory (maybe call it $nex_mining_harass or such).
  • When the value reaches a specified amount, spawn a fleet to attack the player, scaled to player's current fleet size. Do some logic for picking faction and such.
    • Make sure the fleet is cleaned up properly after the player fights it off or runs away (including without combat).

Mining UI - Adding a list of favorite planets - Idea and pseudocode

Hi Histidine,
I'm back (cf. 14th September 2022) with yet another idea to hopefully improve the mining experience.

The concept

The player can see the current distance and exhaustion for the planets he wants to mine again.

How?
When the player selects an uncolonized planet and opens the mining menu, he sees three additional options :

  • add the planet to his favorites (if the planet is not in the favorites yet)
  • remove the planet from his favorites (if the planet is in the favorites)
  • see the list of favorites (if the favorite least is not empty)

When the players selects an asteroid and opens the mining menu, he sees one additional option:

  • see the list of favorites (if the favorite least is not empty)

The list of favorites shows a table (similar to the fantastic job you did with the database of mining ships/weapons/wings)

The columns are:

  • planet name
  • mining resources (Ore+W/Rare Ore+X/Organics+Y/Volatiles+Z) <== perhaps with the icons like we have in the vanilla planets table
  • Location (system)
  • distance to the planet
  • current exhaustion level
  • Optional: if fleet has janus device, add another column with boolean "active gate in the system"

Edit: An image should be easier to understand. (Paint skills!)
Mining favorites

The pseudocode

(Sorry for all the horrible pseudocode below, I think the last time I wrote java was ~2006)

  1. create an ArrayList to store the favorite planets
    List<SectorEntityToken> arr_fav_mine_pl = new ArrayList<>();

  2. add the new lines to the mining menu (Nexerelin\data\campaign\rules.csv)

I don't know if it's possible for options to be conditionaly hidden.
Maybe it's impossible since the functions for start mining and prisoner actions make the option greyed, not hidden.

Anyway, I think we want something like

if (current_target instanceof PlanetAPI && !arr_fav_mine_pl.contains(current_target)) {show or activate the line "Add this planet to the mining favorites"}

if (current_target instanceof PlanetAPI && arr_fav_mine_pl.contains(current_target)) {show or activate the line "Remove this planet from the mining favorites"}

if (arr_fav_mine_pl.length) {show or activate the line "Show favorite mining planets"}
  1. effect of the new menu options
    "Add this planet to the mining favorites" calls a function add_fav_mine_pl(planet_id)
    "Remove this planet from the mining favorites" calls a function del_fav_mine_pl(planet_id)
    "Show favorite mining planets" calls a function show_fav_mine_planets()

3a) function del_fav_mine_pl(planet_id)
arr_fav_mine_pl.remove(planet_id)

3b) function add_fav_mine_pl(planet_id)
arr_fav_mine_pl.add(planet_id)

3c) function show_fav_mine_planets()

List<Pair<SectorEntityToken, Float>> miningFavPlanets = new ArrayList<>();

for (SectorEntityToken current_planet in arr_fav_mine_pl){
	MiningReport report = MiningHelperLegacy.getMiningReport(playerFleet, current_planet, 1);
	float exhaustion = report.exhaustion;
	miningFavPlanets.add(new Pair<>(current_planet, exhaustion));
}

No idea how you put that in a table and add the other parameters (resources, distance...)

  1. Possible causes of bugs.
    a)What happens it a planet in the mining favorites is no longer eligible (for example if it got colonized)?
    Perhaps add a check inside the loop in function show_fav_mine_planets that calls del_fav_mine_pl if necessary

What do you think?
Ronkhar

0 credit base reward for Conquest mission

This is probably more of a suggestion than a bug.

This fairly new colony is the target of a Conquest mission, but the mission's base reward is $0:
image

Presumably because it has no industry, stability, structures, or income. Even so, a mission like this should probably have more incentive to the player, and even a wrecked colony still has strategic or long-term value. If not a minimum credit reward, perhaps the reputation gain could be highlighted.

save_TarkanBoz_7496933706730123018.zip

AI getting stuck in endless war loops

Ive noticed that on default settings, the AI constantly gets stuck in endless war loops. They will declare war on someone, fight, eventually do a ceasefire due to high war weariness, and in less than a cycle, they will be at war again.

There are two main culprits for this :

-Alliances voting to go to war even though they have extremely high war weariness. Heres an example :

screenshot082

screenshot083

The persean league seems to be voting yes because of their special ability causing them to vote yes always. Both the league and tri tachyon have 20k+ war weariness, why is this vote even being called? High war weariness should not allow them to start a vote in the first place. Tri tachyon should also be voting NO due to high war weariness, not abstaining.

-Random events or operatives causing them to drop to hostile status shortly after signing a cease fire. Cease fires need to actually last longer and CANNOT be broken like this because it just defeats the point. Dropping to hostile status shouldnt immediately result in a war (i dont know if thats possible) but seperating it from relations would greatly reduce the constant wars.

Random events also need to be toned down IMHO. Within a few months of starting your first colony, random events can cause relations to drop low enough to start a war even though you have done literally nothing to provoke any of the factions. A player cant do anything to fend off a 2 full Hegemony invasion fleets this early in the game.

[request] Ability to permanently defeat pirates, luddic path and remnants in Nexerelin

If I understand correctly, currently no matter how many pirate bases I take down, there will always be one to pop up anyway; rendering them an immortal faction that cannot be ever fully killed in a Nexerelin game. I'm guessing the same applies to Luddic Path and Remnants too.

Please add an option to the config to be able to fully defeat the pirates.

Maybe it could work by allowing them to respawn 3 raid bases times once all their markets are gone and then they're permanently defeated once those are wiped out too.

Either way I'd appreaciate some permanence in dealing with them in Nexerelin, since all the other factions can be eliminated fully.

Crash on startup

System Info:
Windows 10 20H2
i5-10600K
32GB memory
Nvidia RTX 2080ti
Java 8 (Build 1.8.0_311-b11)

Game info:
V 0.95a-RC15

vmparms ```java.exe -XX:CompilerThreadPriority=1 -XX:+CompilerThreadHintNoPreempt -Djava.library.path=native\\windows -Xms1536m -Xmx16384m -Xss2048k -classpath janino.jar;commons-compiler.jar;commons-compiler-jdk.jar;starfarer.api.jar;starfarer_obf.jar;jogg-0.0.7.jar;jorbis-0.0.15.jar;json.jar;lwjgl.jar;jinput.jar;log4j-1.2.9.jar;lwjgl_util.jar;fs.sound_obf.jar;fs.common_obf.jar;xstream-1.4.10.jar -Dcom.fs.starfarer.settings.paths.saves=..\\saves -Dcom.fs.starfarer.settings.paths.screenshots=..\\screenshots -Dcom.fs.starfarer.settings.paths.mods=..\\mods -Dcom.fs.starfarer.settings.paths.logs=. com.fs.starfarer.StarfarerLauncher```

Installed mods:
Nexerelin 0.10.3i
MagicLib 0.41
LazyLib 2.7b

grafik

First of all, apologies for not including my starsector.log. It was way too long to post here or on Pastebin so if there are any specific questions about its contents, let me know. Otherwise, I would also be able to provide parts of the log if a specific section is important.

When clicking on "Play Starsector" the games load screen briefly appears before throwing the error messages displayed in the attached image.
I am new to modding and probably missed something abovious. Any help is appreciated!

Request a fleet bug/feature?

When requesting a fleet (is it from Nexerelin?) with Z.
to colonize planet in same system and push proceed button.
it works first time. but nothing stop me to click 2 more times. now iam stoopid AND broke.
pls send anti stoopid pills

and while i write this that colony become max lvl in 10 months... i have no idea why...

test again. u can send 3 colony fleets in 1 go, after they reach planet 1st fleet will colonize, 2nd and 3rd wil fail. on next day/tick whateva game use the colony wil grow to 4-5-6 lvl in one go.

Colony LVL
Fleets

Custom faction for invasion fleets

we can already set a faction to use a subfaction for task forces with factionIdForHqResponse. It would be great if this could be expanded to let a faction use another subfaction's ships for invasion fleets and such.

Mining UI - Improvement of list of mining ships - Idea and pseudocode

[English is not my first language. If something below is unclear, feel free to ask for clarification]

Hello Histidine91,
I would like to suggest an improvement (well several, but let's start with one, and if you like it, I'll come back with more)

Currently, when the player selects "What ships and weapons can mine?", the alphabetical list shows "ship name: mining strength"
I think it would help the player finding and evaluating said ships if the list could display the designer of the ship (lowtech/midline/hightech/faction name) and the size of the ship (frigate/destroyer/cruiser/capital)

What do you think?

I read a bit of the nexerelin code and starsector API and hopefully the modification could look like this:

File:

\jars\sources\ExerelinCore\com\fs\starfarer\api\impl\campaign\rulecmd\Nex_PrintMiningInfo.java

Original code (line ~215):

String name = hull.getHullName();
String strengthStr = getFormattedStrengthString(strength);
text.addParagraph(name + ": " + strengthStr);

Alternative code:

String name = hull.getHullName();
String shipOrigin = hull.getManufacturer();
String shipSize = hull.getHullSize();
String strengthStr = getFormattedStrengthString(strength);
text.addParagraph(name + ": " + strengthStr + "(" + shipOrigin + " " + shipSize + ")");

Thanks in advance for the time you spend reading this (and a thousand times for the time you spend on nexerelin)
Ronkhar

Java Null Pointer Exception

just finished transferring a planet to another faction since I'm currently late-game exterminating the Hegemony, saved, and now when I load up about 30 seconds later it crashes with this as the listed reason.

196114 [Thread-4] ERROR com.fs.starfarer.combat.CombatMain - java.lang.NullPointerException
java.lang.NullPointerException
at com.fs.starfarer.api.impl.campaign.econ.impl.BaseIndustry.startUpgrading(BaseIndustry.java:489)
at exerelin.world.NexMarketBuilder.addMilitaryStructures(NexMarketBuilder.java:547)
at exerelin.campaign.ColonyManager.buildIndustries(ColonyManager.java:1228)
at exerelin.campaign.ColonyManager.buildIndustries(ColonyManager.java:1249)
at exerelin.campaign.ColonyManager.reportMarketTransfered(ColonyManager.java:1185)
at exerelin.utilities.ExerelinUtilsMarket.reportMarketTransferred(ExerelinUtilsMarket.java:365)
at exerelin.campaign.SectorManager.transferMarket(SectorManager.java:1237)
at exerelin.campaign.SectorManager.transferMarket(SectorManager.java:1019)
at exerelin.campaign.InvasionRound.conquerMarket(InvasionRound.java:427)
at exerelin.campaign.InvasionRound.npcInvade(InvasionRound.java:293)
at exerelin.campaign.intel.invasion.InvActionStage.performRaid(InvActionStage.java:243)
at exerelin.campaign.intel.invasion.InvActionStage.autoresolve(InvActionStage.java:290)
at exerelin.campaign.intel.invasion.InvActionStage.updateStatus(InvActionStage.java:148)
at com.fs.starfarer.api.impl.campaign.intel.raid.BaseRaidStage.advance(BaseRaidStage.java:106)
at com.fs.starfarer.api.impl.campaign.intel.raid.ActionStage.advance(ActionStage.java:25)
at exerelin.campaign.intel.invasion.InvActionStage.advance(InvActionStage.java:62)
at com.fs.starfarer.api.impl.campaign.intel.raid.RaidIntel.advanceImpl(RaidIntel.java:214)
at exerelin.campaign.intel.fleets.OffensiveFleetIntel.advanceImpl(OffensiveFleetIntel.java:401)
at com.fs.starfarer.api.impl.campaign.intel.BaseIntelPlugin.advance(BaseIntelPlugin.java:75)
at com.fs.starfarer.campaign.CampaignEngine.advance(Unknown Source)
at com.fs.starfarer.campaign.CampaignState.advance(Unknown Source)
at com.fs.starfarer.BaseGameState.traverse(Unknown Source)
at com.fs.state.AppDriver.begin(Unknown Source)
at com.fs.starfarer.combat.CombatMain.main(Unknown Source)
at com.fs.starfarer.StarfarerLauncher$1.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)

starsector.log

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.