Fractal Softworks Forum

Please login or register.

Login with username, password and session length
Advanced search  

News:

Starsector 0.97a is out! (02/02/24); New blog post: Simulator Enhancements (03/13/24)

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 - Histidine

Pages: [1] 2 3 ... 12
1
Update: We've moved!
So the poll has run for six days now and we have the results:


Out of 835 responses:
  • 821 (98.3%) in favor of the move
  • 3 (0.4%) opposed
  • 11 (1.3%) don't know/no opinion
I actually had no idea Fandom was so totally reviled, I'd expected there to be at least some disagreement.

Anyway I'm happy to announce that the forked wiki has gone live at starsector.wiki.gg! Thanks to Kelenius, TheWikiFish, and other contributors (like wiki.gg admin Westgrass, who almost singlehandedly created the current appearance) for making this possible.

We hope you enjoy the new look, the greatly reduced ad count, and a little new content as a cherry on top. If you're looking to contribute, see our guide for some useful information.


Original post

Hello, I'm Histidine. You probably know me as the dev of the Nexerelin mod, but here I'm posting as the admin of the unofficial Starsector wiki, with a question of some significance for the community.

If you've been around gaming circles online, you may have noticed any number of game wikis previously hosted on Fandom.com deciding to migrate to other providers such as wiki.gg, or taking up independent hosting. This has actually been happening for decades (back when Fandom was still Wikia) but has picked up interest again in recent years, with notable 2022-24 migrations including the wikis for Warcraft, Minecraft, Terraria, Zelda and Dr. Who. There are a number of reasons for this; the notoriously intrusive Fandom ads (especially on mobile), sometimes taking up half the page, are the most famous but not the only one.

Here are a few articles from the past 1-2 years discussing this trend, with discussions of specific communities that have jumped ship; I strongly recommend reading/watching them if you want to understand the rationale for a migration:


A number of involved persons (principally myself, editor Kelenius, and co-admin TheWikiFish) at the wiki are now looking at a move to wiki.gg as well. My impression from looking at the Unofficial Starsector Chat (Discord server) is that Fandom hosting isn't very popular among the community either, but I'd like to establish a community consensus before migrating. Any move needs community buy-in to work, so I want to hear your opinions on this.


If we moved, what would change for the public?
There will be two wikis, the old Fandom one still being up and competing with the new one for SEO, very likely appearing above the new one in Google search results.

As you might guess from the above articles, we expect your user experience to be better on the new site :)

We can work to promote the new wiki over the old, including asking for all relevant links (including Discord bot responses) to be redirected to the new wiki, and for editors to move to the new site to minimize splitting of contributions. For site visitors/editors, the wiki.gg Redirect browser extension (Chrome, Firefox, Edge) can automatically put you on the right site.

Also, the migration only applies to the English version of the wiki. Any other language versions (e.g. French) will have to make their own decision on whether to make the move with us.

How soon could this happen?
The application has already been submitted and we could launch the fork in the near future, once the forked site has been polished to match the current Fandom implementation.

2
Suggestions / Better ways to get strong enemy fleets
« on: August 18, 2023, 08:30:38 PM »
(Bringing this up because of a recent post on Nex thread)

Currently, outside of stations and specific unique-ship fights like the Ziggurat, Guardian and Tesseract, the game has exactly one way to make a 'hard' fleet to fight (like for high-tier bounties and punitive expeditions): throw more ships at the player, in multiple fleets if need be.
Suffice to say, this gets boring (grinding down an endless metal wall) and induces ludonarrative dissonance rather quickly, and adds performance concerns.

What tools might exist to make harder fleets through quality rather than quantity?
  • S-mods
    • Barely used in vanilla
    • The current CoreAutofitPlugin doesn't pick very good S-mods, it currently just S-mods whatever hullmods the ship has, then a few 'generically good' but often not particularly strong hullmods (starting with Flux Distributor and Flux Coil Adjunct)
    • Also for some reason S-mods aren't considered in autoresolve strength?
  • Better officers (higher-level, and/or with unique skills)
    • Players would complain that we can't get them too; AI cores circumvent this somewhat but would be lore-inappropriate in most cases
  • Arbitrary stat buffs
    • Would be very annoying unless it was embedded in lore; perhaps an NPC version of the Commissioned Crews hullmod
  • Something else?

For now, we could just try the low-hanging fruit: fix S-mods not being counted in autoresolve, make autofit try to pick S-mods that are good for the ship (or let .variant files specify a 'wantedHullmods' table that autofit can read), and use the feature on more vanilla fleets. Other than that, anyone have ideas?

3
Someone on Discord reported that the mission wouldn't start properly after killing the nexus without having the mission already active:

Spoiler

[close]
The dialog isn't going to step 2. The person said they don't have Nexerelin, so it's presumably not my custom fleet interaction dialog plugin breaking things.

(IIRC I had a similar issue before when doing a mod quest in 0.95.1a, couldn't add an option for further dialog after a fleet defeat trigger, have to pick through salvage immediately)

It works fine if the mission is already active:
Spoiler

[close]
I tried to repro myself with an extra-minimal modlist (LazyLib, GraphicsLib, Console Commands and Autosave), but when I tried it killing the Nexus + defending fleets (with console nuke command) doesn't even fire the defeat trigger? Even though the trigger is there in the nexus's fleet memory.

4
Suggestions / Ship accident jank when suspending repairs
« on: May 24, 2023, 05:33:06 AM »
A scenario I've experienced before:
  • I'm low on supplies, suspend repairs on fleet to save supplies till I get back to core worlds
  • Ship get hit by hyperspace storm, CR drops to zero
  • Ship experiences accident due to being at <10% CR (possibly within seconds of the CR loss event) and explodes
Not sure how to handle this without behavior that's annoying elsewhere, maybe if repairs are suspended and a ship drops to <10% CR it should be mothballed automatically? Or the accident mothballs the ship instead of killing it (if player isn't completely out of supplies).

A more complex idea is in this old thread (considered bumping it but I think that's frowned upon here)

5
As per title. Not sure what happened here or why the fleet is marked as hostile and aggressive.

It chased me into the system from hyperspace so I think it may be a slipstream encounter, could that be related?


6
Bug Reports & Support / [0.96a-RC7] Contact with no types
« on: May 06, 2023, 08:41:57 AM »
I think the AddPotentialContact rulecmd, when used on random people, can result in a contact with no types specified (so they will never have any hub missions to offer). Saw this when selling a certain special item to the station commander on Eochu Bres.

7
Bug Reports & Support (modded) / [0.95.1a-RC6] Campaign simulator crash
« on: November 01, 2022, 06:21:48 AM »
In my past two (heavily modded) Starsector playthroughs, running the simulator for a ship in my fleet after some time in campaign (perhaps any time after a battle has taken place) seems to cause a crash. This doesn't happen if the simulator is the first thing I do after loading into the save.

Recent error message I got (more detailed NPE messages thanks to Java 19, although I was only on Java 8 the previous playthrough):

1102998 [Thread-9] ERROR com.fs.starfarer.O0OO.OOoO  - Cannot invoke "com.fs.starfarer.loading.specs.o0oo.o00000()" because "this.Ò00000" is null
java.lang.NullPointerException: Cannot invoke "com.fs.starfarer.loading.specs.o0oo.o00000()" because "this.Ò00000" is null
   at com.fs.starfarer.O0OO.Object.oO0000(Unknown Source)
   at com.fs.starfarer.O0OO.Object.Õ00000(Unknown Source)
   at com.fs.starfarer.O0OO.OOoO.Ò00000(Unknown Source)
   at com.fs.starfarer.O0OO.OOoO$1.run(Unknown Source)
   at java.base/java.lang.Thread.run(Thread.java:828)

(this message is repeated three more times in the log for some reason)

8
Suggestions / AI slips thread part 2
« on: September 24, 2022, 08:34:46 PM »
(continuation of this thread)

First item:
One thing you quickly notice after running enough sims: in a 1v1 (Standard Onslaught vs. Standard Onslaught should do it) one ship will sometimes raise its shield against the other even when said enemy ship is venting or overloaded, instead of dropping shields and getting rid of some of that hard flux.
"What if it's not a 1v1 scenario?" then consider the other enemy ship(s) as you would normally, but the overloaded/venting ship is no threat at all for the duration.

9
General Discussion / So there was a rant about the doritos
« on: September 14, 2022, 07:21:47 AM »
Summary of a group discussion thing on [redacted by COMSEC] earlier today. I think the proximate trigger was someone getting clapped by the Tesseracts and malding about it, but there may be some valid concerns nevertheless.
  • The Tesseracts are stat sticks
  • The AI interacts poorly with the Aspects
  • In some ways the encounter seems designed around the Ziggurat?

Tesseracts
I'll just copy the Discord messages Nia wrote about this:
Quote
yeah tesseracts never feel fair
cause they just delete some ships
and there's nothing you can do
you either can tank the insane burst (which few ships can)
or you can evade most of it (which even fewer ships can)
(Histi's recommendation: consider consulting your nearest mod about a suitably overpowered supercapital)

At the same time you can just cheese them with a phase ship that has strong burst firepower: bait the Tess into using its temporal shell, wait it out in phase, then slag it. Nia's specific example (which "completely trivialised" the fight after a very difficult first attempt) was Ziggurat with AMBs and Reapers.

Aspects
Apparently (I haven't watched them closely and can't personally verify this, but it seems consistent with the way my fleets end up in Omega fights):
Aspects screw with ship AI by herding them around and causing them to get separated. Ships try to back away from the Aspects, which may work with other fighters but not these ones because they aren't tethered to a carrier with limited engagement range and don't have to rearm. So you end up with a bunch of widely separated ships getting bitten to death. Only partly mitigated by defend order.

Also is "normal" ballistic PD any good against them? They seem to move way too fast for MG/Vulcan and equivalents to hit effectively.

Ziggurat
Was the hypershunt encounter specifically designed for Zig? Aside from generally being a hugely powerful ship, this thing hardcounters Omega; it stunlocks one Tesseract and can nuke either if they overextend near it, and the motes are easily the most efficient way to swat Aspects.

It's hardly the only fleet combo that can beat the Tessies (there's a video of two Onslaught XIVs doing it) but I feel there may be an overly large gap between this and any other potential solution for comparable DP cost or player investment.

10
Suggestions / More useful error messages
« on: September 09, 2022, 08:25:28 AM »
(only one error message of concern right now, if I run into any more errors that could be improved I'll make further posts in this thread)

Missing file
So when the game looks for an image file and can't find it, it generates an error like this (actual example I just had to work with):

Spoiler
Code
Error loading [graphics/weapons/Claris CN/pd_claris_cn_hardpoint_recoil.png] resource, not found in [/home/helena/Desktop/Stuff/Games/starsector/./mods/Adjusted Sector v0.4.2,/home/helena/Desktop/Stuff/Games/starsector/./mods/Arsenal Expansion 1.5.4a,/home/helena/Desktop/Stuff/Games/starsector/./mods/Better Colonies,/home/helena/Desktop/Stuff/Games/starsector/./mods/CaptainsLog,/home/helena/Desktop/Stuff/Games/starsector/./mods/Combat Alarm Sounds,/home/helena/Desktop/Stuff/Games/starsector/./mods/Combat Chatter,/home/helena/Desktop/Stuff/Games/starsector/./mods/Console Commands,/home/helena/Desktop/Stuff/Games/starsector/./mods/DIYPlanets,/home/helena/Desktop/Stuff/Games/starsector/./mods/Deluxe Player Flags,/home/helena/Desktop/Stuff/Games/starsector/./mods/ExtraSystemReloaded-master-v1.0.1,/home/helena/Desktop/Stuff/Games/starsector/./mods/fluffShipPack,/home/helena/Desktop/Stuff/Games/starsector/./mods/Fuel Siphoning,/home/helena/Desktop/Stuff/Games/starsector/./mods/Grand.Colonies1.0.d,/home/helena/Desktop/Stuff/Games/starsector/./mods/HMI,/home/helena/Desktop/Stuff/Games/starsector/./mods/Hegemony Expeditionary Auxiliary,/home/helena/Desktop/Stuff/Games/starsector/./mods/HTE,/home/helena/Desktop/Stuff/Games/starsector/./mods/Industrial.Evolution3.0.e,/home/helena/Desktop/Stuff/Games/starsector/./mods/Iron Shell,/home/helena/Desktop/Stuff/Games/starsector/./mods/LTA,/home/helena/Desktop/Stuff/Games/starsector/./mods/LazyLib,/home/helena/Desktop/Stuff/Games/starsector/./mods/Luddic_Enhancement,/home/helena/Desktop/Stuff/Games/starsector/./mods/MagicLib,/home/helena/Desktop/Stuff/Games/starsector/./mods/MakeParagonGreatAgain,/home/helena/Desktop/Stuff/Games/starsector/./mods/Nexerelin,/home/helena/Desktop/Stuff/Games/starsector/./mods/Progressive S-Mods,/home/helena/Desktop/Stuff/Games/starsector/./mods/Shielded Holds For All,/home/helena/Desktop/Stuff/Games/starsector/./mods/ShipDirectionMarker,/home/helena/Desktop/Stuff/Games/starsector/./mods/Ship and Weapon Pack,/home/helena/Desktop/Stuff/Games/starsector/./mods/SpeedUp,/home/helena/Desktop/Stuff/Games/starsector/./mods/Starship Legends,/home/helena/Desktop/Stuff/Games/starsector/./mods/stelnet,/home/helena/Desktop/Stuff/Games/starsector/./mods/Stop Gap Measure 1.2.2,/home/helena/Desktop/Stuff/Games/starsector/./mods/Superweapons Arsenal,/home/helena/Desktop/Stuff/Games/starsector/./mods/tahlan-shipworks,/home/helena/Desktop/Stuff/Games/starsector/./mods/Terraforming and Station Construction,/home/helena/Desktop/Stuff/Games/starsector/./mods/FED,/home/helena/Desktop/Stuff/Games/starsector/./mods/transpoffder,/home/helena/Desktop/Stuff/Games/starsector/./mods/UAF,/home/helena/Desktop/Stuff/Games/starsector/./mods/UnknownSkies,/home/helena/Desktop/Stuff/Games/starsector/./mods/WhichMod,/home/helena/Desktop/Stuff/Games/starsector/./mods/GraphicsLib,../starfarer.res/res,CLASSPATH]
[close]
The entire not found list is just a list of the directories of each mod, information which is available elsewhere in the log. As such, its main function is to confuse the user as to what is going on (why is it looking in all these folders?)

More useful would be to say what file, from which mod, was looking for that image (a .ship file? a .csv? settings.json?). Also maybe some OS-specific advice, i.e. if the user is on Linux mention case sensitivity.

(Also maybe it should write a warning for mod devs on Windows if the case doesn't match, so we don't have to wait for some Linux user's game to explode. But what would be a good way to display warnings that only show for the dev of the relevant mod? Have an idea for this, might make a separate thread later)

11
Suggestions / Shipboard bar
« on: August 21, 2022, 07:15:58 AM »
Something I thought of while writing a mod quest, involving a conversation with a specific named officer.

Presumably at least one ship on a fleet has a decently large lounge for the crew to kick back and consume (limited amounts of) booze. So let the player show up from time to time and have a talk with the crew and officers. One or two of them might have interesting leads we can follow, like rumors of <treasure> at <location> or some family business they need help with. Or maybe we can just make small talk, like with the historian (or perhaps even better; supply some dynamic info about the Sector here). This would also let us relate to the crew as something more than a commodity.

For a bonus, have the illustration image change depending on the size of the fleet's crew complement.

12
Today we had a couple of users on the Discord server whose Starsector is CTDing on game load, running only LazyLib and no other mods. Also happens with my test mod and no other mods.

The error looks like this:
33875 [Thread-3] ERROR com.fs.starfarer.combat.CombatMain  - java.lang.RuntimeException: Error loading [org.lazywizard.lazylib.LazyLib]
java.lang.RuntimeException: Error loading [org.lazywizard.lazylib.LazyLib]
   at com.fs.starfarer.loading.scripts.ScriptStore$3.run(Unknown Source)
   at java.lang.Thread.run(Unknown Source)
Caused by: java.lang.ClassNotFoundException: org.lazywizard.lazylib.LazyLib
   at org.codehaus.janino.JavaSourceClassLoader.findClass(JavaSourceClassLoader.java:179)
   at java.lang.ClassLoader.loadClass(Unknown Source)
   at java.lang.ClassLoader.loadClass(Unknown Source)
   ... 2 more
26360 [Thread-3] ERROR com.fs.starfarer.combat.CombatMain  - java.lang.RuntimeException: Error loading [org.histidine.amino.plugins.AminoModPlugin]
java.lang.RuntimeException: Error loading [org.histidine.amino.plugins.AminoModPlugin]
   at com.fs.starfarer.loading.scripts.ScriptStore$3.run(Unknown Source)
   at java.lang.Thread.run(Unknown Source)
Caused by: java.lang.ClassNotFoundException: org.histidine.amino.plugins.AminoModPlugin
   at org.codehaus.janino.JavaSourceClassLoader.findClass(JavaSourceClassLoader.java:179)
   at java.lang.ClassLoader.loadClass(Unknown Source)
   at java.lang.ClassLoader.loadClass(Unknown Source)
   ... 2 more

There were also a couple such reports on the LazyLib thread earlier this year.

Earlier, when it was a script in MagicLib that was failing to load (during rulecmd validation), I determined that (at least in the MagicLib case) the relevant mod .jar is where it should be, it's specified in the mod_info.json, and the .class file at the expected path in the .jar.

Is it possible that ScriptStore is silently failing to load the mod .jar and letting the game continue loading – until it needs to load the mod plugin class and the jig is up?
(Even though it logs "Getting ready to load jar file <path>" just fine)

13
Modding / Hub mission fleet sizing has a Problem
« on: July 13, 2022, 08:10:42 PM »
So, fleet sizes in hub missions are controlled by an enum that works off fractions of FactionAPI.getApproximateMaxFPPerFleet(). I'm not sure how the figure is computed beyond the javadoc explanation, but it seems to work okay for "normal" factions in vanilla.
Quote
* Used to figure out how many fleet points raids/expeditions etc divide out for each "large" fleet.
 * When going above 30 ships, fleets replace some smaller ships with larger ones. This FP limit is
 * where that still produces fleets that aren't *too* top-heavy.

There's just one problem with this function: A mod can easily screw with the values without even meaning to, by adding new ships that allow a fleet to "compress" more effectively. Case in point: one mod (The Star Federation) adds an Omega capital for a one-off bounty, and this makes the return value of getApproximateMaxFPPerFleet 5.4 times larger than what it is in vanilla (going from 576.58 to 3,126.49). This in turn led to a completely unrelated Omega fleet from my mod being about five times larger than it should have been under the circumstances it was generated, and about 2.5 times larger than what was ostensibly the maximum size specified in its fleet spawner.

Should hub missions have a more reliable sizing formula? (Why doesn't it let us just specify an arbitrary FP value directly, anyway?)

14
Suggestions / Simplify intel tag order
« on: June 16, 2022, 06:15:48 AM »
Current order of tags in the intel screen:
- New
- Important
- An arbitrary and impossible-to-remember sequence of tags, defined in tag_data.json
- Everything else, in alphabetical order

This makes finding some things take way longer than it should.

My suggestion is two-fold. First, what it should look like:
- New
- Important
- maybe Accepted, Local and/or Story
- Everything else in alphabetical order

Then, to keep things findable, perhaps some key tags (such as Colony threats and Story) could have highlight colors. Although it leads to colors in seemingly random places, so I'm not too sure about this (maybe only the box rather than the text should be colored).

Test with a lightly modded game
Current:


Alphabetical order, some light coloring:

[close]

15
Modding / No understand AI core loot from battles
« on: April 05, 2022, 03:51:44 AM »
How are AI core drops from combat with Remnants (and derelicts) calculated, exactly?

This question seems to crop up quite frequently on the Discord, e.g. someone just reported killing "20" capitals with "95%" alpha core officers, and getting zero alpha core items out of the deal. Then I've heard from another mod dev that there's a hidden (in obsfucated code?) bit where core drops from farming Remnants has diminishing returns.

Are the drop_prob_officer_alpha_core etc. values specified in settings.json and referenced in FleetEncounterContext actually used to calculate drops? Are there further modifiers on top of this?
EDIT: Also, could mods be having funny effects on the drops?

Pages: [1] 2 3 ... 12