View Single Post
  #4  
Old 18-03-2008, 11:52
Torm Nort Torm Nort is offline
Junior Member
 
Join Date: Mar 2008
Location: Venezuela
Posts: 4
Thanks: 0
Thanked 0 Times in 0 Posts
Torm Nort is on a distinguished road
Quote:
Originally Posted by mondragon View Post
compressed by 7zip installed directory [4h ]
4480 and 2242 mb
inno compress similar
mybe someone interesting to build new installer ?

I built a new installer using Inno Setup Version 5.2.3, with "lzma/max" compression.

(the complete script is some lines below this one)

Features of this solution:

- Fit in 2 DVD5
- Tested for both 32 bit and 64 bit Win XP (I have dual boot in my machine)
- This install re-create main Registry entries made by the original game
(the 3 entries in HKEY_LOCAL_MACHINE\SOFTWARE\THQ\Frontlines: Fuel of War)
- Includes Installing of Redistributables that comes with the game
(Directx, Vc8, Dot NET Framework 2.0, Ageia PhysX 7.11.13)
- Also Autodetect your OS type (32 or 64 bit) and install only compatible Redistributables.
The Registry entries are put in the right place depending on your type of OS. (32 or 64 bit)
- At the End you will have a game in 2 DVD5 very easy to install (install and Play
in both Win XP and Win XP x64).
- All are full uninstallable (including registry entries, desktop icon, etc)

What You need to do:

Step 1: Install original game FFOW in your HDD using your prefered Language,
Also you must download and install Patch 1.0.1 and Hot Fix.
(Patch and HotFix are in: http://www.kaosstudios.com/ffow-patches/retail.shtml)
... dont forget install the crack for 1.0.1. and quick test the game.

Step 2: Compile using Inno Setup (will take 2 to 3 hrs)
You need download & install Inno Setup in your machine.
(http://www.jrsoftware.org/isdl.php)

Step 3: Create the finals DVDs. You will need some Redistributables,
and a BMP file, I put all these files for download (some lines below).


Ok, lets start:


Step 1:


- Install the game from originals DVDs, apply Patch 1.0.1 and Hot Fix, and apply the crack for 1.0.1
- Quick Test the game in order to verify that all is working. Using this game we will re-built a new install.


Step 2:

- Download and install Inno Setup 5.2.3. Its free.
(http://www.jrsoftware.org/isdl.php)
Make shure you have at least 8GB free in the HDD where you have installed Inno, because
there will be the output files. In this case I have it installed in "D:\Program Files\Inno Setup 5".

- Download this BMP file, will be used for Inno Setup to show it during the installation.
FFOW-MCE.rar

And put this BMP file in your game directory (where you have installed the original game)
In my case: "K:\Juegos\Frontlines-Fuel of War" or in English: "K:\Games\Frontlines-Fuel of War"


- Compile using my inno script:


1) Assuming you have installed the game in "K:\Games\Frontlines-Fuel of War"
(change lines 17 and 26 in the script to specify other dir)


2) Assuming you have installed Inno Setup in "D:\Program Files\Inno Setup 5"
(change line 10 in the script to specify other dir)


3) Open Inno Setup, choose menu "New" and copy+paste this script:

I made 2 versions, Spanish (My native Language) and English.
There are very little changes for one to other. Easy.


Spanish version (Messages in Spanish):
(Skip for English)


Code:
[Setup]
AppName=Frontlines: Fuel of War
AppVerName=Frontlines: Fuel of War
AppPublisher=THQ
AppPublisherURL=http://www.thq.com
AppSupportURL=http://www.frontlines.com/
AppUpdatesURL=http://www.frontlines.com/
DefaultDirName={pf}\Frontlines-Fuel of War
DefaultGroupName=THQ
OutputDir=D:\Archivos de programa\Inno Setup 5\Examples\Output
OutputBaseFilename=setup
Compression=lzma/max
SolidCompression=yes
DiskSpanning=yes
SlicesPerDisk=3
DiskSliceSize=1566000000
WizardImageFile=K:\Juegos\Frontlines-Fuel of War\FFOW-MCE.bmp

[Languages]
Name: "spanish"; MessagesFile: "compiler:Languages\Spanish.isl"

[Tasks]
Name: "desktopicon"; Description: "{cm:CreateDesktopIcon}"; GroupDescription: "{cm:AdditionalIcons}"; Flags: checkedonce

[Files]
Source: "K:\Juegos\Frontlines-Fuel of War\*"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs createallsubdirs

[Icons]
Name: "{group}\Frontlines - Fuel of War\Frontlines - Fuel of War"; Filename: "{app}\Binaries\FFOW.exe"; Parameters:""; WorkingDir: "{app}"; Iconfilename: "{app}\Binaries\FFOW.exe"
Name: "{group}\Frontlines - Fuel of War\Manual de Frontlines - Fuel of War"; Filename: "{app}\FFOW_Manual.pdf"; Parameters:""; WorkingDir: "{app}"; Iconfilename: "{app}\FFOW_Manual.pdf"
Name: "{group}\Frontlines - Fuel of War\Desinstalar Frontlines - Fuel of War"; Filename: "{uninstallexe}"
Name: "{userdesktop}\Frontlines - Fuel of War"; Filename: "{app}\Binaries\FFOW.exe"; Parameters:""; WorkingDir: "{app}"; Iconfilename: "{app}\Binaries\FFOW.exe"; Tasks: desktopicon

[Registry]
Root: HKLM; Subkey: "Software\THQ"; Flags:uninsdeletekeyifempty; Check: not IsWin64
Root: HKLM; Subkey: "Software\THQ\Frontlines: Fuel of War"; Flags:uninsdeletekeyifempty; Check: not IsWin64
Root: HKLM; Subkey: "Software\THQ\Frontlines: Fuel of War"; ValueType: string; ValueName: "InstallDir"; ValueData: "{app}"; Flags: uninsdeletekey; Check: not IsWin64
Root: HKLM; Subkey: "Software\THQ\Frontlines: Fuel of War"; ValueType: string; ValueName: "ProductKey"; ValueData: "070f500201070c56005303005d53010e505e54070b06550003"; Flags: uninsdeletekey; Check: not IsWin64
Root: HKLM; Subkey: "Software\THQ\Frontlines: Fuel of War"; ValueType: string; ValueName: "Version"; ValueData: "1.0.1"; Flags: uninsdeletekey; Check: not IsWin64

Root: HKLM; Subkey: "Software\Wow6432Node\THQ"; Flags:uninsdeletekeyifempty; Check: IsWin64
Root: HKLM; Subkey: "Software\Wow6432Node\THQ\Frontlines: Fuel of War"; Flags:uninsdeletekeyifempty; Check: IsWin64
Root: HKLM; Subkey: "Software\Wow6432Node\THQ\Frontlines: Fuel of War"; ValueType: string; ValueName: "InstallDir"; ValueData: "{app}"; Flags: uninsdeletekey; Check: IsWin64
Root: HKLM; Subkey: "Software\Wow6432Node\THQ\Frontlines: Fuel of War"; ValueType: string; ValueName: "ProductKey"; ValueData: "070f500201070c56005303005d53010e505e54070b06550003"; Flags: uninsdeletekey; Check: IsWin64
Root: HKLM; Subkey: "Software\Wow6432Node\THQ\Frontlines: Fuel of War"; ValueType: string; ValueName: "Version"; ValueData: "1.0.1"; Flags: uninsdeletekey; Check: IsWin64


[Run]
Filename: "{drive:{src}}\Redist\DXSETUP.EXE"; Parameters:"/silent"; StatusMsg: "Instalando DirectX..."
Filename: "{drive:{src}}\Redist\vcredist_x86\vcredist_x86.exe"; Parameters:""; StatusMsg: "Instalando vc redist..."; Check: not IsWin64
Filename: "{drive:{src}}\Redist\vcredist_x64\vcredist_x64.exe"; Parameters:""; StatusMsg: "Instalando vc redist x64..."; Check: IsWin64
Filename: "{drive:{src}}\Redist\dotnetfx\install.exe"; Parameters:""; StatusMsg: "Instalando Dot Net Framework 2... (Si ya está instalado, presione Cancelar)"; Check: not IsWin64
Filename: "{drive:{src}}\Redist\NetFx64\install.exe"; Parameters:""; StatusMsg: "Instalando Dot Net Framework 2 x64... (Si ya está instalado, presione Cancelar)"; Check: IsWin64
Filename: "{drive:{src}}\Redist\PhysX_7.11.13_SystemSoftware.exe"; Parameters:""; StatusMsg: "Instalando Ageia PhysX 7.11.13... (Si ya está instalado, presione Cancelar)"

Filename: "{app}\Binaries\FFOW.exe"; Parameters:""; Description: "{cm:LaunchProgram,Frontlines: Fuel Of War}"; Flags: shellexec postinstall skipifsilent

English version (not tested but must work, I only changed messages text and messages file spec.):

Code:
[Setup]
AppName=Frontlines: Fuel of War
AppVerName=Frontlines: Fuel of War
AppPublisher=THQ
AppPublisherURL=http://www.thq.com
AppSupportURL=http://www.frontlines.com/
AppUpdatesURL=http://www.frontlines.com/
DefaultDirName={pf}\Frontlines-Fuel of War
DefaultGroupName=THQ
OutputDir=D:\Program Files\Inno Setup 5\Examples\Output
OutputBaseFilename=setup
Compression=lzma/max
SolidCompression=yes
DiskSpanning=yes
SlicesPerDisk=3
DiskSliceSize=1566000000
WizardImageFile=K:\Games\Frontlines-Fuel of War\FFOW-MCE.bmp

[Languages]
Name: "english"; MessagesFile: "compiler:Default.isl"

[Tasks]
Name: "desktopicon"; Description: "{cm:CreateDesktopIcon}"; GroupDescription: "{cm:AdditionalIcons}"; Flags: checkedonce

[Files]
Source: "K:\Games\Frontlines-Fuel of War\*"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs createallsubdirs

[Icons]
Name: "{group}\Frontlines - Fuel of War\Frontlines - Fuel of War"; Filename: "{app}\Binaries\FFOW.exe"; Parameters:""; WorkingDir: "{app}"; Iconfilename: "{app}\Binaries\FFOW.exe"
Name: "{group}\Frontlines - Fuel of War\Frontlines - Fuel of War`s Manual"; Filename: "{app}\FFOW_Manual.pdf"; Parameters:""; WorkingDir: "{app}"; Iconfilename: "{app}\FFOW_Manual.pdf"
Name: "{group}\Frontlines - Fuel of War\Uninstall Frontlines - Fuel of War"; Filename: "{uninstallexe}"
Name: "{userdesktop}\Frontlines - Fuel of War"; Filename: "{app}\Binaries\FFOW.exe"; Parameters:""; WorkingDir: "{app}"; Iconfilename: "{app}\Binaries\FFOW.exe"; Tasks: desktopicon

[Registry]
Root: HKLM; Subkey: "Software\THQ"; Flags:uninsdeletekeyifempty; Check: not IsWin64
Root: HKLM; Subkey: "Software\THQ\Frontlines: Fuel of War"; Flags:uninsdeletekeyifempty; Check: not IsWin64
Root: HKLM; Subkey: "Software\THQ\Frontlines: Fuel of War"; ValueType: string; ValueName: "InstallDir"; ValueData: "{app}"; Flags: uninsdeletekey; Check: not IsWin64
Root: HKLM; Subkey: "Software\THQ\Frontlines: Fuel of War"; ValueType: string; ValueName: "ProductKey"; ValueData: "070f500201070c56005303005d53010e505e54070b06550003"; Flags: uninsdeletekey; Check: not IsWin64
Root: HKLM; Subkey: "Software\THQ\Frontlines: Fuel of War"; ValueType: string; ValueName: "Version"; ValueData: "1.0.1"; Flags: uninsdeletekey; Check: not IsWin64

Root: HKLM; Subkey: "Software\Wow6432Node\THQ"; Flags:uninsdeletekeyifempty; Check: IsWin64
Root: HKLM; Subkey: "Software\Wow6432Node\THQ\Frontlines: Fuel of War"; Flags:uninsdeletekeyifempty; Check: IsWin64
Root: HKLM; Subkey: "Software\Wow6432Node\THQ\Frontlines: Fuel of War"; ValueType: string; ValueName: "InstallDir"; ValueData: "{app}"; Flags: uninsdeletekey; Check: IsWin64
Root: HKLM; Subkey: "Software\Wow6432Node\THQ\Frontlines: Fuel of War"; ValueType: string; ValueName: "ProductKey"; ValueData: "070f500201070c56005303005d53010e505e54070b06550003"; Flags: uninsdeletekey; Check: IsWin64
Root: HKLM; Subkey: "Software\Wow6432Node\THQ\Frontlines: Fuel of War"; ValueType: string; ValueName: "Version"; ValueData: "1.0.1"; Flags: uninsdeletekey; Check: IsWin64

[Run]
Filename: "{drive:{src}}\Redist\DXSETUP.EXE"; Parameters:"/silent"; StatusMsg: "Installing DirectX..."
Filename: "{drive:{src}}\Redist\vcredist_x86\vcredist_x86.exe"; Parameters:""; StatusMsg: "Installing vc redist..."; Check: not IsWin64
Filename: "{drive:{src}}\Redist\vcredist_x64\vcredist_x64.exe"; Parameters:""; StatusMsg: "Installing vc redist x64..."; Check: IsWin64
Filename: "{drive:{src}}\Redist\dotnetfx\install.exe"; Parameters:""; StatusMsg: "Installing Dot Net Framework 2.0... (If you have it, press Cancel)"; Check: not IsWin64
Filename: "{drive:{src}}\Redist\NetFx64\install.exe"; Parameters:""; StatusMsg: "Installing Dot Net Framework 2.0 x64... (If you have it, press Cancel)"; Check: IsWin64
Filename: "{drive:{src}}\Redist\PhysX_7.11.13_SystemSoftware.exe"; Parameters:""; StatusMsg: "Installing Ageia PhysX 7.11.13... (If you have it, press Cancel)"

Filename: "{app}\Binaries\FFOW.exe"; Parameters:""; Description: "{cm:LaunchProgram,Frontlines: Fuel Of War}"; Flags: shellexec postinstall skipifsilent

4) Choose menu "Build" -> "Compile", and wait 2 hrs for finish (1 hr and half in my Core2Duo @ 2.40GHz).

5) In our case the Output files will be in "D:\Program Files\Inno Setup 5\Examples\Output" (Depending where you have installed Inno Setup)
There must be 7 files (8GB):

setup.exe
setup-1a.bin
setup-1b.bin
setup-1c.bin
setup-2a.bin
setup-2b.bin
setup-2c.bin

Step 3: Create Finals DVDs.

1) Make a folder named "FFOW_DVDs" maybe in the same HDD where you have installed Inno Setup.
2) Create others two folders inside this and named "FFOW_DVD1" and "FFOW_DVD2"

3) Download the Redistributables, is a compressed folder named "Redist" in ZIP format.
http://rapidshare.de/files/38860122/Redist.zip.html

Note: These are the same Redist files from the original DVDs, but I changed the vc8 thats comes
in .MSI format by other in .EXE format taken from the Crysis DVD (these are the same version
of vc8 and works OK). I made this change because is more easy to install .EXE under Inno Setup.


4) Uncompress the Redist.ZIP and move the resulting uncompressed folder to "FFOW_DVD2"
5) Move setup.exe, setup-1a.bin, setup-1b.bin, setup-1c.bin to "FFOW_DVD1"
6) Move setup-2a.bin, setup-2b.bin, setup-2c.bin to "FFOW_DVD2"
7) Put the Icon file in the 2 folders "FFOW_DVD1" and "FFOW_DVD2". The file is taken from
the original DVDs, its name is "FFOW_Icon.ico"
Icon file is also in: http://rapidshare.de/files/38864332/FFOW_Icon.ico.html

8) Create Auntorun.inf files for both DVDs:

Autorun.inf for FFOW_DVD1
Code:
      [autorun]
      open=setup.exe
      icon=FFOW_Icon.ico
-----

Autorun.inf for FFOW_DVD2
Code:
      [autorun]
      open=0
      icon=FFOW_Icon.ico
----

Save these files and put in its respectives folders.



9) Check the structure in both folders (FFOW_DVD1 and FFOW_DVD2)

FFOW_DVD1 must have 6 files (4.37GB):

setup.exe
setup-1a.bin
setup-1b.bin
setup-1c.bin
Autorun.inf
FFOW_Icon.ico


FFOW_DVD2 must have 5 files in its root and one folder: (3.64GB)

setup-2a.bin
setup-2b.bin
setup-2c.bin
Autorun.inf
FFOW_Icon.ico
Redist <-- (folder)


10) Burn both DVDs using DVD5 and Enjoy.

11) For Test uninstall the original game, and re-install using the news DVDs.
Before uninstall you can see the main Registry entries created by the original game,
running "regedit" in the Start Menu of Windows,

For Win XP:

3 entries are in "HKEY_LOCAL_MACHINE\SOFTWARE\THQ\Frontlines: Fuel of War"

and for Win XP 64 must be:

3 entries are in "HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\THQ\Front lines: Fuel of War"

After re-install, check these 3 entries again, must be the same.
(These entries are: InstallDir, ProductKey, Version)


12) Comments and sugestions are welcome.
I have tested it several times (Win XP and Win XP x64) and works OK.
Uninstall works fine. (I used my Spanish version`s script to test. English must works ok). No tested in Vista.

Greetings

Last edited by Torm Nort; 19-03-2008 at 19:49.
Reply With Quote