Skip to content

Commit 656c811

Browse files
committed
balance changes
1 parent 51c1aa5 commit 656c811

File tree

7 files changed

+48
-50
lines changed

7 files changed

+48
-50
lines changed

build.gradle

+12-2
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ apply plugin: "java"
22

33
version '1.0'
44

5-
sourceCompatibility = 1.9
5+
sourceCompatibility = JavaVersion.VERSION_16
66

77
sourceSets.main.java.srcDirs = ["src"]
88

@@ -11,18 +11,28 @@ compileTestJava.options.encoding = "UTF-8"
1111

1212
repositories {
1313
mavenCentral()
14+
maven { url "https://raw.githubusercontent.com/Zelaux/MindustryRepo/master/repository" }
1415
maven { url 'https://www.jitpack.io' }
1516
}
1617

1718
ext {
1819
//the build number that this plugin is made for
19-
mindustryVersion = 'v140.2'
20+
mindustryVersion = 'v145'
21+
jabelVersion = "93fde537c7"
22+
}
23+
24+
//java 8 backwards compatibility flag
25+
allprojects {
26+
tasks.withType(JavaCompile) {
27+
options.compilerArgs.addAll(['--release', '8'])
28+
}
2029
}
2130

2231
dependencies {
2332
implementation 'org.jetbrains:annotations:20.1.0'
2433
compileOnly "com.github.Anuken.Arc:arc-core:$mindustryVersion"
2534
compileOnly "com.github.Anuken.Mindustry:core:$mindustryVersion"
35+
annotationProcessor "com.github.Anuken:jabel:$jabelVersion"
2636
implementation 'org.mariadb.jdbc:mariadb-java-client:2.1.2'
2737
implementation 'com.google.code.gson:gson:2.9.0'
2838
implementation 'net.dv8tion:JDA:5.0.0-alpha.17'

gradle.properties

+13
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
org.gradle.jvmargs=--illegal-access=permit \
2+
--add-exports=jdk.compiler/com.sun.tools.javac.api=ALL-UNNAMED \
3+
--add-exports=jdk.compiler/com.sun.tools.javac.code=ALL-UNNAMED \
4+
--add-exports=jdk.compiler/com.sun.tools.javac.model=ALL-UNNAMED \
5+
--add-exports=jdk.compiler/com.sun.tools.javac.processing=ALL-UNNAMED \
6+
--add-exports=jdk.compiler/com.sun.tools.javac.parser=ALL-UNNAMED \
7+
--add-exports=jdk.compiler/com.sun.tools.javac.util=ALL-UNNAMED \
8+
--add-exports=jdk.compiler/com.sun.tools.javac.tree=ALL-UNNAMED \
9+
--add-exports=jdk.compiler/com.sun.tools.javac.file=ALL-UNNAMED \
10+
--add-exports=jdk.compiler/com.sun.tools.javac.main=ALL-UNNAMED \
11+
--add-exports=jdk.compiler/com.sun.tools.javac.jvm=ALL-UNNAMED \
12+
--add-exports=jdk.compiler/com.sun.tools.javac.comp=ALL-UNNAMED \
13+
--add-exports=java.base/sun.reflect.annotation=ALL-UNNAMED

src/sectorized/constant/Rules.java

+9-16
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@ public class Rules {
4747
Blocks.canvas);
4848

4949
((ItemTurret) (Blocks.foreshadow)).ammoTypes.forEach(ammoType -> {
50-
ammoType.value.damage *= 0.75;
50+
ammoType.value.damage *= 1.5;
5151
});
5252
((ItemTurret) (Blocks.spectre)).ammoTypes.forEach(ammoType -> {
5353
ammoType.value.damage *= 2.0;
@@ -69,7 +69,7 @@ public class Rules {
6969

7070
public static void setSpawnGroups(mindustry.game.Rules rules) {
7171
if (State.planet.equals(Planets.serpulo.name)) {
72-
rules.waveSpacing = 60 * 60 * 2.5f;
72+
rules.waveSpacing = 60 * 60 * 3.0f;
7373

7474
rules.spawns = Seq.with(
7575
// T1
@@ -215,38 +215,31 @@ public static void setSpawnGroups(mindustry.game.Rules rules) {
215215
begin = 40;
216216
end = never;
217217
unitAmount = 2;
218-
unitScaling = 2f;
218+
unitScaling = 5f;
219219
}},
220220
new SpawnGroup(corvus) {{
221221
begin = 45;
222222
end = never;
223223
unitAmount = 2;
224-
unitScaling = 2f;
224+
unitScaling = 5f;
225225
}},
226226
new SpawnGroup(toxopid) {{
227227
begin = 50;
228228
end = never;
229229
unitAmount = 2;
230-
unitScaling = 2f;
230+
unitScaling = 5f;
231231
}},
232232
new SpawnGroup(eclipse) {{
233233
begin = 55;
234234
end = never;
235235
unitAmount = 2;
236-
unitScaling = 2f;
237-
}},
238-
new SpawnGroup(oct) {{
239-
begin = 60;
240-
end = never;
241-
unitAmount = 2;
242-
unitScaling = 2f;
236+
unitScaling = 5f;
243237
}},
244238
new SpawnGroup(omura) {{
245239
begin = 55;
246240
end = never;
247-
spacing = 2;
248241
unitAmount = 2;
249-
unitScaling = 2f;
242+
unitScaling = 5f;
250243
}}
251244
);
252245
} else if (State.planet.equals(Planets.erekir.name)) {
@@ -334,13 +327,13 @@ public static void setSpawnGroups(mindustry.game.Rules rules) {
334327
begin = 56;
335328
end = never;
336329
unitAmount = 1;
337-
unitScaling = 3f;
330+
unitScaling = 5f;
338331
}},
339332
new SpawnGroup(disrupt) {{
340333
begin = 58;
341334
end = never;
342335
unitAmount = 1;
343-
unitScaling = 3f;
336+
unitScaling = 5f;
344337
}}
345338
);
346339
}

src/sectorized/faction/FactionManager.java

+1-25
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,6 @@
44
import arc.struct.Seq;
55
import arc.util.CommandHandler;
66
import arc.util.Timer;
7-
import mindustry.Vars;
87
import mindustry.ai.types.LogicAI;
98
import mindustry.content.UnitTypes;
109
import mindustry.entities.Units;
@@ -353,29 +352,6 @@ else if (faction.maxCores >= 5) {
353352

354353
MessageUtils.sendMessage("(Re)spawning is now " + MessageUtils.cInfo + "unlocked" + MessageUtils.cDefault + " again!", MessageUtils.MessageLevel.INFO);
355354
});
356-
357-
Events.on(EventType.WaveEvent.class, event -> {
358-
if (Vars.state.wave == 45) {
359-
MessageUtils.sendMessage("Everyone with more than 5 cores will loose 1% of their score per wave after wave 50! Stop camping, start fighting!", MessageUtils.MessageLevel.WARNING);
360-
}
361-
362-
if (Vars.state.wave == 50) {
363-
MessageUtils.sendMessage("Everyone with more than 5 cores will now loose 1% of their score per wave! Stop camping, start fighting!", MessageUtils.MessageLevel.WARNING);
364-
}
365-
366-
if (Vars.state.wave > 50) {
367-
for (Player player : Groups.player) {
368-
Member member = memberLogic.getMember(player);
369-
370-
if (member.faction != null && member.faction.team.cores().size >= 5) {
371-
int loss = (int) (member.score * 0.01f);
372-
member.score *= 0.99f;
373-
374-
MessageUtils.sendMessage(member.player, "You lost" + loss + " points! Stop camping, start fighting!", MessageUtils.MessageLevel.WARNING);
375-
}
376-
}
377-
}
378-
});
379355
}
380356

381357
@Override
@@ -430,7 +406,7 @@ public void registerClientCommands(CommandHandler handler) {
430406
if (member.rank == 0) {
431407
MessageUtils.sendMessage(player, "You are not ranked yet. Play a game to get ranked!", MessageUtils.MessageLevel.INFO);
432408
} else {
433-
MessageUtils.sendMessage(player, "Rank: " + MessageUtils.cHighlight1 + (member.rank < 0 ? "unranked" : member.rank) + MessageUtils.cDefault + ", Score: " + MessageUtils.cHighlight2 + member.score + MessageUtils.cDefault + ", Wins: " + MessageUtils.cHighlight3 + member.wins, MessageUtils.MessageLevel.INFO);
409+
MessageUtils.sendMessage(player, "Rank: " + MessageUtils.cHighlight1 + (member.rank < 0 ? "unranked" : member.rank) + MessageUtils.cDefault + ", Score: " + MessageUtils.cHighlight2 + member.score + MessageUtils.cDefault + ", Wins: " + MessageUtils.cHighlight3 + member.wins + MessageUtils.cDefault + ", Losses: " + MessageUtils.cDanger + member.losses, MessageUtils.MessageLevel.INFO);
434410
}
435411
});
436412

src/sectorized/faction/logic/FactionLogic.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -155,7 +155,7 @@ public void removeFaction(Faction defender, Faction attacker, boolean fallback)
155155

156156
if (Vars.state.wave < 5) return;
157157

158-
if (factions.size == 1 && State.gameState != State.GameState.GAMEOVER) {
158+
if (factions.size == 1 && !(defender.maxCores <= 3 && timeSinceSpawned < 60 * 60 * 5) && State.gameState != State.GameState.GAMEOVER) {
159159
Member winner = factions.first().members.first();
160160
State.winner = winner;
161161
winner.wins++;

src/sectorized/faction/persistence/RankingPersistence.java

+9-3
Original file line numberDiff line numberDiff line change
@@ -123,7 +123,9 @@ public void updateHallfOfFame() {
123123
.append(" - Score: ")
124124
.append(entry.score)
125125
.append(" - Wins: ")
126-
.append(entry.wins);
126+
.append(entry.wins)
127+
.append(" - Losses: ")
128+
.append(entry.losses);
127129

128130
i++;
129131
if (i == 10) break;
@@ -190,7 +192,7 @@ private void getLeaderboard() {
190192
ResultSet rs = statement.executeQuery();
191193

192194
while (rs.next()) {
193-
LeaderBoardEntry leaderBoardEntry = new LeaderBoardEntry(rs.getString("name"), rs.getInt("rank"), rs.getInt("score"), rs.getInt("wins"));
195+
LeaderBoardEntry leaderBoardEntry = new LeaderBoardEntry(rs.getString("name"), rs.getInt("rank"), rs.getInt("score"), rs.getInt("wins"), rs.getInt("losses"));
194196

195197
leaderboard.add(leaderBoardEntry);
196198
}
@@ -214,6 +216,8 @@ private void getLeaderboard() {
214216
.append(entry.score)
215217
.append(MessageUtils.cDefault + ", Wins: " + MessageUtils.cHighlight3)
216218
.append(entry.wins)
219+
.append(MessageUtils.cDefault + ", Losses: " + MessageUtils.cDanger)
220+
.append(entry.losses)
217221
.append(MessageUtils.cDefault)
218222
.append("\n");
219223

@@ -332,12 +336,14 @@ private static class LeaderBoardEntry {
332336
public final int rank;
333337
public final int score;
334338
public final int wins;
339+
public final int losses;
335340

336-
public LeaderBoardEntry(String name, int rank, int score, int wins) {
341+
public LeaderBoardEntry(String name, int rank, int score, int wins, int losses) {
337342
this.name = name;
338343
this.rank = rank;
339344
this.score = score;
340345
this.wins = wins;
346+
this.losses = losses;
341347
}
342348
}
343349
}

src/sectorized/update/UpdateManager.java

+3-3
Original file line numberDiff line numberDiff line change
@@ -172,10 +172,10 @@ public void init() {
172172

173173
state.rules.loadout = Loadout.getLoadout(state.wave);
174174

175-
state.rules.blockDamageMultiplier = (float) (1 + (2 / (Math.pow(state.wave * 0.05, 4) + 1)));
176-
state.rules.unitDamageMultiplier = (float) (3 - (2.5 / (Math.pow(state.wave * 0.05, 4) + 1)));
175+
state.rules.blockDamageMultiplier = (float) (1 + (1 / (Math.pow(state.wave * 0.05, 4) + 1)));
176+
state.rules.unitDamageMultiplier = (float) (3 - (2 / (Math.pow(state.wave * 0.02, 4) + 1)));
177177

178-
Units.setUnitHealthMultiplier((float) (6 - (5 / (Math.pow(state.wave * 0.05, 4) + 1))));
178+
Units.setUnitHealthMultiplier((float) (6 - (5 / (Math.pow(state.wave * 0.02, 4) + 1))));
179179

180180
if (state.teams.active.size < 2 && state.wave >= 5) {
181181
DiscordBot.sendMessage("**Game Over!** Crux won the game in " + Vars.state.wave + " waves.");

0 commit comments

Comments
 (0)