Campaign balancing

This commit is contained in:
Anuken
2020-11-27 17:37:22 -05:00
parent d06b32c20b
commit 66918f0322
13 changed files with 25 additions and 13 deletions

View File

@@ -88,7 +88,7 @@ public class Vars implements Loadable{
/** duration of time between turns in ticks */
public static final float turnDuration = 2 * Time.toMinutes;
/** chance of an invasion per turn, 1 = 100% */
public static final float baseInvasionChance = 1f / 90f;
public static final float baseInvasionChance = 1f / 100f;
/** how many turns have to pass before invasions start */
public static final int invasionGracePeriod = 20;
/** min armor fraction damage; e.g. 0.05 = at least 5% damage */

View File

@@ -83,7 +83,7 @@ public class SectorPresets implements ContentList{
}};
desolateRift = new SectorPreset("desolateRift", serpulo, 123){{
captureWave = 30;
captureWave = 18;
difficulty = 8;
}};

View File

@@ -471,7 +471,8 @@ public class TechTree implements ContentList{
node(desolateRift, Seq.with(
new SectorComplete(impact0078),
new Research(thermalGenerator),
new Research(thoriumReactor)
new Research(thoriumReactor),
new Research(coreNucleus)
), () -> {
node(planetaryTerminal, Seq.with(
new SectorComplete(desolateRift),

View File

@@ -1252,8 +1252,8 @@ public class UnitTypes implements ContentList{
mineTier = 3;
mineSpeed = 4f;
health = 500;
armor = 5f;
health = 460;
armor = 3f;
speed = 2.5f;
accel = 0.06f;
drag = 0.017f;

View File

@@ -53,7 +53,7 @@ public class Weathers implements ContentList{
baseSpeed = 5.4f;
attrs.set(Attribute.light, -0.1f);
attrs.set(Attribute.water, -0.1f);
opacityMultiplier = 0.4f;
opacityMultiplier = 0.35f;
force = 0.1f;
sound = Sounds.wind;
soundVol = 0.8f;

View File

@@ -311,7 +311,7 @@ public class World{
//TODO bad code
boolean hasSnow = floors[0].name.contains("ice") || floors[0].name.contains("snow");
boolean hasRain = !hasSnow && content.contains(Liquids.water) && !floors[0].name.contains("sand");
boolean hasDesert = !hasSnow && !hasRain && floors[0].name.contains("sand");
boolean hasDesert = !hasSnow && !hasRain && floors[0] == Blocks.sand;
boolean hasSpores = floors[0].name.contains("spore") || floors[0].name.contains("moss") || floors[0].name.contains("tainted");
if(hasSnow){

View File

@@ -17,7 +17,7 @@ import mindustry.ui.*;
public class WaveGraph extends Table{
public Seq<SpawnGroup> groups = new Seq<>();
public int from, to = 20;
public int from = 0, to = 20;
private Mode mode = Mode.counts;
private int[][] values;
@@ -114,7 +114,7 @@ public class WaveGraph extends Table{
Lines.line(cx, cy, cx, cy + len);
if(i == values.length/2){
font.draw("" + (i + from), cx, cy - 2f, Align.center);
font.draw("" + (i + from + 1), cx, cy - 2f, Align.center);
}
}
font.setColor(Color.white);

View File

@@ -382,7 +382,7 @@ public class SectorDamage{
for(Tile tile : tiles){
if((tile.block() instanceof CoreBlock && tile.team() == state.rules.waveTeam) || tile.overlay() == Blocks.spawn){
frontier.add(tile);
values[tile.x][tile.y] = fraction * 26;
values[tile.x][tile.y] = fraction * 24;
}
}

View File

@@ -3,6 +3,8 @@ package mindustry.maps.planet;
import arc.graphics.*;
import arc.math.*;
import arc.math.geom.*;
import mindustry.content.*;
import mindustry.game.*;
import mindustry.maps.generators.*;
public class TantrosPlanetGenerator extends PlanetGenerator{
@@ -18,4 +20,13 @@ public class TantrosPlanetGenerator extends PlanetGenerator{
float depth = (float)noise.octaveNoise3D(2, 0.56, 1.7f, position.x, position.y, position.z) / 2f;
return c1.write(out).lerp(c2, Mathf.clamp(Mathf.round(depth, 0.15f))).a(0.6f);
}
@Override
protected void generate(){
pass((x, y) -> {
floor = Blocks.deepwater;
});
Schematics.placeLaunchLoadout(width / 2, height / 2);
}
}

View File

@@ -311,7 +311,7 @@ public class Conveyor extends Block implements Autotiler{
if(len >= capacity) return false;
Tile facing = Edges.getFacingEdge(source.tile, tile);
int direction = Math.abs(facing.relativeTo(tile.x, tile.y) - rotation);
return (((direction == 0) && minitem >= itemSpace) || ((direction % 2 == 1) && minitem > 0.7f)) && !(source.block.rotate && (source.rotation + 2) % 4 == rotation);
return (((direction == 0) && minitem >= itemSpace) || ((direction % 2 == 1) && minitem > 0.7f)) && !(source.block.rotate && next == source);
}
@Override

View File

@@ -93,7 +93,7 @@ public class ItemBridge extends Block{
Draw.reset();
Draw.color(Pal.placing);
Lines.stroke(1f);
if(link != null){
if(link != null && Math.abs(link.x - x) + Math.abs(link.y - y) > 1){
int rot = link.absoluteRelativeTo(x, y);
float w = (link.x == x ? tilesize : Math.abs(link.x - x) * tilesize - tilesize);
float h = (link.y == y ? tilesize : Math.abs(link.y - y) * tilesize - tilesize);
@@ -145,7 +145,7 @@ public class ItemBridge extends Block{
if(config != null) return;
Tile link = findLink(tile.x, tile.y);
if(linkValid(tile, link)){
if(linkValid(tile, link) && !proximity.contains(link.build)){
link.build.configure(tile.pos());
}