Changeset 679


Ignore:
Timestamp:
Jul 26, 2025, 4:44:43 PM (13 hours ago)
Author:
chronos
Message:
  • Modified: Generate only single Windows installer with support for both 32-bit and 64-bit Windows.
  • Modified: If C-evo installed on Windows as 64-bit, then optionally install also 32-bit C-evo with 32-bit AIs.
  • Modified: Load additional AIs on Windows only if executed with 32-bit process.
  • Added: Package Music files with option to not install them.
Location:
trunk
Files:
3 deleted
12 edited

Legend:

Unmodified
Added
Removed
  • trunk/AI/AIAS/AIAS.ai.txt

    r124 r679  
    11#NAME AS - Artificial Stupidity in Delphi v0.07.07b
    22#GAMEVERSION 1.01.1
    3 #PATH AIAS0707b.dll
     3#PATH_WIN32 AIAS0707b.dll
    44#MULTIPLE
    55#CREDITS Artificial (mail:artificial2010-cevo@yahoo.de)
  • trunk/AI/AI_UO/AI_UO.ai.txt

    r124 r679  
    11#NAME AI_UO 0.14.75
    22#GAMEVERSION 0.14.0
    3 #PATH AI_UO_01475
     3#PATH_WIN32 AI_UO_01475
    44#MULTIPLE
    55#CREDITS  Ulrich Olderdissen 09-10-31, V0.14.75
  • trunk/AI/Capital AI C/Capital AI C.ai.txt

    r571 r679  
    11#NAME CapitalAI C
    22#GAMEVERSION 1.1.0
    3 #PATH CapitalAIC.dll
     3#PATH_WIN32 CapitalAIC.dll
    44#CREDITS Capital AI by Retudin.
  • trunk/AI/Capital AI/Capital AI.ai.txt

    r124 r679  
    11#NAME CapitalAI B
    22#GAMEVERSION 1.1.0
    3 #PATH CapitalAIB.dll
     3#PATH_WIN32 CapitalAIB.dll
    44#CREDITS Capital AI by Retudin.
  • trunk/AI/Civilisation Seed AI/Civilisation Seed AI.ai.txt

    r124 r679  
    11#NAME Civilisation Seed AI 0.101
    22#GAMEVERSION 0.14.0
    3 #PATH Civ-S0101.dll
     3#PATH_WIN32 Civ-S0101.dll
    44#MULTIPLE
    55#CREDITS CIV-S AI by Steve Barth
  • trunk/AI/Crystal/Crystal.ai.txt

    r124 r679  
    11#NAME Crystal (19 July 2008)
    22#GAMEVERSION 1.1.0
    3 #PATH Crystal.dll
     3#PATH_WIN32 Crystal.dll
    44#MULTIPLE
    55#CREDITS Crystal AI by Ferenc van den Ham
  • trunk/AI/KIAI/KIAI.ai.txt

    r127 r679  
    11#NAME K IA I  for C-evo 1  (06-2006)
    22#GAMEVERSION 1.0.0
    3 #PATH KiaI.dll
     3#PATH_WIN32 KiaI.dll
    44#MULTIPLE
    55#CREDITS  kIAi by Jean S.
  • trunk/AI/SETI/SETI.ai.txt

    r124 r679  
    11#NAME SETI V0.3
    22#GAMEVERSION 0.14.0
    3 #PATH SetiV030.dll
     3#PATH_WIN32 SetiV030.dll
    44#MULTIPLE
    55#CREDITS SETI AI V0.3 by Frank Mierse 09/2007
  • trunk/AI/Shah/Shah.ai.txt

    r124 r679  
    11#NAME Shah V00.01
    22#GAMEVERSION 0.14.0
    3 #PATH Shah.dll
     3#PATH_WIN32 Shah.dll
    44#MULTIPLE
    55#CREDITS Shah by Rassim Eminli
  • trunk/Brain.pas

    r648 r679  
    106106  FileName := ExtractFileNameOnly(ExtractFileNameOnly(AIFileName));
    107107  Name := FileName;
    108   DLLName := BasePath + DirectorySeparator + Name + '.dll';
     108  DLLName := '';
    109109  Credits := '';
    110110  Flags := fMultiple;
  • trunk/Install/win/C-evo.iss

    r579 r679  
    1 #include "Common.iss"
     1#define MyAppName "C-evo"
     2#define MyAppTitle "C-evo: New Horizons"
     3#define MyAppNameShort "C-evo-nh"
     4#define MyAppVersion "1.4.0"
     5#define MyAppVersionSuffix "alfa"
     6#define MyAppPublisher "Chronosoft"
     7#define MyAppPublisherShort "Chronosoft"
     8#define MyAppURL "https://app.zdechov.net/c-evo"
     9#define MyAppExeName "C-evo.exe"
     10#define MyAppExeName32 "C-evo32.exe"
     11#define MyAppSubDir "../.."
    212
    313[Setup]
     14; NOTE: The value of AppId uniquely identifies this application.
     15; Do not use the same AppId value in installers for other applications.
     16; (To generate a new GUID, click Tools | Generate GUID inside the IDE.)
     17WizardStyle=modern
     18AppId={{6B40AF4D-C38C-4474-9614-8F0C4376C1CF}
     19AppName={#MyAppTitle}
     20#ifdef MyAppVersionSuffix
     21#define MyAppVersionSuffix "-" + MyAppVersionSuffix
     22#else
     23#define MyAppVersionSuffix ""
     24#endif
     25AppVersion={#MyAppVersion}{#MyAppVersionSuffix}
     26AppVerName={#MyAppName} {#MyAppVersion}{#MyAppVersionSuffix}
     27UninstallDisplayName={#MyAppTitle}
     28UninstallDisplayIcon="{app}\{#MyAppExeName}"
     29VersionInfoVersion={#MyAppVersion}
     30VersionInfoCompany={#MyAppPublisher} 
     31AppPublisher={#MyAppPublisher}
     32AppPublisherURL={#MyAppURL}
     33AppSupportURL={#MyAppURL}
     34AppUpdatesURL={#MyAppURL}
     35DefaultDirName={commonpf}\{#MyAppName}
     36DefaultGroupName={#MyAppName}
     37AllowNoIcons=yes
     38OutputDir=.
     39Compression=lzma
     40SolidCompression=yes
     41ChangesAssociations=yes
     42DisableDirPage=no
    443; "ArchitecturesInstallIn64BitMode=x64" requests that the install be
    544; done in "64-bit mode" on x64, meaning it should use the native
     
    1251OutputBaseFilename=Install-{#MyAppNameShort}-{#MyAppVersion}{#MyAppVersionSuffix}
    1352
     53[Languages]
     54Name: "en"; MessagesFile: "compiler:Default.isl"
     55Name: "cs"; MessagesFile: "compiler:Languages\Czech.isl"
     56Name: "de"; MessagesFile: "compiler:Languages\German.isl"
     57Name: "it"; MessagesFile: "compiler:Languages\Italian.isl"
     58Name: "ru"; MessagesFile: "compiler:Languages\Russian.isl"
     59Name: "fr"; MessagesFile: "compiler:Languages\French.isl"
     60
     61[Tasks]
     62Name: "desktopicon"; Description: "{cm:CreateDesktopIcon}"; GroupDescription: "{cm:AdditionalIcons}"; Flags:
     63
     64[Registry]
     65Root: HKLM; Subkey: "Software\C-evo"; Flags: uninsdeletekey
     66
     67#define FileTypeName "C-evo book"
     68Root: HKCR; Subkey: ".cevo"; ValueType: string; ValueName: ""; ValueData: "{#FileTypeName}"; Flags: uninsdeletevalue
     69Root: HKCR; Subkey: "{#FileTypeName}"; ValueType: string; ValueName: ""; ValueData: "{#FileTypeName}"; Flags: uninsdeletekey
     70Root: HKCR; Subkey: "{#FileTypeName}\DefaultIcon"; ValueType: string; ValueName: ""; ValueData: "{app}\{#MyAppExeName},0"
     71Root: HKCR; Subkey: "{#FileTypeName}\shell\open\command"; ValueType: string; ValueName: ""; ValueData: """{app}\{#MyAppExeName}"" ""%1"""
     72
     73#define FileTypeName "C-evo map"
     74Root: HKCR; Subkey: ".cevomap"; ValueType: string; ValueName: ""; ValueData: "{#FileTypeName}"; Flags: uninsdeletevalue
     75Root: HKCR; Subkey: "{#FileTypeName}"; ValueType: string; ValueName: ""; ValueData: "{#FileTypeName}"; Flags: uninsdeletekey
     76Root: HKCR; Subkey: "{#FileTypeName}\DefaultIcon"; ValueType: string; ValueName: ""; ValueData: "{app}\{#MyAppExeName},0"
     77Root: HKCR; Subkey: "{#FileTypeName}\shell\open\command"; ValueType: string; ValueName: ""; ValueData: """{app}\{#MyAppExeName}"" ""%1"""
     78
    1479[Components]
     80Name: "main"; Description: "Main Files"; Types: full compact custom; Flags: fixed
     81Name: "main32"; Description: "Additional 32-bit architecture"; Types: full; Check: Is64BitInstallMode
     82Name: "maps"; Description: "Maps"; Types: full
     83Name: "sounds"; Description: "Sounds"; Types: full
     84Name: "music"; Description: "Music"; Types: full
     85Name: "lang"; Description: "Language files"; Types: full
     86Name: "lang\cs"; Description: "Czech"; Types: full
     87Name: "lang\de"; Description: "German"; Types: full
     88Name: "lang\it"; Description: "Italian"; Types: full
     89Name: "lang\ru"; Description: "Russian"; Types: full
     90Name: "lang\fr"; Description: "French"; Types: full
     91Name: "lang\zhHans"; Description: "Chinese Simplified"; Types: full
     92Name: "lang\zhHant"; Description: "Chinese Traditional"; Types: full
     93Name: "ai_template"; Description: "AI template"; Types: full
     94Name: "ai"; Description: "AI files"; Types: full
     95Name: "ai\stdai"; Description: "StdAI"; Types: full
    1596Name: "ai\ai_uo"; Description: "AI_UO"; Types: full
    1697Name: "ai\capital_ai"; Description: "Capital AI"; Types: full
     
    25106Source: "{#MyAppSubDir}\lib\x86_64-win64-Release\{#MyAppExeName}"; DestDir: "{app}"; Flags: ignoreversion; Components: main; Check: Is64BitInstallMode
    26107Source: "{#MyAppSubDir}\lib\i386-win32-Release\{#MyAppExeName}"; DestDir: "{app}"; Flags: ignoreversion; Components: main; Check: not Is64BitInstallMode
     108Source: "{#MyAppSubDir}\Help\*.*"; DestDir: "{app}\Help"; Flags: ignoreversion; Components: main
     109Source: "{#MyAppSubDir}\Fonts.txt"; DestDir: "{app}"; Flags: ignoreversion; Components: main
     110Source: "{#MyAppSubDir}\Language.txt"; DestDir: "{app}"; Flags: ignoreversion; Components: main
     111Source: "{#MyAppSubDir}\Language2.txt"; DestDir: "{app}"; Flags: ignoreversion; Components: main
     112Source: "{#MyAppSubDir}\Graphics\*"; DestDir: "{app}\Graphics"; Flags: ignoreversion; Components: main
     113Source: "{#MyAppSubDir}\Tribes\*.*"; DestDir: "{app}\Tribes"; Flags: ignoreversion; Components: main
     114Source: "{#MyAppSubDir}\Saved\*.*"; DestDir: "{app}\Saved"; Flags: ignoreversion; Components: main
     115Source: "{#MyAppSubDir}\LibPortaudio-32.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: main; Check: not Is64BitInstallMode
     116Source: "{#MyAppSubDir}\LibPortaudio-64.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: main; Check: Is64BitInstallMode
     117Source: "{#MyAppSubDir}\LibSndFile-32.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: main; Check: not Is64BitInstallMode
     118Source: "{#MyAppSubDir}\LibSndFile-64.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: main; Check: Is64BitInstallMode
     119Source: "{#MyAppSubDir}\libxmp-32.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: main; Check: not Is64BitInstallMode
     120Source: "{#MyAppSubDir}\libxmp-64.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: main; Check: Is64BitInstallMode
     121
     122Source: "{#MyAppSubDir}\lib\i386-win32-Release\{#MyAppExeName}"; DestDir: "{app}"; DestName: "{#MyAppExeName32}"; Flags: ignoreversion; Components: main32; Check: Is64BitInstallMode
     123Source: "{#MyAppSubDir}\LibPortaudio-32.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: main32; Check: Is64BitInstallMode
     124Source: "{#MyAppSubDir}\LibSndFile-32.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: main32; Check: Is64BitInstallMode
     125Source: "{#MyAppSubDir}\libxmp-32.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: main32; Check: Is64BitInstallMode
     126
     127Source: "{#MyAppSubDir}\Sounds\*.*"; DestDir: "{app}\Sounds"; Flags: ignoreversion; Components: sounds
     128
     129Source: "{#MyAppSubDir}\Music\*.*"; DestDir: "{app}\Music"; Flags: ignoreversion recursesubdirs; Components: music
     130
     131Source: "{#MyAppSubDir}\Maps\*.*"; DestDir: "{app}\Maps"; Flags: ignoreversion; Components: maps
     132
     133Source: "{#MyAppSubDir}\Localization\cs\*.*"; DestDir: "{app}\Localization\cs"; Flags: ignoreversion recursesubdirs; Components: lang\cs
     134Source: "{#MyAppSubDir}\Localization\de\*.*"; DestDir: "{app}\Localization\de"; Flags: ignoreversion recursesubdirs; Components: lang\de
     135Source: "{#MyAppSubDir}\Localization\it\*.*"; DestDir: "{app}\Localization\it"; Flags: ignoreversion recursesubdirs; Components: lang\it
     136Source: "{#MyAppSubDir}\Localization\ru\*.*"; DestDir: "{app}\Localization\ru"; Flags: ignoreversion recursesubdirs; Components: lang\ru
     137Source: "{#MyAppSubDir}\Localization\fr\*.*"; DestDir: "{app}\Localization\fr"; Flags: ignoreversion recursesubdirs; Components: lang\fr
     138Source: "{#MyAppSubDir}\Localization\zh-Hans\*.*"; DestDir: "{app}\Localization\zh-Hans"; Flags: ignoreversion recursesubdirs; Components: lang\zhHans
     139Source: "{#MyAppSubDir}\Localization\zh-Hant\*.*"; DestDir: "{app}\Localization\zh-Hant"; Flags: ignoreversion recursesubdirs; Components: lang\zhHant
     140Source: "{#MyAppSubDir}\AI Template\*.*"; DestDir: "{app}\AI Template"; Flags: ignoreversion recursesubdirs; Components: ai_template
     141
     142Source: "{#MyAppSubDir}\AI\StdAI\StdAI.png"; DestDir: "{app}\AI\StdAI"; Flags: ignoreversion; Components: ai\stdai
     143Source: "{#MyAppSubDir}\AI\StdAI\StdAI.ai.txt"; DestDir: "{app}\AI\StdAI"; Flags: ignoreversion; Components: ai\stdai
    27144Source: "{#MyAppSubDir}\AI\StdAI\lib\x86_64-win64-Release\StdAI.dll"; DestDir: "{app}\AI\StdAI"; DestName: "StdAI-win64.dll"; Flags: ignoreversion; Components: ai\stdai; Check: Is64BitInstallMode
    28145Source: "{#MyAppSubDir}\AI\StdAI\lib\i386-win32-Release\StdAI.dll"; DestDir: "{app}\AI\StdAI"; DestName: "StdAI-win32.dll"; Flags: ignoreversion; Components: ai\stdai; Check: not Is64BitInstallMode
    29 Source: "{#MyAppSubDir}\AI\AI_UO\*.*"; DestDir: "{app}\AI\AI_UO"; Flags: ignoreversion; Components: ai\ai_uo; Check: not Is64BitInstallMode
    30 Source: "{#MyAppSubDir}\AI\AIAS\*.*"; DestDir: "{app}\AI\AIAS"; Flags: ignoreversion; Components: ai\aias; Check: not Is64BitInstallMode
    31 Source: "{#MyAppSubDir}\AI\Capital AI\*.*"; DestDir: "{app}\AI\Capital AI"; Flags: ignoreversion; Components: ai\capital_ai; Check: not Is64BitInstallMode
    32 Source: "{#MyAppSubDir}\AI\Civilisation Seed AI\*.*"; DestDir: "{app}\AI\Civilisation Seed AI"; Flags: ignoreversion; Components: ai\civseed; Check: not Is64BitInstallMode
    33 Source: "{#MyAppSubDir}\AI\Crystal\*.*"; DestDir: "{app}\AI\Crystal"; Flags: ignoreversion; Components: ai\crystal; Check: not Is64BitInstallMode
    34 Source: "{#MyAppSubDir}\AI\KIAI\*.*"; DestDir: "{app}\AI\KIAI"; Flags: ignoreversion; Components: ai\kiai; Check: not Is64BitInstallMode
    35 Source: "{#MyAppSubDir}\AI\SETI\*.*"; DestDir: "{app}\AI\SETI"; Flags: ignoreversion; Components: ai\seti; Check: not Is64BitInstallMode
    36 Source: "{#MyAppSubDir}\AI\Shah\*.*"; DestDir: "{app}\AI\Shah"; Flags: ignoreversion; Components: ai\shah; Check: not Is64BitInstallMode
     146
     147Source: "{#MyAppSubDir}\AI\AI_UO\*.*"; DestDir: "{app}\AI\AI_UO"; Flags: ignoreversion; Components: ai\ai_uo; Check: Install32bitAI
     148Source: "{#MyAppSubDir}\AI\AIAS\*.*"; DestDir: "{app}\AI\AIAS"; Flags: ignoreversion; Components: ai\aias; Check: Install32bitAI
     149Source: "{#MyAppSubDir}\AI\Capital AI\*.*"; DestDir: "{app}\AI\Capital AI"; Flags: ignoreversion; Components: ai\capital_ai; Check: Install32bitAI
     150Source: "{#MyAppSubDir}\AI\Civilisation Seed AI\*.*"; DestDir: "{app}\AI\Civilisation Seed AI"; Flags: ignoreversion; Components: ai\civseed; Check: Install32bitAI
     151Source: "{#MyAppSubDir}\AI\Crystal\*.*"; DestDir: "{app}\AI\Crystal"; Flags: ignoreversion; Components: ai\crystal; Check: Install32bitAI
     152Source: "{#MyAppSubDir}\AI\KIAI\*.*"; DestDir: "{app}\AI\KIAI"; Flags: ignoreversion; Components: ai\kiai; Check: Install32bitAI
     153Source: "{#MyAppSubDir}\AI\SETI\*.*"; DestDir: "{app}\AI\SETI"; Flags: ignoreversion; Components: ai\seti; Check: Install32bitAI
     154Source: "{#MyAppSubDir}\AI\Shah\*.*"; DestDir: "{app}\AI\Shah"; Flags: ignoreversion; Components: ai\shah; Check: Install32bitAI
     155; NOTE: Don't use "Flags: ignoreversion" on any shared system files
     156
     157[Icons]
     158Name: "{group}\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}"
     159Name: "{group}\{#MyAppName} (32-bit)"; Filename: "{app}\{#MyAppExeName32}"; Check: Is64BitInstallMode
     160Name: "{group}\{cm:UninstallProgram,{#MyAppName}}"; Filename: "{uninstallexe}"
     161Name: "{commondesktop}\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}"; Tasks: desktopicon
     162
     163[Run]
     164Filename: "{app}\{#MyAppExeName}"; Description: "{cm:LaunchProgram,{#StringChange(MyAppName, "&", "&&")}}"; Flags: nowait postinstall skipifsilent
     165
     166[Code]
     167
     168function Install32bitAI: Boolean;
     169var
     170  Components: string;
     171begin
     172  Components := WizardSelectedComponents(False);
     173
     174  Result := not Is64BitInstallMode or (Pos('main32', Components) > 0);
     175end;
  • trunk/Install/win/build.bat

    r218 r679  
    3636
    3737%INNO_SETUP% "C-evo.iss"
    38 %INNO_SETUP% "C-evo 32-bit.iss"
    39 %INNO_SETUP% "C-evo 64-bit.iss"
Note: See TracChangeset for help on using the changeset viewer.