Войти на сайт Регистрация Лента форума Пользователи Правила сайта Поиск по форуму
Модератор форума: 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]
 
makdmДата: Сб, 11.10.2014, 19:11 | Сообщение # 661
Рожденный в СССР
Разработчики
Сообщений: 1294
Награды: 29
Репутация: [ 1909 ]

Цитата sergej5500 ()
Если можно, то как это сделать?


sergej5500, когда ГГ даёт аптечку раненому,
то вызывается функция function transfer_medkit(first_speaker, second_speaker) из файла dialogs.script
Эта же функция и делает раненого другом ГГ. Вот сюда и нужно вставить код.
Вместо

if second_speaker:relation(first_speaker) ~= game_object.enemy then
second_speaker:set_relation(game_object.friend, first_speaker)
end


Пишем

Код
if second_speaker:relation(first_speaker) ~= game_object.enemy then
second_speaker:set_relation(game_object.friend, first_speaker)
if first_speaker:id() == db.actor:id() then
local s_obj = alife():object( second_speaker:id() )
if s_obj then
local squad_id = s_obj.group_id
if squad_id ~= 65535 then
local squad = alife():object( squad_id )
if squad then
squad:set_squad_relation("friend")
end
end
end
end
end


Терпение......
И все получится!


Сообщение отредактировал makdm - Сб, 11.10.2014, 19:12
 
BanterfaceДата: Вс, 12.10.2014, 12:33 | Сообщение # 662
Боец Штурмового Отряда Вольных
Вольные сталкеры
Сообщений: 3455
Награды: 14
Репутация: [ 965 ]

Здравствуйте, господа модмейкеры! Когда пытаюсь открыть файл obj в Actor Editor, выходит это:
* Loaded: gamedata\textures\ed\ed_mp.dds[174904]b
Invalid file path.

Actor Editor не поддерживает файлы данного типа. denis2000
 
suhar_Дата: Пн, 13.10.2014, 16:51 | Сообщение # 663
Бывалый
Пользователи
Сообщений: 106
Награды: 0
Репутация: [ 0 ]

Цитата denis2000 ()
Полигоны с нулевой длинной нормали. У таких полигонов вершины или на одной линии или собраны в одну точку.

Как в 3DS maxe или Милке их можно найти?

Цитата Дизель ()
Лечить: ...

А есть способ попроще??

Цитата Дизель ()
чем конвертируешь модели из OGF?

Конвертировал милкой и конвертером от Бардака. В обоих случаях картина одна и та же. Возможно, сама модель изначально имеет ошибки? Но опять же, в игре оригинальная (не правленная модель) загружается без всяких трудностей.
 
denis2000Дата: Пн, 13.10.2014, 17:55 | Сообщение # 664
Полевой исследователь
Ученые сталкеры
Сообщений: 2399
Награды: 35
Репутация: [ 1918 ]

Цитата suhar_ ()
Как в 3DS maxe или Милке их можно найти?

В Милке - никак, в 3DS maxe - есть специальный инструментарий (курите мануалы по данному програмному продукту).
Цитата suhar_ ()
А есть способ попроще??

Нет.
Цитата suhar_ ()
Конвертировал милкой и конвертером от Бардака. В обоих случаях картина одна и та же.Возможно, сама модель изначально имеет ошибки?

Сама модель в формате ogf ошибок скорее всего не имеет, они возникают при пере конвертировании в следствии погрешностей в определении координат вершин полигонов, а значит этот неизбежно при конвертировании в любой программе.


"Он ловко выхватил из-под себя табуретку и очень метко и сильно бросил ее в докладчика..."
(Чугунный всадник)
 
BanterfaceДата: Вт, 14.10.2014, 02:50 | Сообщение # 665
Боец Штурмового Отряда Вольных
Вольные сталкеры
Сообщений: 3455
Награды: 14
Репутация: [ 965 ]

Цитата denis2000 ()

Actor Editor не поддерживает файлы данного типа. denis2000

А почему в нём написано, во вкладке импорт, при перечислении доступных форматов, есть obj.
 
denis2000Дата: Вт, 14.10.2014, 10:57 | Сообщение # 666
Полевой исследователь
Ученые сталкеры
Сообщений: 2399
Награды: 35
Репутация: [ 1918 ]

Цитата Banterface ()
А почему в нём написано

И что он его открывает?


"Он ловко выхватил из-под себя табуретку и очень метко и сильно бросил ее в докладчика..."
(Чугунный всадник)
 
BanterfaceДата: Вт, 14.10.2014, 17:18 | Сообщение # 667
Боец Штурмового Отряда Вольных
Вольные сталкеры
Сообщений: 3455
Награды: 14
Репутация: [ 965 ]

denis2000, не-а. Мне Фантом посоветовал в максе конвертить обдж в обджект. Посмотрим, что выйдет.
 
denis2000Дата: Вт, 14.10.2014, 23:40 | Сообщение # 668
Полевой исследователь
Ученые сталкеры
Сообщений: 2399
Награды: 35
Репутация: [ 1918 ]

Цитата Banterface ()
не-а.

Вот поэтому, то я сразу и сказал: Actor Editor не поддерживает файлы данного типа (Хотя и бес проблем экспортирует в этот формат. Но импорт не работает!).
Цитата Banterface ()
Мне Фантом посоветовал в максе конвертить обдж в обджект.

На ваш вкус. Можно даже Милкшейпом воспользоваться.


"Он ловко выхватил из-под себя табуретку и очень метко и сильно бросил ее в докладчика..."
(Чугунный всадник)
 
suhar_Дата: Пт, 17.10.2014, 21:16 | Сообщение # 669
Бывалый
Пользователи
Сообщений: 106
Награды: 0
Репутация: [ 0 ]

В ЗП возникла проблема с новыми костюмами для перехода в Припять.
Для того, чтобы Зулус пропустил нас, правлю две функции в файле dialogs_jupiter.script
[cut]
function jup_b15_actor_sci_outfit(first_speaker, second_speaker)
return db.actor:object("scientific_outfit") ~= nil or
db.actor:object("bars_outfit") ~= nil or
db.actor:object("skyline_outfit") ~= nil or
db.actor:object("renegat_scientific_outfit") ~= nil or
db.actor:object("killer_scientific_outfit") ~= nil or
db.actor:object("monolith_scientific_outfit") ~= nil or
db.actor:object("prorok_outfit") ~= nil or
db.actor:object("sindikat_outfit") ~= nil or
db.actor:object("gagarin_outfit") ~= nil or
db.actor:object("ecolog_1_outfit") ~= nil or
db.actor:object("ecolog_2_outfit") ~= nil or
db.actor:object("ecolog_3_outfit") ~= nil or
db.actor:object("ecolog_4_outfit") ~= nil or
db.actor:object("ecolog_5_outfit") ~= nil or
db.actor:object("ecolog_6_outfit") ~= nil or
db.actor:object("ecolog_7_outfit") ~= nil or
db.actor:object("ecolog_8_outfit") ~= nil or
db.actor:object("ecolog_9_outfit") ~= nil or
db.actor:object("ecolog_10_outfit") ~= nil or
db.actor:object("dolg_scientific_outfit") ~= nil or
db.actor:object("scout_outfit") ~= nil or
db.actor:object("freedom_scientific_outfit") ~= nil or
db.actor:object("nano_sci_outfit") ~= nil or
db.actor:object("nano_outfit") ~= nil
end

function jup_b15_no_actor_sci_outfit(first_speaker, second_speaker)
return db.actor:object("scientific_outfit") == nil or
db.actor:object("bars_outfit") == nil or
db.actor:object("skyline_outfit") == nil or
db.actor:object("renegat_scientific_outfit") == nil or
db.actor:object("killer_scientific_outfit") == nil or
db.actor:object("monolith_scientific_outfit") == nil or
db.actor:object("prorok_outfit") == nil or
db.actor:object("sindikat_outfit") == nil or
db.actor:object("gagarin_outfit") == nil or
db.actor:object("ecolog_1_outfit") == nil or
db.actor:object("ecolog_2_outfit") == nil or
db.actor:object("ecolog_3_outfit") == nil or
db.actor:object("ecolog_4_outfit") == nil or
db.actor:object("ecolog_5_outfit") == nil or
db.actor:object("ecolog_6_outfit") == nil or
db.actor:object("ecolog_7_outfit") == nil or
db.actor:object("ecolog_8_outfit") == nil or
db.actor:object("ecolog_9_outfit") == nil or
db.actor:object("ecolog_10_outfit") == nil or
db.actor:object("dolg_scientific_outfit") == nil or
db.actor:object("scout_outfit") == nil or
db.actor:object("freedom_scientific_outfit") == nil or
db.actor:object("nano_sci_outfit") == nil or
db.actor:object("nano_outfit") == nil
end
[/cut]
Когда подхожу к Зулусу с одним из них, он выдаёт диалог, мол "сначала достань нужный костюм и т.д.". Переношу костюм из слота в рюкзак или просто выбрасываю на землю. Затем снова подбираю\переношу в слот. Подхожу с Зулусу (с этим же костюмом!!) и он вдруг нас пропускает О_о. Вариантов манипуляций много, пробовал даже менять местами арты на поясе: в одном случае пускает, в другом нет.
Вероятно, капризничают эти самые 2 правленные функции, но что именно в них не так?
 
denis2000Дата: Пт, 17.10.2014, 21:57 | Сообщение # 670
Полевой исследователь
Ученые сталкеры
Сообщений: 2399
Награды: 35
Репутация: [ 1918 ]

suhar_, А почему в функции проверки, что ГГ не имеет костюма логический оператор или (or), хотя по логике нужен и (and)?

"Он ловко выхватил из-под себя табуретку и очень метко и сильно бросил ее в докладчика..."
(Чугунный всадник)
 
sergej5500Дата: Пт, 17.10.2014, 22:01 | Сообщение # 671
Полевой Исследователь
Ученые сталкеры
Сообщений: 3793
Награды: 29
Репутация: [ 1355 ]

suhar_,
Первая функция jup_b15_actor_sci_outfit проверяет наличие нужного костюма. Она срабатывает, если у ГГ есть хотя бы один костюм из списка.

Вторая функция jup_b15_no_actor_sci_outfit должна выдать true, если у актора нет ни одного костюма из списка.
Операторы or в ней надо заменить на and.

[cut=Функция из СГМ.]function jup_b15_no_actor_sci_outfit(first_speaker, second_speaker)
return db.actor:object("scientific_outfit")==nil and db.actor:object("reduce_scientific_outfit")==nil and
db.actor:object("ecolog_regular_outfit")==nil and db.actor:object("reduce_ecolog_regular_outfit")==nil and
db.actor:object("ecolog_military_outfit")==nil and db.actor:object("reduce_ecolog_military_outfit")==nil and
db.actor:object("exo_outfit")==nil and db.actor:object("reduce_exo_outfit")==nil and
db.actor:object("monolith_outfit")==nil and db.actor:object("reduce_monolith_outfit")==nil and
db.actor:object("csky_exo_outfit")==nil and db.actor:object("reduce_csky_exo_outfit")==nil and
db.actor:object("bandit_exo_outfit")==nil and db.actor:object("reduce_bandit_exo_outfit")==nil and
db.actor:object("army_exo_outfit")==nil and db.actor:object("reduce_army_exo_outfit")==nil and
db.actor:object("killer_exo_outfit")==nil and db.actor:object("reduce_killer_exo_outfit")==nil and
db.actor:object("monolit_exo_outfit")==nil and db.actor:object("reduce_monolit_exo_outfit")==nil and
db.actor:object("freedom_exo_outfit")==nil and db.actor:object("reduce_freedom_exo_outfit")==nil and
db.actor:object("dolg_exo_outfit")==nil and db.actor:object("reduce_dolg_exo_outfit")==nil and
db.actor:object("stalker_reinforced_outfit")==nil and db.actor:object("army_nauchniy_outfit")==nil
end[/cut]
 
vav54Дата: Вс, 19.10.2014, 11:24 | Сообщение # 672
Гражданский
Пользователи
Сообщений: 5
Награды: 0
Репутация: [ 0 ]

Подскажите пожалуйста, какой файл в SGM v1.2 (2.2) отвечает за редактирование разрешения экрана, т. к. при 1366*768 или 1280*768 точек, картинка обрезается, но при 800*768 (1024*768), все заставки работают нормально.
С уважением vav54
 
Игорь_ГоДата: Чт, 23.10.2014, 21:35 | Сообщение # 673
Отмычка
Пользователи
Сообщений: 26
Награды: 0
Репутация: [ 0 ]

Всем привет!
Если сравнить графику "сталкер" и "иетро", то очевидно, что у "метро" графика на порядок четче, реалистичней и т.п., хотя вытянутые из метро текстуры смотрятся в "макче" не лучше сталкеровских, посему "детский"вопрос: такая четкость в "метро" - заслуга движка или?..

P.S.
Извиняюсь, ежели не в ту тему сугул вопросик
 
denis2000Дата: Чт, 23.10.2014, 21:59 | Сообщение # 674
Полевой исследователь
Ученые сталкеры
Сообщений: 2399
Награды: 35
Репутация: [ 1918 ]

Игорь_Го, Позвольте тогда и вас спросить. Если бы от движка не зависело качество картинки, то к чему тогда лицензия на некоторые из них под 1 миллион баксов?

"Он ловко выхватил из-под себя табуретку и очень метко и сильно бросил ее в докладчика..."
(Чугунный всадник)
 
Игорь_ГоДата: Пт, 24.10.2014, 00:25 | Сообщение # 675
Отмычка
Пользователи
Сообщений: 26
Награды: 0
Репутация: [ 0 ]

Мда.... говорила мне прабабушка: иди в программисты,- и будет тебе Щастье!
denis2000, благодарю за подтверждение моей гениальной догадки... если б и "сталкер" с такой графикой сделать!..
 
Поиск: