Выбор языков в игре (ini)

LMFAO

Новичок
vint56, то есть не выйдет сделать рус субтитры и англ озвучку к примеру?
 

vint56

Ветеран
Проверенный
LMFAO, попробуй и папки PKHDGame\Localization\RUS переменовать расширения на int потом их скопировать в папку INT заменой файлов да в файле SKIDROW.ini указать язык english
 

LMFAO

Новичок
vint56, получилось
меню и субтитры русские, озвучка английская
 

LMFAO

Новичок
как теперь сделать, чтобы было англ субтитры и рус озвучка?
 

vint56

Ветеран
Проверенный
LMFAO, попробуй из папки PKHDGame\Localization\int переменовать расширения на rus потом их скопировать в папку rus заменой файлов да в файле SKIDROW.ini указать язык russian
 

LMFAO

Новичок
vint56, и это получилось, но как все это в инсталлятор запихнуть? вот например я не хочу рус сабы и англ озвучку, а хочу рус сабы и рус озвучку, или наоборот все по инглишу
 

vint56

Ветеран
Проверенный
LMFAO, 1 пример через код обновил

Код:
[Setup]
AppName=Painkiller Hell & Damnation
AppVersion=1.5
DefaultDirName={pf}\Painkiller Hell & Damnation

[Code]
var
Language: TNewComboBox;
s0,s1,s2: String;
LanguageLabel: TLabel;

procedure InitializeWizard();
begin
Language := TNewComboBox.Create(WizardForm);
with Language do
begin
Parent := WizardForm.SelectDirPage;
Left := ScaleX(120);
Top := ScaleY(120);
Width := ScaleX(145);
Height := ScaleY(21);
Items.Add('japanese');
Items.Add('polish');
Items.Add('hungarian');
Items.Add('czech');
Items.Add('brazilian');
Items.Add('german');
Items.Add('spanish');
Items.Add('italian');
Items.Add('french');
Items.Add('english');
Items.Add('russian');
ItemIndex := 0;
end;

LanguageLabel := TLabel.Create(WizardForm);
with LanguageLabel do
begin
Parent := WizardForm.SelectDirPage;
Caption := 'Selet game language:';
Left := ScaleX(0);
Top := ScaleY(120);
Width := ScaleX(112);
Height := ScaleY(13);
end;
end;

procedure CurStepChanged(CurStep: TSetupStep);
begin
s0:= + '=';
s1:= + '[Game]' + #13#10 + 'AppId = 214870' + #13#10 + 'Language' + s0 +(Language.Text) + #13#10 + #13#10 + '[Settings]' + #13#10 + 'PlayerName =Origins' + #13#10 + #13#10 + '[Subscriptions]' + #13#10 + 'Default = true' + #13#10 + #13#10 + '[DLC]' + #13#10;
s2:= + '1 = 219130' + #13#10 + '2 = 219131' + #13#10 + '3 = 219133' + #13#10 + '4 = 219135' + #13#10 + '5 = 219136' + #13#10 + '6 = 229190' + #13#10 + '7 = 229210' + #13#10 + '8 = 229230' + #13#10 + '9 = 229250' + #13#10 + '10 = 229270' + #13#10 + '11 = 229290' + #13#10 + '12 = 229310' + #13#10 + '13 = 230010' + #13#10;
CreateDir(ExpandConstant('{app}\')+'Binaries\'); //Создаем папки
CreateDir(ExpandConstant('{app}\')+'Binaries\'+'win32\'); //по очереди, по одной
case CurStep of
ssPostInstall: SaveStringToFile(ExpandConstant('{app}\Binaries\win32\SKIDROW.ini'), s1+s2, False);
end;
end;
2 пример через компоненты ini
Код:
[Setup]
AppName=My Application
AppVersion=1.5
DefaultDirName={pf}\My Application

[Types]
Name: full; Description: Full installation; Flags: iscustom

[Components]
Name: text; Description: Язык субтитров; Types: full; Flags: fixed
Name: text\rus; Description: Русский; Flags: exclusive;
Name: text\eng; Description: Английский; Flags: exclusive;

[Ini]
Filename: "{app}\Binaries\Win32\SKIDROW.ini"; Section: "Game"; Key: "Language"; String: "russian"; Components: text\rus;
Filename: "{app}\Binaries\Win32\SKIDROW.ini"; Section: "Game"; Key: "Language"; String: "english"; Components: text\eng;
 
Последнее редактирование:

vint56

Ветеран
Проверенный
LMFAO, создает файл SKIDROW.ini вот с таким содержимым
Код:
[Game]
AppId = 214870
Language=russian

[Settings]
PlayerName =Origins

[Subscriptions]
Default = true

[DLC]
1 = 219130
2 = 219131
3 = 219133
4 = 219135
5 = 219136
6 = 229190
7 = 229210
8 = 229230
9 = 229250
10 = 229270
11 = 229290
12 = 229310
13 = 230010
 

LMFAO

Новичок
vint56, а зачем? содержимое идентично тому, что сейчас есть в SKIDROW.ini
 

vint56

Ветеран
Проверенный
LMFAO, он создает SKIDROW.ini но в нем меняет Language=russian языки их там
Код:
Items.Add('japanese');
Items.Add('polish');
Items.Add('hungarian');
Items.Add('czech');
Items.Add('brazilian');
Items.Add('german');
Items.Add('spanish');
Items.Add('italian');
Items.Add('french');
Items.Add('english');
Items.Add('russian');
 

LMFAO

Новичок
vint56, тут нужно прописать нужный язык?

если так, зачем тогда еще секция [INI]
 

LMFAO

Новичок
vint56, то есть можно через код, и можно через секцию [INI]?
меня все еще волнует другое, как сделать сочетание текста и звука (как уже говорил рус сабы и англ озвучка) но при это чтобы можно было выбрать рус сабы и рус озвучку
с заменами файлов из папок PKHDGame\Localization\int и т.д. понятно, но если делать через секцию [INI] то к примеру я в инсталле выберу рус, а игра будет с русскими субтитрами только, озвучка будет англ, или наоборот. Как сделать чтобы и так и так было (и рус сабы, англ озвучка, и рус сабы рус озвучка можно было сделать через инсталл)
 

vint56

Ветеран
Проверенный
LMFAO, попробуй так
Код:
[Setup]
AppName=My Application
AppVersion=1.5
DefaultDirName={pf}\My Application

[Files]
Source: PKHDGame\Localization\RUS\*; DestDir: {app}\PKHDGame\Localization\RUS; Flags: ignoreversion recursesubdirs createallsubdirs; Components: text\rus
Source: PKHDGame\Localization\INT\*; DestDir: {app}\PKHDGame\Localization\INT; Flags: ignoreversion recursesubdirs createallsubdirs; Components: text\eng

[Types]
Name: full; Description: Full installation; Flags: iscustom

[Components]
Name: text; Description: Язык субтитров; Types: full; Flags: fixed
Name: text\rus; Description: Русский; Flags: exclusive
Name: text\eng; Description: Английский; Flags: exclusive
Name: voice; Description: Язык озвучки; Types: full; Flags: fixed
Name: voice\rus; Description: Русский; Flags: exclusive
Name: voice\eng; Description: Английский; Flags: exclusive

[INI]
Filename: {app}\Binaries\Win32\SKIDROW.ini; Section: Game; Key: Language; String: russian; Components: text\rus
Filename: {app}\Binaries\Win32\SKIDROW.ini; Section: Game; Key: Language; String: english; Components: text\eng

Filename: {app}\Binaries\Win32\SKIDROW.ini; Section: Game; Key: Language; String: russian; Components: voice\rus
Filename: {app}\Binaries\Win32\SKIDROW.ini; Section: Game; Key: Language; String: english; Components: voice\eng
 

LMFAO

Новичок
vint56, осталось упаковать один архив data3.bin, и в него как раз входит папка PKHDGame\Localization, нужно упаковывать с замененными файлами папок RUS INT?
 

LMFAO

Новичок
Как прописать в скрипте такой параментр для ярлыка "-seekfreeloadingpcconsole -fullscreen"?
 

YURSHAT

Тех. админ
Администратор
LMFAO,
Код:
[Icons]
Name: "{group}\My Program"; Filename: "{app}\MYPROG.EXE"; WorkingDir: "{app}"; Parameters: "-seekfreeloadingpcconsole -fullscreen"
 

LMFAO

Новичок
YURSHAT, спасибо)
теперь другой вопрос
игра Abyss Odyssey, таблетка от CODEX
после установки своего репака не запускает с ярлыка, выдавая притом сообщение (скриншот), если запускать екзешник с папки где он находится, все работает
путь в скрипте к екзешнику 100 раз проверил, и все правильно
 
Сверху