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

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

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

KitkaT.Net

Спасибо за поздний, но ответ. В принципе я смог определить силу удара и жизни. Силу нормально отредактировал, но жизни у меня идут через... "окольными путями", так сказать. Я вместо кол-ва жизней поправил иммунитеты, то есть решил сделать в два раза живучее - уменьшил значения в immunites в два раза. Так, тестами, и достиг баланса кровососа, какого хотел. А вот регенерация пригодится. Я подумывал над тем параметром, но так и не врубился. Выходит, если я поставлю wound_incarnation_v = 1, то после заживления за одну секунду останется 100% раны, то есть он не излечится? А если наоборот меньше оригинального значения, то после одной секунды заживления останется меньший процент раны? Ещё интересно, процент раны это процент чего? То, сколько у него не хватает до максимума? То есть чем меньше жизней, тем быстрее регенерация? Или как?

Ссылка на комментарий
если хочешь в начале игры еще иметь сам плащ в инвенторе, то в gamedata/configs/gameplay/character_desc_general.xml в профиле actor (он в самом начале) замени novice_outfit \n на название_костюма \n (в данном случае плаща).

А у меня такой ещё вопрос на эту-же тему - можно-ли как-то сделать, чтоб этот плащ (и вообще любой другой предмет) спавнился, при этом, в инвентарь повреждённым?

Изменено пользователем A.N.

| Athlon X2 7750 @ 3105MHz | 8Gb RAM | GeForce GTS 250 1024Mb | Win 7 Home Basic x64 rus

| S.T.A.L.K.E.R CS 1.5.10. + OGSM CS 1.6.1 + Rus-Ukr Zone

| S.T.A.L.K.E.R CoP 1.6.02. + TrickSR + SSR + weapons fix

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

Да, можно. В outfit.ltx прописываем

 

["бандитский_плащ_шрама"]:"бандитский_плащ"

GroupControlSection = spawn_group

discovery_dependency =

$spawn = "outfit\bandit_outfit"

;$prefetch = 32

class = E_STLK

cform = skeleton

 

condition = "процент износа (от 0,01 до 1,00)"

 

Вроде как-то так, если я ни чего не попутал...

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

Stalkeroff, как-то оно странно работает - вне зависимости от того, сколько я поставил кондишн, от шкалы состояния всегда отъедается один и тот-же кусок - примерно 1/6. И ремонт, соответственно, всегда стоит одни и те-же 1140 рублей (или что-то около этого - но цифра одинаковая всегда - это точно). Для проверки пока просто в конфиг коричневого плаща эту строчку подставлял (у меня ОГСМ стоит, там Шрам и так в этот плащ одет в начале игры). Начинал с 0.1, потом ставил и 0.01 и 0.5 и 0.001 и даже просто 0 - результат один. Если плащ снять и ножиком в него потыкать - портится полностью "на ура" (и денег на ремонт потом 6000 просит).

Целиком секция плаща выглядит теперь так:

[bandit_veteran_outfit]:outfit_base
GroupControlSection                = spawn_group
discovery_dependency             = 
$spawn                             = "outfit\bandit_outfit"
class                            = E_STLK
cform                           = skeleton
ef_equipment_type                = 3

full_scale_icon                    = 0,6
full_icon_name                    = npc_icon_bandit_veteran_outfit
condition                        = 0.01
visual                          = dynamics\outfit\bandit_veteran_outfit
actor_visual                    = actors\stalker_hero\stalker_hero_bandit_brown.ogf
player_hud_section                = actor_hud_bandit_cloak_brown

inv_name                        = bandit_veteran_outfit_name
inv_name_short                    = bandit_veteran_outfit_name
description                        = bandit_veteran_outfit_description

inv_weight                        = 3.5

inv_grid_width                     = 2
inv_grid_height                    = 2
inv_grid_x                         = 13
inv_grid_y                         = 7

slot                            = 6

cost                            = 12000

immunities_sect                    = sect_bandit_veteran_outfit_immunities

burn_protection                 = 0.015
shock_protection                 = 0.010
radiation_protection             = 0.000
chemical_burn_protection         = 0.010
telepatic_protection             = 0.000

strike_protection                 = 0.1
explosion_protection             = 0.1
wound_protection                = 0.2

fire_wound_protection              = 0.2
physic_strike_wound_immunity     = 0.1
hit_fraction_actor                 = 0.3
control_inertion_factor         = 1.2

bones_koeff_protection             = actor_armor_suit

artefact_count                     = 0

upgrades                        = up_gr_ab_bandit_outfit, up_gr_cd_bandit_outfit, up_gr_ef_bandit_outfit, up_gr_g_bandit_outfit
installed_upgrades              =
upgrade_scheme                  = upgrade_scheme_u7

[sect_bandit_veteran_outfit_immunities]
burn_immunity                    = 0.04
strike_immunity                    = 0.01
shock_immunity                    = 0.04
wound_immunity                    = 0.025
radiation_immunity                = 0.00
telepatic_immunity                = 0.00
chemical_burn_immunity            = 0.04
explosion_immunity                = 0.04
fire_wound_immunity                = 0.015

 

Есть какие-нить мысли что-бы это могло быть? Кроме добавления строчки с кондишеном, больше ничего не менял. Весь конфиг кинул просто на всякий случай - вдруг, там чего-то такое написано, чего я не вижу?..

Изменено пользователем A.N.

| Athlon X2 7750 @ 3105MHz | 8Gb RAM | GeForce GTS 250 1024Mb | Win 7 Home Basic x64 rus

| S.T.A.L.K.E.R CS 1.5.10. + OGSM CS 1.6.1 + Rus-Ukr Zone

| S.T.A.L.K.E.R CoP 1.6.02. + TrickSR + SSR + weapons fix

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

A.N., даже не знаю и разбираться в чем дело, если честно не охота совсем. <_< Давным давно делал правку чтобы Суслов в начале игры выдавал Шраму его шмот (винторез, плащ). Так вот, чтобы вещи были изношенными я прописывал condition 0,2 и все работало.

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

Поисследовал немного этот вопрос, получается совсем весело:

 

Если прописать этот плащ в выдачу Суслову - кондишн получается такой, какой прописал - всё чётко,

Если в character_desc_general, при установленном ОГСМ - где-то 80% состояние получается сколько-б не прописал,

Если писать в character_desc_general, но добавить этот плащ в чистую игру (без ОГСМа) - вообще неиспорченный плащ получается (но Суслов его-же выдаёт порченным).

 

Нашёл! :good2:

Спавнить костюм надо нормальным, неиспорченным (соответственно и в конфиге ему кондишн занижать не надо).

В файле mar_intro_zone.ltx есть такой кусок:

[sr_idle@scene_2_spawn]
on_timer = 2500 | sr_idle@scene_2_sit %+mar_intro_scene_1_end =spawn_object(mar_intro_lebedev_2:mar_intro_scene_2_lebedev:0:270.0) =update_weather(true) =play_sound(mar_intro_getting_up)%

В ОГСМе там убран апдейт погоды и добавлен вызов функции повреждения костюма:

[sr_idle@scene_2_spawn]
on_timer = 2500 | sr_idle@scene_2_sit %+mar_intro_scene_1_end =spawn_object(mar_intro_lebedev_2:mar_intro_scene_2_lebedev:0:270.0) =damage_actor_outfit =play_sound(mar_intro_getting_up)%

Ну и в скриптах (в данном случае в xr_effects.script, но думаю, не сильно принципиально куда её засунуть) лежит сама функция повреждения:

function damage_actor_outfit(actor, npc)
    local actor = db.actor
    obj = actor:object("bandit_veteran_outfit")
    if obj ~= nil then
        obj:set_condition(0.81)
    end
end

Соответственно - вписываем нужный костюм, нужную степень повреждения - и порядок! :)

 

Ещё вопрос - можно-ли запретить какой-то предмет не только апгрейдить, но и чинить?

Пока нашёл, что для возможности апгрейда предмет должен быть в писан в inventory_upgrades.ltx и прописан конкретному механику в stalkers_upgrade_info.ltx Но это влияет только на возможность апгрейда - т.е. если предмет из списка механика убрать, то он перестаёт его апгрейдить, но чинить продолжает. А хочется как-то сделать чтоб и чинить можно было не всё у всех, а выборочно.

Изменено пользователем A.N.

| Athlon X2 7750 @ 3105MHz | 8Gb RAM | GeForce GTS 250 1024Mb | Win 7 Home Basic x64 rus

| S.T.A.L.K.E.R CS 1.5.10. + OGSM CS 1.6.1 + Rus-Ukr Zone

| S.T.A.L.K.E.R CoP 1.6.02. + TrickSR + SSR + weapons fix

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

где найти информацию о структуре нет-пакетов в чн?

 

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

как вычислить количество патронов в пачке?

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

IQDDD,

информацию о нетпакетах ищи в acdc. Количество патронов в пачке можно узнать нетпакетом. Был мод с перепаковкой пачек dunin_ammo, там была такая функция.

 

 

Плагины Total Commander для работы с игровыми архивами:

Архиваторный плагин (для работы с одиночным архивом): link1 link2

Системный плагин (для распаковки установленной игры): link1 link2

 

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

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

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

в чистом небе какая-то проблема с копированием нет пакета из серверного объекта в переменную. игра почему-то это иногда делает это один раз, а потом НАГЛУХО игнорируется скрипт, вызвавший копирование пакета. иногда удается прочитать несколько раз. иногда довольно много(300-400). иногда не удается прочитать вообще!

и опять же, все дальнейшие чанки ИГНОРИРУЮТСЯ! Дибилизм какой-то! приведите кто-нибудь любой пример чтения пакетов в чистом небе.

 

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

IQDDD, насколько я помню функции чтения нет пакетов из ТЧ не совсем подходят для ЧН, их нужно немного поправить, можешь поправить самостоятельно используя данные из ACDC, или скачай мод в котором они уже поправлены.

 

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

оказывается, надо обязательно перед копированием вызвать w_begin. значение аргумента вроде любое число.

 

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

только решил одну проблему, появилась другая. в тенях чернобыля последний байт в пакете ствола был числом-идентификатором типа патронов в стволе. допустим, если у ствола было два типа патронов, то возвращалось либо 0, либо 1. в чистом небе там постоянно 0.

как определить тип патронов в стволе в чн?

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

Вот сегодня решил поковырять файл amk_anoms.script и как я понял вот эти цифры которые стоят после аномалий это кол-во штук их

l01_escape={100,170,1000,{electra=12, zavesa=2, smallrain=1, fountain=1, gravi=5, mincer=10, buzz=10, sakbuzz=6, mosquito_bald=10, sphere=4}}

, а вот это коефициент на который умножается кол-во аномалий указаных выше :

- коефициент количества аномалий в зависимости от сложности игры

local anoms_difficulty_koef = {

[0] = 0.75,

[1] = 1.0,

[2] = 1.25,

[3] = 1.5

 

,теперь сам вопрос, если изменить коефициент и не начать новую игру, а загрузиться с сейва, и дождаться выброса чтобы изменения втупили в силу. Или надо ОБЯЗАТЕЛЬНО начать новую игру?

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

FANAT.gif

Мой канал на ютабчике... / Недельки из жизни фаната STALKER'a / Клуб 'Фанат Отчуждения'

Я нет-нет, а думаю, может я неправильно жил, надо ж брать деньги у богатых и давать их бедным, а таким как ты давать по морде, шоб у мире была красота и гармония.(с)Ликвидация

Всё в порядке, всё нормально, я беру тебя с собой, я беру тебя с собой. В тёмный омут головой.(с)Смысловые Галлюцинации

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

IQDDD,

оказывается, надо обязательно перед копированием вызвать w_begin. значение аргумента вроде любое число.

И долго ты эту проблему решал? Полгода назад об этом в справочнике написал.

Тема на пять страниц, и то никто не читает =(

 

Плагины Total Commander для работы с игровыми архивами:

Архиваторный плагин (для работы с одиночным архивом): link1 link2

Системный плагин (для распаковки установленной игры): link1 link2

 

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

malandrinus,

1. В тенях и так работало.

2. Нужно использовать оба. Даже только при чтении (запись не использовал) нужно использовать оба: r_seek, и w_begin: смещаем позицию, записываем в пакет данные, перемещаем позицию, читаем.

 

Да и тему читал, но только пост про net_packet. А вышеуказанный тобой (дополнение) не читал: нет пока времени нормально тему изучить.

 

И если я не читаю тему, то это не значит,что её никто не читает. :)

 

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

FANAT, всё, что скриптовое, требует только перезагрузки.

 

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

На stalkerin'е ссылка на ACDC CS 1.5.10 нерабочая. Скиньте в лс.

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

IQDDD слушай, а я правильно думаю что если коефициент уменьшить и дождаца выброса то количество аномалий уменьшица?

FANAT.gif

Мой канал на ютабчике... / Недельки из жизни фаната STALKER'a / Клуб 'Фанат Отчуждения'

Я нет-нет, а думаю, может я неправильно жил, надо ж брать деньги у богатых и давать их бедным, а таким как ты давать по морде, шоб у мире была красота и гармония.(с)Ликвидация

Всё в порядке, всё нормально, я беру тебя с собой, я беру тебя с собой. В тёмный омут головой.(с)Смысловые Галлюцинации

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

Как исправить глюк в войне группировок, когда группировка, в которой состоит актор, не хочет захватывать базу другой группировки. Или, хотя бы, с чем это связано?

 

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

Вроде сквадов везде заспавнилось до кучи, а идти не хотят. Следовательно, это не от того, что мало отрядов. Тогда в чём дело?

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

IQDDD, смарты, через которые сквады идти должны, случайно, не заняты отрядами других дружественных/нейтральных группировок? Если да, то и не пойдут. Пойти всех вынести и занять смарт таблица отношений не позволяет, а просто пройти - отсутствие места в смарте.

Как вариант - попробовать увеличить ёмкость смарт-террейнов.

| Athlon X2 7750 @ 3105MHz | 8Gb RAM | GeForce GTS 250 1024Mb | Win 7 Home Basic x64 rus

| S.T.A.L.K.E.R CS 1.5.10. + OGSM CS 1.6.1 + Rus-Ukr Zone

| S.T.A.L.K.E.R CoP 1.6.02. + TrickSR + SSR + weapons fix

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

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

тем не менее я решил проблему ручным спавном отрядов на переходных точках для общего случая. при этом если смарт в оффлайне спавниться Редко, чтобы игрок не пропустил самое интересное. потом выложу скрипт.

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

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

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

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

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

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

Войти

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

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

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

AMK-Team.ru

×
×
  • Создать...