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)

Pages: 1 [2] 3 4 ... 21

Author Topic: [0.97a] Progressive S-Mods (0.11.3) — gain XP for ships, spend it on S-mods  (Read 160279 times)

float

  • Commander
  • ***
  • Posts: 245
    • View Profile
Re: [0.95a] Progressive S-Mods (0.7.0)
« Reply #15 on: November 26, 2021, 11:50:06 AM »

It'd really help if there's an option to give all ships in fleet exp regardless of involvement in battle

My Ed's shipyard's Dalmatian, Basenji
Diable's Shears
and base game's Phantoms

all are not ships but none of them will ever go into battle.

I mean, unless we really need to commit to some ramming maneuvers with our phantoms...

One of the things I learned recently about this game is that if a ship doesn't have any weapons equipped, it counts as a civilian ship. For example, you could keep an unequipped paragon in your fleet and the game will count it as a civilian ship! Since phantoms and revenants can't equip any weapons, they will always count as civilian ships by this criterion.
Logged

Jaghaimo

  • Admiral
  • *****
  • Posts: 661
    • View Profile
Re: [0.95a] Progressive S-Mods (0.7.1)
« Reply #16 on: November 27, 2021, 12:44:28 AM »

A true civilian ship will have a `Civ-grade` hullmod.  It's a property of a shiphull.

You can check hints as well: ShipTypeHints.CIVILIAN. It's also a property of a shiphull.

Finally, there's also isCivilian() call on fleet member, but I always found it unreliable, probably due to this "no weapons" you've mentioned.
« Last Edit: November 27, 2021, 12:48:16 AM by Jaghaimo »
Logged

nekoworkshop

  • Ensign
  • *
  • Posts: 20
    • View Profile
Re: [0.95a] Progressive S-Mods (0.7.0)
« Reply #17 on: November 27, 2021, 07:10:34 AM »

Well....THERE'S something I was hoping for but didn't know if it was possible, to me it adds the flavor of a ship slowly taking on a life of its own as its crew repairs maintains and slowly modify the ship throughout its life

reminds me a lot of stuff like Hero Mechs in battletech, nigh legendary mechs slowly but surely customized in such a way the mech took on a life and legend of its own

anyways, will try...

You may want to check out this mod as well  :) https://fractalsoftworks.com/forum/index.php?topic=15321.0
Logged

float

  • Commander
  • ***
  • Posts: 245
    • View Profile
Re: [0.95a] Progressive S-Mods (0.7.1)
« Reply #18 on: November 27, 2021, 12:56:32 PM »

A true civilian ship will have a `Civ-grade` hullmod.  It's a property of a shiphull.

You can check hints as well: ShipTypeHints.CIVILIAN. It's also a property of a shiphull.

Finally, there's also isCivilian() call on fleet member, but I always found it unreliable, probably due to this "no weapons" you've mentioned.

It seems that according to the game, all civ-grade ships are civilian, but not all civilian ships are necessarily civ-grade. It mostly makes sense to have weaponless ships be considered civilian -- the only place it doesn't is for ships like doom where the ship system makes up a large portion of the damage output.
Logged

6chad.noirlee9

  • Captain
  • ****
  • Posts: 368
    • View Profile
Re: [0.95a] Progressive S-Mods (0.7.1)
« Reply #19 on: November 27, 2021, 02:40:24 PM »

How compatible is this with archaen order?
Logged
edit: edit: maybe were just falling with style LOL.  make a bubble, make the space in front of it smaller and just fall forward

float

  • Commander
  • ***
  • Posts: 245
    • View Profile
Re: [0.95a] Progressive S-Mods (0.7.1)
« Reply #20 on: November 27, 2021, 08:56:45 PM »

How compatible is this with archaen order?

In my 5 minute playtest with AO everything seemed to work, and AO claims to be compatible with some other similar mods -- in particular Starship Legends -- so I don't think there should be any issues with crashing/games breaking/etc. That said I have no idea whether or not this mod would have balancing issues with AO.
Logged

float

  • Commander
  • ***
  • Posts: 245
    • View Profile
Re: [0.95a] Progressive S-Mods (0.8.0)
« Reply #21 on: December 04, 2021, 01:34:39 PM »

Updated to 0.8.0, see release notes here.

Highlights:
- You can now gain XP by taking damage and supporting your allies. Note that the enemy ship still actually has to take damage in order for it to award XP.
- Rewrote most of the UI code, added an interface for selecting modules
- You no longer have to deal with compounding SP costs for increasing a ship's S-mod limit -- SP costs are now flat while XP costs double, making XP costs the primary limiting factor.
Logged

G4R5vb3H

  • Ensign
  • *
  • Posts: 8
    • View Profile
Re: [0.95a] Progressive S-Mods (0.8.0)
« Reply #22 on: December 07, 2021, 11:51:00 AM »

So. I think I may have encountered an issue - ArmA Armatura Cataphracts, the small ones that can go around being resupplied by carriers but are piloted by the player - don't seem to gain experience when a carrier is in the field. I'm guessing it's somehow considering the Catahpracts Strike Craft (Which they, admittedly, are) and refusing them XP.
Logged

float

  • Commander
  • ***
  • Posts: 245
    • View Profile
Re: [0.95a] Progressive S-Mods (0.8.0)
« Reply #23 on: December 07, 2021, 02:29:04 PM »

So. I think I may have encountered an issue - ArmA Armatura Cataphracts, the small ones that can go around being resupplied by carriers but are piloted by the player - don't seem to gain experience when a carrier is in the field. I'm guessing it's somehow considering the Catahpracts Strike Craft (Which they, admittedly, are) and refusing them XP.

Interestingly enough when I tested with Arma Armatura 90% of the time the cataphract was getting experience as intended.

The 10% of the time that it didn't work was because the cataphract was showing up as a fighter (i.e. isFighter() returns true on the ship) but the fighter's getWing() was null.
Fighters are not intended to gain XP, since they generally do not have a corresponding fleet member (fleet members are persistent objects in the campaign layer, whereas ships are temporary and get recreated during each combat). Instead, any XP that they would get is transferred to their carrier (getWing().getSourceShip()). However, if a ship is listed as a fighter but does not have a source ship, the XP will be lost. I can change this so that fighters whose wing or source ship are null instead point back to themselves, which should make it so that they can receive XP as long as they have an attached fleet member. My concern with this is that wings that do not have a corresponding fleet member are given a temporary fleet member id, so if somehow a wing with no fleet member also has no source ship, some temporary fleet member could be given XP. Since any fleet member with XP gets put into the save file, having temporary fleet members with XP would cause save file bloat.
Logged

presidentmattdamon

  • Commander
  • ***
  • Posts: 249
    • View Profile
Re: [0.95a] Progressive S-Mods (0.8.0)
« Reply #24 on: December 07, 2021, 05:07:44 PM »

So. I think I may have encountered an issue - ArmA Armatura Cataphracts, the small ones that can go around being resupplied by carriers but are piloted by the player - don't seem to gain experience when a carrier is in the field. I'm guessing it's somehow considering the Catahpracts Strike Craft (Which they, admittedly, are) and refusing them XP.

Interestingly enough when I tested with Arma Armatura 90% of the time the cataphract was getting experience as intended.

The 10% of the time that it didn't work was because the cataphract was showing up as a fighter (i.e. isFighter() returns true on the ship) but the fighter's getWing() was null.
Fighters are not intended to gain XP, since they generally do not have a corresponding fleet member (fleet members are persistent objects in the campaign layer, whereas ships are temporary and get recreated during each combat). Instead, any XP that they would get is transferred to their carrier (getWing().getSourceShip()). However, if a ship is listed as a fighter but does not have a source ship, the XP will be lost. I can change this so that fighters whose wing or source ship are null instead point back to themselves, which should make it so that they can receive XP as long as they have an attached fleet member. My concern with this is that wings that do not have a corresponding fleet member are given a temporary fleet member id, so if somehow a wing with no fleet member also has no source ship, some temporary fleet member could be given XP. Since any fleet member with XP gets put into the save file, having temporary fleet members with XP would cause save file bloat.

might be worth checking with Alex if there's any way to tell if a given ShipAPI has a "temporary" FleetMemberAPI
Logged

float

  • Commander
  • ***
  • Posts: 245
    • View Profile
Re: [0.95a] Progressive S-Mods (0.8.0)
« Reply #25 on: December 07, 2021, 07:42:01 PM »

might be worth checking with Alex if there's any way to tell if a given ShipAPI has a "temporary" FleetMemberAPI
Actually upon further testing it's not that big of an issue since even though wings get a temporary fleetMemberId, their fleetMember is still null. What is perplexing, though, is the way Arma Armatura handles its pilotable fighters. So in the DeployedFleetMemberAPI of the pilotable fighter, the isFighterWing() function returns false (so wingIfFighter is null and shipIfShip is not). However, dfm.getShip().isFighter() returns true, but wait! -- dfm.getShip().getWing() is null. It's a fighter... but actually it isn't... but actually it is... but actually it isn't.

Anyway, I changed it so that if a ship satisfies the following conditions:
 - dfm.isFighterWing() is false
 - dfm.getShip() is not null
 - dfm.getShip().isFighter() is true
 - dfm.getShip().getWing() is null OR dfm.getShip().getWing().getSourceShip() is null
 - dfm.getShip().getFleetMember() is not null,

then the "base ship" of dfm.getShip() (the base ship is the ship that actually receives the XP, which usually is the carrier for fighter wings) will just be itself. Obviously this is a very specific change that basically only handles the Arma Armatura case, but it does work in practice.

I'll push this change out with the next update.
Logged

float

  • Commander
  • ***
  • Posts: 245
    • View Profile
Re: [0.95a] Progressive S-Mods (0.8.1)
« Reply #26 on: December 09, 2021, 03:35:37 PM »

Updated to 0.8.1, see release notes here.

Now has limited compatibility with pilotable fighters -- as long as they aren't tied to a carrier and have their own fleet member.

New feature: Ships destroyed in combat and not recovered will transfer most of their accrued XP into a reserve XP pool for that hull type, which can then be used to inject XP into other ships of the same hull type. Hopefully makes it less necessary to save scum for ships with lots of XP.
Logged

Anexgohan

  • Lieutenant
  • **
  • Posts: 54
    • View Profile
Re: [0.95.1a] Progressive S-Mods (0.8.2)
« Reply #27 on: December 17, 2021, 09:52:36 AM »

Wow never knew I needed this, but after reading the description I cant live without it.
Thanks for making this, gonna start a new playthrough.

One thing really, you need to give this a proper name, at first I though "oh! another hull mod, maybe i'll pass"
luckily I did not pass on and after reading the description was blown away. Just my suggestion.
Logged

Oni

  • Captain
  • ****
  • Posts: 383
    • View Profile
Re: [0.95.1a] Progressive S-Mods (0.8.2)
« Reply #28 on: December 18, 2021, 01:32:05 AM »

I do like the idea, especially as a way of giving S-Mods to smaller ships that I wouldn't bother to otherwise, but I do have a concern.

Are the innate hullmods that some types of ships come with counted as S-Mods for the total amount a ship can have?

The Paragon for instance comes with an 'Advanced Targeting Core' pre-built into it.
Logged

Farya

  • Commander
  • ***
  • Posts: 246
    • View Profile
Re: [0.95.1a] Progressive S-Mods (0.8.2)
« Reply #29 on: December 18, 2021, 02:18:34 AM »

I do like the idea, especially as a way of giving S-Mods to smaller ships that I wouldn't bother to otherwise, but I do have a concern.

Are the innate hullmods that some types of ships come with counted as S-Mods for the total amount a ship can have?

The Paragon for instance comes with an 'Advanced Targeting Core' pre-built into it.
Built-in hullmods don't count. They are effected by Better Deserved Hullmods though. So a ship with hullmod built-in would benefit from bonuses a built-in s-mod would provide.
Logged
Pages: 1 [2] 3 4 ... 21