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

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


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

судя по вылету - матюкается на неизвестный объект "stalker"

лучше все таки проверять наличие присутствия водки у ГГ так:

function have_a_vodka (stalker, player)

return db.actor:object ("vodka") ~= nil

end

Изменено пользователем Gonarh
Вопрос!!

Возможно ли скриптом менять параметры конфига?

т.е. к примеру:
if к примеру одет такой то костюм then
параметр cost в секции kolbasa файла items.ltx = 50
end



Чтобы файл переписывался? 0_о
Думаю только читать из конфига можно...

нет, не переписывался, а задавался новый параметр, ну или читался из скрипта а не из конифига


вот к примеру так можно сделать в скрипте чтоб параметр читался из конфига:
cost = system_ini():r_s32("kolbasa","cost")



а как сделать наооборот??

Изменено пользователем XMK
Я не уверен, попробуй на сталк-портале про анимации спросить. Там вроде подальше продвинулись в этом деле...

продвинулись не намного (сталкеры в немецких шлемах,девченка еще ничего)пак моделей из билда это хорошо но вот какой толк от анимаций без описания.Столкнулся сам с этой проблемой -названия анимаций с описанием и какие модели поддерживают-перерыл кучу форумов ,спрашивал -везде ответ один -открой мах и посмотри сам (как будто если бы я мог я бы спрашивал)

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

1. Как сменить локацию с помощью скрипта?

2. Возможно ли поменять переход из локи на локу скриптово?

 

===================================================

Смасибо!

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

Halford,

Да возможно. На этом принципе работает Hand Teleport. Посмотри в этом моде файл spawn_level_changer.script.

Здравствуйте люди добрые! Вы не могли бы подсказать как изменить спавн ГГ в начале игры? (ну то есть чтобы он появлялся не у Сидора). Понятное дело через all.spawn, но редактировать не получается. Пользовался xrSpawner...

Может кто-нибудь поможет, или посоветует другую программу?

casper-portal

тебе надо не хрСпавнер, а АСДС им разобрать алл.спавн и поменять точку спавна(для примера можеш смотреть как ето у Сяка в нлс)

А можно подробную инструкцию как им пользоваться? (можно в ЛС). буду очень благодарен!

casper-portal,

 

Работа с ACDC

Сегодня мы разберем основу работы с ACDC. Но... Для начала небольшое отступление. Вы зададите вопрос, почему же лучше работать с ACDC нежели чем с xrSpawner? Отвечаю: xrSpawner при всех его преимуществах имеет множество более значительных минусов. Во первых, xrSpawner не определяет не game_vertex, ни level_vertex. А также он измеряет только позицию. Я думаю работающие с xrSpawner, замечали что, порой обьекты которые они спаунят спаунером не всегда появляются на месте. Или вообще не появляются. Потому что повторяю xrSpawner не определяет вертексы т.е. точная позиция и распределение по АИ-сетке. Итак начнём работу! У нас есть программа ACDC, руки и мозги в голове. Кладём all.spawn в папку utils и жмём на батник "распаковка". Итак all.spawn распакован!Мы там видим файлы alife и way. В файлах alife только обьекты которые спаунятся. А в way только пути. Я думаю с алайфом всё понятно. Разберем way. Пути. Путь это и ест путь. По которому может двигаться живой обьект.Сейчас мы это рассмотрим: Для начала устроим текстовый беспредел:) Найдём файл alife_l01_escape, а в нём

[869]

; cse_abstract properties

section_name = actor

name = level_prefix_actor_0001

s_rp = 0

position = -139.449829101563,-29.6908683776855,-351.492797851563

direction = 0,0.00895109120756388,0

s_flags = 0x29

 

 

[dont_spawn_character_supplies]

 

[spawn]

wpn_binoc

novice_outfit

device_torch

END

 

; cse_visual properties

visual_name = actors\hero\stalker_novice

 

; cse_alife_creature_abstract properties

g_team = 0

g_squad = 0

g_group = 0

health = 1

dynamic_out_restrictions =

dynamic_in_restrictions =

 

upd:health = 1

upd:timestamp = 0x75732029

upd:creature_flags = 0x70

upd:position = -139.449829101563,-29.6908683776855,-351.492797851563

upd:o_model = 0

upd:o_torso = 0.00895109120756388,0,-0.999959945678711

upd:g_team = 0

upd:g_squad = 0

upd:g_group = 0

 

; cse_alife_trader_abstract properties

money = 40

trader_flags = 0

character_profile = actor

 

; cse_ph_skeleton properties

 

; cse_alife_creature_actor properties

 

upd:actor_state = 0xd20

upd:actor_accel_header = 0

upd:actor_accel_data = 0

upd:actor_velocity_header = 0

upd:actor_velocity_data = 0

upd:actor_radiation = 0

upd:actor_weapon = 110

upd:num_items = 0

 

Примерно такие строки. Для начала расщедримся:) Припишем актору в [dont_spawn_character_supplies]

[spawn] такие строки.

[dont_spawn_character_supplies]

 

[spawn]

wpn_binoc

wpn_vintorez

ammo_9x39_pab9 = 20

wpn_usp

ammo_11.43x23_hydro = 22

novice_outfit

device_torch

 

Получиться что мы подарим Меченому при начале игры Винторез, 600 патронов к нему, пистолет USP и 420 патронов к нему. Так. Теперь Меченый у нас будет крутым рэмбо:) Теперь ещё и подарим ему денежек.

; cse_alife_trader_abstract properties

money = 40

trader_flags = 0

character_profile = actor

 

В строчке money напишем любое число. Тока астрономические не надо(не проверял). Ну теперь Меченый не только рэмбо но и миллионер:). Теперь займемся кординатами. У нас они такие:

position = -139.449829101563,-29.6908683776855,-351.492797851563

direction = 0,0.00895109120756388,0

 

Это наши позиция и дирекция.

; cse_alife_object properties

game_vertex_id = 19 (Тот самный вертекс на игре)

distance = 0.699999988079071

level_vertex_id = 111256 (вертекс на уровне)

object_flags = 0xffffffbf

custom_data = <<END

 

А теперь пропишем туда такие кординаты:

position = -167.232299804688,-25.4363708496094,-354.692901611328

direction = 0,-0.365248799324036,0

 

; cse_alife_object properties

game_vertex_id = 0

distance = 0.699999988079071

level_vertex_id = 82413

object_flags = 0xffffffbf

custom_data = <<END

upd:health = 1

upd:timestamp = 0x75732029

upd:creature_flags = 0x70

upd:position = -167.232299804688,-25.4363708496094,-354.692901611328

upd:o_model = 0

upd:o_torso = -0.365248799324036,0,0.930909931659698

upd:g_team = 0

upd:g_squad = 0

upd:g_group = 0

 

Тепер игра начнётся в здании блокпоста на 2 этаже:). С этим мы закончим. Теперь создадим нового НПС:

[871]

; cse_abstract properties

section_name = stalker

name = esc_bridge_soldier1

position = -133.27989196777,-30.146812438965,-372.0263671875

direction = 0.028013030067086,0,0.9996075630188

 

; cse_alife_trader_abstract properties

money = 5000

character_profile = esc_soldier_regular

 

; cse_alife_object properties

game_vertex_id = 20

distance = 16.1000003814697

level_vertex_id = 118083

object_flags = 0xffffffbf

custom_data = <<END

[logic]

active = walker

 

[walker]

path_walk = hodim_dvor

END

 

; cse_visual properties

visual_name = actors\soldier\soldier_bandana_3

 

; cse_alife_creature_abstract properties

g_team = 0

g_squad = 1

g_group = 2

health = 1

dynamic_out_restrictions =

dynamic_in_restrictions =

 

upd:health = 1

upd:timestamp = 0

upd:creature_flags = 0

upd:position = -133.27989196777,-30.146812438965,-372.0263671875

upd:o_model = 0

upd:o_torso = 0.028013030067086,0,0.9996075630188

upd:g_team = 0

upd:g_squad = 1

upd:g_group = 2

 

; 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

 

Так вот он наш друг НПС солдат на блокпосте:) Тут уже знакомы строки. Позиция, дирекция вертексы... Но есть кое что новое:)

[logic]

active = walker

 

[walker]

path_walk = hodim_dvor

 

Элементарная логика НПС. hodim_dvor-Это путь по которому будет ходить НПС. НПС есть всё готово. Но путя то у нас нет:) Создадим его в файле way_l01_escape. Припишем вот такие строчки.

[hodim_dvor]

points = p0,p1

p0:name = name00

p0:position = -120.44634246826,-30.15016746521,-363.68786621094

p0:game_vertex_id = 24

p0:level_vertex_id = 132887

p0:links = p1(1)

 

p1:name = name01 номер точки

p1:position = -132.61611938477,-30.142726898193,-363.87365722656 - только позиция

p1:game_vertex_id = 19 вертекс на игре

p1:level_vertex_id = 118862 вертекс на уровне

p1:links = p0(1) на какую точку после этой перейдёт НПС. (тут он будет ходить туда сюда, если не написать линкс то он остановиться на месте)

 

Всё! Вгоняям в way эти строки(тока мои коментарии писать не надо) Всё готово можно тестить изменения:_))))). Как снимать корзинаты и работать с PI расскажу в следующей статье. Теперь жмём на батник запаковка и усё! Пихаем all.spawn в игру. Только лучше ещё поправить отношения актора к военным и наоборот в лучшую сторону. Чтобы непись сразу пошёл по своему пути. Он удет ходить от казармы до дома(там поймёте) Статью написал [[Rez@niy ]]

 

 

Ссылка на ACDC: http://ifolder.ru/12448694

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

СПС!!!!!!!

 

Добавлено через 145 мин.:

Люди добрые! Спасибо за помощь! Но есть маленькая проблема: Я all.spawn распакавал, изменил то что надо!

А вот собрать не получается... :( :( :huh:

Кто может пожалуйста соберите за меня.... Буду очень благодарен.....

Вот ссылка на мой распакованный all.spawn, там я уже провел все изменения: http://filegu.ru/f/gR0ZkC81/arxiv_WinRAR.rar.html

наквырял мину из Зенобион. Как сделать чтоб после взрыва аномалия майнфилд не заряжалась(сделать ее 1-разовой)?

casper-portal у тебя от ЧН алл.спавн?? извини, запаковать не могу, нет асдс для ЧН, пиши пожалуйста в соседнюю тему
; cse_abstract properties

section_name = campfire

name = mar_smart_terrain_csky_base_kamp_1_campfire

position = -147.915542602539,0.874746978282928,-292.335021972656

direction = 0,0,0

 

; cse_alife_object properties

game_vertex_id = 137

distance = 3.5

level_vertex_id = 72123

 

я такого в ТЧ не наблюдал, или ты что попробовал в алл.спавн напрямую перетащить лтх локаций из ЧН ?

не знаю, все делалось на основе all.spawn из ТЧ

 

Добавлено через 10 мин.:

Походу я что то не так сделал... Пожалуйста, люди, сделайте чтоб ГГ при спавне в начале игры появлялся в точке с координатами:

 

-125,87

-25,3

-471,72

casper-portal, во-первых у тебя all.spawn от ЧН, а ACDC от ТЧ. Файлы alife_l10_limansk.ltx и alife_l12_hospital.ltx явно ЧНовские. Ты чего сделать хочешь, поясни?

ЭТО ДЛЯ ТЧ

Ты че издеваешься? Где ты видел в All.spawn'е ТЧ marsh, limansk и hospital?

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

Я хочу чтобы ГГ изначально появлялся не в бункере Сидора, а в том месте где координаты. ЭТО ДЛЯ ТЧ

 

Добавлено через 17 мин.:

ДА Я ПОНЯЛ!!!!!!!!!!!!!!!!!!!!! я хочу чтобы мне кто-нибудь сделал для тЧ. А ту ошибку я понял.

 

Мне просто нужно чтобы кто-ниб. изменил ОБЫЧНЫЙ (из ТЧ) all.spawn. Помогите люди плиз...

Изменено пользователем casper-portal

как большой любитель гранат модернизировал их для лучшего и типа реального эффекта, но! при тесте оказалось что у гранат работает только взрыв, осколки или не работают или непопадают. сделал дальность взрыва 1м, встал в 2-х м от гранаты - ни разу не зацепило (кидал 4 ргд5 и 1 ф1).

вопрос: подскажите где /что нужно исправлять.

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

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

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

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

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

Войти

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

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

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