Модостроение. Общие вопросы и ответы
|
|
denis2000 | Дата: Сб, 15.06.2013, 11:51 | Сообщение # 1 |
Полевой исследователь
Ученые сталкеры
Сообщений: 2399
| Помощь тем кто хочет знать больше о игре и модах Если у вас появились вопросы по модостроению в игре 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]
|
|
|
Эти 0 пользователя(ей) поблагодарили denis2000 за это полезное сообщение: |
|
|
Kapitan_komandor | Дата: Чт, 28.09.2017, 19:17 | Сообщение # 2716 |
Диггер Вольных
Вольные сталкеры
Сообщений: 12054
| denis2000, а зачм Атмосфер ставить...если в ЗП править? И почему 1.6.02? Разве папки бин имеет отношения к папке с погодой...что ты обозначил?
Жизнь это миг.за него и держись.
|
|
|
Эти 0 пользователя(ей) поблагодарили Kapitan_komandor за это полезное сообщение: |
|
|
Voland-777 | Дата: Чт, 28.09.2017, 19:47 | Сообщение # 2717 |
Эмиссар
Пользователи
Сообщений: 1702
| Цитата Kapitan_komandor ( ) Разве папки бин имеет отношения к папке с погодой... Имеет. В Атмосфер входят правки файлов двигла, а точнее рендеров освещения.
|
|
|
Эти 0 пользователя(ей) поблагодарили Voland-777 за это полезное сообщение: |
|
|
Kapitan_komandor | Дата: Чт, 28.09.2017, 19:49 | Сообщение # 2718 |
Диггер Вольных
Вольные сталкеры
Сообщений: 12054
| Цитата Voland-777 ( ) В Атмосфер входят правки файлов двигла, а точнее рендеров освещения ...ясненько...засада ещё более.
Жизнь это миг.за него и держись.
|
|
|
Эти 0 пользователя(ей) поблагодарили Kapitan_komandor за это полезное сообщение: |
|
|
Voland-777 | Дата: Чт, 28.09.2017, 20:09 | Сообщение # 2719 |
Эмиссар
Пользователи
Сообщений: 1702
| denis2000, добрый вечер. Хотел кое-что узнать: просматриваю файл логики вертолёта из Helicopter Mod. Вот кусок файла:
[heli_move@start] path_move = zat_heli_start max_velocity = 60 engine_sound = false mute = true immortal = true show_health = false enemy = nil on_info = {+about_skadovsk_dialog_done} heli_move@patr
Насколько понимаю, в строчке on_info описывается условие, за которого вертолет переходит в heli_move@patr. Можно ли задать вместо диалогов о Скадовске, скажем, выдачу первого квеста у Сыча? Я просто не знаю, где найти в файлах подобное условие.
|
|
|
Эти 0 пользователя(ей) поблагодарили Voland-777 за это полезное сообщение: |
|
|
denis2000 | Дата: Чт, 28.09.2017, 20:28 | Сообщение # 2720 |
Полевой исследователь
Ученые сталкеры
Сообщений: 2399
| Voland-777, Если хотите, то посмотрите файл с этим диалогом Сыча, найдите инфопорцию, которая используется как сигнал, что он произошел и впишите ее в условие перехода вертолета между секциями.
"Он ловко выхватил из-под себя табуретку и очень метко и сильно бросил ее в докладчика..." (Чугунный всадник)
|
|
|
Эти 0 пользователя(ей) поблагодарили denis2000 за это полезное сообщение: |
|
|
Voland-777 | Дата: Чт, 28.09.2017, 22:35 | Сообщение # 2721 |
Эмиссар
Пользователи
Сообщений: 1702
| denis2000, игра вылетает с таким логом:
[error]Expression : 0 [error]Function : ErrorLog [error]File : D:\prog_repository\sources\trunk\xrServerEntities\script_engine_script.cpp [error]Line : 49 [error]Description : Patrol path zat_heli_start doesnt exist
|
|
|
Эти 0 пользователя(ей) поблагодарили Voland-777 за это полезное сообщение: |
|
|
denis2000 | Дата: Пт, 29.09.2017, 12:07 | Сообщение # 2722 |
Полевой исследователь
Ученые сталкеры
Сообщений: 2399
| Voland-777, Google Переводчик
"Он ловко выхватил из-под себя табуретку и очень метко и сильно бросил ее в докладчика..." (Чугунный всадник)
|
|
|
Эти 0 пользователя(ей) поблагодарили denis2000 за это полезное сообщение: |
|
|
Voland-777 | Дата: Вс, 01.10.2017, 16:20 | Сообщение # 2723 |
Эмиссар
Пользователи
Сообщений: 1702
| denis2000, доброго времени суток. Прилепил небольшой аддон на основе STCoP на SGM, который подменяет лишь оригинальные стволы (модели), привязал цены, патроны из мода, тактики, адаптировал текстуры прицелов, вроде все работает, но редко (рандомно) игра вылетает при разрядке оружия в инвентаре с таким логом: Expression : !m_error_code Function : raii_guard::~raii_guard File : D:\prog_repository\sources\trunk\xrServerEntities\script_storage.cpp Line : 748 Description : ....r. - Зов Припяти\gamedata\scripts\dunin_ammo.script:76: attempt to index local 'se_obj' (a nil value)
Игра ругалась на скрипт перепаковщика патронов, который я и вовсе не трогал, через Notepad проверил, что почему-то капризничает вот эта функция: function get_ammo_size(obj) local se_obj = alife():object(obj:id()) packet:w_begin(0) se_obj:STATE_Write(packet) (76-строка, по сути) packet:r_seek(packet:w_tell() - 2) return packet:r_s16()
Из-за чего может вылазить данная ошибка?
|
|
|
Эти 0 пользователя(ей) поблагодарили Voland-777 за это полезное сообщение: |
|
|
denis2000 | Дата: Вс, 01.10.2017, 22:33 | Сообщение # 2724 |
Полевой исследователь
Ученые сталкеры
Сообщений: 2399
| Voland-777, По моему мнению объект обработки удаляется движком в момент работы данной функции.
"Он ловко выхватил из-под себя табуретку и очень метко и сильно бросил ее в докладчика..." (Чугунный всадник)
|
|
|
Эти 0 пользователя(ей) поблагодарили denis2000 за это полезное сообщение: |
|
|
St0rm | Дата: Пн, 02.10.2017, 01:19 | Сообщение # 2725 |
Гражданский
Пользователи
Сообщений: 12
| Нашёл в файле w_vintorez вот это - grenade_launcher_name = wpn_addon_grenade_launcher_m203. То есть, есть возможность поставить на него сей гранатомёт, если да, то как?
|
|
|
Эти 0 пользователя(ей) поблагодарили St0rm за это полезное сообщение: |
|
|
denis2000 | Дата: Пн, 02.10.2017, 10:16 | Сообщение # 2726 |
Полевой исследователь
Ученые сталкеры
Сообщений: 2399
| Цитата St0rm ( ) Нашёл в файле w_vintorez вот это - grenade_launcher_name = wpn_addon_grenade_launcher_m203. Для того чтобы была возможность поставить гранатомет нужно: 1. Соответствующий класс оружия, WP_AK74 вполне подходит 2. Указание о возможности это сделать (grenade_launcher_status 1-интегрированный, 2-съемный) 3. Указание типа гранатомета (grenade_launcher_name) 4. Указание координат на иконку куда присоединять гранатомет (grenade_launcher_x, grenade_launcher_y) 5. Указание партиктов и звукоы выстрела гранатомета (grenade_flame_particles, snd_***_grenade) 6. Наличие анимаций оружия с гранатометом (anm_***_gl, anm_***_g) 7. Указание типа гранат (grenade_class)
"Он ловко выхватил из-под себя табуретку и очень метко и сильно бросил ее в докладчика..." (Чугунный всадник)
|
|
|
Эти 0 пользователя(ей) поблагодарили denis2000 за это полезное сообщение: |
|
|
Voland-777 | Дата: Пн, 02.10.2017, 14:05 | Сообщение # 2727 |
Эмиссар
Пользователи
Сообщений: 1702
| denis2000, я так понял, тут нужно редактировать время хранения трупов, пока двигло не уберет мусор, или смещать время действия скрипта, чтобы они не пересекались и не конфликтовали?
|
|
|
Эти 0 пользователя(ей) поблагодарили Voland-777 за это полезное сообщение: |
|
|
denis2000 | Дата: Пн, 02.10.2017, 17:21 | Сообщение # 2728 |
Полевой исследователь
Ученые сталкеры
Сообщений: 2399
| Voland-777, Ничего не могу сказать, вам как разработчику виднее.
"Он ловко выхватил из-под себя табуретку и очень метко и сильно бросил ее в докладчика..." (Чугунный всадник)
|
|
|
Эти 0 пользователя(ей) поблагодарили denis2000 за это полезное сообщение: |
|
|
St0rm | Дата: Пн, 02.10.2017, 23:01 | Сообщение # 2729 |
Гражданский
Пользователи
Сообщений: 12
| denis2000, 5. Указание партиктов и звукоы выстрела гранатомета (grenade_flame_particles, snd_***_grenade)
Ни в одном файле с оружием этого не нашёл
|
|
|
Эти 0 пользователя(ей) поблагодарили St0rm за это полезное сообщение: |
|
|
denis2000 | Дата: Вт, 03.10.2017, 09:43 | Сообщение # 2730 |
Полевой исследователь
Ученые сталкеры
Сообщений: 2399
| St0rm, Эти параметры могут быть вынесены в отдельные секции другого файла.
"Он ловко выхватил из-под себя табуретку и очень метко и сильно бросил ее в докладчика..." (Чугунный всадник)
|
|
|
Эти 0 пользователя(ей) поблагодарили denis2000 за это полезное сообщение: |
|
|