Войти на сайт Регистрация Лента форума Пользователи Правила сайта Поиск по форуму
Модератор форума: denis2000, FantomICW  
Модостроение. Общие вопросы и ответы
denis2000Дата: Сб, 15.06.2013, 11:51 | Сообщение # 1
Полевой исследователь
Ученые сталкеры
Сообщений: 2399
Награды: 35
Репутация: [ 1918 ]

Помощь тем кто хочет знать больше о игре и модах

Если у вас появились вопросы по модостроению в игре S.T.A.L.K.E.R. Задавайте их в этой теме - умные головы,
модосторители и просто разбирающиеся в программировании люди вам ответят.


Много интересного материала здесь (wiki), Lua_help.script, Help из SDK 0.7

Сборник модостроения ЗП v10.10.11 (автор: XOBAH): *.CHM, *.HTML
[cut noguest=Если у вас не открывается файл CHM]Если у вас не открывается файл:
1. Запустите [Пуск]=>[Выполнить] (либо хот-кей [WIN]+[R])
2. Введите команду (без кавычек) "regsvr32 %windir%\system32\hhctrl.ocx"
3. Если вылезло окно об успешном завершении вы все сделали правильно и можете перезагружать компьютер (а может и не надо)
Также: файлы МОГУТ не открываться если в пути к файлу есть: символы кириллицы, "_", "#"
Также: есть не стандартные программы-просмоторщики CHM файлов. Например: FBReader[/cut]
[cut=Где найти лог игры после вылета]Что такое LOG ошибки, и как мне его найти?
Это система отладки происходивших вылетов, которая подается игрой в форме текста, хотя не всегда.
Для того чтоб найти LOG необходимо зайти вот сюда:

В Win хр лог находится:

C:\Documents and Settings\All Users\Документы\S.T.A.L.K.E.R. - Зов Припяти\logs

Затем открываете первый файл в формате TXT, и в нем отбираете с низу 25 строчек. После кидаете эти 25 строчек в сообщение на форум.

В Win7 лог находится C:\Users\Public\Documents\S.T.A.L.K.E.R. - Зов Припяти\logs

Путь к папке с логом можно найти открыв файл fsgame.ltx который находится в корневой директории ЗП, за это отвечает строка:
...
$app_data_root$ = true | false| $fs_root$| users\
(тут мы указываем что папка пользователя, будет хранится рядом с Fsgame.ltx)
...
$logs$ = true| false| $app_data_root$| logs\
(а тут мы указываем что в папке пользователя, в подпапке Logs будут храниться наши логи)
...
[/cut][cut=Получение более подробной информации о вылете (ХОВАН)]
Открываем файл _g.script и ищем такую функцию: function abort(fmt, ...)
Там есть заккомментированная строчка "--error_log(reason)", ее и надо расскомментировать, должно получиться вот так:
Код
function abort(fmt, ...)
                     local reason = string.format(fmt, ...)
                     error_log(reason)
end

Вот для примера два одинаковых вылета, первый с функцией по умолчанию, второй - с поправленной функцией

Первый:
Код
Expression    : !m_error_code
Function      : raii_guard::~raii_guard
File          : D:\prog_repository\sources\trunk\xrServerEntities\script_storage.cpp
Line          : 748
Description   : ....a.l.k.e.r. - Зов Припяти\gamedata\scripts\_g.script:478: bad argument #2 to 'format' (string expected, got nil)

Второй:
Код
Expression    : 0
Function      : ErrorLog
File          : D:\prog_repository\sources\trunk\xrServerEntities\script_engine_script.cpp
Line          : 49
Description   : 'Attempt to read a non-existant string field 'path_walk' in section 'walker@mechanic'

[/cut]


Перед тем, как задать вопрос в этой теме, прочтите все предыдущие страницы,
статьи в wiki по ссылке из шапки и соседнюю тему "Курс молодого бойца",
возможно Ваш вопрос уже рассматривался.


Если произошел вылет - выкладываем лог! Вопрос ставим четко, не забываем указывать версию игры, установленные моды их версии, установленные фиксы модов и подробно ваши правки.
Помните чем подробнее вопрос, тем точнее ответ.


Посты, для которых есть свои категории, из этой темы будут удаляться или перемещаться в соответсвующую тему. Персональных извещений в ЛС о переносе\удалении поста не будет, ищите сами. Учитывайте, что в системах Ucoz тема не обновляется в статистике при переносе поста.
Посты, написанные здесь-же после переноса, будут расцениваться как кросспостинг, со всеми вытекающими


[cut noguest=Первый юбилей нашей темы]

Здравствуйте господа модостроители, и все так или иначе причастные к этому.
Нашей теме исполнился 1 год.
От души поздравляю Всех Вас дорогие друзья, творческих успехов.
Хочу так же выразить отдельную благодарность denis2000 и ХОВАН.

tracker 23.06.11



[/cut]
 
БарменДата: Ср, 13.01.2016, 17:21 | Сообщение # 1621
Ветеран
Свобода
Сообщений: 370
Награды: 11
Репутация: [ 105 ]

Цитата sergej5500 ()
Ставите смарт. Один или несколько. И прописываете там спавн сквадов.

Смотрите КМБ. Уроки 6 и 7.

Значит тех НПС которых я прописал в спавн скваде будут всегда появятся, если даже их убьют?
И встанут на то место куда я поставил smart_cover на этого НПС?
И да спасибо.
 
sergej5500Дата: Ср, 13.01.2016, 17:39 | Сообщение # 1622
Полевой Исследователь
Ученые сталкеры
Сообщений: 3793
Награды: 29
Репутация: [ 1355 ]

Цитата Бармен ()
Значит тех НПС которых я прописал в спавн скваде будут всегда появятся, если даже их убьют?


В смартах обычно прописывают те сквады, которые спавнятся многократно. Это, как правило, симуляционные сквады. Они ходят по локации без определенной цели. Ищут приключений на свою голову.

Если нужен однократный спавн сквада, то можно прописать его в файл simulation. Тогда сквад появится в начале новой игры.

Если сквад потребуется в ходе прохождения игры, то можно заспавнить его через рестриктор.
Команда %=create_squad(сквад:смарт)%
 
БарменДата: Пт, 15.01.2016, 01:15 | Сообщение # 1623
Ветеран
Свобода
Сообщений: 370
Награды: 11
Репутация: [ 105 ]

Цитата sergej5500 ()
В смартах обычно прописывают те сквады, которые спавнятся многократно. Это, как правило, симуляционные сквады. Они ходят по локации без определенной цели. Ищут приключений на свою голову.

Ну это я знаю, ну все равно спасибо.

Цитата sergej5500 ()
Если нужен однократный спавн сквада, то можно прописать его в файл simulation. Тогда сквад появится в начале новой игры.

Это уже у меня есть, тут я разобрался.

Цитата sergej5500 ()
Если сквад потребуется в ходе прохождения игры, то можно заспавнить его через рестриктор.
Команда %=create_squad(сквад:смарт)%

А за это спасибо. Я просто заселять локацию начал, и забыл про respawn НПС. Вот и спросил на счет этого biggrin

Добавлено (15.01.2016, 01:15)
---------------------------------------------
sergej5500, Приветствую у тебя бывала такая проблема, создал ты НПС все норм решил убить его, а он как подлетит в воздух и начинает тебя мочить. Что я не так сделал? и да НПС сидит на стуле если что.

И да еще такой вопрос, сделал я эксклюзивного НПС ну там с логикой. После захода в игру, он сперва прошел по крыши а потом встал на свое место. Что с ним, или это уже проблема движка? Да все вопросы для ЗП.

 
sergej5500Дата: Пт, 15.01.2016, 09:48 | Сообщение # 1624
Полевой Исследователь
Ученые сталкеры
Сообщений: 3793
Награды: 29
Репутация: [ 1355 ]

Цитата Бармен ()
Что я не так сделал? и да НПС сидит на стуле если что.


Цитата Бармен ()
После захода в игру, он сперва прошел по крыши а потом встал на свое место. Что с ним, или это уже проблема движка?


Сказать что то определенное трудно. У меня неписи один раз взлетали на второй этаж сквозь потолок. Выложите все файлы, относящиеся к проблемным неписям. Логику, анимпойнты, точки walk и look. И на какой локации все это происходит. Тогда, возможно, получится это исправить.
 
denis2000Дата: Пт, 15.01.2016, 19:15 | Сообщение # 1625
Полевой исследователь
Ученые сталкеры
Сообщений: 2399
Награды: 35
Репутация: [ 1918 ]

Бармен, А еще глюк может проявляться из-за аи-сетки или динамических объектов в этом месте (например стула)

"Он ловко выхватил из-под себя табуретку и очень метко и сильно бросил ее в докладчика..."
(Чугунный всадник)
 
БарменДата: Сб, 16.01.2016, 17:32 | Сообщение # 1626
Ветеран
Свобода
Сообщений: 370
Награды: 11
Репутация: [ 105 ]

denis2000, Хорошо спасибо, как я писал раньше НПС сидит на стуле и именно он летает. Другие которые стоят, все норм не куда не улетают.

Добавлено (16.01.2016, 17:32)
---------------------------------------------
Народ такой вопрос, при добавление объектов на локацию AI-сетку под ними нужно удалять. Например добавил, (стул, ящик, и т.д)?

 
denis2000Дата: Сб, 16.01.2016, 18:27 | Сообщение # 1627
Полевой исследователь
Ученые сталкеры
Сообщений: 2399
Награды: 35
Репутация: [ 1918 ]

Бармен, Под статическими объектами и под динамическими объектами с фиксированной костью следует удалять сетку.

"Он ловко выхватил из-под себя табуретку и очень метко и сильно бросил ее в докладчика..."
(Чугунный всадник)
 
sergej5500Дата: Вс, 17.01.2016, 17:35 | Сообщение # 1628
Полевой Исследователь
Ученые сталкеры
Сообщений: 3793
Награды: 29
Репутация: [ 1355 ]

Добрый вечер. Заинтересовал такой вопрос.

Сквады состоят из командиров и рядовых. Рядовые неписи при попытке заговорить с ними говорят такие фразы. Иди к главному, иди к командиру, иди к пахану и т. д. В зависимости от группировки.

Рядовые неписи из группировки "наёмники" молчат как партизаны на допросе. Как "заставить" их произносить фразы?
 
asd123Дата: Вс, 17.01.2016, 17:40 | Сообщение # 1629
Mr. «Магма»
Военные сталкеры
Сообщений: 1386
Награды: 10
Репутация: [ 423 ]

sergej5500, это связанно с тем, что у них нет звуковых файлов для таких ситуаций(такая же вещь и с Монолитовцами) В папке states(sounds/character_voice/human_0(1/2/3)/killer) вообще нет папки meet с озвучкой приказов убрать оружие, говорить с главным и фраз приветствия. Я тоже сталкивался с подобным вопросом, но подобрать им озвучку.. Думал, на уборку оружия поставить приказ Тесака "Ты пушку-то спряч!"

У мутантов тоже есть группировки. © Движок X-Ray




Сообщение отредактировал asd123 - Вс, 17.01.2016, 17:43
 
БарменДата: Вт, 19.01.2016, 05:06 | Сообщение # 1630
Ветеран
Свобода
Сообщений: 370
Награды: 11
Репутация: [ 105 ]

Народ поставить метку на аномалию, я поставил space_restrictor. Он у меня в виде флажка появился, посмотрел как на оригинале делали там вообще space_restrictor в кругу зеленом. Как мне это сделать? Платформа ЗП.
 
denis2000Дата: Вт, 19.01.2016, 08:45 | Сообщение # 1631
Полевой исследователь
Ученые сталкеры
Сообщений: 2399
Награды: 35
Репутация: [ 1918 ]

Бармен, Непонятно. Как ставили и что собственно требуется?

"Он ловко выхватил из-под себя табуретку и очень метко и сильно бросил ее в докладчика..."
(Чугунный всадник)
 
БарменДата: Вт, 19.01.2016, 16:04 | Сообщение # 1632
Ветеран
Свобода
Сообщений: 370
Награды: 11
Репутация: [ 105 ]

denis2000, Ну чтобы метка появились, нужна же space_restrictor ставить. Прописать в custom_data вот это:
Код
[story_object]
story_id = per_a1_spot

Ну так вот я так сделал, а он мне при компиляции локации пишет:
Код
Spawn Point: 'per_a1_spot' must contain attached shape.

Что я не так сделал?
 
sergej5500Дата: Вт, 19.01.2016, 16:21 | Сообщение # 1633
Полевой Исследователь
Ученые сталкеры
Сообщений: 3793
Награды: 29
Репутация: [ 1355 ]

Бармен,

Что то не так с шейпом. Выложите всю секцию рестриктора.
 
denis2000Дата: Вт, 19.01.2016, 17:26 | Сообщение # 1634
Полевой исследователь
Ученые сталкеры
Сообщений: 2399
Награды: 35
Репутация: [ 1918 ]

Цитата Бармен ()
Ну чтобы метка появились, нужна же space_restrictor ставить.

Чтобы появилась метка нужно поставить метку и не важно, что за объект для этого будет (можно и рестриктор). Какое отношение к виду и методу установки метки имеет стори_ид объекта? Ответ: никакого отношения не имеет - это вспомогательный параметр, для более простого поиска объекта.
Цитата Бармен ()
Spawn Point: 'per_a1_spot' must contain attached shape.

Это сообщение означает, что рестриктор то вы в SDK поставили, но шейп к нему не прикрутили, а это непорядок.


"Он ловко выхватил из-под себя табуретку и очень метко и сильно бросил ее в докладчика..."
(Чугунный всадник)
 
БарменДата: Вт, 19.01.2016, 22:55 | Сообщение # 1635
Ветеран
Свобода
Сообщений: 370
Награды: 11
Репутация: [ 105 ]

denis2000, Спасибо все сделал, я shape забыл поставить biggrin
 
Поиск: