Moved to proper subfolder to make room for other VWE projects.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
+7
-7
@@ -48,15 +48,15 @@ Two non-obvious but verified facts that make this work:
|
||||
STLport (`mw4\Libraries\stlport`) wraps a 27 MB snapshot of the VC98 + Platform SDK
|
||||
headers (974 files). It used to require a hardcoded `C:\stlnative`; it now lives here at
|
||||
`build-env\stlnative\`, and the 3 macros in `stl_inc_find.hpp` point at
|
||||
`<c:\VWE\build-env\stlnative/##x>`. No external `C:\stlnative` is needed — the build is
|
||||
self-contained under `c:\VWE`. (If you ever relocate the working tree, update those 3
|
||||
`<c:\VWE\firestorm\build-env\stlnative/##x>`. No external `C:\stlnative` is needed — the build is
|
||||
self-contained under `c:\VWE\firestorm`. (If you ever relocate the working tree, update those 3
|
||||
macro lines to the new absolute path.)
|
||||
|
||||
### One-time setup: register VC6 + the directory paths
|
||||
Run **elevated** (HKLM write needs admin; do both in the same shell):
|
||||
```cmd
|
||||
reg import c:\VWE\build-env\vc6-hklm-registration.reg
|
||||
reg import c:\VWE\build-env\vc6-directories.reg
|
||||
reg import c:\VWE\firestorm\build-env\vc6-hklm-registration.reg
|
||||
reg import c:\VWE\firestorm\build-env\vc6-directories.reg
|
||||
```
|
||||
- `vc6-hklm-registration.reg` → registers the VC6 install (ProductDir/InstallDir,
|
||||
environment packages) under `HKLM\SOFTWARE\Wow6432Node\Microsoft\{VisualStudio,DevStudio}\6.0`
|
||||
@@ -72,14 +72,14 @@ reg import c:\VWE\build-env\vc6-directories.reg
|
||||
1. Launch `VisualStudio6\Common\MSDev98\Bin\MSDEV.EXE`.
|
||||
2. (Directories are already set by the `.reg` import — verify under
|
||||
Tools → Options → Directories if desired.)
|
||||
3. Open `c:\VWE\Gameleap\code\mw4\Code\MechWarrior4.dsw`, set
|
||||
3. Open `c:\VWE\firestorm\Gameleap\code\mw4\Code\MechWarrior4.dsw`, set
|
||||
**MW4Application** as the Active Project, pick a config, Build.
|
||||
|
||||
### Option B — command line (scriptable)
|
||||
```cmd
|
||||
cd c:\VWE\build-env
|
||||
cd c:\VWE\firestorm\build-env
|
||||
setup-mw4-build.bat
|
||||
cd c:\VWE\Gameleap\code\mw4\Code
|
||||
cd c:\VWE\firestorm\Gameleap\code\mw4\Code
|
||||
msdev MechWarrior4.dsw /MAKE "MW4Application - Win32 Release"
|
||||
```
|
||||
> `msdev /MAKE` reads include/lib dirs from the **registry** (the `.reg` above),
|
||||
|
||||
@@ -23,8 +23,8 @@
|
||||
picks them up automatically.
|
||||
#>
|
||||
param(
|
||||
[string]$Runtime = "c:\VWE\Gameleap\mw4", # source tree: Content\ + resource\
|
||||
[string]$BinDir = "c:\VWE\Gameleap\code\rel.bin", # our freshly built MW4pro.exe
|
||||
[string]$Runtime = "c:\VWE\firestorm\Gameleap\mw4", # source tree: Content\ + resource\
|
||||
[string]$BinDir = "c:\VWE\firestorm\Gameleap\code\rel.bin", # our freshly built MW4pro.exe
|
||||
[int] $TimeoutSec = 1800 # kill a hung (modal-STOP) build
|
||||
)
|
||||
$ErrorActionPreference = "Stop"
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<#
|
||||
deploy-editor.ps1 - install the MW4GameEd2 editor INTO the game-data tree (c:\VWE\Gameleap\mw4).
|
||||
deploy-editor.ps1 - install the MW4GameEd2 editor INTO the game-data tree (c:\VWE\firestorm\Gameleap\mw4).
|
||||
|
||||
The editor's entire job is editing the source content + resources, which live in Gameleap\mw4.
|
||||
So instead of a separate deploy dir that just junctions back here, we drop the editor binaries
|
||||
@@ -16,8 +16,8 @@
|
||||
Editor launches via run-editor.bat (just -armorlevel 3; joystick disabled in code, no /gos switch).
|
||||
#>
|
||||
param(
|
||||
[string]$Data = "c:\VWE\Gameleap\mw4", # game-data tree = the editor's working dir
|
||||
[string]$BinDir = "c:\VWE\Gameleap\code\pro.bin" # our built MW4Ed2.exe (PROFILE = working config)
|
||||
[string]$Data = "c:\VWE\firestorm\Gameleap\mw4", # game-data tree = the editor's working dir
|
||||
[string]$BinDir = "c:\VWE\firestorm\Gameleap\code\pro.bin" # our built MW4Ed2.exe (PROFILE = working config)
|
||||
)
|
||||
$ErrorActionPreference = "Stop"
|
||||
Write-Host "== Install MW4 editor into the data tree ==" -ForegroundColor Cyan
|
||||
@@ -73,7 +73,7 @@ Write-Host " wrote run-editor.bat"
|
||||
$ifeo = 'HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\MW4Ed2.exe'
|
||||
if (Test-Path $ifeo) {
|
||||
Write-Host " WARNING: PageHeap IFEO for MW4Ed2.exe is set. Remove it (ELEVATED):" -ForegroundColor Red
|
||||
Write-Host " reg import C:\VWE\build-env\mw4ed2-pageheap-off.reg" -ForegroundColor Red
|
||||
Write-Host " reg import C:\VWE\firestorm\build-env\mw4ed2-pageheap-off.reg" -ForegroundColor Red
|
||||
}
|
||||
|
||||
Write-Host "`nEditor installed into the data tree: $Data" -ForegroundColor Green
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
<#
|
||||
deploy-mw4.ps1 - assemble a runnable copy of BattleTech:FireStorm at c:\VWE\MW4
|
||||
deploy-mw4.ps1 - assemble a runnable copy of BattleTech:FireStorm at c:\VWE\firestorm\MW4
|
||||
|
||||
RULES-BASED deployment, sourced entirely from the working directory (c:\VWE).
|
||||
RULES-BASED deployment, sourced entirely from the working directory (c:\VWE\firestorm).
|
||||
No external/image paths are read.
|
||||
|
||||
Sources:
|
||||
Runtime = c:\VWE\Gameleap\mw4 (dev superset: runtime DLLs, resources, config)
|
||||
BinDir = c:\VWE\Gameleap\code\rel.bin (our freshly built binaries)
|
||||
Runtime = c:\VWE\firestorm\Gameleap\mw4 (dev superset: runtime DLLs, resources, config)
|
||||
BinDir = c:\VWE\firestorm\Gameleap\code\rel.bin (our freshly built binaries)
|
||||
|
||||
The dev runtime tree is bloated (~6 GB) with source content and dev-only data.
|
||||
A clean runnable deployment is ~900 MB. These rules select the runtime subset:
|
||||
@@ -33,9 +33,9 @@
|
||||
#>
|
||||
|
||||
param(
|
||||
[string]$Runtime = "c:\VWE\Gameleap\mw4",
|
||||
[string]$BinDir = "c:\VWE\Gameleap\code\rel.bin",
|
||||
[string]$Dest = "c:\VWE\MW4",
|
||||
[string]$Runtime = "c:\VWE\firestorm\Gameleap\mw4",
|
||||
[string]$BinDir = "c:\VWE\firestorm\Gameleap\code\rel.bin",
|
||||
[string]$Dest = "c:\VWE\firestorm\MW4",
|
||||
[switch]$SkipResourceBuild,
|
||||
[int] $ResourceBuildTimeoutSec = 1800
|
||||
)
|
||||
|
||||
@@ -2,8 +2,8 @@ Windows Registry Editor Version 5.00
|
||||
|
||||
; Apply the DirectDraw 16-bit mitigation shim to the deployed MW4.exe at the
|
||||
; SYSTEM (all-users) level, exactly matching the known-good C:\MW4knowngood entry.
|
||||
; Import elevated: reg import c:\VWE\build-env\mw4-compat-hklm.reg
|
||||
; Import elevated: reg import c:\VWE\firestorm\build-env\mw4-compat-hklm.reg
|
||||
; (HKCU per-user layer is set separately by deploy-mw4.ps1 / already applied.)
|
||||
|
||||
[HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers]
|
||||
"C:\\VWE\\MW4\\MW4.exe"="$ DWM8And16BitMitigation"
|
||||
"C:\\VWE\\firestorm\\MW4\\MW4.exe"="$ DWM8And16BitMitigation"
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
Windows Registry Editor Version 5.00
|
||||
|
||||
; Disable PageHeap for the editor (removes the IFEO MW4Ed2.exe subkey).
|
||||
; Import ELEVATED: reg import c:\VWE\build-env\mw4ed2-pageheap-off.reg
|
||||
; Import ELEVATED: reg import c:\VWE\firestorm\build-env\mw4ed2-pageheap-off.reg
|
||||
|
||||
[-HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\MW4Ed2.exe]
|
||||
|
||||
@@ -5,7 +5,7 @@ Windows Registry Editor Version 5.00
|
||||
; immediately at the corrupting write (instead of corrupting the free-list and
|
||||
; hanging/crashing later). GlobalFlag 0x02000000 = FLG_HEAP_PAGE_ALLOCS;
|
||||
; PageHeapFlags 0x3 = enabled + full page heap.
|
||||
; Import ELEVATED: reg import c:\VWE\build-env\mw4ed2-pageheap.reg
|
||||
; Import ELEVATED: reg import c:\VWE\firestorm\build-env\mw4ed2-pageheap.reg
|
||||
; To DISABLE later: delete the MW4Ed2.exe subkey (or run mw4ed2-pageheap-off.reg).
|
||||
; (IFEO is a shared key - NOT redirected to Wow6432Node - so this applies to the
|
||||
; 32-bit editor's ntdll heap.)
|
||||
|
||||
@@ -4,7 +4,7 @@ rem play-mr.bat - drag-and-drop launcher for MW4 mission-review (.mr) replay.
|
||||
rem Drop a .mr file onto this .bat, or run: play-mr.bat "C:\path\match.mr"
|
||||
rem
|
||||
rem EDIT THIS to your game install folder (the one containing MW4.exe):
|
||||
set "GAMEDIR=C:\VWE\MW4"
|
||||
set "GAMEDIR=C:\VWE\firestorm\MW4"
|
||||
rem ============================================================================
|
||||
if "%~1"=="" (
|
||||
echo Usage: drag a .mr file onto this file, or: play-mr.bat "path\to\match.mr"
|
||||
|
||||
@@ -33,7 +33,7 @@
|
||||
[CmdletBinding()]
|
||||
param(
|
||||
[Parameter(Mandatory=$true)] [string]$MrFile,
|
||||
[string]$GameDir = "C:\VWE\MW4", # point this at your game install on another system
|
||||
[string]$GameDir = "C:\VWE\firestorm\MW4", # point this at your game install on another system
|
||||
[string]$Exe = "MW4.exe",
|
||||
[string]$ExtraArgs = "-window -dragon -nomovie", # e.g. "-window -nomovie"
|
||||
[switch]$NoShim, # skip the DirectDraw AppCompat shim
|
||||
|
||||
@@ -4,17 +4,17 @@ Windows Registry Editor Version 5.00
|
||||
; VC6 Tools->Options->Directories for the MW4 / FireStorm build.
|
||||
; EXACT original ordering recovered from the build machine's jeff hive,
|
||||
; rebased from the original paths to the local build-env\ copies:
|
||||
; C:\Program Files\Microsoft Visual Studio -> c:\VWE\build-env\VisualStudio6
|
||||
; C:\CODE\DX7ASDK -> c:\VWE\build-env\dx7asdk
|
||||
; C:\CODE\DXMEDIA -> c:\VWE\build-env\DXMedia
|
||||
; C:\Program Files\Microsoft Visual Studio -> c:\VWE\firestorm\build-env\VisualStudio6
|
||||
; C:\CODE\DX7ASDK -> c:\VWE\firestorm\build-env\dx7asdk
|
||||
; C:\CODE\DXMEDIA -> c:\VWE\firestorm\build-env\DXMedia
|
||||
;
|
||||
; Imports into HKEY_CURRENT_USER (no admin needed). Double-click to apply,
|
||||
; or: reg import c:\VWE\build-env\vc6-directories.reg
|
||||
; or: reg import c:\VWE\firestorm\build-env\vc6-directories.reg
|
||||
; This is what lets `msdev ... /MAKE` and the IDE find DX7 headers first.
|
||||
; ===========================================================================
|
||||
|
||||
[HKEY_CURRENT_USER\Software\Microsoft\DevStudio\6.0\Build System\Components\Platforms\Win32 (x86)\Directories]
|
||||
"Path Dirs"="c:\\VWE\\build-env\\VisualStudio6\\Common\\MSDev98\\Bin;c:\\VWE\\build-env\\VisualStudio6\\VC98\\BIN;c:\\VWE\\build-env\\VisualStudio6\\Common\\TOOLS;c:\\VWE\\build-env\\VisualStudio6\\Common\\TOOLS\\WINNT;C:\\WINDOWS\\system32;C:\\WINDOWS;C:\\WINDOWS\\System32\\Wbem"
|
||||
"Include Dirs"="c:\\VWE\\build-env\\DXMedia\\INCLUDE;c:\\VWE\\build-env\\dx7asdk\\INCLUDE;c:\\VWE\\build-env\\VisualStudio6\\VC98\\INCLUDE;c:\\VWE\\build-env\\VisualStudio6\\VC98\\MFC\\INCLUDE;c:\\VWE\\build-env\\VisualStudio6\\VC98\\ATL\\INCLUDE"
|
||||
"Library Dirs"="c:\\VWE\\build-env\\VisualStudio6\\VC98\\LIB;c:\\VWE\\build-env\\VisualStudio6\\VC98\\MFC\\LIB"
|
||||
"Source Dirs"="c:\\VWE\\build-env\\VisualStudio6\\VC98\\MFC\\SRC;c:\\VWE\\build-env\\VisualStudio6\\VC98\\MFC\\INCLUDE;c:\\VWE\\build-env\\VisualStudio6\\VC98\\ATL\\INCLUDE;c:\\VWE\\build-env\\VisualStudio6\\VC98\\CRT\\SRC"
|
||||
"Path Dirs"="c:\\VWE\\firestorm\\build-env\\VisualStudio6\\Common\\MSDev98\\Bin;c:\\VWE\\firestorm\\build-env\\VisualStudio6\\VC98\\BIN;c:\\VWE\\firestorm\\build-env\\VisualStudio6\\Common\\TOOLS;c:\\VWE\\firestorm\\build-env\\VisualStudio6\\Common\\TOOLS\\WINNT;C:\\WINDOWS\\system32;C:\\WINDOWS;C:\\WINDOWS\\System32\\Wbem"
|
||||
"Include Dirs"="c:\\VWE\\firestorm\\build-env\\DXMedia\\INCLUDE;c:\\VWE\\firestorm\\build-env\\dx7asdk\\INCLUDE;c:\\VWE\\firestorm\\build-env\\VisualStudio6\\VC98\\INCLUDE;c:\\VWE\\firestorm\\build-env\\VisualStudio6\\VC98\\MFC\\INCLUDE;c:\\VWE\\firestorm\\build-env\\VisualStudio6\\VC98\\ATL\\INCLUDE"
|
||||
"Library Dirs"="c:\\VWE\\firestorm\\build-env\\VisualStudio6\\VC98\\LIB;c:\\VWE\\firestorm\\build-env\\VisualStudio6\\VC98\\MFC\\LIB"
|
||||
"Source Dirs"="c:\\VWE\\firestorm\\build-env\\VisualStudio6\\VC98\\MFC\\SRC;c:\\VWE\\firestorm\\build-env\\VisualStudio6\\VC98\\MFC\\INCLUDE;c:\\VWE\\firestorm\\build-env\\VisualStudio6\\VC98\\ATL\\INCLUDE;c:\\VWE\\firestorm\\build-env\\VisualStudio6\\VC98\\CRT\\SRC"
|
||||
|
||||
Binary file not shown.
Reference in New Issue
Block a user