description: 'Play "MechWarrior 4: Vengeance" CD edition on Linux!'
game_slug: mechwarrior-4-vengeance
gogslug: ''
humblestoreid: ''
installer_slug: mechwarrior-4-vengeance-cd-dgvoodoo2
name: 'MechWarrior 4: Vengeance'
notes: "- Using dgVoodoo2 for better graphic stability\r\n- Patch 3.0 included\r\n\
- Known issues:\r\n-- When you first launch the game, you will get the following\
\ error message: \"Error outside main thread\". Close all windows, then relaunch\
\ the game. This error message will no longer appear\r\n-- After starting a multiplayer\
\ game, the game will not close properly; you will have to force it to close"
runner: wine
script:
files:
- game_cd1: https://archive.org/download/Nova_MechWarrior4VengeanceUSAEurope/MechWarrior%204%20-%20Vengeance%20%28USA%2C%20Europe%29%20%28Disc%201%29.7z
- game_cd2: https://archive.org/download/Nova_MechWarrior4VengeanceUSAEurope/MechWarrior%204%20-%20Vengeance%20%28USA%2C%20Europe%29%20%28Disc%202%29.7z
- game_patch: https://lutris.nyc3.cdn.digitaloceanspaces.com/games/Mechwarrior%204%20-%20Vengeance/mw4_vengeance_patch.7z
- game_conf: https://github.com/legluondunet/MyLittleLutrisScripts/raw/refs/heads/master/Mechwarrior%204%20-%20Vengeance/options.ini
- wrapper: https://github.com/legluondunet/mlls-tools/raw/refs/heads/master/dgVoodoo2/dgVoodoo2_79_3.zip
- tools: https://github.com/legluondunet/mlls-tools/raw/refs/heads/master/cdrtools/bchunk.7z
game:
args: -noautoconfig
exclude_processes: dplaysvr.exe
exe: drive_c/Program Files (x86)/Microsoft Games/MechWarrior Vengeance/MW4_v30_nocd.exe
launch_configs:
- exe: $GAMEDIR/drive_c/Program Files (x86)/Microsoft Games/MechWarrior Vengeance/autoconfig.exe
name: Configure graphic options
prefix: $GAMEDIR
installer:
- task:
arch: win64
description: Creating Wine prefix...
name: create_prefix
prefix: $GAMEDIR
- extract:
description: Extracting "MechWarrior 4 - Vengeance" CD1 archive
dst: $CACHE
file: game_cd1
format: 7z
- extract:
description: Extracting "MechWarrior 4 - Vengeance" CD2 archive
dst: $CACHE
file: game_cd2
format: 7z
- extract:
description: Extracting CD tools...
dst: $CACHE
file: tools
format: 7z
- execute:
command: cd "$CACHE" ; ./bchunk "MechWarrior 4 - Vengeance (USA, Europe) (Disc
1).bin" "MechWarrior 4 - Vengeance (USA, Europe) (Disc 1).cue" "MechWarrior
4 - Vengeance (USA, Europe) (Disc 1)"; ./bchunk "MechWarrior 4 - Vengeance
(USA, Europe) (Disc 2).bin" "MechWarrior 4 - Vengeance (USA, Europe) (Disc
2).cue" "MechWarrior 4 - Vengeance (USA, Europe) (Disc 2)"
description: Converting "MechWarrior 4 - Vengeance" CD .cue/.bin files to .iso
- extract:
description: Extracting "MechWarrior 4 - Vengeance" CD1 data
dst: $CACHE/CD
file: $CACHE/MechWarrior 4 - Vengeance (USA, Europe) (Disc 1)01.iso
format: iso
- extract:
description: Extracting "MechWarrior 4 - Vengeance" CD2 data
dst: $CACHE/CD
file: $CACHE/MechWarrior 4 - Vengeance (USA, Europe) (Disc 2)01.iso
format: iso
- task:
description: Installing "MechWarrior 4 - Vengeance", let all options to default,
do not launch game at the end of install
executable: $CACHE/CD/SETUP.EXE
name: wineexec
return_code: 256
- extract:
description: Extracting patch 3.0...
dst: $CACHE
file: game_patch
format: 7z
- execute:
args: '''$GAMEDIR/drive_c/Program Files (x86)/Microsoft Games/MechWarrior Vengeance'''
description: Applying "MechWarrior 4 - Vengeance" 3.0 patch...
file: $CACHE/apply.sh
- merge:
dst: $GAMEDIR/drive_c/Program Files (x86)/Microsoft Games/MechWarrior Vengeance
src: $CACHE/files
- move:
dst: $CACHE
src: $GAMEDIR/drive_c/Program Files (x86)/Microsoft Games/MechWarrior Vengeance/mw4.exe
- task:
key: uninstall
name: set_regedit
path: HKEY_CURRENT_USER\Software\Microsoft\Microsoft Games\Autoconfig
type: REG_SZ
value: 0
- task:
key: uninstall
name: set_regedit
path: HKEY_CURRENT_USER\Software\Microsoft\Microsoft Games\MechWarrior Vengeance
type: REG_SZ
value: 0
- merge:
dst: $GAMEDIR/drive_c/Program Files (x86)/Microsoft Games/MechWarrior Vengeance
src: game_conf
- task:
app: quartz amstream directplay
description: Installing dependencies with Winetricks...
name: winetricks
silent: true
- extract:
description: Installing dgVoodoo2...
dst: $CACHE
file: wrapper
- copy:
dst: $GAMEDIR/drive_c/Program Files (x86)/Microsoft Games/MechWarrior Vengeance
src: $CACHE/MS/x86/DDraw.dll
- copy:
dst: $GAMEDIR/drive_c/Program Files (x86)/Microsoft Games/MechWarrior Vengeance
src: $CACHE/MS/x86/D3DImm.dll
- copy:
dst: $GAMEDIR/drive_c/Program Files (x86)/Microsoft Games/MechWarrior Vengeance
src: $CACHE/dgVoodooCpl.exe
- write_file:
content: '[GeneralExt]
FPSLimit=30
[DirectX]
dgVoodooWatermark=False'
file: $GAMEDIR/drive_c/Program Files (x86)/Microsoft Games/MechWarrior Vengeance/dgVoodoo.conf
wine:
overrides:
ddraw: n,b
slug: mechwarrior-4-vengeance-cd-dgvoodoo2
steamid: null
version: CD + dgVoodoo2
year: 2000
{
"game_slug": "mechwarrior-4-vengeance",
"version": "CD + dgVoodoo2",
"description": "Play \"MechWarrior 4: Vengeance\" CD edition on Linux!",
"notes": "- Using dgVoodoo2 for better graphic stability\r\n- Patch 3.0 included\r\n- Known issues:\r\n-- When you first launch the game, you will get the following error message: \"Error outside main thread\". Close all windows, then relaunch the game. This error message will no longer appear\r\n-- After starting a multiplayer game, the game will not close properly; you will have to force it to close",
"name": "MechWarrior 4: Vengeance",
"year": 2000,
"steamid": null,
"gogslug": "",
"humblestoreid": "",
"runner": "wine",
"slug": "mechwarrior-4-vengeance-cd-dgvoodoo2",
"installer_slug": "mechwarrior-4-vengeance-cd-dgvoodoo2",
"script": {
"files": [
{
"game_cd1": "https://archive.org/download/Nova_MechWarrior4VengeanceUSAEurope/MechWarrior%204%20-%20Vengeance%20%28USA%2C%20Europe%29%20%28Disc%201%29.7z"
},
{
"game_cd2": "https://archive.org/download/Nova_MechWarrior4VengeanceUSAEurope/MechWarrior%204%20-%20Vengeance%20%28USA%2C%20Europe%29%20%28Disc%202%29.7z"
},
{
"game_patch": "https://lutris.nyc3.cdn.digitaloceanspaces.com/games/Mechwarrior%204%20-%20Vengeance/mw4_vengeance_patch.7z"
},
{
"game_conf": "https://github.com/legluondunet/MyLittleLutrisScripts/raw/refs/heads/master/Mechwarrior%204%20-%20Vengeance/options.ini"
},
{
"wrapper": "https://github.com/legluondunet/mlls-tools/raw/refs/heads/master/dgVoodoo2/dgVoodoo2_79_3.zip"
},
{
"tools": "https://github.com/legluondunet/mlls-tools/raw/refs/heads/master/cdrtools/bchunk.7z"
}
],
"game": {
"args": "-noautoconfig",
"exclude_processes": "dplaysvr.exe",
"exe": "drive_c/Program Files (x86)/Microsoft Games/MechWarrior Vengeance/MW4_v30_nocd.exe",
"launch_configs": [
{
"exe": "$GAMEDIR/drive_c/Program Files (x86)/Microsoft Games/MechWarrior Vengeance/autoconfig.exe",
"name": "Configure graphic options"
}
],
"prefix": "$GAMEDIR"
},
"installer": [
{
"task": {
"arch": "win64",
"description": "Creating Wine prefix...",
"name": "create_prefix",
"prefix": "$GAMEDIR"
}
},
{
"extract": {
"description": "Extracting \"MechWarrior 4 - Vengeance\" CD1 archive",
"dst": "$CACHE",
"file": "game_cd1",
"format": "7z"
}
},
{
"extract": {
"description": "Extracting \"MechWarrior 4 - Vengeance\" CD2 archive",
"dst": "$CACHE",
"file": "game_cd2",
"format": "7z"
}
},
{
"extract": {
"description": "Extracting CD tools...",
"dst": "$CACHE",
"file": "tools",
"format": "7z"
}
},
{
"execute": {
"command": "cd \"$CACHE\" ; ./bchunk \"MechWarrior 4 - Vengeance (USA, Europe) (Disc 1).bin\" \"MechWarrior 4 - Vengeance (USA, Europe) (Disc 1).cue\" \"MechWarrior 4 - Vengeance (USA, Europe) (Disc 1)\"; ./bchunk \"MechWarrior 4 - Vengeance (USA, Europe) (Disc 2).bin\" \"MechWarrior 4 - Vengeance (USA, Europe) (Disc 2).cue\" \"MechWarrior 4 - Vengeance (USA, Europe) (Disc 2)\"",
"description": "Converting \"MechWarrior 4 - Vengeance\" CD .cue/.bin files to .iso"
}
},
{
"extract": {
"description": "Extracting \"MechWarrior 4 - Vengeance\" CD1 data",
"dst": "$CACHE/CD",
"file": "$CACHE/MechWarrior 4 - Vengeance (USA, Europe) (Disc 1)01.iso",
"format": "iso"
}
},
{
"extract": {
"description": "Extracting \"MechWarrior 4 - Vengeance\" CD2 data",
"dst": "$CACHE/CD",
"file": "$CACHE/MechWarrior 4 - Vengeance (USA, Europe) (Disc 2)01.iso",
"format": "iso"
}
},
{
"task": {
"description": "Installing \"MechWarrior 4 - Vengeance\", let all options to default, do not launch game at the end of install",
"executable": "$CACHE/CD/SETUP.EXE",
"name": "wineexec",
"return_code": 256
}
},
{
"extract": {
"description": "Extracting patch 3.0...",
"dst": "$CACHE",
"file": "game_patch",
"format": "7z"
}
},
{
"execute": {
"args": "'$GAMEDIR/drive_c/Program Files (x86)/Microsoft Games/MechWarrior Vengeance'",
"description": "Applying \"MechWarrior 4 - Vengeance\" 3.0 patch...",
"file": "$CACHE/apply.sh"
}
},
{
"merge": {
"dst": "$GAMEDIR/drive_c/Program Files (x86)/Microsoft Games/MechWarrior Vengeance",
"src": "$CACHE/files"
}
},
{
"move": {
"dst": "$CACHE",
"src": "$GAMEDIR/drive_c/Program Files (x86)/Microsoft Games/MechWarrior Vengeance/mw4.exe"
}
},
{
"task": {
"key": "uninstall",
"name": "set_regedit",
"path": "HKEY_CURRENT_USER\\Software\\Microsoft\\Microsoft Games\\Autoconfig",
"type": "REG_SZ",
"value": 0
}
},
{
"task": {
"key": "uninstall",
"name": "set_regedit",
"path": "HKEY_CURRENT_USER\\Software\\Microsoft\\Microsoft Games\\MechWarrior Vengeance",
"type": "REG_SZ",
"value": 0
}
},
{
"merge": {
"dst": "$GAMEDIR/drive_c/Program Files (x86)/Microsoft Games/MechWarrior Vengeance",
"src": "game_conf"
}
},
{
"task": {
"app": "quartz amstream directplay",
"description": "Installing dependencies with Winetricks...",
"name": "winetricks",
"silent": true
}
},
{
"extract": {
"description": "Installing dgVoodoo2...",
"dst": "$CACHE",
"file": "wrapper"
}
},
{
"copy": {
"dst": "$GAMEDIR/drive_c/Program Files (x86)/Microsoft Games/MechWarrior Vengeance",
"src": "$CACHE/MS/x86/DDraw.dll"
}
},
{
"copy": {
"dst": "$GAMEDIR/drive_c/Program Files (x86)/Microsoft Games/MechWarrior Vengeance",
"src": "$CACHE/MS/x86/D3DImm.dll"
}
},
{
"copy": {
"dst": "$GAMEDIR/drive_c/Program Files (x86)/Microsoft Games/MechWarrior Vengeance",
"src": "$CACHE/dgVoodooCpl.exe"
}
},
{
"write_file": {
"content": "[GeneralExt]\nFPSLimit=30\n[DirectX]\ndgVoodooWatermark=False",
"file": "$GAMEDIR/drive_c/Program Files (x86)/Microsoft Games/MechWarrior Vengeance/dgVoodoo.conf"
}
}
],
"wine": {
"overrides": {
"ddraw": "n,b"
}
}
}
}