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 ... 50 51 [52] 53 54 ... 197

Author Topic: [0.8a] Starsector+ 3.7.0  (Read 1325182 times)

Velox

  • Lieutenant
  • **
  • Posts: 72
    • View Profile
Re: [0.65.1a] Starsector+ Vanilla Enhancement Mod 2.4
« Reply #765 on: January 13, 2015, 08:38:49 PM »

Boarding actions are much more likely to succeed if you actually get in close. Get in close and send about 3/4 the enemy crew count in marines or somewhere around a quarter more crew if you've no marines. Too few and they escape, too many and you cause collateral damage. There is a sweet spot where you are pretty much gonna succeed every time and the only concern then is that the enemy crew may self destruct the ship out of spite. No concern if you use your flagship battleship for it, sustain minor damage from it. The only time I've lost my battleship to it is the spiteful destruction of another battleship. Frigate explosions do like 5-10% damage, it's negligible.


Open bounties spawn when a lot of *** stirring occurs. I managed to get the Templars to post an open bounty after marauding their homeworld for an in-game month. If the Hegemony successfully and repeatedly engage the Imperium in their home turf, for example, then the Imperium will post an open bounty that is described as being likely triggered by Hegemony activity in the area. Interception of trade fleets helps to propagate these open bounties. Named bounties are random as far as I'm aware. Anyone posts them for seemingly no reason and aside from the assassinations, no-one posts up names on each other.

Actually, sending in extra marines/crew does not increase the chance of "collateral damage".  The only downside is potentially more are lost in casualties/explosions.

I know you guys are the ones looking at the code and are most assuredly right, but I can't help feeling so SO certain that a force just slightly larger than the survivors (or a handful fewer marines with the effectiveness perk) results in captures way more often.  Confirmation bias and anecdotal evidence and all, I know, but it REALLLLLLY seems that way!  

I'll start tracking my results and be back to recant and apologize in the relatively near future, I am sure.   :)
Logged

Silver Silence

  • Admiral
  • *****
  • Posts: 980
    • View Profile
Re: [0.65.1a] Starsector+ Vanilla Enhancement Mod 2.4
« Reply #766 on: January 14, 2015, 12:03:46 PM »

Actually, sending in extra marines/crew does not increase the chance of "collateral damage".  The only downside is potentially more are lost in casualties/explosions.

Then by that, I should be able to just throw my flagship's entire crew complement at a ship and capture it. I never have. It always ends up destroyed by collateral damage which means the capture was successful but too much of the ship's insides was made into swiss cheese in the process. I've always assumed (and it seems intuitive) that this was due to use of excessive force.

I know you guys are the ones looking at the code and are most assuredly right, but I can't help feeling so SO certain that a force just slightly larger than the survivors (or a handful fewer marines with the effectiveness perk) results in captures way more often.  Confirmation bias and anecdotal evidence and all, I know, but it REALLLLLLY seems that way! 

I'll start tracking my results and be back to recant and apologize in the relatively near future, I am sure.   :)

As one putting together mods and digging through code regularly, Dark could definitely decrypt it. Me, I'm just going off my personal experience. Up to 1.5x survivor count in assaulting crew is tolerable though this tolerance declines as crew counts increase. 15 crew attacking 10 defenders is usually successful. 300 crew attacking 200 survivors is overkill and your crew will also get massacred in the process. Thankfully, the only ships that might have that sort of surviving crew count are Onslaughts or ships that otherwise need a lot of crew. Up to equal count of survivors in marines usually works (marines are already more effective fighters than crew so not so many are needed). Once you improve marine effectiveness, tolerance goes down and less marines should be sent in.
Logged

Midnight Kitsune

  • Admiral
  • *****
  • Posts: 2846
  • Your Friendly Forum Friend
    • View Profile
Re: [0.65.1a] Starsector+ Vanilla Enhancement Mod 2.4
« Reply #767 on: January 14, 2015, 03:43:17 PM »

As one putting together mods and digging through code regularly, Dark could definitely decrypt it.
I'm pretty sure he, or someone else, already has and even posted the lines of code talking about it but I can't find the post!
Logged
Help out MesoTroniK, a modder in need

2021 is 2020 won
2022 is 2020 too

Dark.Revenant

  • Admiral
  • *****
  • Posts: 2806
    • View Profile
    • Sc2Mafia
Re: [0.65.1a] Starsector+ Vanilla Enhancement Mod 2.4
« Reply #768 on: January 14, 2015, 04:32:38 PM »

SPOILER WARNING: VANILLA BOARDING CODE
Spoiler
Code: java
	public static final float SELF_DESTRUCT_CHANCE = 0.25f;
public static final float CIV_SELF_DESTRUCT_CHANCE = 0.05f;

public static final float ENGAGE_ESCAPE_CHANCE = 0.25f;
public static final float ENGAGE_DISABLE_CHANCE = 0.5f;
public static final float ENGAGE_DESTROY_CHANCE = 0.25f;

public static final float LAUNCH_CLEAN_ESCAPE_CHANCE = 0.5f;
public static final float DOCK_SUCCESS_CHANCE = 0.5f;
public static final float LAUNCH_SUCCESS_CHANCE = 0.25f;

public static final float DEFENDER_BONUS = 1.5f;
public static final float DEFENDER_VS_LAUNCH_BONUS = 3f;

        // snip...

DataForEncounterSide attackerSide = getDataFor(attacker);
DataForEncounterSide defenderSide = getDataFor(defender);

float attackerMarineMult = attacker.getCommanderStats().getMarineEffectivnessMult().getModifiedValue();
float defenderMarineMult = defender.getCommanderStats().getMarineEffectivnessMult().getModifiedValue();

float greenMult = 1f;
float regularMult = 1.25f;
float veteranMult = 1.5f;
float eliteMult = 2f;
float marineMult = 7f;

float attackerStr = boardingParty.getGreen() * greenMult +
boardingParty.getRegular() * regularMult +
boardingParty.getVeteran() * veteranMult +
boardingParty.getElite() * eliteMult +
boardingParty.getMarines() * marineMult;
attackerStr *= attackerMarineMult;

CrewCompositionAPI defenderCrew = member.getCrewComposition();
float defenderStr = defenderCrew.getGreen() * greenMult +
defenderCrew.getRegular() * regularMult +
defenderCrew.getVeteran() * veteranMult +
defenderCrew.getElite() * eliteMult +
defenderCrew.getMarines() * marineMult;
defenderStr *= defenderMarineMult;

if (attackType == BoardingAttackType.LAUNCH_FROM_DISTANCE) {
defenderStr *= DEFENDER_VS_LAUNCH_BONUS;
} else {
defenderStr *= DEFENDER_BONUS;
}

attackerStr *= 0.75f + 0.25f * (float) Math.random();
defenderStr *= 0.75f + 0.25f * (float) Math.random();

boolean attackerWin = attackerStr > defenderStr;
boolean defenderWin = !attackerWin;

float r = (float) Math.random();

BoardingResult result = new BoardingResult();
result.setMember(member);

for (FleetMemberAPI fm: boardingTaskForce) {
float deployCost = getDeployCost(member);
fm.getRepairTracker().applyCREvent(-deployCost, "engaged in boarding action");
}

BoardingOutcome outcome = null;

if (attackType == BoardingAttackType.LAUNCH_FROM_DISTANCE && (float) Math.random() < LAUNCH_CLEAN_ESCAPE_CHANCE) {
outcome = BoardingOutcome.SHIP_ESCAPED_CLEAN;
}
                if (outcome == null && defenderWin) {
outcome = BoardingOutcome.SHIP_ESCAPED;
}

boolean civ = member.getVariant().getHints().contains(ShipTypeHints.CIVILIAN);
if (outcome == null && (float) Math.random() < SELF_DESTRUCT_CHANCE && !civ) {
outcome = BoardingOutcome.SELF_DESTRUCT;
}
if (outcome == null && (float) Math.random() < CIV_SELF_DESTRUCT_CHANCE && civ) {
outcome = BoardingOutcome.SELF_DESTRUCT;
}

if (outcome == null) {
float threshold = DOCK_SUCCESS_CHANCE;
if (attackType == BoardingAttackType.LAUNCH_FROM_DISTANCE) {
  threshold = LAUNCH_SUCCESS_CHANCE;
}
if ((float) Math.random() < threshold) {
outcome = BoardingOutcome.SUCCESS;
} else {
outcome = BoardingOutcome.SUCCESS_TOO_DAMAGED;
}
}

result.setOutcome(outcome);
[close]
Logged

Histidine

  • Admiral
  • *****
  • Posts: 4661
    • View Profile
    • GitHub profile
Re: [0.65.1a] Starsector+ Vanilla Enhancement Mod 2.4
« Reply #769 on: January 14, 2015, 07:32:31 PM »

Boarding comments
Spoiler
Wait, launch from a distance gives you only half the chance to end up with a still-working ship on top of the 50% chance for the enemy ship to get away at start? That is outrageous.

I assume ENGAGE_ESCAPE_CHANCE is only used for player ships fleeing the AI? I don't think a restored enemy ship has ever gotten away after I've chosen to blow it up.
[close]
Logged

Silver Silence

  • Admiral
  • *****
  • Posts: 980
    • View Profile
Re: [0.65.1a] Starsector+ Vanilla Enhancement Mod 2.4
« Reply #770 on: January 14, 2015, 07:49:29 PM »

Spoiler
I don't understand Java. Is taken me a good few minutes to try and read this with the help of a friend.

Basically, from what I can gather

If the attacking crew outnumbers the defending crew (with a +/-25% variable to either side which has no definition or limit within the code (math.random (there must be a limit to this otherwise this could add thousands of generic crew strength to either side for no good reason))), they win. The attacking crew then has a 50% chance to get the ship if they docked or a 25% chance to get the ship if they launched, with another 25% chance for the ship to explode in your face before that. Defenders also get a 50% increase in generic crew strength against a docking action or tripled crew strength against launches, meaning you must send twice as many crew/marines to launch over docking (150% vs 300%)

The code says that excessive force is not a thing and you should just launch all your crew/marines to overwhelm the defenders but my experience has not been so.
[close]
« Last Edit: January 14, 2015, 07:54:38 PM by Silver Silence »
Logged

Histidine

  • Admiral
  • *****
  • Posts: 4661
    • View Profile
    • GitHub profile
Re: [0.65.1a] Starsector+ Vanilla Enhancement Mod 2.4
« Reply #771 on: January 16, 2015, 06:31:26 AM »

Does anyone use tugs? I personally found the fuel cost prohibitive for anything except capitals even in vanilla and with SS+'s doubled fuel consumption... ehhh.
Logged

OOZ662

  • Captain
  • ****
  • Posts: 390
    • View Profile
Re: [0.65.1a] Starsector+ Vanilla Enhancement Mod 2.4
« Reply #772 on: January 16, 2015, 07:28:15 AM »

I use a small one to pull my cruiser alongside its destroyer and fast cruiser fleetmates. I don't really find SS+'s fuel to be an issue any more, with a full standard tank being enough to do a two-way trip with my combat fleet. Add in the two Astrals and at least a medium tanker is required.
Logged
It is law that any specific ship you want will not be available. If it is available, it will be gone by the time you're capable of buying it.

Chaos Farseer

  • Lieutenant
  • **
  • Posts: 98
    • View Profile
Re: [0.65.1a] Starsector+ Vanilla Enhancement Mod 2.4
« Reply #773 on: January 16, 2015, 07:42:49 AM »

Silver Silence: Math.random returns a value between 0 and 1, btw.
Logged

Wyvern

  • Admiral
  • *****
  • Posts: 3786
    • View Profile
Re: [0.65.1a] Starsector+ Vanilla Enhancement Mod 2.4
« Reply #774 on: January 16, 2015, 09:26:17 PM »

Bug: jump into system via stars is broken - as in, I have the skill that's supposed to grant that (Applied Physics at 7+; in my case I took it to level 10 for hardened shields), and all I get is a dialog saying "You are unable to use this jump point".

Active mods:
SS+ 2.4+
II 1.6.1
LazyLib 2.0b
Neutrino 1.80
Omnifactory 1.10b
Shadowyards 0.5.2.2
Templar 0.9.3g
Shaderlib beta v1.02
Console 2.3
Save Transfer 1.3
Logged
Wyvern is 100% correct about the math.

Dark.Revenant

  • Admiral
  • *****
  • Posts: 2806
    • View Profile
    • Sc2Mafia
Re: [0.65.1a] Starsector+ Vanilla Enhancement Mod 2.4
« Reply #775 on: January 16, 2015, 10:06:28 PM »

There is a bug, but it's in the Neutrino mod.  Neutrino overrides the SS+ campaign plugin with the vanilla one (for no reason), so as long as you're using that mod you will not have the new SS+ boarding/repair mechanics and you can't use star wormholes.
« Last Edit: January 16, 2015, 10:08:58 PM by Dark.Revenant »
Logged

Wyvern

  • Admiral
  • *****
  • Posts: 3786
    • View Profile
Re: [0.65.1a] Starsector+ Vanilla Enhancement Mod 2.4
« Reply #776 on: January 16, 2015, 10:31:59 PM »

Hm.  Which file is being overwritten, exactly?  That sounds like the sort of thing that ought to be a fairly easy fix to hack in locally... if I knew which file was the problem.
Logged
Wyvern is 100% correct about the math.

Dark.Revenant

  • Admiral
  • *****
  • Posts: 2806
    • View Profile
    • Sc2Mafia
Re: [0.65.1a] Starsector+ Vanilla Enhancement Mod 2.4
« Reply #777 on: January 16, 2015, 11:18:05 PM »

It's a plugin overwrite, not a file overwrite.  You have to delete "sector.registerPlugin(new CoreCampaignPluginImpl());" from neutrinoGen.java and recompile the Neutrino .jar file.
Logged

LB

  • Lieutenant
  • **
  • Posts: 54
    • View Profile
Re: [0.65.1a] Starsector+ Vanilla Enhancement Mod 2.4
« Reply #778 on: January 17, 2015, 01:50:20 AM »

Noticed this elsewhere; SSP is so ubiquitous that maybe a warning is due for other mod authors regarding adding null checks for getShield() for when players use Shield Bypass? I saw some scripts for AI and unique built-ins (and probably other stuff) getting NPEs over that. Or, heh, change the return for ships without shields from null to a dummy that turns calls on it to no-ops and make everyone's life really difficult when debugging.

That, or maybe I could just take a look around and tally up which ships you can't install Shield Bypass on.

Great mod as always, by the way. What are your plans with SSP's balancing tweaks regarding the upcoming version's changes to ballistics and beams?
« Last Edit: January 17, 2015, 01:54:03 AM by LB »
Logged

Dark.Revenant

  • Admiral
  • *****
  • Posts: 2806
    • View Profile
    • Sc2Mafia
Re: [0.65.1a] Starsector+ Vanilla Enhancement Mod 2.4
« Reply #779 on: January 17, 2015, 02:30:33 AM »

No plans.  I will decide after I've played with the new balance changes.
Logged
Pages: 1 ... 50 51 [52] 53 54 ... 197