Войти на сайт Регистрация Новые сообщения Пользователи Правила сайта Поиск по форуму Выход
Страница 130 из 133«12128129130131132133»
Модератор форума: denis2000, XOBAH, FantomICW 
Форум » Модостроение » Основной раздел » Модостроение. Общие вопросы и ответы
Модостроение. Общие вопросы и ответы
denis2000Дата: Суббота, 15.06.2013, 11:51 | Сообщение # 1
Полевой исследователь
Ученые сталкеры
Сообщений: 2281
Награды: 27
Репутация: [ 1866 ]

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

Если у вас появились вопросы по модостроению в игре 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]
 
makdmДата: Четверг, 03.08.2017, 20:39 | Сообщение # 2581
Рожденный в СССР
Разработчики
Сообщений: 1280
Награды: 21
Репутация: [ 1868 ]

Цитата UncleFester ()
Оно упадёт, если a или b будут nil.

Это ваша проблема.
Если вы в функцию передаёте NIL вместо таблиц, то это говорит о вашей полной безграмотности, как скриптера. Причём тут сам скрипт?


Терпение......
И все получится!
 
Voland-777Дата: Четверг, 03.08.2017, 20:39 | Сообщение # 2582
Эмиссар НС
Ночные сталкеры
Сообщений: 975
Награды: 3
Репутация: [ 397 ]

Цитата sergej5500 ()
Это универсальная текстура. Применяется там, где нужно ответить "да" или "нет".

Т. е. за все похожие диалоговые окна?
 
sergej5500Дата: Четверг, 03.08.2017, 20:55 | Сообщение # 2583
Полевой Исследователь
Ученые сталкеры
Сообщений: 3084
Награды: 23
Репутация: [ 1224 ]

Цитата Voland-777 ()
за все похожие диалоговые окна?


В общем, да. Большинство окон задано в файле ui_message_box

[cut=Пример кода] <message_box_quit_windows type="quit_windows" x="173" y="256" width="677" height="255" stretch="1">
<texture>ui_inGame2_message_box</texture>
<message_text x="62" y="28" width="577" height="150" complex_mode="1">
<text align="c" vert_align="c" font="letterica18">ui_mm_quit_windows_message</text>
</message_text>
<button_yes x="209" y="212" width="127" height="28" check_mode="0">
<window_name>button_yes</window_name>
<text font="letterica18">Btn_Yes</text>
<texture>ui_inGame2_Mp_bigbuttone</texture>
</button_yes>
<button_no x="341" y="212" width="127" height="28" check_mode="0">
<window_name>button_no</window_name>
<text font="letterica18">Btn_No</text>
<texture>ui_inGame2_Mp_bigbuttone</texture>
</button_no>
</message_box_quit_windows>
<message_box_quit_game type="quit_game" x="173" y="256" width="677" height="255" stretch="1">
<texture>ui_inGame2_message_box</texture>
<message_text x="62" y="28" width="577" height="150" complex_mode="1">
<text align="c" vert_align="c" font="letterica18">ui_st_want_to_leave_game_q</text>
</message_text>
<button_yes x="209" y="212" width="127" height="28" check_mode="0">
<window_name>button_yes</window_name>
<text font="letterica18">Btn_Yes</text>
<texture>ui_inGame2_Mp_bigbuttone</texture>
</button_yes>
<button_no x="341" y="212" width="127" height="28" check_mode="0">
<window_name>button_no</window_name>
<text font="letterica18">Btn_No</text>
<texture>ui_inGame2_Mp_bigbuttone</texture>
</button_no>
</message_box_quit_game>
<message_box_confirm_load_save type="yes_no" x="173" y="256" width="677" height="255" stretch="1">
<texture>ui_inGame2_message_box</texture>
<message_text x="62" y="28" width="577" height="150" complex_mode="1">
<text align="c" vert_align="c" font="letterica18">ui_st_load_game_confirm</text>
</message_text>
<button_yes x="209" y="212" width="127" height="28" check_mode="0">
<window_name>button_yes</window_name>
<text font="letterica18">Btn_Yes</text>
<texture>ui_inGame2_Mp_bigbuttone</texture>
</button_yes>
<button_no x="341" y="212" width="127" height="28" check_mode="0">
<window_name>button_no</window_name>
<text font="letterica18">Btn_No</text>
<texture>ui_inGame2_Mp_bigbuttone</texture>
</button_no>
</message_box_confirm_load_save>[/cut]
 
denis2000Дата: Четверг, 03.08.2017, 21:12 | Сообщение # 2584
Полевой исследователь
Ученые сталкеры
Сообщений: 2281
Награды: 27
Репутация: [ 1866 ]

UncleFester, Трупы чистит release_body_manager.script

"Он ловко выхватил из-под себя табуретку и очень метко и сильно бросил ее в докладчика..."
(Чугунный всадник)
 
UncleFesterДата: Четверг, 03.08.2017, 21:41 | Сообщение # 2585
Гражданский
Пользователи
Сообщений: 22
Награды: 0
Репутация: [ 0 ]

Цитата makdm ()
Это ваша проблема.
Если вы в функцию передаёте NIL вместо таблиц, то это говорит о вашей полной безграмотности, как скриптера. Причём тут сам скрипт?


Теперь давай тоже самое, но уже правильному адресату. Автору SGM, который писал smart_terrain.script, у которого вот эта строка привела к вылету на десктоп из-за того, что в функцию сортировки прилетел b равный nil во время игры.

Код
table.sort(jobs, function(a,b) return a._prior > b._prior end )


Глянул твой патч к SGM. Жаль, это не оттуда, а было бы смешно.


Сообщение отредактировал UncleFester - Четверг, 03.08.2017, 21:43
 
makdmДата: Четверг, 03.08.2017, 22:28 | Сообщение # 2586
Рожденный в СССР
Разработчики
Сообщений: 1280
Награды: 21
Репутация: [ 1868 ]

Цитата UncleFester ()
Автору SGM, который писал smart_terrain.script,

Николай сильный скриптер, поэтому не надо на него тыкать пальцем.
А то что вы приводите как пример, написано не им, а разрабами Сталкера.
Так что вам с претензиями прямая дорога в GSC.
Там им и объясните их полную некомпетентность. cool

Цитата UncleFester ()
Глянул твой патч к SGM. Жаль, это не оттуда, а было бы смешно.

Не дождётесь. biggrin


Терпение......
И все получится!
 
UncleFesterДата: Пятница, 04.08.2017, 01:07 | Сообщение # 2587
Гражданский
Пользователи
Сообщений: 22
Награды: 0
Репутация: [ 0 ]

Цитата makdm ()
Николай сильный скриптер, поэтому не надо на него тыкать пальцем.
А то что вы приводите как пример, написано не им, а разрабами Сталкера.
Так что вам с претензиями прямая дорога в GSC.
Там им и объясните их полную некомпетентность.


Видишь, как коснулось твоего знакомого, так и "безграмотность" уже как-то и не охота произносить, и код вообще не его и т.д. Лично я никого в некомпетентности не собирался обвинять, это ты начал вешать ярлыки с какого-то перепуга, считая, что абстрактная функция-предикат:

function(a, b) return a.field < b.field end

просто обязана принимать всегда только валидные аргументы. Ну, так это не так, в одних случаях оправдано полагаться на то, что вместо объекта nil не придёт, в других - нет и проверять аргументы. Для абстрактной функции, не зная контекста её применения, невозможно сказать, является или нет безграмотностью ситуация, когда туда прилетает nil. В каком-нибудь парсере данных легко может что-то некорректное на вход прилететь, к примеру. И точно также неразумно делать заявления, что b.filed может быть nil, а если само b в подобной функции nil, то это безграмотность.

Заканчиваем оффтоп-полемику.
denis2000


Сообщение отредактировал UncleFester - Пятница, 04.08.2017, 01:10
 
makdmДата: Пятница, 04.08.2017, 07:41 | Сообщение # 2588
Рожденный в СССР
Разработчики
Сообщений: 1280
Награды: 21
Репутация: [ 1868 ]

Цитата UncleFester ()
просто обязана принимать всегда только валидные аргументы. Ну, так это не так

Вся ваша речь - полная ахинея.
Задача программиста - исключить саму возможность передачи аргумента NIL в функцию, если это приводит к нежелательным результатам.
Если это сделано до вызова абстрактной функции, то никогда и ниоткуда NIL не прилетит.

Заканчиваем оффтоп-полемику.
denis2000


Терпение......
И все получится!
 
UncleFesterДата: Суббота, 05.08.2017, 23:19 | Сообщение # 2589
Гражданский
Пользователи
Сообщений: 22
Награды: 0
Репутация: [ 0 ]

Чем редактируют текстуры прицелов?
 
denis2000Дата: Воскресенье, 06.08.2017, 11:16 | Сообщение # 2590
Полевой исследователь
Ученые сталкеры
Сообщений: 2281
Награды: 27
Репутация: [ 1866 ]

UncleFester, Photoshop, Paint.NET с плагинами для dds.

"Он ловко выхватил из-под себя табуретку и очень метко и сильно бросил ее в докладчика..."
(Чугунный всадник)
 
Donny_KovalskyДата: Воскресенье, 06.08.2017, 20:41 | Сообщение # 2591
Гражданский
Пользователи
Сообщений: 21
Награды: 0
Репутация: [ 0 ]

Цитата sergej5500 ()

Это делается только через апгрейд оружия.

Можно уточнить, каким образом? Если создать в линейке апгрейда секцию на установку несъемного прицела, то это будет работать?
 
sergej5500Дата: Понедельник, 07.08.2017, 20:24 | Сообщение # 2592
Полевой Исследователь
Ученые сталкеры
Сообщений: 3084
Награды: 23
Репутация: [ 1224 ]

Цитата Donny_Kovalsky ()
Можно уточнить, каким образом?


Смотрите этот пост. Там рассматривается установка детектора целей на несъемный прицел.

Ночной прицел ставится так же. В секцию апгрейда нужно дописать строку

scope_nightvision = scope_nightvision
 
Donny_KovalskyДата: Вторник, 08.08.2017, 22:42 | Сообщение # 2593
Гражданский
Пользователи
Сообщений: 21
Награды: 0
Репутация: [ 0 ]

Цитата sergej5500 ()
Смотрите этот пост. Там рассматривается установка детектора целей на несъемный прицел.

Ночной прицел ставится так же. В секцию апгрейда нужно дописать строку

scope_nightvision = scope_nightvision


Не выходит sad
Ставлю прицел на АКСу(модель позволяет), но ночной из него все равно не получается даже через апгрейд.
Делаю отдельную секцию оружия в файле АКСу (как модифицированное), прописываю
scope_status = 1
scope_texture = wpn_crosshair_spec_8
scope_name = wpn_addon_scope (или wpn_addon_scope_night - всё одно)
И прописываю апгрейд, котором есть строка "scope_nightvision = scope_nightvision"

Но не работает ночник. Если прописывать scope_status = 1 в самом апгрейде - даже прицел не появляется.
 
denis2000Дата: Среда, 09.08.2017, 11:50 | Сообщение # 2594
Полевой исследователь
Ученые сталкеры
Сообщений: 2281
Награды: 27
Репутация: [ 1866 ]

Donny_Kovalsky, Конфиг ствола приводим!

"Он ловко выхватил из-под себя табуретку и очень метко и сильно бросил ее в докладчика..."
(Чугунный всадник)
 
Donny_KovalskyДата: Среда, 09.08.2017, 13:54 | Сообщение # 2595
Гражданский
Пользователи
Сообщений: 21
Награды: 0
Репутация: [ 0 ]

denis2000, https://fex.net/?gclid=....5434084
 
denis2000Дата: Среда, 09.08.2017, 14:44 | Сообщение # 2596
Полевой исследователь
Ученые сталкеры
Сообщений: 2281
Награды: 27
Репутация: [ 1866 ]

Donny_Kovalsky, Неверно указан установленный апгрейд - это значит раз. Неизвестно верно ли в секцию апгрейда прописан параметр ночного прицела - это значит два. Неизвестно разрешено ли данному стволу апгрейды в принципе - это значит три.

"Он ловко выхватил из-под себя табуретку и очень метко и сильно бросил ее в докладчика..."
(Чугунный всадник)
 
Donny_KovalskyДата: Среда, 09.08.2017, 18:08 | Сообщение # 2597
Гражданский
Пользователи
Сообщений: 21
Награды: 0
Репутация: [ 0 ]

denis2000, вынужден констатировать, что "это раз", и "это три" не понятно без объяснений. Потому что я действовал по аналогии с существующими модификациями. И разрешены ли в принципе - это о чем? В схеме апгрейда же все прописано, вроде бы.

Параметр scope_nightvision = scope_nightvision прописывал, например, в существующий апгрейд. Пытался так же делать апгрейд по аналогии с апгрейдом на установку прицела для АК-74. В общем, не могу понять, где я, судя по всему, многое упустил.
 
sergej5500Дата: Среда, 09.08.2017, 20:36 | Сообщение # 2598
Полевой Исследователь
Ученые сталкеры
Сообщений: 3084
Награды: 23
Репутация: [ 1224 ]

Цитата Donny_Kovalsky ()
И разрешены ли в принципе - это о чем?


Предмет должен быть прописан в файле inventory_upgrades.

Цитата Donny_Kovalsky ()
В общем, не могу понять, где я, судя по всему, многое упустил.


Выложите все свои правки, относящиеся к данному стволу. И какой ствол вы хотели прокачать?
 
Donny_KovalskyДата: Среда, 09.08.2017, 21:40 | Сообщение # 2599
Гражданский
Пользователи
Сообщений: 21
Награды: 0
Репутация: [ 0 ]

Цитата sergej5500 ()
Выложите все свои правки, относящиеся к данному стволу. И какой ствол вы хотели прокачать?

По сути, я все и выложил. Кроме правок в апгрейдах, я трогал только w_ak74u. Но правки апгрейда я стёр. Так-то, я добавлял там одну строчку: scope_nightvision = scope_nightvision. Добавлял ее в секцию [up_sect_fiftha_ak74u] для пробы. Потом прописывал этот апгрейд в файле оружия - там видно. Еще пытался сделать новый апгрейд вида
[up_sect_sixa_ak74u]
scope_status = 1
scope_texture = wpn_crosshair_spec_8
scopes_sect = scope_night_ak74u
scope_nightvision = scope_nightvision

Дописывал его и в строку upgrades файла аксу.

Ствол - модифицированный АКСу. Там почти в самом конце выложенного файла есть после m1, m2 и m3 калашей добавленная мною секция еще одного: [wpn_ak74u_night].

Да, я не прописывал его в inventory_upgrades, скажу сразу... Этого я не знал - думал раз он наследует аксу, то катит и так.
 
sergej5500Дата: Среда, 09.08.2017, 21:49 | Сообщение # 2600
Полевой Исследователь
Ученые сталкеры
Сообщений: 3084
Награды: 23
Репутация: [ 1224 ]

Цитата Donny_Kovalsky ()
думал раз он наследует аксу, то катит и так.


К сожалению, так не катит.
 
Форум » Модостроение » Основной раздел » Модостроение. Общие вопросы и ответы
Страница 130 из 133«12128129130131132133»
Поиск: