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

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


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

Да знаю я елки-палки , вы прочитали вообще что я писaл?! Я же говорю что менял и раньше, а то что вы написали мне я уже давным давно сделал... толька больше 100 кг не хочет нести ГГ, говорит мол рюкзак не резиновый не лезет туда не че больше... вот изменял строчку max_walk_weight 50 на max_walk_weight 245 в папке \S.T.A.L.K.E.R. Shadow of Chernobyl\gamedata\config\creatures\ файл actor потом в inventory_sect следующие строчки max_weight = 50

max_ruck = 56 на max_weight = 245

max_ruck = 251 P.S Пробывал и без max_ruck не помогло... до этого мода примерно 11-13 раз менял переносимый вес

Но я рад что на мое сообщение так быстро срегировали... и постарались помочь...

Пробывал всякими хитростями вместить побольше вещей в рюкзак, толька вылетает что-то игра...

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

Ильяс

А объем рюкзака отключил?

 

Отключение объема

Идешь по пути:

D:\Games\S.T.A.L.K.E.R\gamedata\scripts\ amk_utils

 

почти в самом верху делаешь так:

RestrictionStock = nil --Ограничения на вместимость инвентаря

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

ABS

 

Что-то новое... Где его вырюбит надо то?

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

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

ABS, спасибо! Выручил)) как тебе + поставить?А то что-то не могу найти

Сорри за оффтоп

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

Кто нибудь помогите совместить нового npc и zamok. В обоих случая редактируется bind_stalker.script и протеваречат друг другу, кароче не работают совместно

А чё так трудно? Вроде при создании непися bind_stalker.script не правится. Тотал тебе в руки и давай совмещай(если разбираешся). А совместно всё работает, если нормально сделать.

Real Wolf

if storyteller_add.load_variable("spawn_storyteller",false)==false then
      storyteller_add.start_add_spawn()
      storyteller_add.save_variable("spawn_storyteller",true)
end
end

- это у меня стоит(bind_stalker.script),

Для работы замка требуется на том же самом месте поставить

if obj:section() == "zamok" then 
local box = obj:parent() 
if box ~= nil then 
get_console():execute("load ~~~ protect box") 
table.insert(amk_offline_alife.protected, box:id()) 
end 
end

Если прописую обе функции npc не загружается

if storyteller_add.load_variable("spawn_storyteller",false)==false then
      storyteller_add.start_add_spawn()
      storyteller_add.save_variable("spawn_storyteller",true)
end

if obj:section() == "zamok" then 
local box = obj:parent() 
if box ~= nil then 
get_console():execute("load ~~~ protect box") 
table.insert(amk_offline_alife.protected, box:id()) 
end
end

Если я правильно понял, то выглядеть должно именно так.

ДА, так оно и выглядет только при этом выдается ошибка:

Expression    : fatal error
Function      : CScriptEngine::lua_error
File          : E:\stalker\sources\trunk\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:1121: bad argument #2 to 'format' (string expected, got no value)

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

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

Редактурю Симбион, так что этот мод там уже есть.

Нашел оригинальный диалог. Там используются две такие функции:

<action>m_partners.status_changed</action>

<action>m_partners.activate_scheme</action>

 

Скопировал их в диалог к новому НПС, но ничего не происходит. Что то где то еще нужно прописывать?

vah_stalker каким-то ты сложным способом НПС создаешь... Смотри мою тему Создание нового НПС там все просто и подробно прописано =)

Вот такой вопрос:

Как скриптом определить какие патроны соответствуют выбранному типу оружия?

Не знаю что имееш ввиду но

Посматри в папке S.T.A.L.K.E.R. Shadow of Chernobyl\gamedata\config\weapons там ищеш вот такую строчку

ammo_class смотриш какие патроны к нему идут... все вроде.. но есть одно но) это все не в одном файле а в нескольких)

Ильяс параметр ammo_class в конфиге оружия отвечает за тип патронов этого оружия, это совсем другое

Ребята, я все понимаю и знаю как и где глазами смотреть. Я спрашиваю, как в скрипте это определить :) Другими словами, как в скрипте поднимать всю эту информацию из конфигов?

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

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

Vergas, можно и без таблиц, вот код

    local ltx = system_ini()
    local ammo_list    = ltx:r_string(section,"ammo_class")

Но после этого мы получим ammo_list как строку, например:

ammo_list =ammo_5.45x39_ap, ammo_5.45x39_fmj

А чтобы переменную ammo_list превратить в таблицу, например:

ammo_list = {ammo_5.45x39_ap,

ammo_5.45x39_fmj}

надо писать следующее:

local ammo_tab = str_explode(",", ammo_list, true)--вызов функции разбивающей строку на отдельные элементы по какому-нибудь символу, здесь по ","

Вот функция разбивающая строку на отдельные элементы , я не помню откуда взял ее,по-моему из AMK мода.

function str_explode(div,str,clear)
    local t={}
    local cpt = string.find (str, div, 1, true)
    if cpt then
        repeat
            if clear then
                table.insert( t, trim(string.sub(str, 1, cpt-1)) )
            else
                table.insert( t, string.sub(str, 1, cpt-1) )
            end
            str = string.sub( str, cpt+string.len(div) )
            cpt = string.find (str, div, 1, true)
        until cpt==nil
    end
    if clear then
        table.insert(t, trim(str))
    else
        table.insert(t, str)
    end
    return t
end

function trim (s)
    return (string.gsub(s, "^%s*(.-)%s*$", "%1"))
end

 

Изменено пользователем Pxan
Спрятал под спойлер. Pxan

8push5,

Спасибо, попробую разобраться.

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

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

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

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

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

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

Войти

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

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

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