Здесь описан способ создания карт для игры, который был предложен Mysteltainn'ом. Обсудить, а так же задать вопросы по этой теме можно на форуме.
Установка:
1. Качаем и устанавливаем два редактрора:
GtkRadiant-1.5.0
Heavy Metal: F.A.K.K. 2 editing tools 1.02
2. Из папки FAKKTools\fakk удаляем все что там есть.
3. Идем в папку с игрой, достаем из файлов pak0.pk3, pak1_large.pk3 и pak2.pk3 следующие папки: dialog, models, scripts, sound, textures...(можно вытащить все).
Копируем их в FAKKTools\fakk.
4. В папке scripts файл detail_wall.shader удаляем или переносим куда-нибудь.
5. Далее открываем блокнотом alice.qe4, удаляем все и вставляем следующее (путь меняем соответственно):
{
"texturepath" "D:/fakktools/fakk/textures/"
"entitypath" "D:/fakktools/entities/entities.def"
"modelpath" "D:/fakktools/fakk/models/*.tik"
"mapspath" "D:/fakktools/fakk/maps/"
"rshcmd" ""
"remotebasepath" "D:/fakktools/fakk"
"basepath" "D:/fakktools/fakk"
"autosave" "D:/fakktools/fakk/maps/autosave/autosave.map"
}
Сохраняем и переименовываем в fakk.qe4
6. Переходим к GtkRadiant-1.5.0
Папку textures временно копируем например на C:\ для конвертации.
Пуск – Выполнить – cmd … пишем chdir C:\fakktools\bin и жмем enter
Снова пишем > ftxconvert –r C:\textures \* *.ftx … enter … ждем.
Теперь нужно удалить все *.ftx файлы
chdir C:\fakktools\textures
del /s *.ftx
Получившуюся папку переносим в GtkRadiant 1.5.0\q3.game, и сюда же копируем scripts, sound.
7. Качаем файл ForAlice. Из baseq3 копируем в GtkRadiant 1.5.0\q3.game\baseq3
Из entities - в FAKKTools\entities.
8. Запускаем GtkRadiant 1.5.0, смотрим список bind, celling, chess, chess_res, там должны быть знакомые текстуры.
Пример работы с редактором:
Запускаем GtkRadiant 1.5.0 и видим вот такую картинку:
(Изменить расположение окон можно в настройках: Edit – Preferences… – Interface – Layout).
В окне с сеткой рисуем прямоугольник. (Между проекциями (XY, XZ, YZ) переключаемся с помощью CTRL + TAB).
(Активный объект выделен красным. ESC – снимает выделение, Shift + ЛКМ выделяет объект, backspace – удаляет, пробел – копирует).
Теперь затекстурируем этот прямоугольник (он должен быть выделен). Выбираем например chess и любую текстуру. При нажатии S появляется Surface Inspector позволяющий изменять размер текстур и перемещать их.
Чтобы сделать комнату, жмем на верхней панели Hollow. Вместо одного объекта получилось шесть.
Далее жмем правую кнопку и перемещаемся с помощью стрелок внутрь фигуры.
Осталось добавить место начала, в котором появится Алиса при загрузке карты. В окне с сеткой жмем правую кнопку и выбираем info_player_start. Появился красный прямоугольник. Чтобы его поставить в нужное место жмем W и двигаем как хотим.
Минимум для запуска карты сделан.
Компиляция (перевод) карты в понятный для игры формат:
Пуск – Выполнить – Cmd
Chdir C:\fakktools\bin
Q3map –gamedir C:\fakktools\fakk С:\alicemap\map1 (последнее – путь к карте и ее название).
После этого должен появиться файл map1.bsp в той же папке, где и map1.map.
Если попробовать запустить карту в игре, то будет такая ошибка Map1.bsp has a wrong version number (12 should be 42). Поэтому берем из приложения Fakk2Alice.exe и перетаскиваем на него (как в папку) map1.bsp.
Теперь все должно работать. Закидываем map1.bsp в American McGee's Alice\Base\maps, запускаем игру и в консоли пишем map map1.
Создание bat-файла (альтернатива компиляции):
Для удобства лучше создать отдельную папку для сохранения карт (например C:\Alicemap). Имя папки желательно без пробелов.
Далее помещаем в эту папку Fakk2Alice.exe и с помощью реестра «привяжем» его к *.bsp формату (при двойном щелчке на *.bsp будет запускать Fakk2Alice.exe).
Следующий текст копируем в блокнот и сохраняем как Fakk2Alice.reg (.reg – главное, а имя файла любое):
Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\.bsp]
@=""
[HKEY_CLASSES_ROOT\.bsp\Shell]
[HKEY_CLASSES_ROOT\.bsp\Shell\Fakk2Alice]
@="Fakk2Alice"
[HKEY_CLASSES_ROOT\.bsp\Shell\Fakk2Alice\Command]
@="С:\\Alicemap\\Fakk2Alice %1"
Получившийся файл запускаем, подтверждаем добавление информации в реестр. Больше про него можно не вспоминать.
Теперь в папке Fakktools\bin создаем еще один текстовый документ и копируем вот это:
@echo off
SET MAP_NAME=sky
q3map.exe -gamedir С:\FakkTools\fakk С:\Alicemap\%MAP_NAME%
:wait_bsp
if exist С:\Alicemap\%MAP_NAME%.bsp goto go
goto wait_bsp
:go
rename С:\Alicemap\%MAP_NAME%.bsp %MAP_NAME%.bsp
if not errorlevel 0 goto go
q3map.exe -light -gamedir С:\FakkTools\fakk С:\Alicemap\%MAP_NAME%
start С:\Alicemap\%MAP_NAME%.bsp
echo --- Convert to Alice map format ---
@pause
copy С:\Alicemap\%MAP_NAME%.bsp "C:\Games\American McGee's Alice\Base\maps"
Сохраняем под compile_map.bat (имя файла так же любое). Пути меняем соответственно.
Несколько пояснений:
SET MAP_NAME=sky
sky – имя карты, которую компилируем. Меняем по необходимости, открывая *.bat файл блокнотом. Чтобы каждый раз не запускать блокнот и не открывать нужный файл, можно сделать пункт в выпадающем списке (когда на файл жмем правой кнопкой) «Открыть блокнотом». По той же схеме создаем еще один *.reg файл с таким содержанием:
Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\*\shell]
[HKEY_CLASSES_ROOT\*\shell\Command1]
@="Открыть блокнотом"
[HKEY_CLASSES_ROOT\*\shell\Command1\Command]
@="Notepad.exe %1"
q3map.exe -gamedir С:\FakkTools\fakk С:\Alicemap\%MAP_NAME%
Компиляция карты без источников освещения (про них позже). %MAP_NAME% подставляется самостоятельно из SET MAP_NAME=sky, т.е в данном случае sky.
q3map.exe -light -gamedir С:\FakkTools\fakk С:\Alicemap\%MAP_NAME%
Добавление на карту освещения.
start С:\Alicemap\%MAP_NAME%.bsp
Для этой команды создавали Fakk2Alice.reg. Переводит уже готовую карту в версию, понятную Алисе (компилятор создает для Fakk2).
copy С:\Alicemap\%MAP_NAME%.bsp "C:\Games\American McGee's Alice\Base\maps"
Копирует готовую карту для запуска в папку с игрой.
Как этим можно пользоваться:
Создаем ярлык этого Bat-файла, кидаем его в C:\alicemap
Карту сохраняем в этой же папке. Открываем Bat’ник блокнотом и меняем SET MAP_NAME=(имя_карты). Сохраняем, запускаем и все. В игре консоль (~) map имя_карты.