Войти на сайт Регистрация Лента форума Пользователи Правила сайта Поиск по форуму
Модератор форума: 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]
 
denis2000Дата: Сб, 31.01.2015, 18:22 | Сообщение # 1111
Полевой исследователь
Ученые сталкеры
Сообщений: 2399
Награды: 35
Репутация: [ 1918 ]

Цитата asd123 ()
Что нужно править, чтобы добавить в логику строку show_spot как в ТЧ

Ничего. Эту опцию не убирали ни в ЧН ни в ЗП. (Вспоминаем отсутствие меток на трупе и на медике Треморе в его логове)

Цитата asd123 ()
И, что обозначает строка в логике move_pursue_formation? В xr_move о ней ничего не сказанно.

Да не ужели? В этом файле такая строка 8 раз упоминается. Означает как НПС движутся совместно с лидером (ГГ), позади, в линию или вокруг него.

Цитата asd123 ()
работают ли на НПС, которые не состоят в сквадах смарт-коверы?

Смартковеры работают на НПС вне зависимости от их состояния в свадах ведь об этом они понятия не имеют.


"Он ловко выхватил из-под себя табуретку и очень метко и сильно бросил ее в докладчика..."
(Чугунный всадник)
 
asd123Дата: Сб, 31.01.2015, 18:37 | Сообщение # 1112
Mr. «Магма»
Военные сталкеры
Сообщений: 1386
Награды: 10
Репутация: [ 423 ]

Цитата denis2000
Означает как НПС движутся совместно с лидером (ГГ), позади, в линию или вокруг него.

Понятно. Спасибо.

Добавлено (31.01.2015, 18:37)
---------------------------------------------
denis2000, А добавляя space_restrictor`ы в all.spawn обязательно начинать новую игру? И есть ли возможность их создавать, не подвергаясь НИ


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




Сообщение отредактировал asd123 - Сб, 31.01.2015, 18:38
 
makdmДата: Сб, 31.01.2015, 18:54 | Сообщение # 1113
Рожденный в СССР
Разработчики
Сообщений: 1294
Награды: 29
Репутация: [ 1909 ]

asd123, всё что вы добавляете в all.spawn в alife файлы требует новой игры, если добавляете в way файлы, то новая игра не нужна.
Цитата asd123 ()
И есть ли возможность их создавать, не подвергаясь НИ

Легко и непринуждённо, и даже прописать им логику, изменяя state данные нет-пакета.

З.Ы. Также можно спавнить и вертолёты, аномалии и переходы, не испульзуя all.spawn


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


Сообщение отредактировал makdm - Сб, 31.01.2015, 19:00
 
asd123Дата: Сб, 31.01.2015, 19:11 | Сообщение # 1114
Mr. «Магма»
Военные сталкеры
Сообщений: 1386
Награды: 10
Репутация: [ 423 ]

makdm, а можно поконкретнее?

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


 
makdmДата: Сб, 31.01.2015, 20:07 | Сообщение # 1115
Рожденный в СССР
Разработчики
Сообщений: 1294
Награды: 29
Репутация: [ 1909 ]

asd123, Вот - конкретней некуда.

Если покажется сложным и непонятным, то значит ещё не пришло ваше время.
Нужно немного подучиться.

http://rghost.ru/8DwGXdVSL


Терпение......
И все получится!
 
Ay49MihasДата: Вс, 01.02.2015, 08:25 | Сообщение # 1116
Полевой исследователь
Ученые сталкеры
Сообщений: 218
Награды: 9
Репутация: [ 83 ]

Цитата asd123 ()
а можно поконкретнее?

Делаю мод к SGM'у. У меня было так:
Код
create_restrictor("scripts\\red_forest\\red_tower_door_restrictor.ltx", 2, 27.030838012695, 0.0048873424530029, 15.30470085144, 80231, 2186)

То есть, создаёшь рестриктор с заранее созданной логикой из файла. Использована функция create_restrictor() из SGM'а, которая является обёрткой к модификации нетпакета.


Сообщение отредактировал Ay49Mihas - Вс, 01.02.2015, 08:41
 
asd123Дата: Вс, 01.02.2015, 10:50 | Сообщение # 1117
Mr. «Магма»
Военные сталкеры
Сообщений: 1386
Награды: 10
Репутация: [ 423 ]

Ay49Mihas, ага.. то есть, эта модификация добавляет новые команды для спавна, в которых еще и логику можно вбивать сразу же?
А как этой модификацией спавнить вертолеты, аномалии, переходы?


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




Сообщение отредактировал asd123 - Вс, 01.02.2015, 10:56
 
Ay49MihasДата: Вс, 01.02.2015, 11:25 | Сообщение # 1118
Полевой исследователь
Ученые сталкеры
Сообщений: 218
Награды: 9
Репутация: [ 83 ]

Цитата asd123 ()
то есть, эта модификация добавляет новые команды для спавна, в которых еще и логику можно вбивать сразу же?

Не команды. Это функция, которая реализована в рамках мода.
Код
function create_restrictor(custom_add,radius,x,y,z,lv,gv)
if z==nil and lv==nil and gv==nil then
se_obj=alife():create("space_restrictor",level.vertex_position(x),x,y)
else
se_obj=alife():create("space_restrictor",vector():set(x,y,z),lv,gv)
end
local custom_pack="[logic]\n".."cfg = "..custom_add
sgm_packet.setup_restrictor(se_obj,custom_pack,radius,x,y,z,lv,gv)
end

В ней вызывается прослойка работы с нетпакетом (sgm_packet, которая также реализована в рамках мода). То, что предложил makdm, это тоже прослойка работы с нетпакетом, но отвязанная от мода. Если SGM в досягаемости, можешь порыться в исходниках и узнать, как там всё реализовано.

Цитата asd123 ()
А как этой модификацией спавнить вертолеты, аномалии, переходы?

Ну поройся да посмотри smile Может имеет смысл весь этот функционал тебе взять из SGM'а в свой мод?


Сообщение отредактировал Ay49Mihas - Вс, 01.02.2015, 11:32
 
asd123Дата: Вс, 01.02.2015, 13:43 | Сообщение # 1119
Mr. «Магма»
Военные сталкеры
Сообщений: 1386
Награды: 10
Репутация: [ 423 ]

Ay49Mihas, да я не строю моды) Просто добавляю что-то в СГМ.. вертолеты, квесты, квестовиков в разных местах, рестрикторы.. Спасибо. Поищу что-нибуть.

Добавлено (01.02.2015, 13:43)
---------------------------------------------
У меня должно получиться примерно такое?
Код
function create_helicopter(name,model,custom_add,,x,y,z,lv,gv)   
          if z==nil and lv==nil and gv==nil then   
          se_obj=alife():create("helicopter",level.vertex_position(x),x,y)   
        else   
          se_obj=alife():create("helicopter",vector():set(x,y,z),lv,gv)   
   end   
          local custom_pack="[logic]\n".."cfg = "..custom_add
end


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




Сообщение отредактировал asd123 - Вс, 01.02.2015, 13:51
 
AkameДата: Вс, 01.02.2015, 21:45 | Сообщение # 1120
Удаленные



Дорогие друзья подскажите пожалуйста, как в Зов Припяти мода СГМ посл версии, ввести в игру, "Комбинезон Монолита" ?
Хотелось бы чтоб мой Дектирев ) с иконкой монолита, ступил ногой на Кордон, именно в этом комбинезоне ))
Нов игре его как я понял нет
как его прописать чтоб он был.
и что там вообще нужно писать... так как из ничего сложно создать что то....
 
juvecolДата: Вс, 01.02.2015, 22:31 | Сообщение # 1121
Снайпер 7-го усиленного оперативного квада
Долг
Сообщений: 445
Награды: 2
Репутация: [ 572 ]

Akame, я вступил на кордон в Экзоскелете Долга а монолита наверно там нет есть свобода и одиночек


® Чернобыль 12419-й день ®
® Лучшая группировка это ДОЛГ ®
® Легко обижается тот, кто не слишком собой доволен ®
 
asd123Дата: Вс, 01.02.2015, 22:39 | Сообщение # 1122
Mr. «Магма»
Военные сталкеры
Сообщений: 1386
Награды: 10
Репутация: [ 423 ]

Akame, есть два костюма группировки Монолит в СГМ 2.2 - экзоскелет и заслон(СЕВА)

Хотите сделать новый? Пожалуйста. Нужно править файл sgm_outfits.ltx. Добавить новый костюм - не так уж и сложно. Нужно иметь при себе ингредиенты: иконку, модельку(чтобы когда ГГ одевал комбез - менялся визуал), описание и название, дерево апгрейдов(не обязательно. Можете вписать уже существующий)


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




Сообщение отредактировал asd123 - Вс, 01.02.2015, 22:40
 
AkameДата: Вс, 01.02.2015, 22:41 | Сообщение # 1123
Удаленные



Цитата asd123 ()
иметь в руках иконку, модельку(чтобы когда ГГ одевал комбез - менялся визуал)


хм а где его обычно можно найти ?
PS Наверное из чистого неба ?


Сообщение отредактировал Akame - Вс, 01.02.2015, 22:50
 
asd123Дата: Вс, 01.02.2015, 23:02 | Сообщение # 1124
Mr. «Магма»
Военные сталкеры
Сообщений: 1386
Награды: 10
Репутация: [ 423 ]

Akame, Воу. Зачем в ЧН лезть? У нас ведь есть gameplay. Открываем character_desc_general, находим персонажей с такими названиями: sim_default_monolith_
Там смотрим строку visual. Там можно встретить такие модели:
stalker_monolith_1 - монолитовец в заслоне(СЕВА)
stalker_monolith_2 - Монолитовец в обычном костюме с противогазом
stalker_monolith_3 - Монолитовец в экзоскелете без сервоприводов.
stalker_monolith_4 - Экзоскелет монолита

Какую модель взять - решать Вам.


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




Сообщение отредактировал asd123 - Вс, 01.02.2015, 23:03
 
AkameДата: Пн, 02.02.2015, 00:18 | Сообщение # 1125
Удаленные



asd123,
[monolit_2]:outfit_base,mod_monolit_2,cost_monolit_2
GroupControlSection = spawn_group
discovery_dependency =
$spawn = "outfit\monolit_2"
class = E_STLK
cform = skeleton
visual = dynamics\outfit\stalker_monolith
actor_visual = actors\stalker_monolith\stalker_monolith_2.ogf
player_hud_section = actor_hud_05
ef_equipment_type = 3
inv_name = st_monolit_2_name
inv_name_short = st_monolit_2_name
description = st_monolit_2_description
inv_weight = 6.0
inv_grid_width = 2
inv_grid_height = 3
inv_grid_x = 36
inv_grid_y = 32
upgr_icon_x = 976
upgr_icon_y = 467
upgr_icon_width = 298
upgr_icon_height = 135
full_icon_name = npc_icon_monolit_2
slot = 6
full_scale_icon = 14,11
additional_inventory_weight = 13
additional_inventory_weight2 = 13
artefact_count = 6
default_to_ruck = false
immunities_sect = sect_monolit_2_immunities
burn_protection = 0.0750
shock_protection = 0.300
radiation_protection = 0.0040
chemical_burn_protection = 0.0425
telepatic_protection = 0.0
strike_protection = 0.25
explosion_protection = 0.2
wound_protection = 0.25
hit_fraction_actor = 0.75
bones_koeff_protection = set_value_24
control_inertion_factor = 1.2
power_loss = 0.6
upgrades = up_gr_firsta_killer_outfit, up_gr_firstc_killer_outfit, up_gr_firstd_killer_outfit, up_gr_firste_killer_outfit, up_gr_secona_killer_outfit, up_gr_seconc_killer_outfit, up_gr_second_killer_outfit, up_gr_secone_killer_outfit, up_gr_seconf_killer_outfit, up_gr_thirda_killer_outfit, up_gr_thirdc_killer_outfit, up_gr_thirdd_killer_outfit, up_gr_thirde_killer_outfit, up_gr_tech_fort_killer_outfit
installed_upgrades =
upgrade_scheme = upgrade_scheme_killer_outfit
[sect_killer_outfit_immunities]
burn_immunity = 0.03
strike_immunity = 0.0
shock_immunity = 0.03
wound_immunity = 0.03
radiation_immunity = 0.0
telepatic_immunity = 0.0
chemical_burn_immunity = 0.03
explosion_immunity = 0.03
fire_wound_immunity = 0.015
[sect_killer_outfit_immunities_add]
burn_immunity = -0.015
strike_immunity = 0.0
shock_immunity = -0.015
wound_immunity = -0.015
radiation_immunity = 0.0
telepatic_immunity = 0.0
chemical_burn_immunity = -0.015
explosion_immunity = -0.015
fire_wound_immunity = -0.005

выдает ошибку почему то...

Добавлено (02.02.2015, 00:18)
---------------------------------------------
в общем не знаю... полазаю в инете мож че найду... dry

 
Поиск: