Перейти к содержанию

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

 
 
2 часа назад, Grade сказал:

Daniil1989 Если тебе нужно именно объект костёр и сделать его горящим, то через SDK

Да у меня в СДК есть локация на ней есть костер только не горещий, я хочу сделать его горещим

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

Daniil1989 Самый простой вариант - удали свой костёр и добавь на его место группу. Посмотри в ютубе как работать с группами в SDK. Там достаточно уроков )))

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

Grade для этого нужно полностью компилить локацию? Или можно make game, и компил батниками... 


IMG-37f2f96c0f50da877397935e4895dd7a-V.j

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

TMM team Grade  Почему нельзя просто добавить аномалию campfire на место костра?! И костёр будет гореть

Изменено пользователем liner
  • Лайк 3

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

Добро. Есть возможность более глобально влиять на то, как используют фонарик НПС? Кажется, где-то видел, что можно в скрипте общей логики прописать условие, например, если НПС в определённой зоне, то они всегда будут держать фонарь включённым.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

Есть функционал самих зон. Схема sr_light. Логика вешается на нужный рестриктор, в котором нужно включать свет.

[logic]
active = sr_light

[sr_light]
light_on = true

Далее уже это всё дополняется всякими условиями выхода из схемы, чтобы, к примеру, свет включали в этой зоне только в определенный момент и т.д.


c01570bf2e07524.png

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 
В 29.08.2021 в 14:22, Xenomorphom сказал:

 

Вопрос: Можно ли вызвать определённую функцию во время проигрывания анимации оружия, например, когда ГГ достает оружие ( ak74_draw, например)? 

Если нужно вызывать функцию когда проигрывает конкретная анимация, то это нужно править в движке...
Иначе можно обойти скриптами, предлагаю так:
bShowed = false
if db.actor:active_item() and db.actor:active_item():section() == "wpn_ak74" then
if not bShowed then
bShowed = true
..вызов функции..
end
else
bShowed = false
end


Дополнено 6 минуты спустя
9 часов назад, Neptun сказал:

Добро. Есть возможность более глобально влиять на то, как используют фонарик НПС? Кажется, где-то видел, что можно в скрипте общей логики прописать условие, например, если НПС в определённой зоне, то они всегда будут держать фонарь включённым.

в xr_effects, функция set_torch_state (передаётся секция НПС, и булеан).
if нпс в какой-то скриптовой зоне then
local npc = секция нпс
xr_effects.set_torch_state(nil,nil,{npc,true})
get_story_object(npc):object("device_torch"):torch:enable_torch(true)
end
Можно запихнуть в апдейт в xr_motivator

Изменено пользователем liner
  • Лайк 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 
7 часов назад, Paradox27kms сказал:

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

Если оригинальный движок, то нет. В некоторых модах (OpenXray, CoC) есть эта функция, set_character_icon. Но можно скриптово подменить иконку (наложение новой иконки на старую), предлагаю такой алгоритм:
1. Если ГГ открыл инвентарь, то
Иначе
Скрыть новую иконку
2. Добавить UI диалог к рендеру (чтобы курсор автоматически не появлялся)
3.  Получить string новой иконки
4.  Показать иконку
(

self.icon = "icon"

InitStatic(icon)
)

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 
3 часа назад, liner сказал:

Если оригинальный движок, то нет

Можно костылем подменивать профиль. Тогда иконка по идее поменяется нормально. Но это костыль.



image.png.489a34a67081676c25779ea216ba3788.png


 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

Народ! Существует ли природе мод. исправляющий анимации детекторов в руках? Что то гугл ничего не находит, или я искатель хреновый..(((
Имеется ввиду не анимация картинки на экране детектора, а именно анимация рук, на данный момент, любой детектор в руках на оригинале ЗП статичен. хоть идёт Гг хоть стоит, хоть бежит...


Группа мода в VK
Мод делался и тестировался на железе
i5-11400, 32Гб ОЗУ, Radeon RX580  Разрешение 2560 х 1440.  ВСЕ на максималке

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 
3 минуты назад, Policai сказал:

Гг хоть стоит, хоть бежит...

Вроде в SWM 2.1 были анимации для пыс детекторов новые (На бег). Хранятся они в анимациях рук hpsa. 

Изменено пользователем Hozar_2002
  • Лайк 1


image.png.489a34a67081676c25779ea216ba3788.png


 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 
1 час назад, Hozar_2002 сказал:

Вроде в SWM 2.1 были анимации для пыс детекторов новые (На бег)

Там на движке завязано много..(((  Я пробовал оттуда брать анимацию болта при беге... Перетащил анимку. и конфиги... Всё работает, но болт при броске просто исчезает... После этого оттуда брать опасаюсь...


Группа мода в VK
Мод делался и тестировался на железе
i5-11400, 32Гб ОЗУ, Radeon RX580  Разрешение 2560 х 1440.  ВСЕ на максималке

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

Policai может быть это моушен марки просто пропали при переносе?


Boomsticks & Sharpsticks: https://discord.gg/vThnFWrbaA

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

Policai Анимация бега это просто анимация бега. Она не имеет отношения к броску.


бывший модоел

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 
6 минут назад, i-love-kfc сказал:

Анимация бега это просто анимация бега. Она не имеет отношения к броску.

Занимался давненько этим, не получилось и плюнул,  сейчас попробовал по новой разобраться. то же самое... Анимацию закидываю и болт пропадает при броске... Но разобрался почему, нельзя трогать файл анимаций болта dev_hand_bolt_hud_animation, а я добавлял анимацию в него, Добавил анимацию в другой файл, в бинокль, для пробы. всё заработало нормально... 


Дополнено 22 минуты спустя
2 часа назад, Hozar_2002 сказал:

SWM 2.1 были анимации

Спасибо Антон, нашёл, выдернул, подправил под себя конфиги, всё работает отлично...


Группа мода в VK
Мод делался и тестировался на железе
i5-11400, 32Гб ОЗУ, Radeon RX580  Разрешение 2560 х 1440.  ВСЕ на максималке

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

Пытаюсь реализовать смену имени ГГ. Брал пример из сетевой игры.

Следовательно вот сам скелет оригинального меню:

Спойлер

--------------------------------------------------------------------------------
-- Created: 13.05.2009 ---------------------------------------------------------
-- Description:    local network login page ---------------------------------------
-- Author: Alexander Maniluk ---------------------------------------------------
-- Mail: loopzilla@gsc-game.kiev.ua --------------------------------------------
-- (c)GSC Game World 2009 ------------------------------------------------------
--------------------------------------------------------------------------------

class "localnet_page" (CUIScriptWnd)
function localnet_page:__init() super()
   self:InitControls()
   self:InitCallbacks()
end

function localnet_page:InitControls()
    local xml = CScriptXmlInit()
    xml:ParseFile("ui_mm_mp_localnet.xml")

    self:SetWndRect(Frect():set(0,0,1024,768))
    self:Enable(true)
    xml:InitStatic("background", self)

    local button = nil
    
    button = xml:Init3tButton("button_login", self)
    self:Register(button, "btn_login")
    self.btn_login = button

    button = xml:Init3tButton("button_cancel", self)
    self:Register(button, "btn_cancel")
    self.btn_cancel = button
--------------------------------------------------------------------------------
    self.login_page = CUIWindow()
    xml:InitWindow("login_page", 0, self.login_page)
    self.login_page:SetAutoDelete(true)
    self:AttachChild(self.login_page)
    
    xml:InitWindow("login_page", 0, self.login_page)
    self.lp_header_login = xml:InitTextWnd("login_page:cap_header_login", self.login_page)

    xml:InitTextWnd("login_page:cap_nickname", self.login_page)
    self.lp_nickname = xml:InitEditBox("login_page:edit_nickname", self.login_page)
    self:Register(self.lp_nickname, "lp_edit_nickname")
    
    self.gs_login_message_box = CUIMessageBoxEx()
    self:Register(self.gs_login_message_box, "gs_message_box")

    button = xml:InitCheck("login_page:check_remember_me", self.login_page)
    self:Register(button, "lp_check_remember_me")
    self.lp_check_remember_me = button
    self.lp_nickname:CaptureFocus(true)
end

function localnet_page:InitCallbacks()
    self:AddCallback("btn_login", ui_events.BUTTON_CLICKED, self.OnBtnLogin, self)
    self:AddCallback("btn_cancel", ui_events.BUTTON_CLICKED, self.OnBtnCancel, self)
    self:AddCallback("lp_check_remember_me", ui_events.BUTTON_CLICKED, self.OnBtnRememberMe, self)
    
    self:AddCallback("lp_edit_nickname", ui_events.EDIT_TEXT_COMMIT, self.OnEditLPNicknameChanged, self)
    self:AddCallback("gs_message_box", ui_events.MESSAGE_BOX_OK_CLICKED, self.OnMsgOk, self)
end

function localnet_page:OnBtnLogin()
    self.owner.l_mgr:login_offline(self.lp_nickname:GetText(), login_operation_cb(self, self.LoginOperationResult))
end

function localnet_page:LoginOperationResult(profile, descr)
    if(profile==nil) then
        self.gs_login_message_box:InitMessageBox("message_box_gs_result")
        self.gs_login_message_box:SetText(descr)
        self.gs_login_message_box:ShowDialog(true)
    else
        self.owner.gs_profile = profile
        
        self.owner.shniaga:SetPage(CUIMMShniaga.epi_main, "ui_mm_main.xml", "menu_main_logout")
        self.owner.shniaga:ShowPage(CUIMMShniaga.epi_main)
        
        if(self.lp_check_remember_me:GetCheck()) then
            self.owner.l_mgr:save_nick_to_registry(profile:unique_nick())
        end
        self:HideDialog()
        self.owner:ShowDialog(true)
        self.owner:Show(true)
        self.owner:OnButton_multiplayer_clicked()
    end
end

function localnet_page:OnMsgOk()
end

function localnet_page:OnBtnCancel()
    self:HideDialog()
    self.owner:ShowDialog(true)
    self.owner:Show(true)
end

function localnet_page:OnBtnRememberMe()
    self.owner.l_mgr:save_remember_me_to_registry(self.lp_check_remember_me:GetCheck())
end

function localnet_page:OnEditLPNicknameChanged()
    self:OnBtnLogin()
end

function localnet_page:OnKeyboard(dik, keyboard_action)
    CUIScriptWnd.OnKeyboard(self,dik,keyboard_action)

    local bind = dik_to_bind(dik)
    local console = get_console()

    if keyboard_action == ui_events.WINDOW_KEY_PRESSED then
        if dik == DIK_keys.DIK_ESCAPE then
            self:OnBtnCancel()
        end
    end
    
    return true
end

Ниже выложил скрин тестового портирования в сингл (если честно не знаю должно ли по идее работать в сингле) но ловлю данный вылет при попытке сменить имя

Спойлер

Expression    : !m_error_code
Function      : raii_guard::~raii_guard
File          : D:\prog_repository\sources\trunk\xrServerEntities\script_storage.cpp
Line          : 748
Description   : ... - call of pripyat\gamedata\scripts\ui_mm_buy.script:152: attempt to index field 'owner' (a nil value)

 

ss_user_09-03-21_23-12-19_(mainmenu).jpg

ss_user_09-03-21_23-12-39_(jupiter_underground).jpg

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

Всем привет! появилась острая необходимость создания новых нпс, вопрос следующий: Могу я по реальным размерам смоделировать тело нпс или СТАЛКЕР работает со своими?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 
15 минут назад, ScarletFox сказал:

или СТАЛКЕР работает со своими?

Со своими. Возми для образца ориг. модели.


EaRLNb6.gif
AMD FX-8370 (8 X 4.35GHz); RAM 16Gb; MSI GTX 1070 (8Gb).
Windows -10 PRO (х64)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

Как исправить кракозябры в компоненте список (listbox) в GUI? P.S они отображаются только если текст на русском языке.

 

ss_user_09-04-21_16-24-03_(jupiter_underground).jpg

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

добрый вечер. Есть ли функция или способ удалить труппы определенного сквада в нужный момент?  

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

Paradox27kms Долго объяснять. Легче будет если ты сам посмотришь, как устроены оригинальные титры. Расположение: gamedata\configs\ui\ui_credits_base.xml и gamedata\configs\text\rus\ui_st_credits.xml

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

294404326_-1.png.b174b8675b96f1eea9aed038584779b1.png

                    Паблик ВК       

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 
В 03.09.2021 в 16:22, Paradox27kms сказал:

но ловлю данный вылет при попытке сменить имя

в выложенном вами скрипте нет строчки 152. Предположу (хотя из меня хреновая ванга), что нету окна, которое должно открыться после введения имени. А так, открывайте скрипт с вылетом и смотрите, что должно назначаться owner


В беге за рассветом приближаешь свой закат

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

Резко сменяется погода. Как исправить?

  • Хабар 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 
11 часов назад, Paradox27kms сказал:

кракозябры в компоненте список (listbox) в GUI

Транслитить текст через xml. Неправильная кодировка у файла. Нужна Win 1251



image.png.489a34a67081676c25779ea216ba3788.png


 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

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

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти

  • Последние посетители   1 пользователь онлайн