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

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


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

malandrinus и где это все искать?

8push5 да вроде все у меня с nps нормально...врядли в нем ошибка затаилась

Правельно пейсать "мадыратарчег", патамукаг проверочнойе слова "красафчег".

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

Writer, во всех скриптах, из чистой и из твоих, есть проги которые ищут текст в файлах.

да вроде все у меня с nps нормально

но ругань то идет на непися

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

2Monnoroch:

Валяется рядом с ГГ 100 бутылок водки. Надо просканировать уровень на все итемы в нем и если секция итема равна "vodka" - удалить бутылку из игры и добавить меченому соответственное количество похмелья.

 

Это я такой бред несу к примеру.

travka.giftravka.giftravka.giftravka.giftravka.gif

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

в treasure_manager.script

есть две секции за что они отвечают подскажите ...

local rare_list ?

local solid_list ?

Свободу всем Даром!

Моя Зона Full Realism Mod STSoC by Wolkolak

"Безвыходных ситуаций не существует в принципе."(с) Ред Шухов

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

4ufak, лучше коллбек на использование этой водки поставить.

А у бутылки водки и секция - vodka.

А определить что обьект - водка так:

 

for i = 1,65535 do
local obj = level.object by id(i)
if obj:section() == "vodka" then
...............
end
end

 

а если нужен обьект валяющийся на земле то у него obj:parent():id() = 65535

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

Заспавнил НПС в деревне новичков через ACDC. А он бежит к колючей провлке за пещерой Сидора. Как его остановить?

Правельно пейсать "мадыратарчег", патамукаг проверочнойе слова "красафчег".

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

Народ. Кто нибудь пробовал пользоваться фукуцией file_rename ?

У кого что получилось? А то уже вторые сутки не могу научить переименовываться файл

Untitled-1.png

Ссылка на комментарий
Народ. Кто нибудь пробовал пользоваться фукуцией file_rename ?

    local f1 = getFS():update_path("$game_data$","ai\\test\\a.txt")
    local f2 = getFS():update_path("$game_data$","ai\\test\\a1.txt")
    local overwrite_existing_files = true
    local res = getFS():file_rename(f1, f2, overwrite_existing_files)

Работает. Файл gamedata\ai\test\a.txt.

Кроме $game_data$ есть и ещё пути. Их список можно посмотреть в fs.ltx, хотя вроде как работают не все. "Левые" файлы и каталоги мне удалось сделать и переименовать только в пределах папки gamedata.

 

Дополнение:

Файл должен существовать до запуска игры (до запуска программы, а не загрузки уровня). После уже игра отслеживает изменение имени, но если файл появится во время игры, то игра его проигнорирует.

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

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

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

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

 

Ссылка на комментарий
ясно, спасиба пыс хотябы за геймдату... я просто пытался переименовывать сейвы... как то не особо получилось =)

Вношу поправку. В папке сейвов тоже работает. Надо использовать корень $game_saves$

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

 

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

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

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

 

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

знвешь, щас кой чего замутил - заработало О_о... но вылетает без лога

 

есть ли в луа какой нибудь таймер-тормоз на подобие sleep в делфи?

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

Untitled-1.png

Ссылка на комментарий
есть ли в луа какой нибудь таймер-тормоз на подобие sleep в делфи?

В смысле? Поставь цикл длинный, вот и тормоз будет. Если имеешь в виду поток в суспенд отправить, то этого нет. Функции луа вызываются как подпрограммы движка. Тормозишь функцию луа - тормозишь по любому всю игру.

 

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

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

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

 

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

Спецификой Lua является то, что сам по себе он не предоставляет почти ничего, только даёт доступ к функциям хост-приложения. Были бы экспортированы, к примеру, функции для создания и синхронизации потоков - были бы потоки. А в самом Lua искать их бессмысленно =)

 

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

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

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

 

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

        if dik == DIK_keys.DIK_F1 then
            local f     = getFS();
            local flist = f:file_list_open_ex("$game_saves$",bit_or(FS.FS_ListFiles,FS.FS_RootOnly),"*.sav")
            local f_cnt = flist:Size()
            if f_cnt > 0 then
                for it=0, f_cnt-1 do
                    local file            = flist:GetAt(it)            
                    local file_name         = string.sub(file:NameFull(), 0, (string.len(file:NameFull())-4))
                    local sg             = CSavedGameWrapper(file_name)
                    local y,m,d,h,min,sec,ms= 0,0,0,0,0,0,0
                    y,m,d,h,min,sec,ms    = sg:game_time():get(y,m,d,h,min,sec,ms)
                    local date_time        = ""
                    local time_h         = ui_load_dialog.AddTimeDigit(date_time, h)
                    local time_m                = ui_load_dialog.AddTimeDigit(date_time, min)
                    local lvlname           = game.translate_string(sg:level_name())
                    local save1        = f:update_path("$game_saves$",file_name..".sav")
                    local save2        = f:update_path("$game_saves$",(lvlname.."   "..time_h.."."..time_m..".sav"))
                    local dds1        = f:update_path("$game_saves$",file_name..".dds")
                    local dds2        = f:update_path("$game_saves$",(lvlname.."   "..time_h.."."..time_m..".dds"))
                    f:file_rename(save1,save2,true)
                    f:file_rename(dds1,dds2,true)
                end
            end
        end

 

 

Переименовывает сейвы из абра-кадабра-типа-сейв в Имя_Локации__Время

По окончании операции - вылет на раб стол (помогайте ламеру)

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

Untitled-1.png

Ссылка на комментарий
Переименовывает сейвы из абра-кадабра-типа-сейв в Имя_Локации__Время

По окончании операции - вылет на раб стол (помогайте ламеру)

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

 

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

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

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

 

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

Помогите, пожалуйста! Вот такой вопрос: непись заспавнен: npc=alife():create("bar_dolg_respawn_1",... Как выковырять строку "bar_dolg_respawn_1" из npc? Пробовал npc:section() - он равен "stalker".

travka.giftravka.giftravka.giftravka.giftravka.gif

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

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

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

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

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

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

Войти

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

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

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