Модостроение. Общие вопросы и ответы
|
|
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 за это полезное сообщение: |
|
|
mizabrik | Дата: Сб, 15.06.2013, 11:58 | Сообщение # 46 |
Почетный инженер «Свободы»
Свобода
Сообщений: 360
| =V1ruS=, В котором написана строка на русском.
|
|
|
Эти 0 пользователя(ей) поблагодарили mizabrik за это полезное сообщение: |
|
|
=V1ruS= | Дата: Сб, 15.06.2013, 11:58 | Сообщение # 47 |
Гражданский
Пользователи
Сообщений: 13
| VlAleVas, http://rghost.ru/46627654
|
|
|
Эти 0 пользователя(ей) поблагодарили =V1ruS= за это полезное сообщение: |
|
|
mizabrik | Дата: Сб, 15.06.2013, 11:59 | Сообщение # 48 |
Почетный инженер «Свободы»
Свобода
Сообщений: 360
| =V1ruS=, я же говорил, он в UTF-8. Держи перекодированный в cp1251.
|
|
|
Эти 0 пользователя(ей) поблагодарили mizabrik за это полезное сообщение: |
|
|
Akame | Дата: Сб, 15.06.2013, 11:59 | Сообщение # 49 |
Удаленные
| наверняка я получу еще немножко преды..
но все таки спрошу.. Играя в сталкер.. Пролетела такая мысль.. иль просто стало интересно.. "возможно ли подобное. Или нет"
Просто интересно. А что было бы! если бы в самой игре, присутствовали персонажи с форума. К примеру, если бы как будто, не в игре а в жизни. Администраторы иль Модераторы данного сайта, решили побывать в Зоне Отчуждения. И я уже играя в Сталкер, обнаруживаю персонажа Того же Модера иль Админа ^^ которые говорят, о том! чего хотели бы они от этой жизни, этого мира. И персонаж уже не стремится быть в чем то первым.. а идет за так называемым в душе, лидером. Этот Сталкер. Говорит о своих идеях целях. Создает свою группировку.. Предположим, дает свои задачи, говорит о своих целях. Я бы с радостью выполнял бы их задачи. Вроде бы можно все реализовать и в ином свете.. создать группировку, внести туда свои идеи.. Но если, точно знать! что этот персонаж к примеру Админ, интересного мне сайта. Поменяется интерес к игре в другую сторону.. Наверное бурная фантазия у меня..
Или было бы возможно, вместо мода, выпускать готовую собранную игру, со встроенным модом. И с какой то программой, как к примеру в steame, для наблюдения за игроками, что они делаю, к чему стремятся. Знать его статистику, да и он сам свою. К примеру, Сменился Лидер на форуме у какой либо Группировки, соответственно, меняется он и в игре, но со своими целями, своими идеями. Свой индивидуальный персонаж.
^^ Мысли в слух. Надеюсь не доставил хлопот.
|
|
|
Эти 0 пользователя(ей) поблагодарили Akame за это полезное сообщение: |
|
|
sapfir | Дата: Сб, 15.06.2013, 11:59 | Сообщение # 50 |
Боец резерва
Долг
Сообщений: 635
| Triarius, это же тема о модостроении! А тема о предложениях - вот.
КПК Сапфира
|
|
|
Эти 0 пользователя(ей) поблагодарили sapfir за это полезное сообщение: |
|
|
Glomar | Дата: Сб, 15.06.2013, 11:59 | Сообщение # 51 |
Хозяин Зоны
Пользователи
Сообщений: 23464
| У меня возникли вот несколько вопросов: - решился ли вопрос с раздвижными дверьми в ЗП? - можно ли хоть как-то справиться с вылетом с логом m_object.get_door_vectors( m_closed_vector, m_open_vector )?
|
|
|
Эти 0 пользователя(ей) поблагодарили Glomar за это полезное сообщение: |
|
|
suhar_ | Дата: Сб, 15.06.2013, 11:59 | Сообщение # 52 |
Бывалый
Пользователи
Сообщений: 106
| Вопрос по костюмам. Добавляю новый костюм в оригинальную ЗП. Возникла такая проблема. В инвентаре, где отображаются суммарные защитные параметры не засчитывается бонус брони нововведённого костюма. Причём не всегда, а только в случае, если у этого самого костюма объявлено, что он имеет интегрированный шлем (тоесть в слот шлема всавить ничего нельзя. Как у костюма Сева). Правлю в конфигах - добавляю возможность шлема. Параметр брони костюма начинает засчитываться. Замечу, что все остальные параметры (сопротивление огню, молнии, разрыв и т.д.) засчитываются. Не засчитывается только броня. Как это исправить? зы: надеюсь, я понятно изложил суть.. Забыл сказать, что костюм этот четвёртого типа - тоесть тяжёлый. ef_equipment_type = 4 ones_koeff_protection = actor_armor_heavy
Сообщение отредактировал suhar_ - Чт, 13.06.2013, 17:29 |
|
|
Эти 0 пользователя(ей) поблагодарили suhar_ за это полезное сообщение: |
|
|
denis2000 | Дата: Сб, 15.06.2013, 11:59 | Сообщение # 53 |
Полевой исследователь
Ученые сталкеры
Сообщений: 2399
| suhar_, Может как раз из-за того что ставите костюм без шлема, а в секции actor_armor_heavy защита головы нулевая?
"Он ловко выхватил из-под себя табуретку и очень метко и сильно бросил ее в докладчика..." (Чугунный всадник)
|
|
|
Эти 0 пользователя(ей) поблагодарили denis2000 за это полезное сообщение: |
|
|
suhar_ | Дата: Сб, 15.06.2013, 12:00 | Сообщение # 54 |
Бывалый
Пользователи
Сообщений: 106
| denis2000, скорее всего да. когда я правлю эту секцию на bones_koeff_protection = actor_armor_sci то броня суммируется. но дело в том, что эта строка для научных костюмов, а мне нужны именно тяжёлые. можно ли что-нибудь подкрутить в конфигах? если да, то что именно?
|
|
|
Эти 0 пользователя(ей) поблагодарили suhar_ за это полезное сообщение: |
|
|
denis2000 | Дата: Сб, 15.06.2013, 12:00 | Сообщение # 55 |
Полевой исследователь
Ученые сталкеры
Сообщений: 2399
| suhar_, В файле damages.ltx сделайте новую секцию (которую и назначите в параметре bones_koeff_protection): Код [Имя новой секции]:actor_body_damage_heavy, actor_head_damage_hardhat В результате будет костюм с защитой тела как у тяжелой брони и защитой головы как у стального шлема.
"Он ловко выхватил из-под себя табуретку и очень метко и сильно бросил ее в докладчика..." (Чугунный всадник)
|
|
|
Эти 0 пользователя(ей) поблагодарили denis2000 за это полезное сообщение: |
|
|
suhar_ | Дата: Сб, 15.06.2013, 12:00 | Сообщение # 56 |
Бывалый
Пользователи
Сообщений: 106
| Значить, такой вот вопрос. Правильно ли я понял, что в папке \gamedata\meshes\ лежат 3D модели всех объектов? Итак, я добавляю в игру новую 3д модель (в моём случае это модель костюма из мода). При запуске игры эта модель отображается без какого-любо цвета (полностью синяя).
Правильно ли я понял, что в папке \gamedata\textures\act\ лежат текстуры цвета всех объектов? Итак, захожу в текстуры \gamedata\textures\act\ и вижу там множество всяких разных файлов. Методом перебора нахожу нужную мне текстуру и копирую в свою геймдату. Всё. Теперь костюм цветной. Ура!
Но перебирать мне, скажем так, не понравилось.. И впредь, для новых костюмов, совсем не тянет. Решения сей проблемы я вижу такие. 1. Продолжать искать нужные текстуры перебором. 2. Копировать полностью в свою геймдаты все исходные текстуры. Таким образом в наборе уже будет всё нужное (и ненужное, кстати, тоже, что приведёт к увеличению размеров мода в разы). 3. Самому настраивать ссылки 3д моделей на цветовые текстуры. Первый и второй варианты меня не устраивают. Подскажите, как быстро из множества текстур находить нужные? Где именно это прописывается?
Почитайте азбуку модостроителя, там эти вопросы рассмотрены. denis2000
|
|
|
Эти 0 пользователя(ей) поблагодарили suhar_ за это полезное сообщение: |
|
|
FantomICW | Дата: Сб, 15.06.2013, 12:00 | Сообщение # 57 |
Лидер «Свободы»
Свобода
Сообщений: 4438
| suhar_, текстуры подобного рода действительно в большинстве случаев лежат в папке textures/act. Поэтому открывай свою модель броника с помощью Notepad++ или HexWorkshop, HexEditor, нажимай Ctrl+F и ищи тегом act. Там может попадаться не то, что надо, всякие отсылки к object, но в конечном счете разбираешься. Там будет прописано в каком-то месте act/act_название_текстуры. Еще лучше будет открыть модель в Milkshape 3D или СДК. Там ее сразу и заменить можно.
Сообщение отредактировал FantomICW - Пт, 14.06.2013, 10:51 |
|
|
Эти 0 пользователя(ей) поблагодарили FantomICW за это полезное сообщение: |
|
|
9vova8 | Дата: Сб, 15.06.2013, 12:00 | Сообщение # 58 |
Новичок
Пользователи
Сообщений: 91
| Всем доброго времени суток. Помогите пожалуйста. При добавлении новой локации из ТЧ в ЗП (обе игры чистые) появилась вылет [cut]FATAL ERROR
[error]Expression : SG [error]Function : CRender::model_CreateParticles [error]File : D:\prog_repository\sources\trunk\Layers\xrRenderPC_R1\FStaticRender.cpp [error]Line : 180 [error]Description : Particle effect or group doesn't exist [error]Arguments : tests\muhi
stack trace::[/cut] Заранее спасибо.
Отсутствует партикл или эффект для партикла tests\muhi. Придется его добавить или пререкомпилировать локацию при этом убрав этот партикл в SDK. denis2000
Сообщение отредактировал 9vova8 - Сб, 15.06.2013, 00:15 |
|
|
Эти 0 пользователя(ей) поблагодарили 9vova8 за это полезное сообщение: |
|
|
suhar_ | Дата: Сб, 15.06.2013, 12:00 | Сообщение # 59 |
Бывалый
Пользователи
Сообщений: 106
| Вопрос по апгрейдам. В каком файле лежат описания и названия апгрейдов, которые отображаются у техников? Когда наводишь курсор на апгрейд, вываливается менюшка с информацией и вместе с ней на иконке костюма отображается улучшаемая часть. Как настроить координату этой точки на картинке?
Читайте КМБ Урок 15а, он уже три года как на эти вопросы ответил. denis2000
Сообщение отредактировал suhar_ - Сб, 15.06.2013, 10:31 |
|
|
Эти 0 пользователя(ей) поблагодарили suhar_ за это полезное сообщение: |
|
|
FantomICW | Дата: Сб, 15.06.2013, 12:01 | Сообщение # 60 |
Лидер «Свободы»
Свобода
Сообщений: 4438
| suhar_, текстовка апгрейдов находится в файле configs/text/rus/st_items_weapons_upgrades.xml. Что касается точки, у тебя должны быть секции костюма в configs/ui/inventory_uprgade.xml и inventory_upgrade_16.xml. Вот примеры секций: [cut=inventory_uprgade.xml]Код <template name="upgrade_scheme_svoboda_light_outfit"> <column> <cell x="0" y="24" point_x="145" point_y="190"/> <cell x="0" y="126" point_x="210" point_y="180"/> <cell x="0" y="228" point_x="150" point_y="155"/> </column> <column> <cell x="100" y="24" point_x="185" point_y="170"/> <cell x="100" y="102" point_x="150" point_y="170"/> <cell x="100" y="151" point_x="163" point_y="175"/> <cell x="100" y="204" point_x="180" point_y="215"/> <cell x="100" y="253" point_x="195" point_y="220"/> </column> <column> <cell x="200" y="0" point_x="163" point_y="205"/> <cell x="200" y="49" point_x="163" point_y="230"/> <cell x="200" y="102" point_x="195" point_y="160"/> <cell x="200" y="151" point_x="105" point_y="170"/> <cell x="200" y="228" point_x="145" point_y="215"/> </column> </template> [/cut] [cut=inventory_uprgade_16.xml]Код <template name="upgrade_scheme_svoboda_light_outfit"> <column> <cell x="0" y="24" point_x="145" point_y="190"/> <cell x="0" y="126" point_x="210" point_y="180"/> <cell x="0" y="228" point_x="150" point_y="155"/> </column> <column> <cell x="80" y="24" point_x="185" point_y="170"/> <cell x="80" y="102" point_x="150" point_y="170"/> <cell x="80" y="151" point_x="163" point_y="175"/> <cell x="80" y="204" point_x="180" point_y="215"/> <cell x="80" y="253" point_x="195" point_y="220"/> </column> <column> <cell x="160" y="0" point_x="163" point_y="205"/> <cell x="160" y="49" point_x="163" point_y="230"/> <cell x="160" y="102" point_x="195" point_y="160"/> <cell x="160" y="151" point_x="105" point_y="170"/> <cell x="160" y="228" point_x="145" point_y="215"/> </column> </template> [/cut] Тут уже надо немного разбираться в GUI. Весь этот код - сетка (таблица) апгрейдов. Их есть три секции-колоны. Колона обозначается тегом column. В каждой колонке может быть разное количество апгрейдов, то есть клеток, которые обозначаются тегом cell. Рассмотрим одну такую строку: Код <cell x="0" y="24" point_x="145" point_y="190"/> Внимание! Все координаты берутся по левому верхнему углу. x - координаты верхнего левого угла иконки апгрейда по широте y - его координаты по высоте А теперь самое интересное: point_x, point_y - координаты точки-указателя места апгрейда на картинке с оружием. Именно то, что тебе и надо.
Сообщение отредактировал FantomICW - Сб, 15.06.2013, 11:11 |
|
|
Эти 0 пользователя(ей) поблагодарили FantomICW за это полезное сообщение: |
|
|
|