From 240407ded8da2c2cd0b8b7bd2416b007eeacd8f8 Mon Sep 17 00:00:00 2001 From: Tamino Dauth Date: Thu, 14 May 2026 00:45:04 +0200 Subject: [PATCH 1/8] Fix OutOfBounds exceptions --- .../com/hiveworkshop/rms/parsers/mdlx/MdlxLayer.java | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/core/src/com/hiveworkshop/rms/parsers/mdlx/MdlxLayer.java b/core/src/com/hiveworkshop/rms/parsers/mdlx/MdlxLayer.java index 0f54476a9..4bb9f5ef8 100644 --- a/core/src/com/hiveworkshop/rms/parsers/mdlx/MdlxLayer.java +++ b/core/src/com/hiveworkshop/rms/parsers/mdlx/MdlxLayer.java @@ -25,7 +25,11 @@ public enum FilterMode { } public static FilterMode fromId(final int id) { - return values()[id]; + if (id > 0 || id < FilterMode.values().length) { + return values()[id]; + } + + return FilterMode.NONE; } public static int nameToId(final String name) { @@ -80,7 +84,10 @@ public void readMdx(final BinaryReader reader, final int version) { final int position = reader.position(); final long size = reader.readUInt32(); - this.filterMode = FilterMode.fromId(reader.readInt32()); + final int filterModeIndex = reader.readInt32(); + if (filterModeIndex > 0 && filterModeIndex < FilterMode.values().length) { + this.filterMode = FilterMode.fromId(filterModeIndex); + } this.flags = reader.readInt32(); // UInt32 in JS this.textureId = reader.readInt32(); this.textureAnimationId = reader.readInt32(); From 4ca9472692a039e2e380b1a1395dc4a5e63a9572 Mon Sep 17 00:00:00 2001 From: Tamino Dauth Date: Thu, 14 May 2026 02:45:52 +0200 Subject: [PATCH 2/8] War3MapW3i for version 33 and unit test https://github.com/ChiefOfGxBxL/WC3MapSpecification/blob/master/Info/0-33.md --- build.gradle | 7 + core/build.gradle | 11 +- .../warsmash/parsers/w3x/w3i/Player.java | 12 +- .../warsmash/parsers/w3x/w3i/War3MapW3i.java | 193 +++++++++++------- .../parsers/w3x/w3i/War3MapW3iTest.java | 42 ++++ core/test/resources/wowr_w3x/war3map.w3i | Bin 0 -> 948 bytes 6 files changed, 181 insertions(+), 84 deletions(-) create mode 100644 core/test/com/etheller/warsmash/parsers/w3x/w3i/War3MapW3iTest.java create mode 100644 core/test/resources/wowr_w3x/war3map.w3i diff --git a/build.gradle b/build.gradle index 1bec612d2..9a581ceaa 100644 --- a/build.gradle +++ b/build.gradle @@ -76,6 +76,13 @@ project(":core") { api "org.apache.commons:commons-compress:1.20" api "net.nikr:dds:1.0.0" api files(fileTree(dir:'../jars', includes: ['*.jar'])) + + testImplementation "org.junit.jupiter:junit-jupiter-api:5.10.2" + testRuntimeOnly "org.junit.jupiter:junit-jupiter-engine:5.10.2" + } + + test { + useJUnitPlatform() } } diff --git a/core/build.gradle b/core/build.gradle index 125bf13eb..5b7ad8f9a 100644 --- a/core/build.gradle +++ b/core/build.gradle @@ -2,8 +2,15 @@ sourceCompatibility = 1.17 -sourceSets.main.java.srcDirs = [ "src/" ] - +sourceSets { + main { + java.srcDirs = [ "src/" ] + } + test { + java.srcDirs = [ "test/" ] + resources.srcDirs = [ "test/resources" ] + } +} eclipse.project { name = appName + "-core" diff --git a/core/src/com/etheller/warsmash/parsers/w3x/w3i/Player.java b/core/src/com/etheller/warsmash/parsers/w3x/w3i/Player.java index 5ab3d0afd..bffa29a3a 100644 --- a/core/src/com/etheller/warsmash/parsers/w3x/w3i/Player.java +++ b/core/src/com/etheller/warsmash/parsers/w3x/w3i/Player.java @@ -30,13 +30,13 @@ public void load(final LittleEndianDataInputStream stream, final int version) th ParseUtils.readFloatArray(stream, this.startLocation); this.allyLowPriorities = ParseUtils.readUInt32(stream); this.allyHighPriorities = ParseUtils.readUInt32(stream); - if (version > 30) { + if (version >= 31) { this.enemyLowPrioritiesFlags = ParseUtils.readUInt32(stream); this.enemyHighPrioritiesFlags = ParseUtils.readUInt32(stream); } } - public void save(final LittleEndianDataOutputStream stream) throws IOException { + public void save(final LittleEndianDataOutputStream stream, int version) throws IOException { ParseUtils.writeUInt32(stream, this.id); stream.writeInt(this.type); stream.writeInt(this.race); @@ -45,10 +45,10 @@ public void save(final LittleEndianDataOutputStream stream) throws IOException { ParseUtils.writeFloatArray(stream, this.startLocation); ParseUtils.writeUInt32(stream, this.allyLowPriorities); ParseUtils.writeUInt32(stream, this.allyHighPriorities); - } - - public int getByteLength() { - return 33 + this.name.length(); + if (version >= 31) { + ParseUtils.writeUInt32(stream, this.enemyLowPrioritiesFlags); + ParseUtils.writeUInt32(stream, this.enemyHighPrioritiesFlags); + } } public int getId() { diff --git a/core/src/com/etheller/warsmash/parsers/w3x/w3i/War3MapW3i.java b/core/src/com/etheller/warsmash/parsers/w3x/w3i/War3MapW3i.java index 1be2f4eaa..4d1c67012 100644 --- a/core/src/com/etheller/warsmash/parsers/w3x/w3i/War3MapW3i.java +++ b/core/src/com/etheller/warsmash/parsers/w3x/w3i/War3MapW3i.java @@ -5,11 +5,13 @@ import java.util.List; import com.etheller.warsmash.util.ParseUtils; +import com.etheller.warsmash.util.War3ID; import com.google.common.io.LittleEndianDataInputStream; import com.google.common.io.LittleEndianDataOutputStream; /** * war3map.w3i - the general map information file. + * https://github.com/ChiefOfGxBxL/WC3MapSpecification/blob/master/Info/0-33.md */ public class War3MapW3i { private int version; @@ -33,7 +35,7 @@ public class War3MapW3i { private String loadingScreenText; private String loadingScreenTitle; private String loadingScreenSubtitle; - private int gameDataSet; + private int gameDataSet = 0; private String prologueScreenModel; private String prologueScreenText; private String prologueScreenTitle; @@ -42,13 +44,16 @@ public class War3MapW3i { private final float[] fogHeight = new float[2]; private float fogDensity; private final short[] fogColor = new short[4]; - private int globalWeather; + private War3ID globalWeather; private String soundEnvironment; private char lightEnvironmentTileset; private final short[] waterVertexColor = new short[4]; - private final short[] unknown2ProbablyLua = new short[4]; - private long supportedModes; - private long gameDataVersion; + private int scriptLanguage = 0; // 0 = JASS, 1 = Lua + private long supportedModes; // 1=SD, 2=HD, 3=SD+HD + private long gameDataVersion = 0; // 0=ROC, 1=TFT + private int forceDefaultCameraZoom; + private int forceMaxCameraZoom; + private int forceMinCameraZoom; private final List players = new ArrayList<>(); private final List forces = new ArrayList<>(); private final List upgradeAvailabilityChanges = new ArrayList<>(); @@ -83,45 +88,78 @@ private void load(final LittleEndianDataInputStream stream) throws IOException { ParseUtils.readInt32Array(stream, this.playableSize); this.flags = ParseUtils.readUInt32(stream); this.tileset = (char) stream.read(); - this.campaignBackground = stream.readInt(); - if (this.version > 24) { + if (this.version >= 17) { + this.campaignBackground = stream.readInt(); + } + + if (this.version >= 10 && this.version != 18 && this.version != 19) { this.loadingScreenModel = ParseUtils.readUntilNull(stream); } - this.loadingScreenText = ParseUtils.readUntilNull(stream); - this.loadingScreenTitle = ParseUtils.readUntilNull(stream); - this.loadingScreenSubtitle = ParseUtils.readUntilNull(stream); - this.gameDataSet = stream.readInt(); + if (this.version >= 10) { + this.loadingScreenText = ParseUtils.readUntilNull(stream); + } - if (this.version > 24) { + if (this.version >= 11) { + this.loadingScreenTitle = ParseUtils.readUntilNull(stream); + this.loadingScreenSubtitle = ParseUtils.readUntilNull(stream); + } + + if (this.version >= 17) { + this.gameDataSet = stream.readInt(); + } + + if (this.version >= 13 && this.version != 18 && this.version != 19) { this.prologueScreenModel = ParseUtils.readUntilNull(stream); } - this.prologueScreenText = ParseUtils.readUntilNull(stream); - this.prologueScreenTitle = ParseUtils.readUntilNull(stream); - this.prologueScreenSubtitle = ParseUtils.readUntilNull(stream); + if (this.version >= 13) { + this.prologueScreenText = ParseUtils.readUntilNull(stream); + this.prologueScreenTitle = ParseUtils.readUntilNull(stream); + this.prologueScreenSubtitle = ParseUtils.readUntilNull(stream); + } - if (this.version > 24) { + if (this.version >= 19) { this.useTerrainFog = stream.readInt(); ParseUtils.readFloatArray(stream, this.fogHeight); this.fogDensity = stream.readFloat(); ParseUtils.readUInt8Array(stream, this.fogColor); - this.globalWeather = stream.readInt(); // TODO probably war3id, right? + } + + if (this.version >= 21) { + this.globalWeather = ParseUtils.readWar3ID(stream); + } + + if (this.version >= 22) { this.soundEnvironment = ParseUtils.readUntilNull(stream); + } + + if (this.version >= 23) { this.lightEnvironmentTileset = (char) stream.read(); + } + + if (this.version >= 25) { ParseUtils.readUInt8Array(stream, this.waterVertexColor); } - if (this.version > 27) { - ParseUtils.readUInt8Array(stream, this.unknown2ProbablyLua); + if (this.version >= 28) { + this.scriptLanguage = stream.readInt(); } - if (this.version > 30) { + if (this.version >= 29) { this.supportedModes = ParseUtils.readUInt32(stream); + } + if (this.version >= 30) { this.gameDataVersion = ParseUtils.readUInt32(stream); } - else { - this.gameDataVersion = -1; // indicate to the outside that this was unspecified + + if (this.version >= 32) { + this.forceDefaultCameraZoom = stream.readInt(); + this.forceMaxCameraZoom = stream.readInt(); + } + + if (this.version >= 33) { + this.forceMinCameraZoom = stream.readInt(); } for (int i = 0, l = stream.readInt(); i < l; i++) { @@ -144,6 +182,7 @@ private void load(final LittleEndianDataInputStream stream) throws IOException { // some kind of really stupid protected map??? return; } + if (stream.available() > 0) { for (int i = 0, l = stream.readInt(); i < l; i++) { final UpgradeAvailabilityChange upgradeAvailabilityChange = new UpgradeAvailabilityChange(); @@ -208,49 +247,86 @@ public void save(final LittleEndianDataOutputStream stream) throws IOException { ParseUtils.writeInt32Array(stream, this.playableSize); ParseUtils.writeUInt32(stream, this.flags); stream.write((byte) this.tileset); - stream.writeInt(this.campaignBackground); - if (this.version > 24) { + if (this.version >= 17) { + stream.writeInt(this.campaignBackground); + } + + if (this.version >= 10 && this.version != 18 && this.version != 19) { ParseUtils.writeWithNullTerminator(stream, this.loadingScreenModel); } - ParseUtils.writeWithNullTerminator(stream, this.loadingScreenText); - ParseUtils.writeWithNullTerminator(stream, this.loadingScreenTitle); - ParseUtils.writeWithNullTerminator(stream, this.loadingScreenSubtitle); - stream.writeInt(this.gameDataSet); + if (this.version >= 10) { + ParseUtils.writeWithNullTerminator(stream, this.loadingScreenText); + } - if (this.version > 24) { + if (this.version >= 11) { + ParseUtils.writeWithNullTerminator(stream, this.loadingScreenTitle); + ParseUtils.writeWithNullTerminator(stream, this.loadingScreenSubtitle); + } + + if (this.version >= 17) { + stream.writeInt(this.gameDataSet); + } + + if (this.version >= 13 && this.version != 18 && this.version != 19) { ParseUtils.writeWithNullTerminator(stream, this.prologueScreenModel); } - ParseUtils.writeWithNullTerminator(stream, this.prologueScreenText); - ParseUtils.writeWithNullTerminator(stream, this.prologueScreenTitle); - ParseUtils.writeWithNullTerminator(stream, this.prologueScreenSubtitle); + if (this.version >= 13) { + ParseUtils.writeWithNullTerminator(stream, this.prologueScreenText); + ParseUtils.writeWithNullTerminator(stream, this.prologueScreenTitle); + ParseUtils.writeWithNullTerminator(stream, this.prologueScreenSubtitle); + } - if (this.version > 24) { + if (this.version >= 19) { stream.writeInt(this.useTerrainFog); ParseUtils.writeFloatArray(stream, this.fogHeight); stream.writeFloat(this.fogDensity); ParseUtils.writeUInt8Array(stream, this.fogColor); - stream.writeInt(this.globalWeather); // TODO War3ID??? + } + + if (this.version >= 21) { + ParseUtils.writeWar3ID(stream, this.globalWeather); + } + + if (this.version >= 22) { ParseUtils.writeWithNullTerminator(stream, this.soundEnvironment); + } + + if (this.version >= 23) { stream.write((byte) this.lightEnvironmentTileset); + } + + if (this.version >= 25) { ParseUtils.writeUInt8Array(stream, this.waterVertexColor); } - if (this.version > 27) { - ParseUtils.writeUInt8Array(stream, this.unknown2ProbablyLua); + if (this.version >= 28) { + ParseUtils.writeUInt32(stream, this.scriptLanguage); } - if (this.version > 30) { + if (this.version >= 29) { ParseUtils.writeUInt32(stream, this.supportedModes); + } + + if (this.version >= 30) { ParseUtils.writeUInt32(stream, this.gameDataVersion); } + if (this.version >= 32) { + ParseUtils.writeUInt32(stream, this.forceDefaultCameraZoom); + ParseUtils.writeUInt32(stream, this.forceMaxCameraZoom); + } + + if (this.version >= 33) { + ParseUtils.writeUInt32(stream, this.forceMinCameraZoom); + } + ParseUtils.writeUInt32(stream, this.players.size()); for (final Player player : this.players) { - player.save(stream); + player.save(stream, this.version); } ParseUtils.writeUInt32(stream, this.forces.size()); @@ -284,41 +360,6 @@ public void save(final LittleEndianDataOutputStream stream) throws IOException { table.save(stream); } } - - } - - public int getByteLength() { - int size = 111 + this.name.length() + this.author.length() + this.description.length() - + this.recommendedPlayers.length() + this.loadingScreenText.length() + this.loadingScreenTitle.length() - + this.loadingScreenSubtitle.length() + this.prologueScreenText.length() - + this.prologueScreenTitle.length() + this.prologueScreenSubtitle.length(); - - for (final Player player : this.players) { - size += player.getByteLength(); - } - - for (final Force force : this.forces) { - size += force.getByteLength(); - } - - size += this.upgradeAvailabilityChanges.size() * 16; - - size += this.techAvailabilityChanges.size() * 8; - - for (final RandomUnitTable table : this.randomUnitTables) { - size += table.getByteLength(); - } - - if (this.version > 24) { - size += 36 + this.loadingScreenModel.length() + this.prologueScreenModel.length() - + this.soundEnvironment.length(); - - for (final RandomItemTable table : this.randomItemTables) { - size += table.getByteLength(); - } - } - - return size; } public int getVersion() { @@ -429,7 +470,7 @@ public short[] getFogColor() { return this.fogColor; } - public int getGlobalWeather() { + public War3ID getGlobalWeather() { return this.globalWeather; } @@ -445,8 +486,8 @@ public short[] getWaterVertexColor() { return this.waterVertexColor; } - public short[] getUnknown2() { - return this.unknown2ProbablyLua; + public int getScriptLanguage() { + return this.scriptLanguage; } public long getSupportedModes() { diff --git a/core/test/com/etheller/warsmash/parsers/w3x/w3i/War3MapW3iTest.java b/core/test/com/etheller/warsmash/parsers/w3x/w3i/War3MapW3iTest.java new file mode 100644 index 000000000..82899a358 --- /dev/null +++ b/core/test/com/etheller/warsmash/parsers/w3x/w3i/War3MapW3iTest.java @@ -0,0 +1,42 @@ +package com.etheller.warsmash.util; + +import com.etheller.warsmash.parsers.w3x.w3i.War3MapW3i; +import com.google.common.io.LittleEndianDataInputStream; +import com.google.common.io.LittleEndianDataOutputStream; +import org.junit.jupiter.api.Test; +import static org.junit.jupiter.api.Assertions.*; + +import java.io.IOException; + +class War3MapW3iTest { + + @Test + void testWoWReforged() throws IOException { + War3MapW3i mapInfo; + try (LittleEndianDataInputStream stream = new LittleEndianDataInputStream( + getClass().getClassLoader().getResourceAsStream("wowr_w3x/war3map.w3i"))) { + mapInfo = new War3MapW3i(stream); + } + + assertEquals(33, mapInfo.getVersion()); + assertEquals("TRIGSTR_004", mapInfo.getAuthor()); + assertEquals(12, mapInfo.getPlayers().size()); + assertEquals(3, mapInfo.getForces().size()); + + java.io.File testFile = java.io.File.createTempFile("war3map_", ".w3i"); + testFile.deleteOnExit(); + + try (LittleEndianDataOutputStream out = new LittleEndianDataOutputStream(new java.io.FileOutputStream(testFile))) { + mapInfo.save(out); + } + + War3MapW3i mapInfo2; + try (LittleEndianDataInputStream in = new LittleEndianDataInputStream(new java.io.FileInputStream(testFile))) { + mapInfo2 = new War3MapW3i(in); + } + + assertEquals(mapInfo.getVersion(), mapInfo2.getVersion()); + assertEquals(mapInfo.getAuthor(), mapInfo2.getAuthor()); + assertEquals(mapInfo.getPlayers().size(), mapInfo2.getPlayers().size()); + } +} diff --git a/core/test/resources/wowr_w3x/war3map.w3i b/core/test/resources/wowr_w3x/war3map.w3i new file mode 100644 index 0000000000000000000000000000000000000000..28a306ee850e9ef1ec3ebad8ea88293b260ef18d GIT binary patch literal 948 zcmZ{jJxjzu5Qbkr&u_4@QA8|7$X$}V3l>_P*q&F3U@O>&U@aD&KkK^t4R#)awRRSM ztnVA$WEPTv$ zhaT`q)n2Ri!|@Cwq!O)bQ@}d)@(VcIm)B=Z(sp4-naQ5DiYgV4qs?Bfz#(@o_rXzQ zDF?5|3t!0ViVi69OBCa?cC$8jx2*Yw^#VV>SlWuOWSSXIO6J=z>Sra>iUQ`-Ffyx| zX25(HM&GNN(Kjh;do#>jEfe;0ywcN!V#QY&l-=4O1S4VE|KvT8M6W{NUDSLf=)kqiyzv_N*+waa5Ig&K@ VO?X)NvRD|vAuWCRRe%2f=P#xah;9G? literal 0 HcmV?d00001 From f1ce2e8c84542244eabfc08f04feb1a8a4ede793 Mon Sep 17 00:00:00 2001 From: Tamino Dauth Date: Thu, 14 May 2026 04:45:42 +0200 Subject: [PATCH 3/8] War3MapW3e for version 12 and unit test https://github.com/ChiefOfGxBxL/WC3MapSpecification/blob/master/Info/0-33.md --- .../warsmash/parsers/w3x/w3e/Corner.java | 37 +++++++++++----- .../warsmash/parsers/w3x/w3e/War3MapW3e.java | 5 ++- .../parsers/w3x/w3e/War3MapW3eTest.java | 41 ++++++++++++++++++ core/test/resources/wowr_w3x/war3map.w3e | Bin 0 -> 614085 bytes 4 files changed, 71 insertions(+), 12 deletions(-) create mode 100644 core/test/com/etheller/warsmash/parsers/w3x/w3e/War3MapW3eTest.java create mode 100644 core/test/resources/wowr_w3x/war3map.w3e diff --git a/core/src/com/etheller/warsmash/parsers/w3x/w3e/Corner.java b/core/src/com/etheller/warsmash/parsers/w3x/w3e/Corner.java index a8c5ae40d..1836c68dc 100644 --- a/core/src/com/etheller/warsmash/parsers/w3x/w3e/Corner.java +++ b/core/src/com/etheller/warsmash/parsers/w3x/w3e/Corner.java @@ -8,6 +8,7 @@ /** * A tile corner. + * https://github.com/ChiefOfGxBxL/WC3MapSpecification/blob/master/Terrain/12.md */ public class Corner { private float groundHeight; @@ -42,21 +43,32 @@ public Corner(final Corner other) { this.layerHeight = other.layerHeight; } - public void load(final LittleEndianDataInputStream stream) throws IOException { + public void load(final LittleEndianDataInputStream stream, int version) throws IOException { this.groundHeight = (stream.readShort() - 8192) / (float) 512; final short waterAndEdge = stream.readShort(); this.waterHeight = ((waterAndEdge & 0x3FFF) - 8192) / (float) 512; this.mapEdge = waterAndEdge & 0x4000; - final short textureAndFlags = ParseUtils.readUInt8(stream); + if (version >= 12) { + final int textureAndFlags = ParseUtils.readUInt16(stream); - this.ramp = textureAndFlags & 0b00010000; - this.blight = textureAndFlags & 0b00100000; - this.water = textureAndFlags & 0b01000000; - this.boundary = textureAndFlags & 0b10000000; + this.ramp = textureAndFlags & 0b00010000; + this.blight = textureAndFlags & 0b00100000; + this.water = textureAndFlags & 0b01000000; + this.boundary = textureAndFlags & 0b10000000; - this.groundTexture = textureAndFlags & 0b00001111; + this.groundTexture = textureAndFlags & 0b00001111; + } else { + final short textureAndFlags = ParseUtils.readUInt8(stream); + + this.ramp = textureAndFlags & 0b00010000; + this.blight = textureAndFlags & 0b00100000; + this.water = textureAndFlags & 0b01000000; + this.boundary = textureAndFlags & 0b10000000; + + this.groundTexture = textureAndFlags & 0b00001111; + } final short variation = ParseUtils.readUInt8(stream); @@ -70,7 +82,7 @@ public void load(final LittleEndianDataInputStream stream) throws IOException { } - public void save(final LittleEndianDataOutputStream stream) throws IOException { + public void save(final LittleEndianDataOutputStream stream, int version) throws IOException { stream.writeShort((short) ((this.groundHeight * 512f) + 8192f)); final int mapEdgeWrite = (this.mapEdge != 0) ? 0x4000 : 0; stream.writeShort((short) ((int) ((this.waterHeight * 512f) + 8192f) | (mapEdgeWrite))); @@ -78,8 +90,13 @@ public void save(final LittleEndianDataOutputStream stream) throws IOException { final int blightWrite = (this.blight != 0) ? 0b00100000 : 0; final int waterWrite = (this.water != 0) ? 0b01000000 : 0; final int boundaryWrite = (this.boundary != 0) ? 0b10000000 : 0; - ParseUtils.writeUInt8(stream, - (short) ((rampWrite) | (blightWrite) | (waterWrite) | (boundaryWrite) | this.groundTexture)); + if (version >= 12) { + ParseUtils.writeUInt16(stream, + (int) ((rampWrite) | (blightWrite) | (waterWrite) | (boundaryWrite) | this.groundTexture)); + } else { + ParseUtils.writeUInt8(stream, + (short) ((rampWrite) | (blightWrite) | (waterWrite) | (boundaryWrite) | this.groundTexture)); + } ParseUtils.writeUInt8(stream, (short) ((this.cliffVariation << 5) | this.groundVariation)); ParseUtils.writeUInt8(stream, (short) ((this.cliffTexture << 4) + this.layerHeight)); } diff --git a/core/src/com/etheller/warsmash/parsers/w3x/w3e/War3MapW3e.java b/core/src/com/etheller/warsmash/parsers/w3x/w3e/War3MapW3e.java index 8494df752..2cf3f61cb 100644 --- a/core/src/com/etheller/warsmash/parsers/w3x/w3e/War3MapW3e.java +++ b/core/src/com/etheller/warsmash/parsers/w3x/w3e/War3MapW3e.java @@ -11,6 +11,7 @@ /** * war3map.w3e - the environment file. + * https://github.com/ChiefOfGxBxL/WC3MapSpecification/blob/master/Terrain/12.md */ public class War3MapW3e { private static final War3ID MAGIC_NUMBER = War3ID.fromString("W3E!"); @@ -57,7 +58,7 @@ private boolean load(final LittleEndianDataInputStream stream) throws IOExceptio for (int column = 0, columns = this.mapSize[0]; column < columns; column++) { final Corner corner = new Corner(); - corner.load(stream); + corner.load(stream, this.version); this.corners[row][column] = corner; } @@ -88,7 +89,7 @@ public void save(final LittleEndianDataOutputStream stream) throws IOException { for (final Corner[] row : this.corners) { for (final Corner corner : row) { - corner.save(stream); + corner.save(stream, this.version); } } } diff --git a/core/test/com/etheller/warsmash/parsers/w3x/w3e/War3MapW3eTest.java b/core/test/com/etheller/warsmash/parsers/w3x/w3e/War3MapW3eTest.java new file mode 100644 index 000000000..3b6eff7b7 --- /dev/null +++ b/core/test/com/etheller/warsmash/parsers/w3x/w3e/War3MapW3eTest.java @@ -0,0 +1,41 @@ +package com.etheller.warsmash.parsers.w3x.w3e; + +import com.google.common.io.LittleEndianDataInputStream; +import com.google.common.io.LittleEndianDataOutputStream; +import org.junit.jupiter.api.Test; + +import java.io.IOException; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +class War3MapW3eTest { + + @Test + void testWoWReforged() throws IOException { + War3MapW3e mapInfo; + try (LittleEndianDataInputStream stream = new LittleEndianDataInputStream( + getClass().getClassLoader().getResourceAsStream("wowr_w3x/war3map.w3e"))) { + mapInfo = new War3MapW3e(stream); + } + + assertEquals(12, mapInfo.getVersion()); + assertEquals(50, mapInfo.getGroundTiles().size()); + assertEquals(4, mapInfo.getCliffTiles().size()); + + java.io.File testFile = java.io.File.createTempFile("war3map_", ".w3e"); + testFile.deleteOnExit(); + + try (LittleEndianDataOutputStream out = new LittleEndianDataOutputStream(new java.io.FileOutputStream(testFile))) { + mapInfo.save(out); + } + + War3MapW3e mapInfo2; + try (LittleEndianDataInputStream in = new LittleEndianDataInputStream(new java.io.FileInputStream(testFile))) { + mapInfo2 = new War3MapW3e(in); + } + + assertEquals(mapInfo.getVersion(), mapInfo2.getVersion()); + assertEquals(mapInfo.getGroundTiles(), mapInfo2.getGroundTiles()); + assertEquals(mapInfo.getCliffTiles(), mapInfo2.getCliffTiles()); + } +} diff --git a/core/test/resources/wowr_w3x/war3map.w3e b/core/test/resources/wowr_w3x/war3map.w3e new file mode 100644 index 0000000000000000000000000000000000000000..3779dd615401814e15c7eedd03d66cd7aab97f0a GIT binary patch literal 614085 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

`)p&nz-s@wrr$~QRoNxD&-v!cq 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 Date: Thu, 14 May 2026 04:47:32 +0200 Subject: [PATCH 4/8] War3MapW3e for version 12 and unit test https://github.com/ChiefOfGxBxL/WC3MapSpecification/blob/master/Info/0-33.md --- .../com/etheller/warsmash/parsers/w3x/w3e/War3MapW3e.java | 5 ----- 1 file changed, 5 deletions(-) diff --git a/core/src/com/etheller/warsmash/parsers/w3x/w3e/War3MapW3e.java b/core/src/com/etheller/warsmash/parsers/w3x/w3e/War3MapW3e.java index 2cf3f61cb..99945375f 100644 --- a/core/src/com/etheller/warsmash/parsers/w3x/w3e/War3MapW3e.java +++ b/core/src/com/etheller/warsmash/parsers/w3x/w3e/War3MapW3e.java @@ -94,11 +94,6 @@ public void save(final LittleEndianDataOutputStream stream) throws IOException { } } - public int getByteLength() { - return 37 + (this.groundTiles.size() * 4) + (this.cliffTiles.size() * 4) - + (this.mapSize[0] * this.mapSize[1] * 7); - } - public int getVersion() { return this.version; } From e69d79d69a5e97b7e7c321e8e119b522ca8d4bc0 Mon Sep 17 00:00:00 2001 From: Tamino Dauth Date: Thu, 14 May 2026 04:56:26 +0200 Subject: [PATCH 5/8] War3MapW3e for version 12 and unit test https://github.com/ChiefOfGxBxL/WC3MapSpecification/blob/master/Info/0-33.md --- .../warsmash/parsers/w3x/w3e/Corner.java | 23 +++++++++++-------- 1 file changed, 14 insertions(+), 9 deletions(-) diff --git a/core/src/com/etheller/warsmash/parsers/w3x/w3e/Corner.java b/core/src/com/etheller/warsmash/parsers/w3x/w3e/Corner.java index 1836c68dc..fd609ae87 100644 --- a/core/src/com/etheller/warsmash/parsers/w3x/w3e/Corner.java +++ b/core/src/com/etheller/warsmash/parsers/w3x/w3e/Corner.java @@ -53,12 +53,12 @@ public void load(final LittleEndianDataInputStream stream, int version) throws I if (version >= 12) { final int textureAndFlags = ParseUtils.readUInt16(stream); - this.ramp = textureAndFlags & 0b00010000; - this.blight = textureAndFlags & 0b00100000; - this.water = textureAndFlags & 0b01000000; - this.boundary = textureAndFlags & 0b10000000; + this.ramp = textureAndFlags & 0b00000000_01000000; + this.blight = textureAndFlags & 0b00000000_10000000; + this.water = textureAndFlags & 0b00000001_00000000; + this.boundary = textureAndFlags & 0b00000010_00000000; - this.groundTexture = textureAndFlags & 0b00001111; + this.groundTexture = textureAndFlags & 0b00111111; } else { final short textureAndFlags = ParseUtils.readUInt8(stream); @@ -86,11 +86,16 @@ public void save(final LittleEndianDataOutputStream stream, int version) throws stream.writeShort((short) ((this.groundHeight * 512f) + 8192f)); final int mapEdgeWrite = (this.mapEdge != 0) ? 0x4000 : 0; stream.writeShort((short) ((int) ((this.waterHeight * 512f) + 8192f) | (mapEdgeWrite))); - final int rampWrite = (this.ramp != 0) ? 0b00010000 : 0; - final int blightWrite = (this.blight != 0) ? 0b00100000 : 0; - final int waterWrite = (this.water != 0) ? 0b01000000 : 0; - final int boundaryWrite = (this.boundary != 0) ? 0b10000000 : 0; + int rampWrite = (this.ramp != 0) ? 0b00010000 : 0; + int blightWrite = (this.blight != 0) ? 0b00100000 : 0; + int waterWrite = (this.water != 0) ? 0b01000000 : 0; + int boundaryWrite = (this.boundary != 0) ? 0b10000000 : 0; if (version >= 12) { + rampWrite <<= 2; + blightWrite <<= 2; + waterWrite <<= 2; + boundaryWrite <<= 2; + ParseUtils.writeUInt16(stream, (int) ((rampWrite) | (blightWrite) | (waterWrite) | (boundaryWrite) | this.groundTexture)); } else { From 2c6ed5f5c56f9140af88d4864e587a96474bd08d Mon Sep 17 00:00:00 2001 From: Tamino Dauth Date: Thu, 14 May 2026 05:38:50 +0200 Subject: [PATCH 6/8] Fix IndexOutOfBoundsException --- .../w3x/rendersim/ability/AbilityDataUI.java | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/core/src/com/etheller/warsmash/viewer5/handlers/w3x/rendersim/ability/AbilityDataUI.java b/core/src/com/etheller/warsmash/viewer5/handlers/w3x/rendersim/ability/AbilityDataUI.java index c9a705606..5a2becc81 100644 --- a/core/src/com/etheller/warsmash/viewer5/handlers/w3x/rendersim/ability/AbilityDataUI.java +++ b/core/src/com/etheller/warsmash/viewer5/handlers/w3x/rendersim/ability/AbilityDataUI.java @@ -192,10 +192,14 @@ public AbilityDataUI(final Warcraft3MapRuntimeObjectData allObjectData, final Ga final int targetAttachmentIndexMax = Math.min(targetAttachmentCount - 1, targetArtPaths.size() - 1); final int targetIteratorCount = Math.max(targetAttachmentCount, targetArtPaths.size()); for (int i = 0; i < targetIteratorCount; i++) { - final String modelPath = targetArtPaths.get(Math.max(0, Math.min(i, targetAttachmentIndexMax))); - final String attachmentPointKey = tryGet(TARGET_ART_ATTACHMENT_POINT, i); - final List attachmentPoints = abilityTypeData.getFieldAsList(attachmentPointKey); - targetArt.add(new EffectAttachmentUI(modelPath, attachmentPoints)); + final int index = Math.max(0, Math.min(i, targetAttachmentIndexMax)); + + if (index >= 0 && index < targetArtPaths.size()) { + final String modelPath = targetArtPaths.get(index); + final String attachmentPointKey = tryGet(TARGET_ART_ATTACHMENT_POINT, i); + final List attachmentPoints = abilityTypeData.getFieldAsList(attachmentPointKey); + targetArt.add(new EffectAttachmentUI(modelPath, attachmentPoints)); + } } final List specialArt = new ArrayList<>(); final List specialArtPaths = Arrays From 1a93d294edafd81a0151f2f3affd700f597fe60e Mon Sep 17 00:00:00 2001 From: Tamino Dauth Date: Thu, 14 May 2026 05:39:45 +0200 Subject: [PATCH 7/8] Make sure defaultRace is never null --- .../warsmash/viewer5/handlers/w3x/simulation/CSimulation.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/core/src/com/etheller/warsmash/viewer5/handlers/w3x/simulation/CSimulation.java b/core/src/com/etheller/warsmash/viewer5/handlers/w3x/simulation/CSimulation.java index 307ab61de..13f77d823 100644 --- a/core/src/com/etheller/warsmash/viewer5/handlers/w3x/simulation/CSimulation.java +++ b/core/src/com/etheller/warsmash/viewer5/handlers/w3x/simulation/CSimulation.java @@ -175,7 +175,7 @@ public CSimulation(final War3MapConfig config, final int mapVersion, final DataT for (int i = 0; i < WarsmashConstants.MAX_PLAYERS; i++) { final CBasePlayer configPlayer = config.getPlayer(i); final War3MapConfigStartLoc startLoc = config.getStartLoc(configPlayer.getStartLocationIndex()); - CRace defaultRace = null; + CRace defaultRace = WarsmashConstants.RACE_MANAGER.getRace(1); // Make sure this is not null if nothing matching is found. if (configPlayer.isRacePrefSet(WarsmashConstants.RACE_MANAGER.getRandomRacePreference())) { final CRaceManagerEntry raceEntry = WarsmashConstants.RACE_MANAGER .get(seededRandom.nextInt(WarsmashConstants.RACE_MANAGER.getEntryCount())); From 72ee6fe5adcb8e3999d5e797d96afd4bdb23ab21 Mon Sep 17 00:00:00 2001 From: Tamino Dauth Date: Thu, 14 May 2026 10:46:47 +0200 Subject: [PATCH 8/8] War3ObjectDataChangeset support version 3 sets on loading files --- .../units/custom/War3ObjectDataChangeset.java | 192 +++++++++--------- 1 file changed, 99 insertions(+), 93 deletions(-) diff --git a/core/src/com/etheller/warsmash/units/custom/War3ObjectDataChangeset.java b/core/src/com/etheller/warsmash/units/custom/War3ObjectDataChangeset.java index ebc737c93..2b4805dba 100644 --- a/core/src/com/etheller/warsmash/units/custom/War3ObjectDataChangeset.java +++ b/core/src/com/etheller/warsmash/units/custom/War3ObjectDataChangeset.java @@ -497,8 +497,7 @@ public boolean loadtable(final LittleEndianDataInputStream stream, final ObjectM existingObject = new ObjectDataChangeEntry(origid, noid); } existingObject.setNewId(readWar3ID(stream)); - } - else { + } else { newid = readWar3ID(stream); if (noid.equals(origid) || noid.equals(newid)) { throw new IOException("the input stream might be screwed"); @@ -508,111 +507,118 @@ public boolean loadtable(final LittleEndianDataInputStream stream, final ObjectM existingObject = new ObjectDataChangeEntry(origid, newid); } } + + int setsCount = 1; + if (this.version >= 3) { - final int reforged133JunkCount = stream.readInt(); - for (int reforged133JunkIndex = 0; reforged133JunkIndex < reforged133JunkCount; reforged133JunkIndex++) { - final int reforgedJunk = stream.readInt(); - } - } - final int ccount = stream.readInt();// Retera: I assume this is change count? - if ((ccount == 0) && isOriginal) { - // throw new IOException("we seem to have reached the end of the stream and get - // zeroes"); - System.err.println("we seem to have reached the end of the stream and get zeroes"); + setsCount = stream.readInt(); } - if (isOriginal) { - debugprint("StandardUnit \"" + origid + "\" " + ccount + " {"); - } - else { - debugprint("CustomUnit \"" + origid + ":" + newid + "\" " + ccount + " {"); - } - for (int j = 0; j < ccount; j++) { - final War3ID chid = readWar3ID(stream); - if (noid.equals(chid)) { - throw new IOException("the input stream might be screwed"); - } - if (!this.detected) { - this.detected = detectKind(chid); + + for (int setIndex = 0; setIndex < setsCount; setIndex++) { + + if (this.version >= 3) { + final int setFlag = stream.readInt(); } - final Change newlyReadChange = new Change(); - newlyReadChange.setId(chid); - newlyReadChange.setVartype(stream.readInt()); - debugprint("\t\"" + chid + "\" {"); - debugprint("\t\tType " + newlyReadChange.getVartype() + ","); - if (extended()) { - newlyReadChange.setLevel(stream.readInt()); - newlyReadChange.setDataptr(stream.readInt()); - debugprint("\t\tLevel " + newlyReadChange.getLevel() + ","); - debugprint("\t\tData " + newlyReadChange.getDataptr() + ","); + final int ccount = stream.readInt();// Retera: I assume this is change count? + if ((ccount == 0) && isOriginal) { + // throw new IOException("we seem to have reached the end of the stream and get + // zeroes"); + System.err.println("we seem to have reached the end of the stream and get zeroes"); } + if (isOriginal) { + debugprint("StandardUnit \"" + origid + "\" " + ccount + " {"); + } else { + debugprint("CustomUnit \"" + origid + ":" + newid + "\" " + ccount + " {"); + } + for (int j = 0; j < ccount; j++) { + final War3ID chid = readWar3ID(stream); + if (noid.equals(chid)) { + throw new IOException("the input stream might be screwed"); + } + if (!this.detected) { + this.detected = detectKind(chid); + } - switch (newlyReadChange.getVartype()) { - case 0: - newlyReadChange.setLongval(stream.readInt()); - debugprint("\t\tValue " + newlyReadChange.getLongval() + ","); - break; - case 3: - ptr = 0; - stringBuilder.setLength(0); - int charRead; - while ((charRead = stream.read()) != 0) { - stringBuilder.append((char) charRead); + final Change newlyReadChange = new Change(); + newlyReadChange.setId(chid); + newlyReadChange.setVartype(stream.readInt()); + debugprint("\t\"" + chid + "\" {"); + debugprint("\t\tType " + newlyReadChange.getVartype() + ","); + if (extended()) { + newlyReadChange.setLevel(stream.readInt()); + newlyReadChange.setDataptr(stream.readInt()); + debugprint("\t\tLevel " + newlyReadChange.getLevel() + ","); + debugprint("\t\tData " + newlyReadChange.getDataptr() + ","); } - newlyReadChange.setStrval(stringBuilder.toString()); - if (inlineWTS && (newlyReadChange.getStrval().length() > 8) - && "TRIGSTR_".equals(newlyReadChange.getStrval().substring(0, 8))) { - final int key = getWTSValue(newlyReadChange); - newlyReadChange.setStrval(wts.get(key)); - if ((newlyReadChange.getStrval() != null) - && (newlyReadChange.getStrval().length() > MAX_STR_LEN)) { - newlyReadChange.setStrval(newlyReadChange.getStrval().substring(0, MAX_STR_LEN - 1)); - } + + switch (newlyReadChange.getVartype()) { + case 0: + newlyReadChange.setLongval(stream.readInt()); + debugprint("\t\tValue " + newlyReadChange.getLongval() + ","); + break; + case 3: + ptr = 0; + stringBuilder.setLength(0); + int charRead; + while ((charRead = stream.read()) != 0) { + stringBuilder.append((char) charRead); + } + newlyReadChange.setStrval(stringBuilder.toString()); + if (inlineWTS && (newlyReadChange.getStrval().length() > 8) + && "TRIGSTR_".equals(newlyReadChange.getStrval().substring(0, 8))) { + final int key = getWTSValue(newlyReadChange); + newlyReadChange.setStrval(wts.get(key)); + if ((newlyReadChange.getStrval() != null) + && (newlyReadChange.getStrval().length() > MAX_STR_LEN)) { + newlyReadChange.setStrval(newlyReadChange.getStrval().substring(0, MAX_STR_LEN - 1)); + } + } + debugprint("\t\tValue \"" + newlyReadChange.getStrval() + "\","); + break; + case 4: + newlyReadChange.setBoolval(stream.readInt() == 1); + debugprint("\t\tValue " + newlyReadChange.isBoolval() + ","); + break; + default: + newlyReadChange.setRealval(stream.readFloat()); + debugprint("\t\tValue " + newlyReadChange.getRealval() + ","); + break; } - debugprint("\t\tValue \"" + newlyReadChange.getStrval() + "\","); - break; - case 4: - newlyReadChange.setBoolval(stream.readInt() == 1); - debugprint("\t\tValue " + newlyReadChange.isBoolval() + ","); - break; - default: - newlyReadChange.setRealval(stream.readFloat()); - debugprint("\t\tValue " + newlyReadChange.getRealval() + ","); - break; - } - final War3ID crap = readWar3ID(stream); - debugprint("\t\tExtra \"" + crap + "\","); - newlyReadChange.setJunkDNA(crap); - List existingChanges = existingObject.getChanges().get(chid); - if (existingChanges == null) { - existingChanges = new ArrayList<>(); - } - Change bestTargetChange = null; - for (final Change targetChange : existingChanges) { - if (targetChange.getLevel() == newlyReadChange.getLevel()) { - bestTargetChange = targetChange; - break; + final War3ID crap = readWar3ID(stream); + debugprint("\t\tExtra \"" + crap + "\","); + newlyReadChange.setJunkDNA(crap); + List existingChanges = existingObject.getChanges().get(chid); + if (existingChanges == null) { + existingChanges = new ArrayList<>(); } - } - if (bestTargetChange != null) { - bestTargetChange.copyFrom(newlyReadChange); - } - else { - existingChanges.add(newlyReadChange.clone()); - if (existingChanges.size() == 1) { - existingObject.getChanges().add(chid, existingChanges); + Change bestTargetChange = null; + for (final Change targetChange : existingChanges) { + if (targetChange.getLevel() == newlyReadChange.getLevel()) { + bestTargetChange = targetChange; + break; + } } - } - if (!crap.equals(existingObject.getOldId()) && !crap.equals(existingObject.getNewId()) - && !crap.equals(noid)) { - for (int charIndex = 0; charIndex < 4; charIndex++) { - if ((crap.charAt(charIndex) < 32) || (crap.charAt(charIndex) > 126)) { - return false; + if (bestTargetChange != null) { + bestTargetChange.copyFrom(newlyReadChange); + } else { + existingChanges.add(newlyReadChange.clone()); + if (existingChanges.size() == 1) { + existingObject.getChanges().add(chid, existingChanges); } } + if (!crap.equals(existingObject.getOldId()) && !crap.equals(existingObject.getNewId()) + && !crap.equals(noid)) { + for (int charIndex = 0; charIndex < 4; charIndex++) { + if ((crap.charAt(charIndex) < 32) || (crap.charAt(charIndex) > 126)) { + return false; + } + } + } + debugprint("\t}"); } - debugprint("\t}"); } + debugprint("}"); if ((newid == null) && !isOriginal) { throw new IllegalStateException("custom unit has no ID!");