-
Notifications
You must be signed in to change notification settings - Fork 47
Building from Source
Install Perl (Strawberry Perl or ActivePerl on Windows). From the repository root, compile one target:
.\MakeREFORGED.bat
.\MakeTFT.bat
.\MakeROC.batOr compile all normal and optimized targets:
.\MakeAll.batGenerated map-ready files are written beneath Scripts. Never make source-only fixes there; rebuild output from the .eai, version table, and race files.
After compiling a normal target, run its optimizer:
.\MakeOptREFORGED.batThis creates Scripts\OPTREFORGED (or the corresponding TFT/ROC directory). Install an optimized target with the generic installer when working at the command line:
.\InstallVERToMap.bat OPTREFORGED "C:\path\to\Map.w3x" 0The public version-specific installer takes map then mode; the generic installer takes version, map, then mode. Keep that argument-order difference in mind.
The editor additionally requires the Perl/Tk modules. Start it from the repository root so it can find Versions.txt and the version directories:
perl .\AMAIStrategyManager.plSee Strategy Manager for its workflow.
The current installer uses Angular 16, Electron 22, Node.js 14.15 or later, and npm. From Electron:
npm install
npm startCreate a Windows release:
npm run electron:buildThe build compiles the Angular renderer and Electron main process, packages the executable, then creates a release ZIP containing the portable executable, MPQEditor.exe, and a separate customizable Scripts directory.
Useful checks are:
npm run lint
npm test
npm run test:installerElectron packaging targets the operating system on which it runs. The project intentionally remains on Electron 22 for its existing OS compatibility baseline.