This tracks the development of Jass scripts between game versions without naming the game name. Simple, OK?
The repository is cursed, expect commits to be rebased, petted, fed lead-contaminated nuts, removed, travel back in time... Magic is not for everyone. Consult your doctor before use.
Only tags are stable references.
Scripts are there https://github.com/Luashine/wc3-jass-history-scripts
Find me the missing Warcraft 3 versions, pretty please with sugar on top and an air kiss. I'll be completely and fully satisfied with a first version for each release.
Missing these (see version-list-sorted.txt
)
- TFT-v1.29.1 (between TFT-v1.29.0.8803 and TFT-v1.29.2.9231)
- 1.31.1, earlier version than TFT-v1.31.1.12173 (very low priority)
Not needed:
- no changes
TFT-v1.28.1 (between TFT-v1.28.0.7205-zhtw and TFT-v1.28.2.7395)
For Github, append ?w=1
or &w=1
to the end of URL to skip whitespace changes.
Simple log: git log --oneline --invert-grep --grep EMPTY
Advanced log: LC_ALL=C; git log --oneline --invert-grep --grep EMPTY --pretty='format:tag: %<(35)%(describe:tags=true) -- %s'
tag: Reforged-v1.32.10.19202 -- version: Reforged-v1.32.10.19202
tag: Reforged-v1.32.7.15539-w3t-b5789e1 -- version: Reforged-v1.32.7.15539-w3t-b5789e1
tag: Reforged-v1.32.3.14857-w3-f98d8b1 -- version: Reforged-v1.32.3.14857-w3-f98d8b1
tag: Reforged-v1.32.2.14722-w3-fd283a3 -- version: Reforged-v1.32.2.14722-w3-fd283a3
tag: Reforged-v1.32.1.14604-w3-82335ba -- version: Reforged-v1.32.1.14604-w3-82335ba
tag: Reforged-v1.32.0.14481-w3-11be6c1 -- version: Reforged-v1.32.0.14481-w3-11be6c1
tag: Reforged-v1.32.0.14411 -- version: Reforged-v1.32.0.14411
tag: Reforged-v1.32.0.13369-w3b-ab0c8ee -- version: Reforged-v1.32.0.13369-w3b-ab0c8ee
tag: TFT-v1.31.1.12173 -- version: TFT-v1.31.1.12173
tag: TFT-v1.31.0.11889-w3t -- version: TFT-v1.31.0.11889-w3t
tag: TFT-v1.30.2.11113 -- version: TFT-v1.30.2.11113
tag: TFT-v1.30.0.9900 -- version: TFT-v1.30.0.9900
tag: TFT-v1.30.0.9655-w3t -- version: TFT-v1.30.0.9655-w3t
tag: TFT-v1.29.2.9231 -- version: TFT-v1.29.2.9231
tag: TFT-v1.29.0.8803 -- version: TFT-v1.29.0.8803
tag: TFT-v1.28.2.7395 -- version: TFT-v1.28.2.7395
tag: TFT-v1.28.0.7205-zhtw -- version: TFT-v1.28.0.7205-zhtw
tag: TFT-v1.24a-ru -- version: TFT-v1.24a-ru
tag: TFT-v1.18a-ru -- version: TFT-v1.18a-ru
tag: TFT-v1.17a-ru -- version: TFT-v1.17a-ru
tag: TFT-v1.15-ru -- version: TFT-v1.15-ru
tag: TFT-v1.13-ru -- version: TFT-v1.13-ru
tag: TFT-v1.10-ru -- version: TFT-v1.10-ru
tag: TFT-v1.07-ru -- version: TFT-v1.07-ru
tag: Beta-TFT-v308 -- version: Beta-TFT-v308
tag: Beta-TFT-v306 -- version: Beta-TFT-v306
tag: Beta-TFT-v305 -- version: Beta-TFT-v305
tag: Beta-TFT-v304 -- version: Beta-TFT-v304
tag: Beta-TFT-v302 -- version: Beta-TFT-v302
tag: Beta-TFT-v300 -- version: Beta-TFT-v300
tag: ROC-v1.05-ru -- version: ROC-v1.05-ru
tag: ROC-v1.04-ru -- version: ROC-v1.04-ru
tag: ROC-v1.03-ru -- version: ROC-v1.03-ru
tag: ROC-v1.01-ru -- version: ROC-v1.01-ru
tag: ROC-v1.00-ru -- version: ROC-v1.00-ru
tag: Beta-ROC-v1.30 -- version: Beta-ROC-v1.30
tag: Beta-ROC-v1.20 -- version: Beta-ROC-v1.20
tag: Beta-ROC-v1.10 -- version: Beta-ROC-v1.10
tag: Beta-ROC-v1.03 -- version: Beta-ROC-v1.03
tag: Beta-ROC-v1.00 -- version: Beta-ROC-v1.00
tag: baseline // this is my tag for an "empty" repo before versioning
CascView 3.0 can access arbitrary online storages from the CDN if you know the ID. Use Task Manager to see if it's downloading, because the progress bar doesn't work or tell you it's slowly downloading something.
wine CascView.exe /online 'C:\home/MYUSERNAME/temp/cachePath-for-CASC/*w3*eu*2aa787736e88e43f6ace0a4ac897fc8f'
CDN IDs:
- 1.30.0
w3t.cfg:1.30.0.9655|6a3d539e4cc9d474c07a3fefde4a36ca|version-w3t-24451.bmime
w3.cfg:1.30.0.9900|2aa787736e88e43f6ace0a4ac897fc8f|version-w3-34563.bmime
- 1.30.1
w3t.cfg:1.30.1.10085|3694964441a01beb8b475576e9c39da0|version-w3t-41859.bmime
w3.cfg:1.30.1.10211|38f31eb67143d03da05854bfb559ed42|version-w3-45187.bmime
- 1.30.2
w3t.cfg:1.30.2.10369|5ab4cace6abb8453fb3422e7123ee474|version-w3t-50435.bmime
w3.cfg:1.30.2.11113|cb849e73984c98f37ee8f1760356709c|version-w3-71491.bmime
- 1.30.3
w3t.cfg:1.30.3.11145|c1d20a79d9f890d7c7674e1c3bda313a|version-w3t-74115.bmime
w3.cfg:1.30.3.11235|aab047a72e72fb9016192edbf0662b5e|version-w3-74435.bmime
- 1.30.4
w3.cfg:1.30.4.11274|7c45731c22f6bf4ff30035ab9d905745|version-w3-77187.bmime
- 1.31.0
w3t.cfg:1.31.0.11889|189880a364a0594dba2164c7c7074ec0|version-w3t-101762.bmime
w3.cfg:1.31.0.12071|cc2dbb838eb5156585bc71cf9951ee65|version-w3-101763.bmime
etc. I didn't bother anymore
As you can see I stopped making my own sorting script (call me stupid) and thought it's a one time task to do it manually. Instead here's a script to compare entries for completeness.
cd "war3extract" && \
find . -maxdepth 1 -type d | sed 's|\./||g' | sort > find.txt && \
sort ../version-list-sorted.txt > manual.txt && \
diff manual.txt find.txt;
rm -i manual.txt find.txt
ROC 1.10, ROC 1.11. Maybe they'll got their own branch to not ruin the history.
Beta-TFT-v306/Scripts/u03x04.ai
and Beta-TFT-v307/Scripts/u03x04.ai
had LF line endings.
I scrapped this entire section, lets start again. I will be repeating myself, I have written in detail in my test-maps repo and on Hive about this.
The last real ROC version is 1.06. The gold TFT release did not add update patches for ROC, but the game code was 1.07, so that's what ROC shows. Also TFT/ROC 1.07 use both original and expansion MPQs for game data.
-> ROC 1.07 does not exist
1.10 was an online-only patch for TFT 1.07 players. It did add ROC patch MPQs, but without Expansion MPQs the game was not able to load, 1.10 ROC standalone does not exist. However I will add its files (from war3patch.mpq) to the repo for completeness.
This means realistically we are jumping like this:
- ROC 1.06
- TFT Betas
- TFT 1.07
- TFT 1.10 (and a ripped patch file from here for "ROC 1.10" for TFT owners)
- TFT 1.11 (and standalone ROC 1.11 diverges from here)
Apparently the ROC versions still shared updates to common.j, but I'm not going to go down this path and assume TFT-only from this point onwards. The enforcement of "TFT-only map" game API was done by World Editor for GUI Triggers. The "expansion-only" flag is to be found in triggerdata.txt.
https://wowpedia.fandom.com/wiki/Warcraft_III/Patch_1.10
And then 1.11 seems to be a minor patch. So probably all of the script changes appeared in 1.10, but the common version and patch everyone had is 1.11.
The Russian TFT CD installs straight to 1.11.
Firstrun70 found this, labelled "TFT-en" and "TFT-ru" (MadSerg also had the ru file):
-
War3TFT_110_English_Not official.exe
akaWarCraft3_X_110.exe
,5338206
bytes (5.1 MiB)https://www.playground.ru/warcraft_3/file/warcraft_3_v1_10_english-852342
it's here under the X name
-
md5 89e76fb2befcb95b2f269111b1111ef5
-
sha256 7a0c61cccc36cd90504b9629b6636d95d93b6b48be820c7aa066f2ad1cce4865
-
War3TFT_110_Russian_Not official.exe
akaWarCraft3_X_110_ru.exe
,5584253
bytes (5.3 MiB)https://www.playground.ru/warcraft_3/file/warcraft_3_v1_10_russian-852343
it's there under the X name- some people say it didn't work under Windows XP
-
md5 220e8ba301d450614c5f18869986b7a6
-
sha256 20ffe6508d8c3281289540d1ffe0cc89f91f3d9f41cc59681fcee359eb12ad81
My explanation:
https://www.hiveworkshop.com/threads/list-of-official-patches-for-warcraft-3.322919/post-3602270
After looking into the unofficial 1.10 patch (1.07->1.10) it appears that it was never released as a standalone patch. Instead it was ripped (BNFTP) from the bnet in-game update service for PVPGN servers and their players. The unofficial patcher uses the game's own update utility to install it and there's Blizzard's original changelog in there too.
The game files are authentic, but the installer isn't.
Then realistically, ROC 1.07 is not a standalone version. While it runs on top of TFT's updated core, there is no separate game data patch MPQ for the ROC version. At the same time, it loads some stuff from the TFT MPQ archives. ROC 1.10 does have it's own patched data, but it does not exist separately from a TFT installation (since the patch is only 1.07->1.10 and no patch for ROC x->1.07 existed, there's no pure ROC 1.07/1.10). However ROC 1.11+ again existed as standalone.
UPD: If you delete the war3x.mpq and war3xlocal.mpq, then 1.07/1.10 ROC doesn't load correctly (black screen in main menu, only version shown). ROC v1.11 patch restores the ROC-only install. QED.