Войти на сайт Регистрация Лента форума Пользователи Правила сайта Поиск по форуму
Модератор форума: 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]
 
sergej5500Дата: Сб, 29.04.2017, 22:03 | Сообщение # 2416
Полевой Исследователь
Ученые сталкеры
Сообщений: 3793
Награды: 29
Репутация: [ 1355 ]

Цитата asd123 ()
Для этой задумки нужен был лишь сам сбитый вертолёт.


Я попробовал в чистом Зове Припяти сделать вертолёт по типу СГМ-вертолета на Агропроме.

Секция:

[test_heli]:physic_destroyable_object
$spawn = "dynamic_objects\test_heli"
inv_weight = 20000
visual = dynamics\vehicles\mi24\veh_mi24_u_02.ogf

Спавн:

alife():create("test_heli",vector():set(-197.39813232422,-24.336240768433,-391.84149169922),db.actor:level_vertex_id(),db.actor:game_vertex_id())

Вертолет смотрится как настоящий. Никаких вылетов не было.


 
asd123Дата: Пн, 01.05.2017, 15:19 | Сообщение # 2417
Mr. «Магма»
Военные сталкеры
Сообщений: 1386
Награды: 10
Репутация: [ 423 ]

sergej5500, в принципе... если взять огненную текстуру, и сам вертолёт немного наклонить в бок и спустив чуть-чуть под текстуры... Получится вполне не плохо. smile

Добавлено (01.05.2017, 14:57)
---------------------------------------------
Здравствуйте. smile Чуть выше я упоминал, что хочу сделать сцену с вертолётом. Один(суицидник) готов, теперь нужно сделать такой вертолёт, который будет летать и палить в точку(или разные точки). Есть проблемы в этом плане:
1. В way_локация задать атакуемую точку не получилось. Вот такая строка p1:name = wp01|e приводит к вылету c таким логом:
Код
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   : ...l.k.e.r. - Зов Припяти\gamedata\scripts\utils.script:354: attempt to perform arithmetic on local 't_pos' (a nil value)

А такая p1:name = wp01|e= не даёт никакую реакцию.
2. Был ещё вариант сделать атакуемые и прописать их через fire_point. Однако, в этом варианте проблема вот какая: Задав несколько точек получаешь вылет; задав несколько точек с условиями(то есть, ставить условия на выбор той или иной точки) так же получаю вылет.

Добавлено (01.05.2017, 15:19)
---------------------------------------------
Перенёс проблемную функцию из ТЧ, и больше игра не вылетает если выставить p1:name = wp01|e. Однако, теперь вертолёт так же не реагирует на этот параметр как на тот что с e=. sad


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




Сообщение отредактировал asd123 - Пн, 01.05.2017, 14:58
 
Voland-777Дата: Пн, 01.05.2017, 15:27 | Сообщение # 2418
Эмиссар
Пользователи
Сообщений: 1702
Награды: 9
Репутация: [ 474 ]

Доброго времени суток! После очередного ковыряния в игре заметил, что выносливость не расходуется вообще (при беге). Стоит СГМ 2.2, адаптировал разные худы - все то же. Правил так же х-ки еды и медикаментов, но сомневаюсь, что от этого зависит выносливость, ведь я не юзал ни одну вещь
на старте. От чего может случиться данный баг? Конфигурации в actor.ltx не трогал, может, проблема в функциях скрипта?


Сообщение отредактировал Voland-777 - Пн, 01.05.2017, 15:28
 
asd123Дата: Пн, 01.05.2017, 15:52 | Сообщение # 2419
Mr. «Магма»
Военные сталкеры
Сообщений: 1386
Награды: 10
Репутация: [ 423 ]

Что это значит? surprised Заспавнил в Рыжем лесу сквад сталкеров. Через пару минут ловлю вылет с таким логом:
Код
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   : ....e.r. - Зов Припяти\gamedata\scripts\xr_logic.script:464: bad argument #1 to 'pairs' (table expected, got string)

stack trace:

Причём не важно, занимают они смарт или просто идут куда-то. sad
Заспавнил на смарте red_smart_terrain_8(застава возле перехода на Арм.склады). Платформа SGM 2.2.


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




Сообщение отредактировал asd123 - Пн, 01.05.2017, 16:10
 
sergej5500Дата: Пн, 01.05.2017, 16:01 | Сообщение # 2420
Полевой Исследователь
Ученые сталкеры
Сообщений: 3793
Награды: 29
Репутация: [ 1355 ]

Цитата asd123 ()
Заспавнил в Рыжем лесу сквад сталкеров. Через пару минут ловлю вылет с таким логом:


Судя по логу, ошибка в логике какого-то рестриктора. Видимо, через пару минут он переключается на ошибочную секцию.
 
asd123Дата: Пн, 01.05.2017, 16:16 | Сообщение # 2421
Mr. «Магма»
Военные сталкеры
Сообщений: 1386
Награды: 10
Репутация: [ 423 ]

sergej5500, даже не представляю что там такого "ошибочного". biggrin Может дело в воротах?

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


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

Цитата asd123 ()
даже не представляю что там такого "ошибочного". Может дело в воротах?


Тогда бы вылетало у всех.

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

asd123, Судя по логу ошибка в логике - конкретнее в кондлистах.

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

Здравствуйте. Словил крайне неприятную особенность - расход выносливости не срабатывает вообще. Ни бег, ни прыжок не расходуют энергию. Правки в actor.ltx не вносились, подменялись координаты в maingame.xml, zone_map.xml, ui_actor_hint_wnd.xml, ui_actor_menu.xml, ui_actor_menu_16.xml, ui_actor_item_menu.xml, ui_actor_item_menu.xml под другие худы и интерфейс, а так же внесены правки в конфигурации предметов в items.ltx, sgm_items.ltx - правки некоторых свойств продуктов и медикаментов. В чем может быть дело? Проблема, возможно, в кривых координатах или где-то поглубже?
 
FreemanYevgehaДата: Ср, 03.05.2017, 22:29 | Сообщение # 2425
Механик НИСП "Мрак"
Монолит
Сообщений: 3126
Награды: 9
Репутация: [ 343 ]

Возникла проблема:
Создал я группировку новую, вражескую для всех, кроме меня (чтобы наблюдение за ними безопасно вести). Все получилось нормально и решил я их испытать боем. Создал отряд "Монолита", который должен был прибыть на место спавна отряда новой группировки, то есть, конфликт неизбежен. И вот, момент истины: доблестный отряд "Монолита" идет в лагерь, где их уже поджидают (или нет) враги. И вот наступает проблема: пока кого-то из "Монолита" не убьют, никто из их отряда не глянет, что по ним стреляют, что в пяти метрах перед носом бежит потенциальный враг и т.д. Причем, я пробовал и наоборот (чтобы "Монолит" оборонялся в том же лагере от врагов), но всегда новая группировка выигрывает, хотя "Монолит" больше по количеству бойцов и качеству оружия. Насколько я понял, исходя из своего опыта и здравого смысла, нужно что-то сделать с логикой монолитовцев, чтобы они замечали противника до того, как их перестреляют нафиг. Но вопрос в том, что нет у меня совсем навыка и опыта в работе с логикой НПС, поэтому хотелось бы, чтобы кто-нибудь проконсультировал по конкретно этому вопросу и, желательно, в общем.
P.S. Работаю на платформе Сталкер ЗП, мод SGM 2.2.


 
ДизельДата: Чт, 04.05.2017, 14:26 | Сообщение # 2426
Сталкер
Разработчики
Сообщений: 260
Награды: 1
Репутация: [ 136 ]

FreemanYevgeha, работа в логике не дает ботам адекватно реагировать. Сделай рядом со смартом еще шатуна нпс по респавну без логики и посмотри разницу.
Voland-777, координаты точно не причём.


andreyholkin
 
asd123Дата: Чт, 04.05.2017, 15:41 | Сообщение # 2427
Mr. «Магма»
Военные сталкеры
Сообщений: 1386
Награды: 10
Репутация: [ 423 ]

Цитата Voland-777 ()
правки некоторых свойств продуктов и медикаментов.

Скорее всего, где-то здесь проблемы. smile Попробуйте оригинальные секции из чистой SGM вставить(сохранив где-нибудь свои), и проверьте результат. wink


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


 
wdmp11Дата: Сб, 06.05.2017, 09:58 | Сообщение # 2428
Удаленные



привет, 1 как сделать динамический jump speed зависящий от апгрейда костюмов и-или
от свойств артов 2 как сделать артефактные сеты - чтобы появлялись новые параметры
при наличии полных сетов на поясе(тот же jump speed) 3 зависимость jump speed от
веса хабара ( для квеста - через gamedata ) для Зова Припяти
 
makdmДата: Сб, 06.05.2017, 12:58 | Сообщение # 2429
Рожденный в СССР
Разработчики
Сообщений: 1294
Награды: 29
Репутация: [ 1909 ]

Цитата wdmp11 ()
1 как сделать динамический jump speed зависящий от апгрейда костюмов и-или

В мире Сталкера ускорение свободного падения равно 19.62
Уменьшая эту величину вы можете влиять на высоту прыжка ГГ.
Для этого вам нужно на апдейте ГГ сделать проверку: какой костюм одет на ГГ или какие артефакты есть на поясе ГГ и в зависимости от этого устанавливать ( подбирать придётся самому экспериментально ) величину ускорения свободного падения.
Движковый метод:

grav = 19.62
level.physics_world():set_gravity( grav )


Терпение......
И все получится!
 
asd123Дата: Сб, 06.05.2017, 13:04 | Сообщение # 2430
Mr. «Магма»
Военные сталкеры
Сообщений: 1386
Награды: 10
Репутация: [ 423 ]

Цитата wdmp11 ()
2 как сделать артефактные сеты - чтобы появлялись новые параметры
при наличии полных сетов на поясе(тот же jump speed)

Вы хотите сделать какой-то набор артефактов? Что-то вроде "серия «»Жарка", верно? biggrin
Цитата wdmp11 ()
3 зависимость jump speed от
веса хабара ( для квеста - через gamedata ) для Зова Припяти

Пост makdm. smile Делайте проверку на вес инвентаря ГГ. wink


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




Сообщение отредактировал asd123 - Сб, 06.05.2017, 13:06
 
Поиск: