[SoC] Ковыряемся в файлах - Страница 556 - Скрипты / конфиги / движок - AMK Team
Перейти к контенту

[SoC] Ковыряемся в файлах


Рекомендуемые сообщения

Такой вопрос настроил через билд 2232 fire_ lpoint, но теперь сместилась точка огня при прицеливании.. Какая взаимосвязь между ними?

Доброго дня.

Подскажите, пожалуйста, как создать телепорт в определенную часть локаций? Я могу создать аномалию "телепорт" или телепортироваться с помощью ACS, но вот связать аномалию и телепорт не получается!

Если оффтоп - направьте на нужный пост, пожалуйста.

Не совсем понял, что такое "ACS", но связывать аномалию (партиклы) и телепорт (спейсрестриктор) не нужно, достаточно просто поставить их на одном и том же месте, собственно как это сделано на ЧАЭС2.

Изменено пользователем ColR_iT

Хемуль36рус, "править" ему логику. Для этого смотри файл gulag_mil_village.ltx

  • Нравится 1

Неважно – сколько у тебя друзей. Важно - сколько из них помогут тебе в трудную минуту и сколько вспомнят о тебе когда им хорошо.

"Худ" и "Умное выпадание частей монстров" для Народной солянки

Эээ... Всем Солнца. 

Опять вопрос по телепортам: я вот хочу привязать телепортацию с взятием определенного предмета, или даже лучше - сделать телепорт на подобие телепорта Стрелка.

Н-да, кстати, может кто сказать как расчитать игровую мощность оружия?

Вот у АК-74 дульная энергия 1316 Дж, а в игре стоит 0.72 (чего-то). Каким местом считать? У ОИЦВ хит_пауэр = 0.76, а у АУГ он равен 0.81. Это как? Длина ствола в игре учитывается?

 

Если просишь ответы в ЛС, то и задавай в таком случае вопросы тоже в ЛС. Тема общественная и на стол заказов/запросов не очень то и похоже, так что будь любезен... а кто захочет, тот сам тебе в ЛС и ответит.

ColR_iT



ColR_iT, понял.

Изменено пользователем ColR_iT

Безлоговый вылет при открытии инвентаря. В config/ui всё правильно. В system.ltx тоже, где же ошибка?

Изменено пользователем MrGroove91

Доброго времени суток! 

Я столкнулся с одной жуткой проблемой. Я заспавнил НПС в лагере новичков и прописал ему в логике путь в один из близлежащих домиков. Он заходит в первую дверь, затем поворачивает направо, чтобы зайти в комнату, и тут он встает на пороге, а через пару секунд вылет с логом:

 

Expression    : fatal error
Function      : CScriptEngine::lua_error
File          : E:\stalker\patch_1_0004\xr_3da\xrGame\script_engine.cpp
Line          : 73
Description   : <no expression>
Arguments     : LUA error: ... publishing\s.t.a.l.k.e.r\gamedata\scripts\_g.script:1150: bad argument #2 to 'format' (string expected, got nil)
 
Я в панике. У меня были грандиозные планы насчет заселения НПС в домики, а тут на тебе...
Вот скриншоты, если они чем-то помогут. 
 
PS: год назад я сталкивался с подобной проблемой, когда пытался провести НПС через тоннель слева от поста военных на мосту. 

Пишу мод с неповторимым сюжетом.

Нужны "модельеры"

Заинтересованным писать в ЛС

J.A.A..gif

@J.A.A., в Деревне новичков в домиках нет аи-сетки, поэтому туда ты никого не отправишь, а на сколько мне изместно, никто этого не правил.

J.A.A.

 Если планы грандиозные используй схему движения к вертексу(не помню принцип работы, но вроде бы и без аи-сетки нормально. Забыл функция utils.send_to_nearest_accessible_vertex согласовывается с АИ-картой или нет) называется она xr_move, или просто спавни нпс там, и в схеме walker пропиши ему состояние какое хочешь(например анимка def_state_standing = sit_ass). Сам так делал, но если НПС попытается сдвинуться с этого места, то либо уйдет под землю, либо пойдет по воздуху.

Подскажите где в гулаге блокпоста на кордоне прописаны профили трёх солдат, патрулирующих дорогу туда-сюда. Хочу их удалить. И ещё, как прописать товарищу с того же блокпоста, который бдительно выцеливает в режиме снайпера дорого с АКС74У вместо автомата снайперскую винтовку. Видел такое в одном моде, ковырял, но так и не понял, как ему выдали эту самую снайперку. Заранее спасибо.

@J.A.A., в Деревне новичков в домиках нет аи-сетки, поэтому туда ты никого не отправишь, а на сколько мне изместно, никто этого не правил.

В объединённой локации Кордон-Свалка, которую ОГСЕ-команда сделала, в домиках АИ-сетка есть.

---------------------------------

www.amk-zone.de

@ColR_iT, не подскажешь как поправить AI сетку? Просто не хочется иметь дел с новыми картами. Хочу до конца использовать ресурсы дефолтных карт.

 

Декомпилятор вместе с СДК в зубы и вперёд...

ColR_iT

Изменено пользователем ColR_iT

Пишу мод с неповторимым сюжетом.

Нужны "модельеры"

Заинтересованным писать в ЛС

J.A.A..gif

Может кто подсказать как сделать выпадение с трупов гитар, гармошек, пда и тд? Прописал в файле character_items.xml а их всё равно после смерти НПС нет.

@Старлей, ты говоришь про  схему движения к вертексу. Не мог бы поделиться ссылкой, где можно ознакомиться с этой схемой?

 

 

Пишу мод с неповторимым сюжетом.

Нужны "модельеры"

Заинтересованным писать в ЛС

J.A.A..gif

J.A.A.

В Sigerous Mod она есть, Sigerous есть и для ТЧ, ЧН и ЗП. Выбирай соответствующий

В оригинальной ТЧ, в квесте на Кордоне по зачистке АТП, группа Петрухи: сам Петруха обычный, на мини-карте отображается желтой точкой, а два его напарника - на мини-карте не отображаются. Подскажите, что у них и где прописано, что их на мини-карте не видно ?

В файле логики Кордона ищи строчку show_spot = false. Закомеентируй или удали ее совсем. И будет тебе счастье.

Попутно тоже спрошу. Есть мод на базе ОГСМ для ТЧ с добавленными локациями. Но фишка в том, что на этих локах нет укрытий от выброса. А при попытке спавна получаю вылет.

 

function first_run()

 

local ind

---------------------------

-- Укрытия в Предбаннике --

---------------------------

-- Подвал справа от тоннеля

spawn_restrictor("predbannik", vector():set(2.51,13.23,57.36), 947350, 3996, "stalker", 3)

------------------------

-- Укрытия на Кордоне --

------------------------

-- Бункер Сидора

spawn_restrictor("l01_escape", vector():set(-249.9,-24.8,-134.4), 10136, 7, "fake_", 3)

-- Лагерь новичков

spawn_restrictor("l01_escape", vector():set(-206.5,-22.53,-128.1), 46582, 58, "stalker", 3)

spawn_restrictor("l01_escape", vector():set(-211.4,-23.17,-129.5), 41963, 59, "stalker", 3)

 

 

Добавлена строка, где написано "predbannik"

 

Expression : fatal error

Function : CInifile::r_section

File : E:\stalker\sources\trunk\xrCore\Xr_ini.cpp

Line : 342

Description :

Arguments : Can't open section 'predbannik_hide_restrictor'

 

 

 

function spawn_restrictor(p_level, p_vector, p_lv, p_gv, p_type, p_radius)

 

local p_name

 

if p_type == "pp" then

p_name = p_level.."_psy_restrictor"

else

p_name = p_level.."_hide_restrictor"

end

 

local obj = alife():create(p_name, p_vector, p_lv, p_gv)

 

local hide_name

if string.find(p_type, "_") then hide_name = "ogsm_common_hide"

else hide_name = "ogsm_"..p_type.."_hide" end

 

local mapspot

if p_radius < 4 then mapspot = "ogsm_hide_spot_min"

elseif p_radius < 11 then mapspot = "ogsm_hide_spot_mdl"

else mapspot = "ogsm_hide_spot_max" end

 

local packet = net_packet()

 

obj:STATE_Write(packet)

 

-- свойства cse_alife_object

local game_vertex_id = packet:r_u16()

local cse_alife_object__unk1_f32 = packet:r_float()

local cse_alife_object__unk2_u32 = packet:r_s32()

local level_vertex_id = packet:r_s32()

local object_flags = packet:r_s32()

local custom_data = packet:r_stringZ()

local story_id = packet:r_s32()

local cse_alife_object__unk3_u32 = packet:r_s32()

 

-- свойства cse_shape

local shape_count = packet:r_u8()

local shape_type

local center

local radius

 

if shape_count == 0 then

shape_type = 0

center = vector():set(0,0,0)

radius = 10.0

shape_count = 1

else

for i=1,shape_count do

local shape_type = packet:r_u8()

if shape_type == 0 then

local center = packet:r_vec3()

local radius = packet:r_float()

else

local v1 = packet:r_vec3()

local v2 = packet:r_vec3()

local v3 = packet:r_vec3()

local v4 = packet:r_vec3()

end

end

end

 

-- свойства cse_alife_space_restrictor

local restrictor_type = packet:r_u8()

 

-- свойства cse_alife_object

packet:w_u16(game_vertex_id)

packet:w_float(cse_alife_object__unk1_f32)

packet:w_s32(cse_alife_object__unk2_u32)

packet:w_s32(level_vertex_id)

packet:w_s32(object_flags)

 

if p_type == "pp" then

custom_data = "[logic] \nactive = ogsm_effector \n[ogsm_effector]"

else

custom_data = "[logic] \nactive = sr_mapspot \n[sr_mapspot] \nhint = "..hide_name.." \nlocation = "..mapspot

end

 

local cd = parse_custom_data(custom_data)

if not cd then cd={} end

if not cd.parameters then cd.parameters = {} end

cd.parameters.community = p_type

cd.parameters.radius = p_radius

custom_data = gen_custom_data(cd)

 

packet:w_stringZ(custom_data)

packet:w_s32(story_id)

packet:w_s32(cse_alife_object__unk3_u32)

 

-- свойства cse_shape

packet:w_u8(shape_count)

 

for i=1,shape_count do

packet:w_u8(shape_type)

if shape_type == 0 then

packet:w_vec3(center)

packet:w_float(p_radius)

else

packet:w_vec3(v1)

packet:w_vec3(v2)

packet:w_vec3(v3)

packet:w_vec3(v4)

end

end

 

-- свойства cse_alife_space_restrictor

packet:w_u8(restrictor_type)

 

obj:STATE_Read(packet, packet:w_tell()-packet:r_tell())

 

return obj

end

 

 

 

Собственно, где копать, может подскажете? Я правильно понимаю, что скрипт не видит новых локаций, или что другое не так прописано?

 

AndrewSol, файл логики Кордона называется gulag_escape.ltx. Лежит в gamedata\config\misc

Изменено пользователем AndrewMor

Сталкер - наше всё!

У тебя в логе же чётко указанно что игра не может найти в конфигах секцию  [predbannik_hide_restrictor]
В функции спавна рестриктора ты передаёшь имя уровня, а в скрипте к нему потом дописывается 
_hide_restrictor
Найди в конфигах по аналогии например 
l01_escape_hide_restrictor и глянь что туда писать надо. 

Изменено пользователем *Shoker*

Можно просто Shoker, форум АМК съел моё старое имя и не хочет отдавать о_О

Мастер аномалий на свою заднюю точку.

У тебя в логе же чётко указанно что игра не может найти в конфигах секцию [predbannik_hide_restrictor] В функции спавна рестриктора ты передаёшь имя уровня, а в скрипте к нему потом дописывается _hide_restrictor Найди в конфигах по аналогии например l01_escape_hide_restrictor и глянь что туда писать надо.

 

Я понимаю, что невозможно открыть такую секцию. Но откуда она читается (или берется) - не понимаю. В самом начале скрипта написано restrictor_list={}. Думаю, что это список рестрикторов, он и заполняется.

 

Я выше привел полностью функцию spawn_restictor. На всякий случай привожу функцию, где этот самый локация_hide_restrictor формируется:

 

function get_level_mobs()

for i=1,65535 do

local obj = alife():object(i)

if obj then

if string.find(get_monster_portion(obj.id), level.name()) then

list_mob_ids[obj.id] = obj.id

end

if string.find(obj:name(), level.name().."_hide_restrictor") then

table.insert(restrictor_list, obj)

end

if string.find(obj:name(), level.name().."_psy_restrictor") then

table.insert(psy_list, obj)

end

end

end

end

 

 

Shoker, я в натуре дико протупил. Он же в system.ltx прописан :(

Изменено пользователем AndrewMor
  • Нравится 1

Сталкер - наше всё!

***STOP*** file 'C:\DEV\Projects\XRAY\xr3DA\xrGame\Weapon.cpp', line 410.
***Reason***: *** Assertion failed ***
Expression: !lst.empty()
shoot1
***STOP*** file '(null)', line 0.
***Reason***: *** Internal Error **
Saved dump file to 'logs\xray_1_11-12-13_20-03-32.mdmp'

 

Заменил мадель форта на пм, двбы настроить файр поинт в билде 2232, но вот вылет на спавнинге.

Что это может быть?

Создайте аккаунт или авторизуйтесь, чтобы оставить комментарий

Комментарии могут оставлять только зарегистрированные пользователи

Создать аккаунт

Зарегистрировать новый аккаунт в нашем сообществе. Это несложно!

Зарегистрировать новый аккаунт

Войти

Есть аккаунт? Войти.

Войти
  • Недавно просматривали   0 пользователей

    • Ни один зарегистрированный пользователь не просматривает эту страницу.
×
×
  • Создать...