Skip to content

Commit 55d9c8b

Browse files
author
Bytekeeper
committed
Doku + small error for kiting units when using frameskip.
1 parent e9ccb54 commit 55d9c8b

File tree

5 files changed

+8
-10
lines changed

5 files changed

+8
-10
lines changed

build.gradle.kts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ plugins {
22
java
33
id("maven")
44
id("me.champeau.gradle.jmh") version "0.4.8"
5-
id("com.github.ben-manes.versions") version "0.22.0"
5+
id("com.github.ben-manes.versions") version "0.27.0"
66
}
77

88
group = "org.bk"
@@ -22,7 +22,7 @@ dependencies {
2222
implementation(fileTree("lib").include("*.jar"))
2323
implementation("com.github.JavaBWAPI:JBWAPI:0.8.2")
2424

25-
testImplementation("org.junit.jupiter:junit-jupiter:5.5.1")
25+
testImplementation("org.junit.jupiter:junit-jupiter:5.5.2")
2626
testImplementation("org.assertj:assertj-core:3.13.2")
2727
testImplementation("io.jenetics:jenetics:5.0.1")
2828
}

src/main/java/org/bk/ass/sim/AgentUtil.java

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -126,11 +126,9 @@ public static void dealBounceDamage(
126126
int damage = weapon.damageShifted / 3;
127127
for (int i = enemies.size() - 1; i >= 0 && remainingBounces > 0; i--) {
128128
Agent enemy = enemies.get(i);
129-
if (enemy == lastTarget) {
130-
continue;
131-
}
132-
133-
if (abs(enemy.x - lastTarget.x) <= 96 && abs(enemy.y - lastTarget.y) <= 96) {
129+
if (enemy != lastTarget
130+
&& abs(enemy.x - lastTarget.x) <= 96
131+
&& abs(enemy.y - lastTarget.y) <= 96) {
134132
lastTarget = enemy;
135133
applyDamage(enemy, weapon.damageType, damage, weapon.hits);
136134
damage /= 3;

src/main/java/org/bk/ass/sim/AttackerBehavior.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -112,7 +112,7 @@ private void simCombatMove(
112112
&& selectedEnemy.speed < agent.speed;
113113
float distance = (float) sqrt(selectedDistanceSquared);
114114
if (shouldKite) {
115-
if (distance + agent.speed <= selectedWeapon.maxRange) {
115+
if (distance + agent.speed * frameSkip <= selectedWeapon.maxRange) {
116116
moveAwayFrom(frameSkip, agent, selectedEnemy, distance);
117117
}
118118
} else {

src/main/java/org/bk/ass/sim/RetreatBehavior.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ static boolean simFlee(int frames, Agent agent, UnorderedCollection<Agent> enemi
2828
selectedDistanceSquared = distanceSq;
2929
selectedEnemy = enemy;
3030

31-
// If we can hit it this frame, we're done searching
31+
// If the enemy can hit us this frame, we're done searching
3232
if (selectedDistanceSquared <= wpn.maxRangeSquared) {
3333
break;
3434
}

src/main/java/org/bk/ass/sim/Simulator.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -207,7 +207,7 @@ private void updateStats(UnorderedCollection<Agent> agents) {
207207
agent.vy = 0;
208208
agent.healedThisFrame = false;
209209

210-
// Since these calls are potentially made every frame, no boundary checks are done!
210+
// Since these calls are potentially made every frame, no boundary checks are done for performance reasons!
211211
// Bounds are established when the fields are modified.
212212
agent.cooldown -= frameSkip;
213213
agent.shieldsShifted += 7 * frameSkip;

0 commit comments

Comments
 (0)