16
General Discussion / Re: Dissapointed from the last Patch.
« on: February 27, 2015, 06:46:28 AM »
I too wish for more content and framework then polish,content,and balance. Extreme potential with this game tho. I do love it.
Starsector 0.97a is out! (02/02/24); New blog post: Save/Load UI, Autosave, Intel Map Markers, and More (04/10/24)
MindsEye, your method of 'balancing' ballistics would make using low-tech/midline ships unnecessarily complicated and tedious. For example what would happen if the ship that supplies ammo got destroyed when I needed it? I would pretty much have to abandon the battle because I couldn't attack. That change would immediately cause high-tech ships to become the superior (and more fun) option (something 0.65 has help fix).
Also how would the ammo be set so that each shot counts? Would it be set up for a short battle, a medium one? If so it would make that ammo ship mandatory if you unexpectedly had a long battle, causing more trouble for low-tech/midline and more reason to use high-tech. It would also make weapons like the assault chaingun and AC series useless considering their bad accuracy.
Personally I think how it is now is a step in the right direction. While some ballistic weapons need work (PD and needlers) most are actually useful, including those that were originally worthless like the HMG and Gauss Cannon.
QuoteWell balance it to be a factor then.To be balanced, Ballistics would have to be significantly more powerful, DPS/Flux-wise. More over, when it's "a factor" is largely dependent on play-styles; if you're a lone-wolf, one-ship-at-a-time arcade player, then ammo of any kind is a major deterrent from using Ballistics at all; if you're mega-fleet player, then it's much less important than how good the DPS/Flux efficiency is and whether you want to go Low / Mid Tech at all, past the early game.
SectorEntityToken token = system.createToken(0, 15000);
sw_EmpireSDFSpawnPoint sdfSpawn = new sw_EmpireSDFSpawnPoint(sector, system, 30, 1, token, empirehq);
system.addSpawnPoint(sdfSpawn);
spawnsdf(sector, system, empirehq);
private void spawnSDF(SectorAPI sector, StarSystemAPI system, SectorEntityToken location) {
CampaignFleetAPI fleet = sector.createFleet("sw_empire", "defensefleet");
system.spawnFleet(location, -500, 200, fleet);
fleet.addAssignment(FleetAssignment.DEFEND_LOCATION, empirehq, 1000000);
fleet.setPreferredResupplyLocation(location);
package data.scripts.world;
import com.fs.starfarer.api.campaign.CampaignFleetAPI;
import com.fs.starfarer.api.campaign.FleetAssignment;
import com.fs.starfarer.api.campaign.LocationAPI;
import com.fs.starfarer.api.campaign.SectorAPI;
import com.fs.starfarer.api.campaign.SectorEntityToken;
import data.scripts.world.BaseSpawnPoint;
@SuppressWarnings("unchecked")
public class sw_EmpireSDFSpawnPoint extends BaseSpawnPoint {
private final SectorEntityToken station;
public sw_EmpireSDFSpawnPoint(SectorAPI sector, LocationAPI location,
float daysInterval, int maxFleets, SectorEntityToken anchor, SectorEntityToken station) {
super(sector, location, daysInterval, maxFleets, anchor);
this.station = station;
}
@Override
public CampaignFleetAPI spawnFleet() {
//if ((float) Math.random() < 0.75f) return null;
String type = "defensefleet";
CampaignFleetAPI fleet = getSector().createFleet("sw_empire", type);
getLocation().spawnFleet(getAnchor(), 0, 0, fleet);
fleet.setPreferredResupplyLocation(station);
fleet.addAssignment(FleetAssignment.DEFEND_LOCATION, empirehq, 100000);
return fleet;
}
}
package data.scripts.world;
import com.fs.starfarer.api.campaign.CampaignFleetAPI;
import com.fs.starfarer.api.campaign.FleetAssignment;
import com.fs.starfarer.api.campaign.LocationAPI;
import com.fs.starfarer.api.campaign.SectorAPI;
import com.fs.starfarer.api.campaign.SectorEntityToken;
public class sw_empiredefensefleetSpawnPoint extends BaseSpawnPoint
{
public sw_empiredefensefleetSpawnPoint(SectorAPI sector, LocationAPI location,
float daysInterval, int maxFleets, SectorEntityToken anchor)
{
super(sector, location, daysInterval, maxFleets, anchor);
}
@Override
protected CampaignFleetAPI spawnFleet() {
String type = null;
float r = (float) Math.random();
if (r > .6f) {
type = "defensefleet";
} else if (r > 0.25f) {
type = "defensefleet";
} else if (r > 0.10f) {
type = "defensefleet";
} else {
type = "defensefleet";
}
CampaignFleetAPI fleet = getSector().createFleet("sw_empire", type);
getLocation().spawnFleet(getAnchor(), 0, 0, fleet);
fleet.setPreferredResupplyLocation(getAnchor());
if (type.equals("defensefleet")) {
fleet.addAssignment(FleetAssignment.DEFEND_LOCATION, getAnchor(), 10);
fleet.addAssignment(FleetAssignment.GO_TO_LOCATION_AND_DESPAWN, getAnchor(), 1000);
}
return fleet;
}
}