←  Статьи по ковырянию игры

Форум Stalker Simbion Mod

»

Создание синглового уровня

фото Эээ... 11 июля 2009

Статейка из мастерской, валялась там, написал по просьбе тома.
Итак, вы хотите добавить свой уровень в сингл?
Поначалу это не просто, но потом будет как 2 пальца об асфальт.
Перед началом работ следует провести правку 3-х файлов с информацией об уровне:
gamedata\config\game_graphs.ltx,
gamedata\config\game_maps_single.ltx и
gamedata\config\game_levels.ltx.
game_graphs.ltx:

019 - <имя вашего уровня>

gamedata\config\game_maps_single.ltx:
l12_stancia_2
<имя вашей карты>

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
[<имя вашей карты>]
texture = map\map_garbage - какая карта будет отображаться в КПК во время игры.
bound_rect = -322.334, -347.225, 321.685, 318.000 - хрень
global_rect = 371.0,1767.0,561.0,1963.256226 - хрень
weathers = default - погода на уровне
music_tracks = l02_garbage_musics - музончик

Ставим в стадо(где находится большинство похожих секций)
Запятые с точками, скорее всего можно убрать нафик.

game_levels.ltx:

level166
level200


[level200]
name = <имя вашей карты>
caption = "<имя вашей карты>"
offset = 2000.0, 800.0, 1000.0
id = 200 - номер вашей карты

Для того, чтобы наслаждаться сингловым уровнем, нужно сделать следующее:
1. Создать карту.
2. Добавить все необходимые элементы.
3. Построить её.
4. Скомпилировать.
5. Просчитать ИИ-сетку.
6. Создать граф уровня.
7. Создать граф игры.
8. Собрать all.spawn
Из ПО минимум:
1. СДК, компилятор геометрии.
2. Компилятор от НЕО][ или бардака(кому какой больше нравится)

Уровень должен содержать следующее:
1. Игрока(actor).
2. ИИ-сетку(ai map).
3. Граф поинт(graph point).
4. Ну и какую-нибудь непись или монстра.
Так же необходима геометрия, освещение и источник света.

Как их сделать:
1. actor: идём в спаун-элементы и ставим игрока там, где мы желаем на уровне.
2. ИИ-сетка: В режиме геометрии выбираем все объекты(список объектов или так) и идём в режим ии-сетка. Далее идём в меню объекты/создать список из выбранного - предварительная подготовка завершена. Добавляем на землю(предварительно переключаемся в режим "add") один красный квадратик и жмём заполнить всё или только выбранное(тонкости потом) - ии-сетка должна быть сгеренирована :)
3. graph point: идём в спаун-элементы/ai/graph point и добавляем.
Для чего он нужен - если добавить сталкера на карту, то они будет идти к граф поинту.То есть по умолчанию NPC передвигаются подобно как паровозики ездят по рельсам между станциями, ходят по ИИ-сетке между граф-поинтами, хотя игра может позволить себе некоторые исключения, если например сосыч находится не на ИИ-сетке и игрок находится в метре от него, то кровосос может атаковать игрока, тонкости потом. Если вы хотите создать хороший уровень с умным ИИ, то постарайтесь добавить граф поинты во многие места и сделать ИИ-сетку связной.
Дальше идём "прекомпиляция/создать", ждём и выходим из X-ray SDK.
Правка конфигов - довольно немаловажный шаг, который следует сделать в самом начале картостроения...

Далее компиляция - ждём, потом запускаем компилятор ИИ.
Я пользуюсь от НЕО][, не привык к компилю от бардака.
Что надо сделать?
1. Выбрать свой уровень, например test. Название уровня в формате СДК в папке maps и название папки с уровнем в папке gamedata должны совпадать, иначе не скомпилируется, это издержки компилятора нео, но я не жалуюсь.
2. Просчитать ИИ-сетку в черновом варианте, нужно для системы A-life, шаг 1.
3(необязательно) Можно сделать просчёт ИИ-сетки в финальном варианте, чтобы враги были ещё умнее, шаг 2.
4. Построить ИИ-граф уровня, опять же нужно для а-лайф, шаг 3.
5. Построить граф игры, чтобы игра знала, какие локации соединять, на какие локации переходят NPC, достигнув level_changer'a. Просчитывать необходимо, добавлять level_changer необязтельно, шаг 4.
6. И наконец, собрать all.spawn, шаг 5.
Завершение работ:
Зайдите в папку gamedata/spawns и переименуйте test.spawn в all.spawn

Перенос файлов в папку с игрой:
1. gamedata/levels/<ваш уровень>
2. gamedata/config/game_maps_single.ltx
3. gamedata/config/game_levels.ltx
4. gamedata/config/game_graphs.ltx
5. gamedata/game.graph
6. gamedata/spawns/all.spawn

Все эти файлы и папки должны быть в папке с игрой, иначе будут вылеты, или просто не будет никакого эффекта.

Аффтар: Эээ...
Ответить