|
Модостроение. Общие вопросы и ответы
|
|
| 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 за это полезное сообщение: |
|
|
| tema796 | Дата: Сб, 23.07.2016, 21:32 | Сообщение # 2041 |
|
Гражданский
Пользователи
Сообщений: 20
| Цитата denis2000 (  ) tema796, 1. Вы уверены что эта функция вообще вызывается по колбеку на юз предмета ГГ? 2. Условие if item_name == tbl.item then не выполниться никогда, поскольку item_name - эта строка, а tbl.item - это таблица! 1. Да, она вызывается. 2. Тогда как можно проверить что при использование определенного предмета появлялось определенный текст. Таблица нужна. Просто хотел сделать многоразовую еду. А способ: Код if item_name == "предмет" then Не подходит, так как придется много проверок делать по такому принципу
|
| |
|
| Эти 0 пользователя(ей) поблагодарили tema796 за это полезное сообщение: |
|
|
| makdm | Дата: Вс, 24.07.2016, 00:04 | Сообщение # 2042 |
 Рожденный в СССР
Разработчики
Сообщений: 1294
| Цитата tema796 (  ) Тогда как можно проверить что при использование определенного предмета появлялось определенный текст. Вот здесь почитайте.
http://sigerous.ru/forum/17-208-1348629-16-1425756707
Урок 75.
Всё элементарно. Для каждого бустера можно вставить в функцию свой текст. Никаких таблиц не нужно.
Терпение...... И все получится!
|
| |
|
| Эти 0 пользователя(ей) поблагодарили makdm за это полезное сообщение: |
|
|
| Бармен | Дата: Вс, 24.07.2016, 01:54 | Сообщение # 2043 |
 Ветеран
Свобода
Сообщений: 370
| denis2000, Приветствую вы вроде разбираетесь, в логики move. Можешь подсказать, а как узнать вот эти данные. ЗП.
Код move_dest_number move_look_vertex
|
| |
|
| Эти 0 пользователя(ей) поблагодарили Бармен за это полезное сообщение: |
|
|
| asd123 | Дата: Вс, 24.07.2016, 02:31 | Сообщение # 2044 |
 Mr. «Магма»
Военные сталкеры
Сообщений: 1386
| Бармен, в эти строки вписываются координаты game_vertex. Этими строками держатся все важные персонажи SGM, не состоящие в сквадах. Вам скрипт на вычисление координат нужен? Или Ваш вопрос был только по этим строкам?
У мутантов тоже есть группировки. © Движок X-Ray
|
| |
|
| Эти 0 пользователя(ей) поблагодарили asd123 за это полезное сообщение: |
|
|
| Бармен | Дата: Вс, 24.07.2016, 03:15 | Сообщение # 2045 |
 Ветеран
Свобода
Сообщений: 370
| asd123, Ну что из SGM я знаю. А вот мне интересно, скрипт который вы хотите предложить работает в игре, или его установка в SDK?
|
| |
|
| Эти 0 пользователя(ей) поблагодарили Бармен за это полезное сообщение: |
|
|
| asd123 | Дата: Вс, 24.07.2016, 04:08 | Сообщение # 2046 |
 Mr. «Магма»
Военные сталкеры
Сообщений: 1386
| Бармен, он уже есть в SGM Правда.. у него не хватает отображения direction(я уже не помню точно где - в логе или в тексте игры, так как я его исправил ещё год назад). Если вам нужно с direction - могу скинуть свои правки скрипта. Так, вообщем.. открывайте ui_main_menu.script и находите строки:
Код elseif db.actor~=nil and dik==DIK_keys.DIK_F4 then self:inc_actor_rank()
После скобки ) нажмите Enter(тем самым создав новую пустую строку) и добавьте в неё это:
Код elseif db.actor~=nil and dik==DIK_keys.DIK_F6 then self:OnButton_coord_pos_clicked() Должно получиться так:
Код elseif db.actor~=nil and dik==DIK_keys.DIK_F4 then self:inc_actor_rank() elseif db.actor~=nil and dik==DIK_keys.DIK_F6 then self:OnButton_coord_pos_clicked() elseif db.actor~=nil and dik==DIK_keys.DIK_P then self:set_rich_actor() Всё, готово! В игре, переключитесь в главное меню и нажмите F6, а после переключайтесь в игру. Вы увидите сообщение с текущими координатами ГГ.
У мутантов тоже есть группировки. © Движок X-Ray
Сообщение отредактировал asd123 - Вс, 24.07.2016, 04:12 |
| |
|
| Эти 0 пользователя(ей) поблагодарили asd123 за это полезное сообщение: |
|
|
| Бармен | Дата: Вс, 24.07.2016, 05:02 | Сообщение # 2047 |
 Ветеран
Свобода
Сообщений: 370
| asd123, Так так так, это получается что использую логику move, нужно каждый раз заходить в игру? А есть 100 или 200 НПС в моде, что тогда делать? И да я не не юзаю SGM, я хотел логику move для своего проекта попробовать.
|
| |
|
| Эти 0 пользователя(ей) поблагодарили Бармен за это полезное сообщение: |
|
|
| asd123 | Дата: Вс, 24.07.2016, 05:14 | Сообщение # 2048 |
 Mr. «Магма»
Военные сталкеры
Сообщений: 1386
| Бармен, не понимаю вас.. Если вы используете SDK, зачем вам секция move? Насчет численности.. вот у меня было желание - я наклёпал 50 человек на Агропром с этой секцией, путём снятия координат прямо в игре
У мутантов тоже есть группировки. © Движок X-Ray
Сообщение отредактировал asd123 - Вс, 24.07.2016, 05:16 |
| |
|
| Эти 0 пользователя(ей) поблагодарили asd123 за это полезное сообщение: |
|
|
| Бармен | Дата: Вс, 24.07.2016, 05:21 | Сообщение # 2049 |
 Ветеран
Свобода
Сообщений: 370
| asd123, Хочешь сказать Смерти Вопреки. В паутине лжи, сделан без SDK там вся логика на move.
Цитата asd123 (  ) Насчет численности.. вот у меня было желание - я наклёпал 50 человек на Агропром с этой секцией, путём снятия координат прямо в игре И не лень было координаты снимать?
|
| |
|
| Эти 0 пользователя(ей) поблагодарили Бармен за это полезное сообщение: |
|
|
| asd123 | Дата: Вс, 24.07.2016, 05:27 | Сообщение # 2050 |
 Mr. «Магма»
Военные сталкеры
Сообщений: 1386
| Бармен, лень по 100 раз начинать новую игру из-за компиляции all_spawn чтобы сделать нормальный animpoint/smart_cover
Цитата Бармен (  ) Хочешь сказать Смерти Вопреки. В паутине лжи, сделан без SDK там вся логика на move. Насчет этого не знаю.. Помню только то, что Сергей о чём-то просил людей-тестеров его модификации, чтобы те снимали для него координаты на локациях.. Кажется, для тайников.
У мутантов тоже есть группировки. © Движок X-Ray
Сообщение отредактировал asd123 - Вс, 24.07.2016, 05:29 |
| |
|
| Эти 0 пользователя(ей) поблагодарили asd123 за это полезное сообщение: |
|
|
| Бармен | Дата: Вс, 24.07.2016, 05:40 | Сообщение # 2051 |
 Ветеран
Свобода
Сообщений: 370
| Цитата asd123 (  ) лень по 100 раз начинать новую игру из-за компиляции all_spawn чтобы сделать нормальный animpoint/smart_cover Понимаю была бы эта компиляция локации, а all.spawn быстро собирается.
Цитата asd123 (  ) Насчет этого не знаю.. Да врятли человек их СВ, будет делать мод без SDK
|
| |
|
| Эти 0 пользователя(ей) поблагодарили Бармен за это полезное сообщение: |
|
|
| asd123 | Дата: Ср, 27.07.2016, 02:48 | Сообщение # 2052 |
 Mr. «Магма»
Военные сталкеры
Сообщений: 1386
| Как бы разобраться с покраснением иконок в диалогах? В каком-то ведь файле есть строка, заставляющая их окрашиваться в красный.
Добавлено (27.07.2016, 02:48) ---------------------------------------------
Цитата makdm (  ) Цитата asd123 ()Как предотвратить выпадение ГГ ? makdm, В схеме heli_move прописать весь путь вертушки по локации без переключения со схемы на схему. При переключении схем вертушка иногда ( почему? сам не разбирался досконально ) "уходит" из под скриптов. Тогда и происходит сброс игрока на землю. Я выявил причину - виноват уход/появление НПС из онлайна/в онлайн когда вертолёт смотрит в сторону этого действия. Вот я с помощью уважаемого denis2000 вернул вертолёту обновление цели(upd_vis), и он у меня стал ПОСТОЯННО выбиваться из скриптов. Он не просто выходит из логики, а его сам bind_heli теряет(достаточно стрельнуть в зависший вертолёт, и получаем вылет с причиной о том, что якобы object равен нулю(биндер потерял вертолёт) Выходит, нужно как-то все сквады на локации сделать в постоянном онлайне(или же не приближаться к оффлайновым сквадам/нпс, когда обзор вертолёта смотрит на место их обитания(я тестировал на кордоне, и вот на агропроме. Летал себе вертолёт, летал.. по координатам патрульного пути должен был пролететь над НИИ, но когда уже должен был повернуться - завис(а ГГ как раз таки подбежал поближе, чтобы смарт-террайн активировался). Такие дела..
p.s. после всего что мне пришлось сделать, чтобы хоть как-то настроить вертолёт я неотступно утверждаю, что в ЗП скриптовая система значительно хуже чем в предыдущих частях...(мне всегда был по душе ЧН из-за того, что я как бы представлял ЧН совмещением ЗП и ТЧ. Так сказать, идеальная игра )
В связи с выше описанным, появился вопрос - а можно ли на определённых локациях задавать какую-нибудь опцию(или редактировать какую-то функцию), чтобы на ней сквады в оффлайн не уходили?
У мутантов тоже есть группировки. © Движок X-Ray
Сообщение отредактировал asd123 - Ср, 27.07.2016, 05:57 |
| |
|
| Эти 0 пользователя(ей) поблагодарили asd123 за это полезное сообщение: |
|
|
| denis2000 | Дата: Ср, 27.07.2016, 21:04 | Сообщение # 2053 |
 Полевой исследователь
Ученые сталкеры
Сообщений: 2399
| asd123, Не понятно причем здесь сквады если биндер вертолета теряет объект? Я сталкивался с этим, но поскольку пропала сама необходимость в вертолете в моде, то проблема осталась без решения.
"Он ловко выхватил из-под себя табуретку и очень метко и сильно бросил ее в докладчика..." (Чугунный всадник)
|
| |
|
| Эти 0 пользователя(ей) поблагодарили denis2000 за это полезное сообщение: |
|
|
| asd123 | Дата: Чт, 28.07.2016, 03:09 | Сообщение # 2054 |
 Mr. «Магма»
Военные сталкеры
Сообщений: 1386
| Цитата denis2000 (  ) Не понятно причем здесь сквады если биндер вертолета теряет объект? Какова Ваша теория по этому поводу? И можно ли как-то это исправить? У меня вертолёты - это не отъемлемая часть моего дополнения , но вот эта проблема с bind_heli очень мешает. Что интересно, биндер стал терять вертолёты после того, как была разблокирована опция на смену цели в heli_move..
У мутантов тоже есть группировки. © Движок X-Ray
Сообщение отредактировал asd123 - Чт, 28.07.2016, 03:10 |
| |
|
| Эти 0 пользователя(ей) поблагодарили asd123 за это полезное сообщение: |
|
|
| denis2000 | Дата: Чт, 28.07.2016, 09:36 | Сообщение # 2055 |
 Полевой исследователь
Ученые сталкеры
Сообщений: 2399
| Цитата asd123 (  ) Какова Ваша теория по этому поводу? Тут не теории нужны, а анализ работы скриптов.
Цитата asd123 (  ) И можно ли как-то это исправить? Вероятно что да.
Цитата asd123 (  ) биндер стал терять вертолёты после того, как была разблокирована опция на смену цели в heli_move Вот отсюда и копайте.
"Он ловко выхватил из-под себя табуретку и очень метко и сильно бросил ее в докладчика..." (Чугунный всадник)
|
| |
|
| Эти 0 пользователя(ей) поблагодарили denis2000 за это полезное сообщение: |
|
|
|