SkyRiver Forum
http://forum.skyriver.ru/

Пошаговая инструкция Подключение локации к игре
http://forum.skyriver.ru/viewtopic.php?f=21&t=4826
Страница 1 из 1

Автор:  Leon [ Вс 14 авг 2016 20:18 ]
Заголовок сообщения:  Пошаговая инструкция Подключение локации к игре

Подключение локации к игре - Расширенная Пошаговая инструкция
Написана специально для новичков.

Для быстрой замены:
Код:
MapName
ScriptModName


Предисловие
Предисловие
Скачать SDK
С редактором локаций все просто - дай свободу фантазии.
А вот сложность программирования и скриптинга заключается в непонимании.
А не зная что ты делаешь, что здесь вообще говорить?

Кто-то спрашивал, почему нигде нету точных инструкций, как подключить локацию?
Но на самом деле она есть, и она отображается сразу после установки SDK.
Однако, информация там подана кратко и с "остальным разберитесь сами",
а рядовому пользователю которому нужно просто все растолковать что и за чем идет - этого точно не достанет.
Эта инструкция создана именно для обычных пользователей, которыми мы все были или являемся сейчас таковыми.

Некоторые люди пишут, что без базовых навыков программирования локации не подключить.
Та ладно, я не знал программирования, и у меня получилось. Правда очень долго и мучительно. Просто скопировать нужный код с примеров.

Сейчас я уже немного разобрался с редактором скриптом та и сам пишу скрипты в другой сфере - и хочу добавить от себя:
- Если вы решите сделать полноценный мод для Механоидов - я рад помочь со СКРИПТАМИ (и только с ними), если конечно будет на то время.

Можно сделать квесты, свой сюжет, запутанную историю, расследования - возможности очень большие.


- - - - -


1) Шаг 1. Сохранение карты


После создания локации сформируйте её в папку Data под именем MapName
Там должны появиться два файла, с расширениями mmp и mmo.

Проверьте, что ваша карта находится здесь:
Цитата:
Data\locs\MapName.mmp
Data\locs\MapName.mmo
Data\locs\MapName.mmm


- - - - -

2) Шаг 2. Создание главного скрипта мода

фото
Изображение

2-1) Запускаем редактор скриптов. Скрипт - создать. Пишем следующее:

Код:
#include "include\AIM.cpp"

void proc StartGame()
{
   MoveToLocation("MapName");
}

StartGame();


Это будет локация, на которую мы попадем запустив мод.

2-2) Скрипт - Сохранить - Вводим имя: ScriptModName

Он будет сохранен как
Цитата:
Data\Scripts\ScriptModName.src


2-3) Отладка - Проверить
фото
Изображение


Если ошибок нету
фото
Изображение


2-4) Отладка - Скомпилировать
фото
Изображение


Скомпилированный скрипт будет здесь:
Цитата:
Data\Bin\ScriptModName.src.bin


- - - - -

3) Шаг 3. Создание скрипта локации

Запускаем редактор скриптов. Скрипт - создать. Пишем следующее:

Код:
#include "Include\AIM.src"

void proc OnEnterLocation(char item)
{
   StartScriptEvent("Events\EnterLocation.src", "OnEnterLocation", item);
   
    if (!GetVar("MapName.FIRST")) // События ниже происходят только при первом входе на локацию
    {
        SetVar("MapName.FIRST");
      
      // Даем 10000 кристаллов игроку
      AddAmount(AMOUNT_ENERGY, 10000);
    }
}


Скрипт - Сохранить - Сохраняем в папку Locations
Вводим имя: MapName

Он будет сохранен как
Цитата:
Data\Scripts\Locations\MapName.src


Отладка - Проверить
Если ошибок нету
Отладка - Скомпилировать

Скомпилированный скрипт будет здесь:
Цитата:
Data\Bin\Locations\MapName.src.bin


- - - - -

4) Шаг 4. Создание файла для запуска мода

Открывает: Data\Mods\

Создаем файл с разрешением *.ini
Название файла не имеет значение, но должно быть латиницей (англ. буквами)

Пишем в этот файл:

Код:
[COMMON]
; Файл скрипта для запуска мода
Autorun=ScriptModName.src
;Название мода (для меню)
Name=Мой мод
;Описание мода (для меню)
Text=<color=green>описание мода будет здесь<color>

- - - - -

5) Шаг 5. Добавляем скрипт нашей локации у список объектов

Открываем Data\CONFIG\objects.ini

Сразу под [OBJECTS] пишем:
Код:
MapName=Locations\MapName.src


Должно выйти так:

Код:
[OBJECTS]
MapName=Locations\MapName.src
B_L5_BASE2=Locations\L5\StartBase.src
...


- - - - -

Если игра вылетает при запуске мода, то у вас ошибка с картой.
Чаще всего ошибка из-за следующего - на карте должно быть ОБЯЗАТЕЛЬНО:
- StartPoint для игрока! (Объекты/Хеплеры/Позиции/Стартовая точка)
- База, хотя-бы одна
- Имена для всех строений (баз, заводов...)
- Дороги для NPC
- Погода, на день и на ночь (создайте две погоды, и на одной просто галочку отметьте "Ночная погода")
- Минимум один клан/организация на локации (Для каждой организации минимум по одной конфигурации добавить не забудьте для каждого класса: Охранник, Захватчик, Торговец)
- Контурные поля по желанию :]

Перед тем как сформировать локацию необходимо Сгенерировать Тени (без объектов)

Рекомендую почитать:
Инструкция по эксплуатации SDK
F.A.Q. по SDK
А Инструкции к SDK?

Готовый пример, где есть все необходимые скрипты для подключения локации к игре: https://yadi.sk/d/SQlS7K3135oZf7
(Не забудьте сделать копию файла "Data\CONFIG\objects.ini" для себя.)


► Все моды для механоидов: https://sites.google.com/view/aim2mods/

Страница 1 из 1 Часовой пояс: UTC + 4 часа
Powered by phpBB® Forum Software © phpBB Group
http://www.phpbb.com/