Fractal Softworks Forum

Please login or register.

Login with username, password and session length
Advanced search  

News:

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

Show Posts

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

Topics - Sutopia

Pages: [1] 2 3 ... 5
1
Mods / [0.95.1a] Fair S Mods v1.1
« on: March 10, 2022, 11:00:44 PM »
Download link
Source

Requires CONCORD 3.5 or above version



This mod is meant to make building in cheaper hullmods viable.
For example, if you build in an "Advanced Turret Gyros" on a capital which originally costs 10 OP, the difference is 20 OP, so you get 20 OP * 75% = 15 OP added to your hull.

Using Better Deserved S Mods or Progressive S Mods reduce the effectiveness to 25%; Using both nullifies the mod.
The ratios and base bonus multipliers are adjustable in settings file (data/config/settings.json)

The mod can be added mid-game and is automatically applied.
The mod is currently SAFE TO REMOVE after CONCORD 3.5.2a

2
 :-[ It creates the HullModEffect object, calls init but the spec itself never updates?

3
Bug Reports & Support (modded) / canBeAddedOrRemovedNow not called
« on: February 13, 2022, 07:13:48 PM »
For hullmod class, canBeAddedOrRemovedNow is not called during mission refit

4
Modding / [0.95.1a] Phase Temporal Shunt Device 0.3a
« on: February 07, 2022, 08:51:34 PM »
Download PTSD V0.3a
Github

Feature Overview:
A hullmod that cancels time dilation of phase ships and provide zero flux bonus while in phase
SO now cancels hard flux penalty on phase ship max speed
I has a dream of an SO Doom, and it becomes PTSD





[close]

Version log
2022/2/7 V0.3a
Extended SO penalty nullification to all phase ships

2022/2/7 V0.2a
Added SO compatibility

2022/2/7 V0.1a
Initial release
[close]

5
Mods / [0.95.1a] Concord 3.5.2g
« on: January 27, 2022, 09:19:36 PM »
CONCORD download
Github repository (you can also see history releases here)

IMPORTANT Note for upgrading from prior to 3.0
Download the upgrade bridge version 2.99999
Save the game with the 2.99999 version should clean up the relic from old version.
2.99999 has the same code as 3.1.1b but will not be further updated
[close]

Purpose
Native incompatibility support

Modded hullmod can now be identified by vanilla hullmods to be listed as incompatible

Phase Lib
10 modifiers added to phase ships allowing for more dynamic phase gameplays

Various Effect Supports
Fighter Wing induced effect, Weapon induced effect and hullmod onInstall / onRemove implementations

Dynamic Ship Generation
Allows generating new ship or fighters on the fly

For players
Download the mod and enable it.
You can go to data/config/settings.json to disable cross mod checks

For modders
Native incompatibility support
NO dependency implementation
If your mod have already implemented proper incompatibility checks, you may take advantage of the tag system for vanilla hullmods to identify your hullmod as incompatible, without dependency to concord.

For example, adding tag “vEx_safetyoverrides” allows a player with concord to automatically enjoy the native incompatibility check, marking your hullmod to be incompatible with Safety Overrides, while a player without concord can still use your mod as usual.

Check "Implement compatibility check without coding" section and Codex for available tags.
[close]
NO dependency FULL implementation (new!)
Adding the tag "auto_concord" and "implicit_concord" to your hullmod will make Concord create the cross mod incompatibility shell for you automatically.
This implementation allows your mod to get full benefit of concord checks while not requiring any dependency to concord. A player can use your mod without concord just fine.

Check the following section and Codex for available tags.
[close]
Implement compatibility check without coding
This is an example line of csv
Code
,concord_targetingunit,0,,,"auto_concord, vEx_targeting_unit",,0,,TRUE,,0,0,0,0,org.sutopia.starsector.mod.concord.adv.DataEnactDomain,,,
For your hullmod that wishes to implement CONCORD, create a new line in hullmods.csv
  • id is in format of "concord_{originalHullmodId}"
  • it must include "auto_concord" tag
  • add tags formatted in "vEx_{topic}" or "dEx_{hullmodId}" to configure incompatibility
  • the script should be the same as example code
vEx: Topic leaders, all leaders in the same topic are mutual exclusive to each other
For example, if you want to make a custom targeting unit, add tag "vEx_targeting_unit"
You can use arbitrary string as topic

dEx: Followers, share the same incompatibility with the leader hullmod
For example, if you want to make a hullmod that leans toward adaptive phase coil, add tag "dEx_adaptive_coils"
Your chosen leader must be a valid hullmod ID

[close]
Implement compatibility check with coding
Hullmod that wishes to implement Concord should extend class org.sutopia.starsector.mod.concord.MutualExclusiveHullMod
If you're overriding isApplicableToShip and applyEffectsAfterShipCreation, make sure to call super first for the library to do all the heavy weight lifting.
Similarly, be careful when overriding getUnapplicableReason


Vanilla hullmod incompatibility
Add tag formatted as "vEx_{hullmodId}"
For example, if a hullmod should be incompatible with safety override, add tag "vEx_safetyoverrides"
This will automatically list other mods' hullmod with same restriction as incompatible

Current well known tags
Since 1.1.0
  • percent_range_mod: incompatible with ITU, DTC and the like
  • phase_mutator: incompatible with both vanilla phase hullmods because they're currently incompatible with each other
[close]

Generic hullmod incompatibility
Override method
Code: java
public Set<String> getCustomMutualExclusiveTags()
All hullmods with any tag added in the set will be mutual exclusive to each other.
[close]
[close]
PhaseLib
Available modifier dynamic IDs are listed in
Code
org.sutopia.starsector.mod.concord.phase.ConcordModStats
To modify a status, call
Code
stats.getDynamic().getMod([dynamic status ID])
These effects apply to ALL ships using vanilla phase script
Code
com.fs.starfarer.api.impl.combat.PhaseCloakStats
[close]
Other utilities
onInstall and onRemove
Use
Code: java
org.sutopia.starsector.mod.concord.api.TrackedHullmodEffect
They will be called during
Code: java
public void applyEffectsAfterShipCreation(ShipAPI ship, String id)
by ConcordCaptain
[close]
TransientHullmod
Code
org.sutopia.starsector.mod.concord.api.GlobalTransientHullmod
Code
org.sutopia.starsector.mod.concord.api.SelectiveTransientHullmod
Implementing either of the interface for your hullmod will make it globally apply BUT does not save in save files
i.e. a player can safely remove your mod from the game if your mod is only adding hullmods
[close]
Weapon and Fighter installed effects
Code
org.sutopia.starsector.mod.concord.api.WeaponInducedEffect
Code
org.sutopia.starsector.mod.concord.api.FighterInducedEffect
Implementing the interface will allow ConcordCaptain to apply the effects for you.
The ID parameter is passed in with your weapon or wing id as suffix so it's properly recognized by the game.
If you are introducing effects to something not owned by you, change the ID parameter to prevent overwriting others' effects.
[close]
fighter, ship variant and hull manipulation
ConcordDynamicInstanceAssembly provides a few methods for you to create specs on the fly to make some never-before-seen effects.
  • Adding ship hull spec on the fly (.skin)
  • Adding ship variant spec on the fly (.variant)
  • Adding fighter spec on the flt (wing_data.csv)
[close]
[close]
Change log
3.5.2c  2022/03/13
  • Added try catch for unorthodox hullmod effects
  • Fixed java 8 security exception

3.5.2a  2022/03/12
  • Fixed an issue with variant name accidentally adding _Hull as suffix
  • Fixed transient hullmod logic, now this mod is truly removable from a save

3.5.1c  2022/03/11
  • Fixed JRE8 method access issue

3.5.1a  2022/03/11
  • Added Black Ops
  • Added numerous APIs for spec manipulations
  • Use ConcordCovert at your own risk

3.1.1a  2022/02/26
  • Cleanup ConcordCaptain on player exiting market and player finishing battle to reduce memory usage

3.1.0a  2022/02/26
  • Added SelectiveTransientHullmod interface
  • Added WeaponInducedEffect interface
  • Added FighterInducedEffect interface
  • Fixed an issue with ship identification for TrackedHullmodEffect

3.0.1a  2022/02/26
  • added GlobalTransientHullmod

3.0.0a  2022/02/26
  • Total revamp of hullmod injection and phase injection
  • Completed phase modification effect interface

2.2.2a  2022/02/22
  • Fixed improper unhidden issue
  • Fixed phase displaying as special system

2.2.1c  2022/02/22
  • Fixed improper hidden issue

2.2.0a  2022/02/20
  • Improved parsing performance for S-mod

2.1.6a  2022/02/17
  • Tokenized string
  • Moved two classes to separate package
  • Cached blacklist
  • Retired ConcordCommander, no more everyframe script

2.1.5a  2022/02/17
  • Fixed my fat finger

2.1.4a  2022/02/17
  • Fixed console command compatibility
  • Presumably fixed progressive S-mod compatibility

2.1.0a  2022/02/17
  • Fully fixed mission and campaign duplicate display
  • Fully fixed S-mod display issue
  • Added onInstall and onRemove interface

2.0.0a  2022/02/16
  • Now supports concord implementation without library import and coding
  • Now supports vanilla hullmod implicit incompatibility detection, no more placeholders
  • No CSV replacement performed, compatible with [Better Deserved S-Mods]

1.4.0a  2022/02/13
  • Added multi ship compatibility to prevent cheese re-add

1.3.0b  2022/02/13
  • Added more informative description about the exact conflicts
  • Moved the incompatible check to the applyEffectsAfterShipCreation
  • Added auto re-add for vanilla incompatible injection (and theory crafting how it can break)

1.2.0  2022/02/11
  • Added configuration to turn off cross mod check
  • Added auto hullmod replacement with style

1.1.1  2022/02/01
  • Added methods for finer getters
  • More helpful default getUnapplicableReason

1.1.0  2022/01/30
  • Added tag for common multi incompatibility

1.0.0  2022/01/28
  • Initial release
[close]

Working in progress
None
[close]

6
Suggestions / Nerf Quantum Disruptor
« on: January 24, 2022, 10:56:29 AM »
I personally feel it’s too bossy of a system and virtually no way to counter it.

Suggested change:
Instead of forced overloading, only force shut down defense measures (shield and phase) and active systems (burn drive, damper field, etc).
This would make the target of such system have a chance to fight back and make the system more tactical, instead of a press F and lance for free damage system.

7
General Discussion / Too many ideas
« on: August 04, 2021, 08:53:35 PM »
Have too many ideas, don't have enough time.
Help me decide which should I make first. Just for priority.
  • A fighter AI library - State machine with customizable interrupt and pre-made formation class for grab-n-go users
  • A mini faction mod - Bizarre combat effects but unimpressive visual effects because I can't sprite
  • A campaign content mod  - Our path shall cross

8
Suggestions / A pop-up when fleet-wide skill effect changes
« on: August 04, 2021, 08:39:09 PM »
I think it would be nice if the game notifies player about it.
Occasions:
  • Player leaving fleet window
  • After salvaging
  • After battle
Just like many tutorial-ish pop-ups, player may choose not to show it again or keep the notification.

9
Suggestions / Improve preliminary survey ability
« on: July 31, 2021, 06:34:49 AM »
I have only used it twice since it's introduced.

I think it should be able to detect roughly how many relics are floating around in the system, including probes, stations, derelict ships and what have you.
This would encourage player to use the neutrino detector to find the relic and not worry missing a random research station hanging in a nebula system.

Maybe it can also detect if a planet has ruins, since the floating space trash is visible from space, preliminary survey should be able to pick it up.

10
Suggestions / Allow breaking beacons
« on: July 30, 2021, 07:08:05 AM »
I don’t want the beacon to just hang around after I cleared out the system.

11
Suggestions / Make it possible to edit mod configuration in game
« on: July 28, 2021, 02:18:10 PM »
I hate to need to go to a random config file just to change a setting.
I personally consider if something cannot be done in-game it’s not really a user facing setting, yet mods like Adjusted Sector it’s almost mandatory to do that setting in plain text manually.
So, is it possible to standardize configurable mod settings and make it not require opening up my notepad++?

12
Modding / [0.95a] Phase Prototypes (0.95.1a Phase Preview)
« on: July 23, 2021, 07:08:49 PM »
Download: https://github.com/Sutopia/951P/releases/download/0.1/PhasePrototypes.7z

Features:
Reduce max speed according to hard flux level
Hullmods with magic

Disclaimer:
This mod is merely attempting to mimic what's described in the blog post and may not be the same as the actual changes.

All source code is in the jar file and free to reuse, with maybe exception of PhaseCloakStats95a, PhaseCloakStats95_1 as most of the codes are copied from Alex's code.

13
If I fit something from mod in missions and then uninstall the mod, it becomes impossible to access the mission. Even clicking reset doesn't actually reset the mission conditions, it simply bounce me back to the last "good" mission.

14
Bug Reports & Support / AI weird behavior on overload
« on: July 17, 2021, 08:20:52 PM »
So I was once again testing variants in variant editor

I used this variant against two onslaughts:

Weee
{
    "displayName": "Standard",
    "fluxCapacitors": 47,
    "fluxVents": 50,
    "hullId": "guardian",
    "hullMods": [
        "missleracks",
        "hardenedshieldemitter",
        "hardened_subsystems",
        "heavyarmor",
        "stabilizedshieldemitter",
        "fluxdistributor",
        "fluxbreakers"
    ],
    "permaMods": [],
    "sMods": [],
    "variantId": "guardian_Standard",
    "weaponGroups": [
        {
            "autofire": false,
            "mode": "LINKED",
            "weapons": {
                "WS 006": "hammerrack",
                "WS 007": "plasma",
                "WS 008": "multineedler",
                "WS 009": "hammerrack",
                "WS 010": "sabot",
                "WS 011": "sabot"
            }
        },
        {
            "autofire": true,
            "mode": "LINKED",
            "weapons": {"WS 020": "mjolnir"}
        },
        {
            "autofire": true,
            "mode": "LINKED",
            "weapons": {
                "WS 000": "flak",
                "WS 001": "flak",
                "WS 002": "flak",
                "WS 003": "flak",
                "WS 004": "flak",
                "WS 005": "flak"
            }
        }
    ]
}
[close]
I assigned eliminate on one of the onslaught. As soon as it overloads, Guardian stops attacking completely.
It just stops. Stares at its onslaught for no particular reason. All weapons are online and well in range but it simply doesn't attack, at, all.
Worth mentioning I also have assigned reckless officer to the guardian in the variant editor sim.
I think this is a critical flaw in AI.

15
General Discussion / Xyphos - The sim queen
« on: July 11, 2021, 08:54:16 AM »
People tend to compare Xyphos with two actual ion beams and state it as a great fighter.
2 ion beams AND 2 burst PD for 15 OP, that would usually cost 12x2 + 7x2 = 38 OP not considering the flux cost, sounds pretty busted yeah?

In reality, no, it's the most useless and overpriced fighter in the game IMO.

First of all, it doesn't benefit from ITU or DTC. If you're using a ship that relies on range the ion beam is probably going to sit idle most of the time.
Another reason why it's bad is due to they're not controllable in any degree. Even if set to engage they won't engage the carrier's target. Instead they will just happily shoot anything that is closest to the fighter itself.
Last but not least, ion beam is not an instant beam. It takes time to extend the beam to full range which means due to the behavior previously described, it may constantly switch target and resulting in more downtime than it should because the beam takes so much extra time to re-extend on target switch.

To sum it up, it's paying 15 OP to casually poke at frigates and fighters that tries to flank you and you have no control over it whatsoever.
The only place where it can shine is in sim 1v1 (non-carrier enemy) setup when it never gets distracted. It's the only situation (and unrealistic) it can live up to it's cost. Thus, the sim queen.

Or maybe I'm using it wrong? But how do I even use it wrong when I have no control over its behavior? Am I missing something or is there a particular vanilla loadout making it actually useful?

Pages: [1] 2 3 ... 5