Fractal Softworks Forum

Please login or register.

Login with username, password and session length
Pages: 1 2 [3] 4 5 ... 22

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

float

  • Captain
  • ****
  • Posts: 267
    • View Profile
Re: [0.95.1a] Progressive S-Mods (0.8.2)
« Reply #30 on: December 18, 2021, 11:56:51 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.

Thanks for the kind words! Unfortunately, it’s a little late to change the mod name considering so much of the code uses progsmod, ProgSMod, or some variant of that, and I’d have to rename just about everything for consistency. So instead I added a short description to the mod title — hopefully that will make it clear enough what this mod is doing.


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.

Farya is correct. I’d also like to add that the differentiation between S-mods and built-in mods is part of the base game. All S-mods are built in, but not all built-in mods are S-mods, only the green ones are. I changed a couple of words in the mod description in case that was causing any confusion.
« Last Edit: December 18, 2021, 12:01:05 PM by this_is_a_username »
Logged

Oni

  • Captain
  • ****
  • Posts: 384
    • View Profile

What are you planning to do with with the Leadership skill "Best of the Best"?

It's whole thing is giving you an extra S-Mod (and a few more deployment points, but that's not relevant here), kind of no longer able to do that with this mod. Rather sad for something at the end of it's skill tree.
Logged

Jaghaimo

  • Admiral
  • *****
  • Posts: 661
    • View Profile

It could be reducing XP needed for each smod by x%. Retroactively refunding surplus on skill selection. Or give flat out bonus to each ships built-in hullmods. Or XP gain boost. There are many possibilities.
« Last Edit: December 20, 2021, 01:27:43 AM by Jaghaimo »
Logged

Caymon Joestar

  • Commander
  • ***
  • Posts: 115
    • View Profile

What are you planning to do with with the Leadership skill "Best of the Best"?

It's whole thing is giving you an extra S-Mod (and a few more deployment points, but that's not relevant here), kind of no longer able to do that with this mod. Rather sad for something at the end of it's skill tree.

it works fine with special modifications before. It should work fine now
Logged

float

  • Captain
  • ****
  • Posts: 267
    • View Profile

What are you planning to do with with the Leadership skill "Best of the Best"?

It's whole thing is giving you an extra S-Mod (and a few more deployment points, but that's not relevant here), kind of no longer able to do that with this mod. Rather sad for something at the end of it's skill tree.

The mod has its own counter for the number of S-mods above the limit a ship is, which just gets added to the base game’s limit.  So if you pick best of the best (previously special modifications), the base game’s limit is incremented by one, which results in every ship getting an additional S-mod slot. And, since the mod’s counter hasn’t changed, there is no XP cost increase for raising the S-mod limit via base game skills (or any mod that modifies the ship’s MutableStat directly).

The only thing is that now that best of the best is removable, if you remove it, ships that had full S-mods will show as being able to build in “up to -1 hull mods.”  This isn’t really an issue, it’s just a free S-mod that doesn’t get removed like the base game would if you got rid of special modifications. Hmm… I could replicate the base game behavior if there’s a listener that triggers on gaining or removing skills.
Logged

Oni

  • Captain
  • ****
  • Posts: 384
    • View Profile

...
The mod has its own counter for the number of S-mods above the limit a ship is, which just gets added to the base game’s limit.  So if you pick best of the best (previously special modifications), the base game’s limit is incremented by one, which results in every ship getting an additional S-mod slot. And, since the mod’s counter hasn’t changed, there is no XP cost increase for raising the S-mod limit via base game skills (or any mod that modifies the ship’s MutableStat directly).

The only thing is that now that best of the best is removable, if you remove it, ships that had full S-mods will show as being able to build in “up to -1 hull mods.”  This isn’t really an issue, it’s just a free S-mod that doesn’t get removed like the base game would if you got rid of special modifications. Hmm… I could replicate the base game behavior if there’s a listener that triggers on gaining or removing skills.
I also wonder how that would interact with something like the 'Extreme Modifications' hull mod from the 'Ship/Weapon Pack'.
Would it be in the same way?
ie: Raise the base amount of mods the specific ship could have.
Logged

float

  • Captain
  • ****
  • Posts: 267
    • View Profile

I also wonder how that would interact with something like the 'Extreme Modifications' hull mod from the 'Ship/Weapon Pack'.
Would it be in the same way?
ie: Raise the base amount of mods the specific ship could have.

SWP isn’t up to date for 0.95 so I can’t say for sure, but iirc what it did was cost a negative amount of OP and had a negative effect. If you built it in, it would cost 0 OP and you’d just be left with the negative effect. I don’t think this is an issue with either this mod or just S-mods in general — rather, extreme modifications would have to be updated to either give an additional benefit when built in, or just make it unable to be built in (but this mod ignores no_build_in by default, so in that case it would be up to the user to realize that building in a negative-cost hull mod is detrimental).

Edit: Ok, I see that SWP has a pre-release version and extreme modifications now grants an additional S-mod instead of costing negative OP. Results from testing: poor compatibility. Extreme modifications becomes permanent as soon as it's applied. It does work in that it gives you the additional S-mod slot, but yeah, the fact that it immediately becomes permanent upon clicking on it isn't desirable behavior. Also, if you try building it in via this mod's interface, it will disable itself and won't be able to be built in, saying that it "can't stack with itself."

The first issue (immediately becoming permanent) is probably because SWP is using Misc.MAX_PERMA_MODS rather than, say, Global.getSettings().getInt("maxPermanentHullmods"). Since this mod sets Misc.MAX_PERMA_MODS to -999, that would definitely cause SWP to think that every ship is always at its S-mod limit. I'd have to do a considerable amount of work to make this compatible -- first, I'd have to change how I disable building in hull mods with SP, for example by adding no_build_in to every hull mod and really_no_build_in to hull mods that already had no_build_in. Next, I'd have to actually change a fleet member's Stats.MAX_PERMANENT_HULLMODS_MOD when the increase-limit option is chosen, otherwise SWP wouldn't be able to see the real number of S-mods able to be built in. I'll think about doing this... maybe when SWP gets its full release or if people start complaining about funky behavior.

The second issue (immediately disabling itself when trying to build it in after overriding no_build_in) I would say is a problem with SWP's implementation of extreme modifications. Stacking a hull mod with itself doesn't make sense (since when was this possible?), and hull mods should always be compatible with themselves. For example, this is in the code for shield shunt:

Code
public boolean isApplicableToShip(ShipAPI ship) {
...
if (ship.getVariant().hasHullMod("shield_shunt")) return true;
...
}
« Last Edit: December 20, 2021, 08:38:15 PM by this_is_a_username »
Logged

Algoul

  • Lieutenant
  • **
  • Posts: 99
    • View Profile

This is VERY interesting. Thanx for your work.
Logged

Anexgohan

  • Lieutenant
  • **
  • Posts: 64
    • View Profile
Re: [0.95.1a] Progressive S-Mods (0.8.2)
« Reply #38 on: December 21, 2021, 10:13:20 AM »


Thanks for the kind words! Unfortunately, it’s a little late to change the mod name considering so much of the code uses progsmod, ProgSMod, or some variant of that, and I’d have to rename just about everything for consistency. So instead I added a short description to the mod title — hopefully that will make it clear enough what this mod is doing.




That's fantastic the description is great also side note: your "username" you're real bad at naming...  ;D ;D :D,
wish you well in your future endeavours, also again thanks for this, what a blast to play with!
« Last Edit: December 21, 2021, 10:15:53 AM by Anexgohan »
Logged

IGdood

  • Commander
  • ***
  • Posts: 197
    • View Profile

Great mod, gives a nice sense of progression.

My only request is that is it possible on the hull mod selection screen to be able to preview the effect of the hull mod when hovering over with the mouse? 

Thanks
Logged

float

  • Captain
  • ****
  • Posts: 267
    • View Profile

My only request is that is it possible on the hull mod selection screen to be able to preview the effect of the hull mod when hovering over with the mouse? 

I’d love to be able to do this, but unfortunately I think something like this is just not possible with the current CustomPanelAPI. But I could be wrong — if someone with more UI modding experience knows of a way to implement this, please let me know!
Logged

Jaghaimo

  • Admiral
  • *****
  • Posts: 661
    • View Profile

My only request is that is it possible on the hull mod selection screen to be able to preview the effect of the hull mod when hovering over with the mouse? 

I%u2019d love to be able to do this, but unfortunately I think something like this is just not possible with the current CustomPanelAPI. But I could be wrong %u2014 if someone with more UI modding experience knows of a way to implement this, please let me know!

Code
TooltipMakerAPI.addTooltipToPrevious(TooltipCreator tc, TooltipLocation loc)

Example:
https://github.com/jaghaimo/stelnet/blob/master/src/uilib/ShowPeople.java#L69
https://github.com/jaghaimo/stelnet/blob/master/src/uilib/ShowPeopleOfficerTooltip.java
Logged

Exasperation

  • Ensign
  • *
  • Posts: 25
    • View Profile

I've really been enjoying this mod, and I have some feedback:
- Support ship XP gain seems a little fast compared to combat ships (probably because support ships get guaranteed XP every fight, while CR rules mean my combat ships are usually taking turns being in fights).  My support ships tend to get their second S-mod while combat ships I've had (and used regularly) for longer are still working on their first one.
    - The exception is the Shepherd, which doesn't get support XP despite having the civilian hull modifier (there may be others affected by this, but that's the one I've noticed).
    - It would also be nice to have a config file with a "dedicated support ship" list for things that should get support XP regardless of being technically military ships (i.e. Valkyrie troop transport, support ships from the NSO mod).  I know that since I never plan for them to be in combat I can cheese it (and have been doing so) by not putting any weapons on them, but it feels better from an RP perspective to give them defensive weapons.

- It would be nice if letting your second in command handle pursuit gave the pursuing ships a little bit of XP.  I know I could get XP by manually killing yet another group of mostly support ships, but that's tedious - and again, due to CR the ships that perform the pursuits probably miss out on XP from other battles as a result.
Logged

float

  • Captain
  • ****
  • Posts: 267
    • View Profile

Code
TooltipMakerAPI.addTooltipToPrevious(TooltipCreator tc, TooltipLocation loc)

Example:
https://github.com/jaghaimo/stelnet/blob/master/src/uilib/ShowPeople.java#L69
https://github.com/jaghaimo/stelnet/blob/master/src/uilib/ShowPeopleOfficerTooltip.java

Thank you!

I've really been enjoying this mod, and I have some feedback:
- Support ship XP gain seems a little fast compared to combat ships (probably because support ships get guaranteed XP every fight, while CR rules mean my combat ships are usually taking turns being in fights).  My support ships tend to get their second S-mod while combat ships I've had (and used regularly) for longer are still working on their first one.
    - The exception is the Shepherd, which doesn't get support XP despite having the civilian hull modifier (there may be others affected by this, but that's the one I've noticed).
    - It would also be nice to have a config file with a "dedicated support ship" list for things that should get support XP regardless of being technically military ships (i.e. Valkyrie troop transport, support ships from the NSO mod).  I know that since I never plan for them to be in combat I can cheese it (and have been doing so) by not putting any weapons on them, but it feels better from an RP perspective to give them defensive weapons.

- It would be nice if letting your second in command handle pursuit gave the pursuing ships a little bit of XP.  I know I could get XP by manually killing yet another group of mostly support ships, but that's tedious - and again, due to CR the ships that perform the pursuits probably miss out on XP from other battles as a result.

Thank you for the feedback!

I agree that civilian ships are getting too much XP, mostly because hull mods cost a lot less XP to build in on civilian ships due to their much lower deployment costs. I've reduced civilian ship XP gain by half to account for this.

Shepherd doesn't get civilian ship XP because it has a fighter wing, and fighter wings count as weapons.

I don't think having such a config file is a good idea, simply because it wouldn't be very maintainable -- I'd have to either update the list for every mod out there that has support ships (including new releases), or allow other modders to create their own lists. For something with such a low impact, it's not going to be worth the hassle.

As for gaining XP for auto-resolve pursuits -- there are two cases where you might order such a pursuit. The first is after a large battle, where you pick off stragglers after winning the main engagement. The second is when your fleet is so much stronger than the enemy's that they are running away from you from the start. In the first case, the XP gain for pursuit should in theory be negligible compared to the main engagement. I've never felt the need to do a manual pursuit to pick off stragglers since they usually don't amount to much in comparison to the prior battle. In the second case, allowing auto-pursuits to give XP seems like it would be exploitable, since you could just gather a large fleet and repeatedly bully pirates to gain XP, while spending very little time or effort doing so.

The second case has a subcase where you're pursuing trade fleets, but in this case I actually think maybe I should change it so enemy civilian ships don't give XP. This should reduce the urge to manually pursue trade fleets for easy XP.
« Last Edit: January 10, 2022, 02:33:23 PM by this_is_a_username »
Logged

Exasperation

  • Ensign
  • *
  • Posts: 25
    • View Profile

Shepherd doesn't get civilian ship XP because it has a fighter wing, and fighter wings count as weapons.
It was my understanding that ships with the civilian-grade hull modifier are supposed to gain suppport XP regardless of weapons (i.e. if you put weapons in the small mounts of an Atlas, it should still get XP as long as you don't also give it militarized subsystems - right?).  Are fighter bays just different than normal weapon mounts for these purposes?
Quote
I don't think having such a config file is a good idea, simply because it wouldn't be very maintainable -- I'd have to either update the list for every mod out there that has support ships (including new releases), or allow other modders to create their own lists. For something with such a low impact, it's not going to be worth the hassle.
I wasn't suggesting that you should maintain the list (at most put any vanilla edge cases in, but certainly nothing more than that), it would just be nice to be able to add ships to the list myself.  That's the point of suggesting it be in a config file - something that the user can edit to meet their needs.
Quote
As for gaining XP for auto-resolve pursuits -- there are two cases where you might order such a pursuit. The first is after a large battle, where you pick off stragglers after winning the main engagement. The second is when your fleet is so much stronger than the enemy's that they are running away from you from the start. In the first case, the XP gain for pursuit should in theory be negligible compared to the main engagement. I've never felt the need to do a manual pursuit to pick off stragglers since they usually don't amount to much in comparison to the prior battle. In the second case, allowing auto-pursuits to give XP seems like it would be exploitable, since you could just gather a large fleet and repeatedly bully pirates to gain XP, while spending very little time or effort doing so.

The second case has a subcase where you're pursuing trade fleets, but in this case I actually think maybe I should change it so enemy civilian ships don't give XP. This should reduce the urge to manually pursue trade fleets for easy XP.
In my experience, the stragglers after a battle are often a pretty significant source of XP.  I haven't kept careful track, but I do see individual ships involved in pursuits getting more XP than some of the lesser ships involved in the main battle, into the low triple digits depending on what sorts of stragglers there are.  Considering the ships doing the pursuing often only see combat during pursuits, that's the difference between "a little ways behind the main combat group in XP" and "never gets XP, ever".

My pursuits are generally as a result of either rescuing allies (you'd think those pirates attacking the trade fleets supplying my colonies don't have anything better to do than piracy  ;)), working on missions, or cleaning up after large battles.  I think the number of trade fleets I've hunted down since installing this mod is in the single digits, so the proposed change probably won't really affect me one way or another - at least as far as pursuits go - although at least I can feel ok about auto-resolving the special case of "I killed all the combat ships, but they had a bunch of tankers and the like in reserve I have to hunt down".  It might have unintended consequences, though, depending on how the technical details of "what is a civilian ship, exactly?" shake out.
Logged
Pages: 1 2 [3] 4 5 ... 22