Войти на сайт Регистрация Лента форума Пользователи Правила сайта Поиск по форуму
Модератор форума: 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]
 
sergej5500Дата: Вт, 23.12.2014, 00:39 | Сообщение # 886
Полевой Исследователь
Ученые сталкеры
Сообщений: 3793
Награды: 29
Репутация: [ 1355 ]

asd123,

Секция вертолета выглядит примерно так.

[cut=Вертолет][2355]

; cse_abstract properties
section_name = helicopter
name = rasvet_add_test_heli_1
position = -117.901756286621, 55.6206550598145, 476.79248046875
direction = 0, 0, 0
id = 65535
version = 128
script_version = 12
spawn_id = 2795

; cse_alife_object properties
game_vertex_id = 131
level_vertex_id = 705820
object_flags = 0xffffffb2
custom_data = <<END
[story_object]
story_id = rasvet_add_test_heli_1
[logic]
cfg = scripts\rasvet_addon\rasvet_add_test_heli_1.ltx
END

; cse_visual properties
visual_name = dynamics\vehicles\mi24\veh_mi24_u_01

; cse_motion properties

; cse_ph_skeleton properties
skeleton_name = idle

; cse_alife_helicopter properties
cse_alife_helicopter__unk1_sz = idle
engine_sound = vehicles\helicopter\helicopter

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;[/cut]

Что в section2.bin - не знаю. В section4.bin хранится информация о граф-пойнтах.
 
asd123Дата: Вт, 23.12.2014, 11:49 | Сообщение # 887
Mr. «Магма»
Военные сталкеры
Сообщений: 1386
Награды: 10
Репутация: [ 423 ]

Цитата sergej5500 ()
spawn_id = 2795

А это тут для чего?

Добавлено (23.12.2014, 02:51)
---------------------------------------------
Для реализации спавна нужно начинать игру заного?

Добавлено (23.12.2014, 03:55)
---------------------------------------------
Что-то вообще не получается. Не запаковывается. Якобы ошибка какая-то.. Может что-то еще нужно вписывать?

Добавлено (23.12.2014, 09:26)
---------------------------------------------
Сделал как Вы показали.. Теперь не запаковывается по вот такой странной причине:

Код

FATAL ERROR!
Function: stkutils::entity::import_ltx
Line: 187
Expression: defined $class_name
Description: unknown class for section helicopter

Добавлено (23.12.2014, 11:49)
---------------------------------------------
Блин, что этот вылет обозначает?

Код

[error]Expression    : !m_error_code
[error]Function      : raii_guard::~raii_guard
[error]File          : D:\prog_repository\sources\trunk\xrServerEntities\script_storage.cpp
[error]Line          : 748
[error]Description   : attempt to call a nil value


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




Сообщение отредактировал asd123 - Вт, 23.12.2014, 03:51
 
sergej5500Дата: Вт, 23.12.2014, 12:33 | Сообщение # 888
Полевой Исследователь
Ученые сталкеры
Сообщений: 3793
Награды: 29
Репутация: [ 1355 ]

asd123,

Советую скачать ACDC последней версии. Ссылку можно найти на АМК-Теам.

Судя по логу, вероятна ошибка в скрипте. Выложите свои правки.
 
asd123Дата: Вт, 23.12.2014, 13:03 | Сообщение # 889
Mr. «Магма»
Военные сталкеры
Сообщений: 1386
Награды: 10
Репутация: [ 423 ]

Цитата sergej5500 ()
Судя по логу, вероятна ошибка в скрипте. Выложите свои правки.

Только вертолет в alife_agroprom добавил.. Вот:
Код
[11838]

; cse_abstract properties
section_name = helicopter
name = agr_heli_1    
position = -131.696075439453, 10.9820022583008, 43.781810760498
direction = 0, 0, 0
version = 128
script_version = 12

; cse_alife_object properties
game_vertex_id = 1501
distance = 0
level_vertex_id = 55710
object_flags = 0xffffffb2
custom_data = <<END
[story_object]    
story_id = agr_heli_1
[logic]    
cfg = scripts\agroprom\helicopters\stalker_heli.ltx    
END

; cse_visual properties
visual_name = dynamics\vehicles\mi24\veh_mi24_u_02

; cse_motion properties

; cse_ph_skeleton properties
skeleton_name = idle    

; cse_alife_helicopter properties
cse_alife_helicopter__unk1_sz = idle    
engine_sound = vehicles\helicopter\helicopter


Добавлено (23.12.2014, 13:03)
---------------------------------------------
Как сделать smart_cover анимацию для персонажа? Как у меня на аватарке например. Имею ввиду: что именно вписывать в alife


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




Сообщение отредактировал asd123 - Вт, 23.12.2014, 13:04
 
sergej5500Дата: Вт, 23.12.2014, 13:35 | Сообщение # 890
Полевой Исследователь
Ученые сталкеры
Сообщений: 3793
Награды: 29
Репутация: [ 1355 ]

asd123,

Вертолет вполне обычный. Если он спавнится над поверхностью земли, то проблем быть не должно.

Что написано в логике вертолета?
 
asd123Дата: Вт, 23.12.2014, 19:35 | Сообщение # 891
Mr. «Магма»
Военные сталкеры
Сообщений: 1386
Награды: 10
Репутация: [ 423 ]

Цитата sergej5500 ()
Что написано в логике вертолета?

Код
[logic]  
active = heli_move@idle  

[heli_move@idle]  
path_move = agr_heli_move  
path_look = agr_heli_look  
engine_sound = true  
max_velocity = 100
combat_use_rocket = true  
combat_use_mgun = true  
rocket_delay = 3000  
combat_safe_altitude = -50  
mute = false

Добавлено (23.12.2014, 15:11)
---------------------------------------------

Цитата sergej5500 ()
Если он спавнится над поверхностью земли, то проблем быть не должно.

Странно.. кажется, Вы сами писали, что вертолет нужно спавнить за локацией. biggrin

Добавлено (23.12.2014, 19:35)
---------------------------------------------
Подскажите.. Можно ли создавать smart_cover`ы на локациях? Видел такую возможность в видео обучалке по СДК, но будет ли такое возможно через распакованный all.spawn? И, можно ли ковер делать стартовой анимацией?


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


 
denis2000Дата: Вт, 23.12.2014, 21:17 | Сообщение # 892
Полевой исследователь
Ученые сталкеры
Сообщений: 2399
Награды: 35
Репутация: [ 1918 ]

asd123, Частично касается этого вопроса КМБ Урок 18, для продвинутых есть КМБ Урок 60...

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

Цитата denis2000 ()
Частично касается этого вопроса КМБ Урок 18, для продвинутых есть КМБ Урок 60...

А можете ли Вы мне объяснить: Вертолет можно спавнить не за локацией, или нет? К примеру: Над блокпостом Кордона

Добавлено (23.12.2014, 23:45)
---------------------------------------------
Вновь создал вертолет в alife, но all.spawn опять не хочет запаковываться. Вот такую ошибку выдает постоянно:
Код
Died at stkutils/ini_file.pm line 52, <GEN12> line 47961.

Я тут подумал: А может в номере секции проблема? Просто, в alife_agroprom последний объект это укрытие от выброса. Оно имеет номер 11837, а мой вертолет имеет номер 16154. Этот номер вписал потому что 16153 есть в alife_marsh, а 54 соответственно нет.


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




Сообщение отредактировал asd123 - Вт, 23.12.2014, 23:49
 
denis2000Дата: Вт, 23.12.2014, 23:53 | Сообщение # 894
Полевой исследователь
Ученые сталкеры
Сообщений: 2399
Награды: 35
Репутация: [ 1918 ]

Цитата asd123 ()
Вертолет можно спавнить не за локацией, или нет? К примеру: Над блокпостом Кордона

Можно, конечно.

Цитата asd123 ()
А может в номере секции проблема?

Ид секции может быть любое целое число (вроде до 2^64), главное чтобы уникальное.


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

Эх, все равно не получается.. Вот такой у меня текст в alife_agroprom:
Код

[22222888888888888]

; cse_abstract properties
section_name = helicopter
name = agr_heli_1    
position = -155,-2.8292653560638,-381
direction = 0, 0, 0
version = 128
script_version = 12

; cse_alife_object properties
game_vertex_id = 96936
distance = 0
level_vertex_id = 1953
object_flags = 0xffffffb2
custom_data = <<END    
[story_object]       
story_id = agr_heli_1       

[logic]    
cfg = scripts\agroprom\helicopters\stalker_heli.ltx    
END

; cse_visual properties    
visual_name = dynamics\vehicles\mi24\veh_mi24_u_01    

; cse_motion properties    

; cse_ph_skeleton properties    
skeleton_name = idle       

; cse_alife_helicopter properties    
cse_alife_helicopter__unk1_sz = idle       
engine_sound = vehicles\helicopter\helicopter


Вроде бы всё нормально, но запаковываться наше "чудо" не хочет.


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




Сообщение отредактировал asd123 - Ср, 24.12.2014, 00:00
 
denis2000Дата: Ср, 24.12.2014, 00:11 | Сообщение # 896
Полевой исследователь
Ученые сталкеры
Сообщений: 2399
Награды: 35
Репутация: [ 1918 ]

Цитата asd123 ()
Died at stkutils/ini_file.pm line 52, <GEN12> line 47961.

Этот лог говорит о том, что компилятор не видит концовку контейнера custom_data. УБИРАЙТЕ ЛИШНИЕ СИМВОЛЫ В КОНЦОВКАХ СТРОК! В том числе пробелы.


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

Цитата denis2000 ()
Цитата asd123 ()Died at stkutils/ini_file.pm line 52, <GEN12> line 47961. Этот лог говорит о том, что компилятор не видит концовку контейнера custom_data.

Хм.. а после END не должно быть пробелов?

УБИРАЙТЕ ЛИШНИЕ СИМВОЛЫ В КОНЦОВКАХ СТРОК! В том числе пробелы. Скрипт критичен к этому. Более комментариев у меня нет. denis2000

Хотел лишь убедиться.. стёр один пробел после <<END и all.spawn запаковался. Спасибо Вам огромное.

Пожалуйста. denis2000

Добавлено (24.12.2014, 23:15)
---------------------------------------------
Начал новую игру, но при загрузке локации игра вылетела с таким логом:
Код
0023:021EB7ED lua.JIT.1.1.4.dll, lua_yield()


О чем он говорит?

p.s. после внедрения вертолета вчера не заходил. Вот сегодня зашел и поймал новую проблему

Похоже, у меня не получается с вертолетами "поладить". Можете мне скинуть all.spawn с уже внедренным спавном вертолета? Собственно, координаты и логику я предоставлял выше.


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




Сообщение отредактировал asd123 - Ср, 24.12.2014, 23:38
 
denis2000Дата: Чт, 25.12.2014, 19:54 | Сообщение # 898
Полевой исследователь
Ученые сталкеры
Сообщений: 2399
Награды: 35
Репутация: [ 1918 ]

Цитата asd123 ()
О чем он говорит?

Кроме программиста движка, никому ничего не говорит.

Проблема не в спавне и не в логике. Или в путях или вообще не в вертолете.


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

Цитата denis2000 ()
Кроме программиста движка, никому ничего не говорит. Проблема не в спавне и не в логике. Или в путях или вообще не в вертолете.

Вы знаете, у меня чудо-лог.. он постоянно выдает разные ошибки. Я вновь попытался начать новую игру, но уже получил новую ошибку. Вот такую:
Код
[error]Expression    : !m_error_code
[error]Function      : raii_guard::~raii_guard
[error]File          : D:\prog_repository\sources\trunk\xrServerEntities\script_storage.cpp
[error]Line          : 748
[error]Description   : ... - Зов Припяти\gamedata\scripts\smart_terrain.script:171: attempt to index field 'board' (a nil value)


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




Сообщение отредактировал asd123 - Чт, 25.12.2014, 20:34
 
denis2000Дата: Чт, 25.12.2014, 22:55 | Сообщение # 900
Полевой исследователь
Ученые сталкеры
Сообщений: 2399
Награды: 35
Репутация: [ 1918 ]

asd123, Как же вы такого добились?

"Он ловко выхватил из-под себя табуретку и очень метко и сильно бросил ее в докладчика..."
(Чугунный всадник)
 
Поиск: