Перейти к контенту

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


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

Ребят, подскажите как сделать спот на карте без его описания?

пробовал так: 

level.map_add_object_spot_ser(actor_obj.id, "alife_presentation_krug","")

но ничего не вышло: во время игры на споте написано - no hint

P.s: поиском пользовался, ответов не находил

Ссылка на комментарий

Есть некоторые вопросы.

1.Может ли движок использовать иные форматы DDS?

2.Используются ли в сталкере текстуры иного формата, нежели dxt(1-5)?

3.Есть ли смысл использовать dds текстуры иного формата, нежели dxt(1-5)?

По первому есть предположение, что да, может, ибо функции DirectX должны читать родные форматы. Вообще говоря он(DirectX) может читать не только DDS, если верить офф сайту. Но эти ли функции используются для загрузки тектуры, ведь в OGF именно путь до файла. Что скажете про 2 и 3?

PS: "изобретаю велосипед" по чтению DDS, вот и думаю, пилить чтение других форматов или нет.

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

ТЧ 1.0004. SAP и Trans mod

github

Ссылка на комментарий

Есть вопрос, по поводу параметров скорости передвижения монстров - Velocity_***.

А именно значения для каждого типа движения. Выше есть комментарий

; speed factors			linear | angular_real | angular_path | min |  max
Но непонятны последние 4 параметра. Может кто в курсе?

 


1.Может ли движок использовать иные форматы DDS?

Точно не помню, но вроде еще в TGA поддерживает.

 

2.Используются ли в сталкере текстуры иного формата, нежели dxt(1-5)?

Да, сохранял некоторые текстуры в высококачественном DDS.

 

 

@norm-chel, попробуй пробел записать: " ". Или создай пустой идентификатор "no hint" в файлах описания.

Изменено пользователем Shadows
Ссылка на комментарий

, прописал пробел " " - выдаёт лог ошибки

Expression : assertion failed


Function : CUILine::GetLength_inclusiveWord_1
File : E:\stalker\patch_1_0004\xr_3da\xrGame\ui\UILine.cpp
Line : 410
Description : pos.word_1.exist()

 

проверял дважды, а как создать пустой идентификатор - чего-то не догоняю... :blink:

Ссылка на комментарий

Подскажите пожалуйста, вдруг кто нибудь что нибудь придумал  с стоячими нпс?

НПС стоят на месте и не двигаются как правило после диалогов и взаимодействий. Он не просто отключается, он просто стоит и следит за тобой, поворачивается в твою сторону и тд. В каких-то модах давно ведь уменьшали таймер акцента внимания на ГГ. Может кто нибудь с этим разобрался?

Ссылка на комментарий

Добрый день, подскажите какую функцию нужно прописать, чтобы после прочтения диалога включилось видео?(как в солянке , после разговора с Пличко.) За ранее благодарен.

Ссылка на комментарий

Всем привет снова! Слышал что в NLC ещё давно реализовали арты со свойством из чн ( умение перенасить больший вес, например +10 кг и так далее). Помогите пожалуйста разобраться!!! Очень хочу добавить эти свойства своим артефактам!

Изменено пользователем BrokenEarth
Ссылка на комментарий

Друзья, у меня есть 2 вопроса касательно 1.0004 версии (да и вообще любой версии) без модов:

1) если я прохожу на Бар без документов с Агропрома (или без прохождения основной ветки квестов), то когда я пытаюсь поговорить с Барменом, Арни или Осведомителем, происходит 100%-ный вылет без лога... Как вы уже поняли - эти нпс между собой почти никак не связаны, так в чём же дело???

2) как сделать чтобы при убийстве нпс в группировке "trader" (Торговец) не происходило вылета???

Ссылка на комментарий

Всем привет сталкеры.) Решил создать НПС с логикой охранника (схема zoneguard ). Заспавнил сталкера , создал смартеррейн и 2 спейс рестриктора . Также прописал в путях walk , look.

При загрузке происходит вылет. 

Expression : fatal error

Function : CScriptEngine::lua_error
File : E:\stalker\patch_1_0004\xr_3da\xrGame\script_engine.cpp
Line : 73
Description :
Arguments : LUA error: d:\games\s.t.a.l.k.e.r\gamedata\scripts\_g.script:20: bad argument #2 to 'format' (string expected, got no value)

 

 

Вот посмотрите alife_l01_escape и логика нпс : 

[871]
; cse_abstract properties
section_name = stalker
name = esc_noobik
position = -213.266388,-7.910840,-23.080528
direction = 0,0,0

; cse_alife_trader_abstract properties
money = 5000
character_profile = esc_noobik

; cse_alife_object properties
game_vertex_id = 69
distance = 0
level_vertex_id = 40075
object_flags = 0xffffffbf
custom_data = <[smart_terrains]
esc_ukr = true

[logic]
cfg = scripts\guard_logic.ltx
END
story_id = 10000

; cse_visual properties
visual_name = actors\soldier\soldier_beret_1

; cse_alife_creature_abstract properties
g_team = 0
g_squad = 1
g_group = 1
health = 1
dynamic_out_restrictions =
dynamic_in_restrictions =

upd:health = 1
upd:timestamp = 0
upd:creature_flags = 0
upd:position = -213.266388,-7.910840,-23.080528
upd:o_model = 0
upd:o_torso = 0.028013030067086,0,0.9996075630188
upd:g_team = 0
upd:g_squad = 1
upd:g_group = 1

; cse_alife_monster_abstract properties

upd:next_game_vertex_id = 65535
upd:prev_game_vertex_id = 65535
upd:distance_from_point = 0
upd:distance_to_point = 0

; cse_alife_human_abstract properties
predicate5 = 1,2,2,1,2
predicate4 = 0,1,1,1

; cse_ph_skeleton properties

upd:start_dialog =

; se_stalker properties


[872]
; cse_abstract properties
section_name = space_restrictor
name = esc_noobik_guard_kill_zone
position = -235.432271,-11.955380,-8.549372
direction = 0,0,0

; cse_alife_object properties
game_vertex_id = 67
distance = 0
level_vertex_id = 20205
object_flags = 0xffffff3e


; cse_shape properties
shapes = shape0
shape0:type = box
shape0:axis_x = 22.37,0,0
shape0:axis_y = 0,22.37,0
shape0:axis_z = 0,0,22.37
shape0:offset = 0,0,0
; cse_alife_space_restrictor properties
restrictor_type = 3

[873]
; cse_abstract properties
section_name = space_restrictor
name = esc_noobik_guard_warn_zone
position = -194.129272,-5.444299,-25.573578
direction = 0,0,0

; cse_alife_object properties
game_vertex_id = 69
distance = 0
level_vertex_id = 58089
object_flags = 0xffffffbe

; cse_shape properties
shapes = shape0
shape0:type = box
shape0:axis_x = 30.17,0,0
shape0:axis_y = 0,30.17,0
shape0:axis_z = 0,0,30.17
shape0:offset = 0,0,0

; cse_alife_space_restrictor properties
restrictor_type = 3


 

[logic]
active = zoneguard

[zoneguard]
path_walk = esc_noobik_guard_walk1
path_look = esc_noobik_guard_look1
zone_guard = esc_noobik_guard_kill_zone
zone_warn = esc_noobik_guard_warn_zone
no_move = true
team = guard1

 

 

Подскажите  пожалуйста , что я неправильно делаю . Заранее благодарю. (Я думаю, что вылет происходит из-за того , что у меня в спейс рестрикторах нет логики. Что нужно написать , чтобы при входе в спейс рестр. актора убивали?).

Ссылка на комментарий

а еще smart_terrain (забыл скопировать сюда)

[870]


; cse_abstract properties
section_name = smart_terrain
name = esc_ukr
position = -213.721481,-7.887858,-22.157705
direction = 0,0,0

; cse_alife_object properties
game_vertex_id = 69
distance = 9.09999942779541
level_vertex_id = 40076
object_flags = 0x==3e
custom_data = <[smart_terrain]
type = esc_ukr
capacity = 1
squad = 1
groups = 1
END

; cse_shape properties (параметры шейпа объекта)
shapes = shape0
shape0:type = sphere
shape0:offset = 0,0,0
shape0:radius = 6.55957102775574

; cse_alife_space_restrictor properties
restrictor_type = 3

; se_smart_terrain properties

 

Изменено пользователем TIGER_VLAD
Ссылка на комментарий

Привет, ребята. У меня возник очень интересный вопрос - можно ли заспавнить невидимую преграду для актора? Это для того, чтобы я не мог перейти на другую локацию раньше времени... Либо, помогите сделать как в ЧН - надпись типо - "Вы не можете найти путь дальше" (или что-то вроде этого, и нас перебрасывает назад, как если нажать "нет" при выборе "Перейти ли на следующую локацию")

Ссылка на комментарий

Знаю, что эта ошибка преследует многие моды. Вот и я на нее наткнулся - созданный тайник пуст. В чем причина?

 

[8978]

; cse_abstract properties
section_name = inventory_box
name = lab_x8_key_card_inventory_box
position = -48.643272399902,30.386346817017,-435.38861083984
direction = 0,0,0

; cse_alife_object properties
game_vertex_id = 3101
distance = 0
level_vertex_id = 277927
object_flags = 0xffffff3b
custom_data = <<END
[logic]
cfg = scripts\treasure_inventory_box.ltx
END
story_id = 10011

; cse_visual properties
visual_name = physics\equipment_cache\equipment_instrument_case_01_case

[8979]

; cse_abstract properties
section_name = inventory_box
name = lab_x8_key_card_inventory_box_visual
position = -48.643272399902,30.386346817017,-435.38861083984
direction = 0,0,0

; cse_alife_object properties
game_vertex_id = 3101
distance = 0
level_vertex_id = 277297
object_flags = 0xffffff3b

; cse_visual properties
visual_name = objects\dynamics\decor\tv_1_br

 

 

 

 

;---AleX MOD---
10000 = "radar_level_changer_to_generators"
10001 = "generators_level_changer_to_radar"
10002 = "generators_level_changer_to_labx8"
10003 = "labx8_level_changer_to_generators"
10004 = "lab_x8_documents_part_1"
10005 = "lab_x8_documents_part_2"
10006 = "lab_x8_documents_part_3"
10007 = "lab_x8_map_point"
10008 = "generators_alex"
10009 = "generators_taurus"
10010 = "generators_werewolf"
10011 = "gen_lab_x8_key_card_shron"
;---AleX MOD---

 

 

 

 

gen_lab_x8_key_card_shron

 

[gen_lab_x8_key_card_shron]
target = 10011
name = gen_lab_x8_key_card_shron
description = gen_lab_x8_key_card_shron_descr
items = lab_x8_key_card
condlist = {=npc_profile(generators_taurus)}

 

 

 

 

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; Генераторы
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
[lab_x8_key_card]:identity_immunities
GroupControlSection = spawn_group
discovery_dependency =
$spawn = "devices\quest_items\lab_x8_key_card"
;$prefetch = 32
class = II_ATTCH
cform = skeleton
visual = equipments\item_flash_2.ogf
radius = 1
quest_item = true

description = item_lab_x8_key_card_desc

inv_name = item_lab_x8_key_card
inv_name_short = item_lab_x8_key_card
inv_weight = 0

inv_grid_width = 1
inv_grid_height = 1
inv_grid_x = 9
inv_grid_y = 40
cost = 0

 

 

 

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

aka Stalker_AleX333
 
Мои проекты  - ЯндексДиск   |   Я на Gamer-Mods.ru

Ссылка на комментарий

@TIGER_VLAD, схема zoneguard не подключена к игре, хотя и вполне рабочая. Тем не менее легко "эмулируется" схемой walker и теми же двумя рестрикторами.


@norm-chel, спавнишь на месте перехода рестриктор, чуть более размером нежели шейп перехода. Также ставишь два пути состоящих из одной точки каждый, в один из которых ГГ будет перемещён, в другую будет смотреть.  И в логику рестриктора вписываешь что-то подобное:

 

[logic]
active = sr_tip@can_not
 
[sr_tip@can_not]
name = айди_текста_из_файла_локализации
sender = stalker
cond = {-infoportion}
on_actor_inside = {-infoportion} sr_teleport@go_away
 
[sr_teleport@go_away]
point = путь_на_который_переместит_ГГ
look = путь_в_который_ГГ_будет_смотреть
timeout = 500
on_timer = 1500|sr_tip@can_not

При входе в такой рестриктор сначала будет выдано сообщение с текстом указанным текстом, конкретно указывается id из файла локализации. Затем ГГ переместится на точку указанного пути point и будет смотреть в точку пути look. Так будет повторяться до тех пор, пока у ГГ будет отсутствовать инфопорция infoportion.


, допиши "циферку один" после кондлиста:

condlist = {=npc_profile(generators_taurus)} 1
Ссылка на комментарий

Друзья, помогите! Можно ли сделать свойства артефактов как в ЧН? Чтобы radiation_restore_speed = -0.0010 равнялось в игре не "Радиация -10" , а, скажем "Радиация -2", при этом эффект чтобы был как если бы висел артефакт с "Радиацией -10". Ну вообщем вы поняли, уменьшить числа , но эффект оставить тем же.

И второй вопрос - мой пост выше - как в ТЧ сделать арты увеличивающие переносимый вес (Скажем +20кг), ведь в NLC это удалось реализовать... Очень жду ответа!!!

Ссылка на комментарий

@Потенциал, да нет, в этом случае свойство понижать радиацию снизится, а мне нужно чтобы в игре оно отображалось как - 2, а в конфиге было -10. Мне нужно чтобы радиация прописывалось также как и энергия( в конфиге радиация соотношается 1:1 (-0.0002 в ARtefacts.ltx и  -2 в игре) а скажем энергия вовсе не 1:1 ( power_restore_speed = 0.0062 в конфиге, а вот в игре почему-то +113). Я не знаю как понятнее объяснить... Нужно чтобы как в ЧН и ЗП цифры были маленькие (от 1 до 6), а артефакты реально помогали в игре, чтобы например Химзащита была +4, а защищала она как +20 и т.д.

Изменено пользователем BrokenEarth
Ссылка на комментарий

1. Возможно ли изменить отображение на экране заголовка квеста? Ибо вот в таком виде игрок наблюдает во весь экран заголовок подзадания, а не главного квеста. 

 

<game_task id="lab_x8_find_key_card_task" prio="455">


<title>Найти способ открыть дверь в лаборторию Х-8</title>

<objective>
<text>Найти способ открыть дверь в лаборторию Х-8</text>
<icon>ui_iconsTotal_dar_codedoor_2</icon>
<object_story_id>lab_x8_map_point</object_story_id>
<infoportion_complete>lab_x8_find_key_card_complite</infoportion_complete>
</objective>

<objective>
<text>Открыть дверь в лабораторию</text>
<object_story_id>lab_x8_map_point</object_story_id>
<infoportion_complete>lab_x8_door_open</infoportion_complete>
</objective>
</game_task>

 

 

2. Так же, ищу корректную функцию изъятия похожих предметов из инвентаря ГГ, эта работала корректно только с двумя:



function give_lab_x8_documents_saxarov(first_speaker, second_speaker)
for c= 1, 2, 3 do
dialogs.relocate_item_section(first_speaker, "lab_x8_documents_part_"..c, "out")
end
end

3. Как отловить факт взятия предмета из тайника? Я попробовал через space restrictor над тайником, но, похоже, он срабатывает до того как ГГ заберет предмет.

 

4. Кто-нибудь знает, где находится логика Шустрого? В аллспавне вроде ничего нет, в скриптах только упоминание его в гулаге на Кордоне.

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

aka Stalker_AleX333
 
Мои проекты  - ЯндексДиск   |   Я на Gamer-Mods.ru

Ссылка на комментарий

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

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

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

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

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

Войти

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

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

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