Войти на сайт Регистрация Лента форума Пользователи Правила сайта Поиск по форуму
Модератор форума: 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]
 
НаблюдательДата: Ср, 01.06.2016, 12:03 | Сообщение # 1891
Ветеран
Пользователи
Сообщений: 402
Награды: 1
Репутация: [ 59 ]

Здравствуйте Всем! Благодарю за разъяснение, уважаемый denis2000. Я так и подумал, но хотел услышать подтверждение Профи.
Цитата Kapitan_komandor ()
Наблюдатель, а мод норм?...атмосфера там и лок сколько.

Kapitan_komandor, я его тоже скачивал 2 раза. Одна скачка не пошла, может криво была залита. Локации, те же, что и в ЗП, сюжет тот же. Графика напоминает Мизери, только повеселее, небо голубое. smile По моему она и взята за основу. И мутанты не такие быстрые и свирепые, как там. Я его скачал только из-за пакета оружия и большего количества мутантов, чем в ЗП. А ещё там иконки денег, как настоящие российские рубли. biggrin Но, как я подозреваю, именно из-за пакета нового оружия он и вылетает достаточно часто. Автор явно его не доработал, отсюда и вылеты. Так что не расстраивайтесь, если не пошёл, особо нового там ничего нет.

Добавлено (01.06.2016, 12:03)
---------------------------------------------
Снова здравствуйте Всем! Джентльмены, я всё касательно Forgotten Land. Обратил внимание, что два стабильных вылета связаны с появлением наёмников на Юпитере - с дядькой Яром и связанные с административными документами. Есть подозрение, что аффтар что-то криво у них прописал. Подскажите, пжл, умные Люди, в каком файле ЗП прописаны амуниция и снаряга наёмников на Юпитере?

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

Цитата Наблюдатель ()
в каком файле ЗП прописаны амуниция и снаряга наёмников на Юпитере?


В случае Дядьки Яра, насколько я помню, использованы дефолтные наёмники. Соответственно, файл character_desc_general, секции sim_default_killer.

В квесте Административные Документы, насколько помню, использованы эксклюзивные наёмники. Файл character_desc_jupiter. Нужных файлов сейчас у меня нет. Проверяйте всех из группировки killer.
 
НаблюдательДата: Сб, 04.06.2016, 22:35 | Сообщение # 1893
Ветеран
Пользователи
Сообщений: 402
Награды: 1
Репутация: [ 59 ]

Здравствуйте Всем! Благодарю, уважаемый sergej5500. Пишу, может кому пригодится. Таки интуиция меня не подвела. smile Заменил указанные Вами файлы, файлами из оригинальной ЗП и квесты с наёмниками, на Юпитере, пошли. Видимо и правда автор ошибся где-то в них.

Добавлено (04.06.2016, 22:35)
---------------------------------------------
Здравствуйте Всем! Джентльмены, я касательно того же Фоготен Лэнда. Мод прошёл, но во фриплее несколько раз словил вылет:
[cut noguest]Expression : fatal error
Function : CInifile::r_section
File : D:\prog_repository\sources\trunk\xrCore\Xr_ini.cpp
Line : 502
Description : <no expression>
Arguments : Can't open section 'wpn_m4a1'. Please attach [*.ini_log] file to your bug report[/cut]
Я так понимаю, это связано с каким-то стволом? Подскажите, плиз, умные Люди, это можно исправить? Если конечно не очень трудоёмко.

 
Voland-777Дата: Вс, 05.06.2016, 02:01 | Сообщение # 1894
Эмиссар
Пользователи
Сообщений: 1702
Награды: 9
Репутация: [ 474 ]

Здравствуйте! При попытке запустить SGM 2.2 + WR получаю такие вылеты:

FATAL ERROR

[error]Expression : !m_error_code
[error]Function : raii_guard::~raii_guard
[error]File : D:\prog_repository\sources\trunk\xrServerEntities\script_storage.cpp
[error]Line : 748
[error]Description : ...call of pripyat\gamedata\scripts\xr_statistic.script:533: attempt to compare number with nil


[error]Expression : !m_error_code
[error]Function : raii_guard::~raii_guard
[error]File : D:\prog_repository\sources\trunk\xrServerEntities\script_storage.cpp
[error]Line : 748
[error]Description : ....l.k.e.r. call of pripyat\gamedata\scripts\_g.script:1831: attempt to index field 'actor' (a nil value)

Что я трогал: изменял награду за охрану команды Тополя от Германа из "Велеса" на другой детектор, добавлял скрипт в отдельном файле, который отвечает за открытие консервы ножом. В bind_stalker прописал такое:

--' Antdiablon
antdiablon_items.use_items(obj)
--' Antdiablon

Ну и добавил нож в items.ltx + описание в st_items_equipment.xml.
 
denis2000Дата: Вс, 05.06.2016, 19:33 | Сообщение # 1895
Полевой исследователь
Ученые сталкеры
Сообщений: 2399
Награды: 35
Репутация: [ 1918 ]

Наблюдатель, Говорит что не может найти секцию wpn_m4a1, ее нужно или добавить (например на базе уже существующего оружия) или заменить в том месте, где на нее ссылаются на другую - существующую секцию.


Цитата Voland-777 ()
[error]Description : ...call of pripyat\gamedata\scripts\xr_statistic.script:533: attempt to compare number with nil

В скрипте xr_statistic.script в строке 533, происходит сравнение числового параметра с параметром nil (пусто).
Цитата Voland-777 ()
[error]Description : ....l.k.e.r. call of pripyat\gamedata\scripts\_g.script:1831: attempt to index field 'actor' (a nil value)

В скрипте _g.script в строке 1831 индекс с именем actor опять таки равен nil (пусто).


"Он ловко выхватил из-под себя табуретку и очень метко и сильно бросил ее в докладчика..."
(Чугунный всадник)
 
Voland-777Дата: Вс, 05.06.2016, 20:46 | Сообщение # 1896
Эмиссар
Пользователи
Сообщений: 1702
Награды: 9
Репутация: [ 474 ]

denis2000, а какова может быть причина этих вылетов?
 
denis2000Дата: Пн, 06.06.2016, 09:48 | Сообщение # 1897
Полевой исследователь
Ученые сталкеры
Сообщений: 2399
Награды: 35
Репутация: [ 1918 ]

Цитата Voland-777 ()
какова может быть причина этих вылетов?

Я продал свой хрустальный шар. Поэтому или анализируете вылеты сами или выкладываете свои файлы для анализа.


"Он ловко выхватил из-под себя табуретку и очень метко и сильно бросил ее в докладчика..."
(Чугунный всадник)
 
lychagin0Дата: Вт, 07.06.2016, 22:30 | Сообщение # 1898
Легенда Зоны
Вольные сталкеры
Сообщений: 1303
Награды: 9
Репутация: [ 278 ]

Добрый вечер, подскажите, что сие означает:
[cut noguest=Кусок лога]~ cannot remove restriction with id [959][gar_zone_mine_acidic_average] to the entity with id [22321][zombie_ghost22321], because it is not added
stack trace:
[/cut]
Это последняя строка лога, потом вылет. Убрал спавн сквада зомби, вылета нет. Зомби бродят по тонелю с аномальной зоной.


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

Добрый вечер. В файле артефактов в Зове Припяти есть такая секция.

[cut=Код][artefact_spawn_zones]
af_medusa = zone_mosquito_bald_weak, 2.0, 30.0
af_cristall_flower = zone_mosquito_bald_weak, 3.0, 50.0
af_night_star = zone_mosquito_bald_weak, 5.0, 100.0
af_vyvert = zone_gravi_zone_weak, 2.0, 30.0
af_gravi = zone_gravi_zone_weak, 3.0, 50.0
af_gold_fish = zone_gravi_zone_weak, 5.0, 100.0
af_cristall = torrid_zone, 3.0, 50.0
af_blood = zone_mincer_weak, 2, 30.0
af_mincer_meat = zone_mincer_weak, 3, 50.0
af_soul = zone_mincer_weak, 5, 100.0
af_electra_sparkler = zone_witches_galantine, 2, 30.0
af_electra_flash = zone_witches_galantine, 3, 50.0
af_electra_moonlight = zone_witches_galantine, 5, 100.0
mp_af_electra_flash = mp_zone_witches_galantine, 3, 50.0
mp_af_cta_green = mp_zone_witches_galantine, 3, 50.0
mp_af_cta_blue = mp_zone_witches_galantine, 3, 50.0

[af_activation_gravi]
;----------------------------------------------------------------------------------------------------------------------------------------
;format: time(sec), sound_name, light_R,G,B, light_range, particle_name, af_animation_name
;----------------------------------------------------------------------------------------------------------------------------------------
starting = 5.0, anomaly\gravi_idle00, 0.5, 1.0, 1.5, 5.0, "anomaly2\artefact_gravi_blast_start", "idle"
flying = 2.0, anomaly\gravi_idle01, 0.8, 1.0, 1.2, 3.0, "artefact\artefact_gravi", "idle"
idle_before_spawning = 5.0, anomaly\gravi_blowout5, 1.0, 1.0, 1, 0.0, "anomaly2\artefact_gravi_blast_finished", "idle"
spawning = 1, anomaly\gravity_entrance, 0.9, 1.1, 1.01, 0.0, "", "idle"

[af_activation_bold]
;----------------------------------------------------------------------------------------------------------------------------------------
;format: time(sec), sound_name, light_R,G,B, light_range, particle_name, af_animation_name
;----------------------------------------------------------------------------------------------------------------------------------------
starting = 5.0, anomaly\gravi_idle00, 0.8, 1.5, 0.9, 5.0, "anomaly2\artefact_bold_blast_start", "idle"
flying = 2.0, anomaly\gravi_idle01, 0.8, 0.9, 0.8, 2.0, "artefact\artefact_zharka", "idle"
idle_before_spawning = 2.0, anomaly\gravity_entrance,1.0, 1.1, 1.0, 0.0, "anomaly2\artefact_bold_blast_finished", "idle"
spawning = 0.5, anomaly\pux_blast, 1.0, 1.0, 0.5, 5.0, "anomaly2\gravi_anomaly_00", "idle"

[af_activation_mincer]
;----------------------------------------------------------------------------------------------------------------------------------------
;format: time(sec), sound_name, light_R,G,B, light_range, particle_name, af_animation_name
;----------------------------------------------------------------------------------------------------------------------------------------
starting = 5.0, anomaly\gravi_idle00, 0.5, 1.0, 1.5, 5.0, "anomaly2\artefact_gravi_blast_start", "idle"
flying = 2.0, anomaly\gravi_idle01, 0.8, 1.0, 1.2, 3.0, "artefact\artefact_mincer", "idle"
idle_before_spawning = 5.0, anomaly\gravi_blowout2, 1.0, 1.0, 1.0, 0.0, "anomaly2\artefact_gravi_blast_finished", "idle"
spawning = 0.0, "", 1.0, 1.0, 0.5, 0.0, "", "idle"

[af_activation_electra]
;----------------------------------------------------------------------------------------------------------------------------------------
;format: time(sec), sound_name, light_R,G,B, light_range, particle_name, af_animation_name
;----------------------------------------------------------------------------------------------------------------------------------------
starting = 5.0, anomaly\bfuzz_blowout, 0.8, 1.0, 1.5, 5.0, "anomaly2\artefact_electra_blast_start", "idle"
flying = 2.0, anomaly\electra_idle1, 1.0, 1.0, 1.0, 5.0, "artefact\artefact_electra", "idle"
idle_before_spawning = 0.0, "", 1.0, 1.0, 2.5, 0, "", "idle"
spawning = 2, "anomaly\pux_blast", 1.0, 1.0, 1.5, 5.0, "anomaly2\artefact_electra_blast_finished", "idle"[/cut]

Судя по содержанию, из артефактов можно делать аномалии. Как это правильно сделать в игре? Или эта секция не работает?
 
denis2000Дата: Пн, 13.06.2016, 23:02 | Сообщение # 1900
Полевой исследователь
Ученые сталкеры
Сообщений: 2399
Награды: 35
Репутация: [ 1918 ]

Цитата sergej5500 ()
Как это правильно сделать в игре? Или эта секция не работает?

Работает, достаточно выставить правильно параметр slot в конфиге артефакта и учесть, что секции аномалий называются теперь по другому нежели прописано в секции artefact_spawn_zones.


"Он ловко выхватил из-под себя табуретку и очень метко и сильно бросил ее в докладчика..."
(Чугунный всадник)
 
FantomICWДата: Ср, 15.06.2016, 16:21 | Сообщение # 1901
Лидер «Свободы»
Свобода
Сообщений: 4438
Награды: 44
Репутация: [ 1340 ]

sergej5500, наперед скажу, что уже скоро выйдет Phobos: Artefacts Reloaded Mod, где будет полностью восстановлена активация артефактов с анимацией для каждого арта smile
Мне вот недавно господин Cartoteka передал скриншоты старых документов GSC. Система активации осталась все той же.
[cut=Скриншоты] 
[/cut]



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

Цитата denis2000 ()
правильно параметр slot в конфиге артефакта и учесть, что секции аномалий называются теперь по другому нежели прописано в секции artefact_spawn_zones


Правильный это какой? В оригинале

slot = -1 ;10.

Пробовал оба. Прописал себе медузу в стартовый набор. Для медузы прописал

[artefact_spawn_zones]
af_medusa = zone_mine_gravitational_weak, 2.0, 30.0

artefact_activation_seq = af_activation_bold

[af_activation_bold]
;----------------------------------------------------------------------------------------------------------------------------------------
;format: time(sec), sound_name, light_R,G,B, light_range, particle_name, af_animation_name
;----------------------------------------------------------------------------------------------------------------------------------------
starting = 5.0, anomaly\gravi_idle00, 0.8, 1.5, 0.9, 5.0, "anomaly2\artefact_bold_blast_start", "idle"
flying = 2.0, anomaly\gravi_idle01, 0.8, 0.9, 0.8, 2.0, "artefact\artefact_zharka", "idle"
idle_before_spawning = 2.0, anomaly\gravity_entrance,1.0, 1.1, 1.0, 0.0, "anomaly2\artefact_bold_blast_finished","idle"
spawning = 0.5, anomaly\pux_blast, 1.0, 1.0, 0.5, 5.0, "anomaly2\gravi_anomaly_00", "idle"

Предложений активировать медузу нет. Только убрать в рюкзак или выкинуть.
 
denis2000Дата: Ср, 15.06.2016, 21:29 | Сообщение # 1903
Полевой исследователь
Ученые сталкеры
Сообщений: 2399
Награды: 35
Репутация: [ 1918 ]

Цитата sergej5500 ()
Правильный это какой?

Правильно - это в свободно доступные слоты 2 или 3. Слот 10 несколько я помню вообще не работает, а слоты 1,4,5,6 и тд. крайне специфические.


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

denis2000, FantomICW,

Спасибо за помощь. Годятся первый, второй и третий слот. Правда, разрабы сделали активацию очень неудобно. Я ждал, что появятся надписи типа "активировать артефакт". Голову чуть не сломал, выясняя, почему это не работает. Решение нашёл случайно. Артефакт нужно перенести с слот для оружия. Тогда игрок возьмёт его в руки. Выглядит это прикольно.

Если после этого нажать левую кнопку мыши, то игрок артефакт выкинет. И появится аномалия.
 
FantomICWДата: Чт, 16.06.2016, 12:18 | Сообщение # 1905
Лидер «Свободы»
Свобода
Сообщений: 4438
Награды: 44
Репутация: [ 1340 ]

sergej5500, да, как-то так.
[cut=Активация Души][/cut]



 
Поиск: