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

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


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

@mole venomous @Купер Спасибо но это слишком сложно, думал может где то пару цифр поменять чтоб отключить его. Удалял строки мода из bind_stalker и xr_kamp, костры горят но нпс зависают у костров. Заменил xr_kamp, из мода Омега взял, костры горят никто не тупит, ток сталкеры играют на гармошке без звука) Потестю если багов не будет мне и так сойдёт.

@миха123 , так как отключить - см. выше. Разговор про это, судя по всему?

bind_stalker.script, xr_kamp.script, поиск по файлам:

"‐- >> Dynamic campfire mod " - начало кода, добавляемого модулем.

"‐- << Dynamic campfire mod " - его конец.

Соответственно, строки между удаляем/комментируем.

18 часов назад, миха123 сказал:

Заменил xr_kamp, из мода Омега взял

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

 

28.01.2025 в 17:06, bsanek628 сказал:

не реализовано, просто писанина в описании?

Точно так.

Вообще, да. Вроде бы работает. Должно, по крайней мере.

 

8 часов назад, Купер сказал:

"‐- >> Dynamic campfire mod " - начало кода, добавляемого модулем.

"‐- << Dynamic campfire mod " - его конец.

Так и сделал, но видимо в xr_kamp.script что то осталось не подписанное, там есть такая строка без начала, докуда её удалять выше не понятно. 

 

   ......action_wait:death_callback(npc)
    kamps[self.a.center_point]:removeNpc(npc)
end
function action_wait:net_destroy(npc)
    kamps[self.a.center_point]:decreasePops(self.object)    --<< Dynamic campfire mod

 

Удалял " kamps[self.a.center_point]:decreasePops(self.object)". Стоят колом у костров.

 

Сейчас играю в LEGACY OF THE OGSM - v1.0.   Пока всё норм, почти все локи обошел сегодня, вылетов нет, багов не замечено, даже есть плюс, стакеры начали трупы от костров оттаскивать, до замены xr_kamp такого не замечал.

28.01.2025 в 17:06, bsanek628 сказал:

"стрельба с отсечкой по 2 патрона с высокой точностью

Работает, но без разной скорострельности. Параметр dispersion_start - какое значение укажешь, столько пуль и лягут в пределах отклонения fire_dispersion_base, остальные полетят с отдачей.

Но все пули будут будут вылетать с одинаковой задержкой, разную скорострельность не выставить на стандартном движке.

Здесь могла быть ваша реклама.

Подскажите что не так, упаковка xdb в папку модс, игра зависает при запуске, долго думает и закрывается. В бат файле так прописано.

 

converter.exe -pack filemods -2947ru -out mods.xdb
pause

 

Несколько лет паковал, недавно жесткий накрылся и всё пропало. Так же с интета качал бат файл, помню там какой то нюанс был и не работало, а вот что поправить надо не помню лет 5+ прошло. fsgame разные пробовал.  db всё прекрасно пакуется и работает.

@миха123 , ключ -2947ru в данном случае лишний. + обновить для пущей уверенности сам converter, например, на этот вариант (от камрада @abramcumner).

  • Спасибо 1
  • Полезно 1

@Balavnik по информации из этого конфига движок создает в памяти свою табличку соответствия числовых значений story_id их строковым синонимам и помещает её в публичный класс story_ids, таким образом ты получаешь возможность использовать в скриптах и конфигах не только числа, но и элементы перечисления, например:
alife():story_object(192) равно alife():story_object(story_ids.gar_exit_to_agroprom_01)

Изменено пользователем Kirgudu
  • Полезно 4

Свои работы и совместные проекты: ИнструментOGSM CSFinal StrokeHARDWARMOD

Полезное: модули АртосаXML парсер

30.01.2025 в 19:09, Купер сказал:

ключ -2947ru в данном случае лишний

Лишний но ещё надо заменить его на -xdb, иначе не работает.  Должно быть так, наконец то разобрался.

converter.exe -pack filemods -xdb -out mods.xdb

pause

  • Нравится 1
  • Согласен 1

Всё в комплексе. C преферансом, институтками и настроенными .bat-никами:

YandexDisk (относительно xr_compress - внимательно RTFM). Converter при необходимости можно обновить.

 

Отдельно xr_compress с фиксами для ТЧ - здесь.

Где-то по сети гуляет более свежая версия. Но это уже к автору ( @macron).

 

 

  • Полезно 3

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

Дневные работают отлично, никаких вылетов игра не выдавала, а вот один ночной лагерь постоянно сбоит

Скрытый текст

[18.02.25 13:20:09.257] [10804] ! Unknown command: :***  chern_lager_town -- State: 0 -- Total population: 17/19 -- Non exclusive population: 16/18
[18.02.25 13:20:09.265] [10804] ! Unknown command: :[smart_terrain gar_depot_lager] register called obj=chern_lager_stalker_10 gulag_type=gar_depot_lager
[18.02.25 13:20:09.265] [10804] ***************************[ScriptCrashHandler]**********************************
[18.02.25 13:20:09.265] [10804] stack traceback:
    [C]: in function 'game_vertex_id'
    d:\dreamreader\gamedata\scripts\xr_gulag.script:159: in function 'prepare_jobs'
    d:\dreamreader\gamedata\scripts\xr_gulag.script:128: in function 'initialize'
    d:\dreamreader\gamedata\scripts\smart_terrain.script:858: in function 'create_gulag'
    d:\dreamreader\gamedata\scripts\smart_terrain.script:670: in function <d:\dreamreader\gamedata\scripts\smart_terrain.script:629>
    [C]: in function 'update'
    d:\dreamreader\gamedata\scripts\se_stalker.script:172: in function <d:\dreamreader\gamedata\scripts\se_stalker.script:148>
[18.02.25 13:20:09.265] [10804] *********************************************************************************
[18.02.25 13:20:09.265] [10804] ********************************************************************************
[18.02.25 13:20:09.265] [10804] !![LogStackTrace] Thread: [X-RAY Primary thread], ExceptionCode: [c0000005]
[18.02.25 13:20:09.282] [10804] [luabind::detail::class_rep::function_dispatcher] stack trace:
Module: [D:\DreamReader\bin_x64\xrEngine.exe], AddrPC.Offset: [00007FF6EC5CFADB]
Module: [D:\DreamReader\bin_x64\xrEngine.exe], AddrPC.Offset: [00007FF6EC461FF5]
Module: [D:\DreamReader\bin_x64\xrEngine.exe], AddrPC.Offset: [00007FF6EC62672C]
Module: [D:\DreamReader\bin_x64\LuaJIT.dll], AddrPC.Offset: [00007FFFCF4854E0], Fun: [wscanf_s()] + [12487 byte(s)]
Module: [D:\DreamReader\bin_x64\LuaJIT.dll], AddrPC.Offset: [00007FFFCF48F1BA], Fun: [wscanf_s()] + [52641 byte(s)]
Module: [D:\DreamReader\bin_x64\xrEngine.exe], AddrPC.Offset: [00007FF6EC6246B4]
Module: [D:\DreamReader\bin_x64\xrEngine.exe], AddrPC.Offset: [00007FF6EC3B4F05]
Module: [D:\DreamReader\bin_x64\xrEngine.exe], AddrPC.Offset: [00007FF6EC3B430D]
Module: [D:\DreamReader\bin_x64\xrEngine.exe], AddrPC.Offset: [00007FF6EC332127]
Module: [D:\DreamReader\bin_x64\xrEngine.exe], AddrPC.Offset: [00007FF6EC332160]
Module: [D:\DreamReader\bin_x64\xrEngine.exe], AddrPC.Offset: [00007FF6EC4B0732]
Module: [D:\DreamReader\bin_x64\xrEngine.exe], AddrPC.Offset: [00007FF6EC62672C]
Module: [D:\DreamReader\bin_x64\LuaJIT.dll], AddrPC.Offset: [00007FFFCF4854E0], Fun: [wscanf_s()] + [12487 byte(s)]
Module: [D:\DreamReader\bin_x64\LuaJIT.dll], AddrPC.Offset: [00007FFFCF48F1BA], Fun: [wscanf_s()] + [52641 byte(s)]
Module: [D:\DreamReader\bin_x64\xrEngine.exe], AddrPC.Offset: [00007FF6EC6246B4]
Module: [D:\DreamReader\bin_x64\xrEngine.exe], AddrPC.Offset: [00007FF6EC3A638A]
Module: [D:\DreamReader\bin_x64\xrEngine.exe], AddrPC.Offset: [00007FF6EC405103]
Module: [D:\DreamReader\bin_x64\xrEngine.exe], AddrPC.Offset: [00007FF6EC18E3CB]
Module: [D:\DreamReader\bin_x64\xrEngine.exe], AddrPC.Offset: [00007FF6EC30A042]
Module: [D:\DreamReader\bin_x64\xrEngine.exe], AddrPC.Offset: [00007FF6EC27C358]
Module: [D:\DreamReader\bin_x64\xrEngine.exe], AddrPC.Offset: [00007FF6EC4C1340]
Module: [D:\DreamReader\bin_x64\xrEngine.exe], AddrPC.Offset: [00007FF6EC16246C]
Module: [D:\DreamReader\bin_x64\xrEngine.exe], AddrPC.Offset: [00007FF6EBF54A32]
Module: [D:\DreamReader\bin_x64\xrEngine.exe], AddrPC.Offset: [00007FF6EBF55807]
Module: [D:\DreamReader\bin_x64\xrEngine.exe], AddrPC.Offset: [00007FF6EBF1EB74]
Module: [D:\DreamReader\bin_x64\xrEngine.exe], AddrPC.Offset: [00007FF6EBF1F269]
Module: [D:\DreamReader\bin_x64\xrEngine.exe], AddrPC.Offset: [00007FF6EBF1F3A2]
Module: [D:\DreamReader\bin_x64\xrEngine.exe], AddrPC.Offset: [00007FF6EC68FCBE]
Module: [C:\Windows\System32\KERNEL32.DLL], AddrPC.Offset: [00007FFFEBFE259D], Fun: [BaseThreadInitThunk()] + [29 byte(s)]
Module: [C:\Windows\SYSTEM32\ntdll.dll], AddrPC.Offset: [00007FFFEE10AF38], Fun: [RtlUserThreadStart()] + [40 byte(s)]

[18.02.25 13:20:09.282] [10804] ********************************************************************************
[18.02.25 13:20:09.282] [10804] *********************************************************************************
[18.02.25 13:20:09.282] [10804] [print_output([CScriptEngine::lua_pcall_failed])] SCRIPT RUNTIME ERROR:
[luabind::detail::class_rep::function_dispatcher] Caught unhandled exception!
stack traceback:
    [C]: at 0x7ff6ec160348
    [C]: in function 'game_vertex_id'
    d:\dreamreader\gamedata\scripts\xr_gulag.script:159: in function 'prepare_jobs'
    d:\dreamreader\gamedata\scripts\xr_gulag.script:128: in function 'initialize'
    d:\dreamreader\gamedata\scripts\smart_terrain.script:858: in function 'create_gulag'
    d:\dreamreader\gamedata\scripts\smart_terrain.script:670: in function <d:\dreamreader\gamedata\scripts\smart_terrain.script:629>
    [C]: in function 'update'
    d:\dreamreader\gamedata\scripts\se_stalker.script:172: in function <d:\dreamreader\gamedata\scripts\se_stalker.script:148>
[18.02.25 13:20:09.282] [10804] *********************************************************************************
[18.02.25 13:20:09.282] [10804] 
FATAL ERROR

[error]Expression    : FATAL ERROR
[error]Function      : CScriptEngine::lua_pcall_failed
[error]File          : C:\Games\OGSR\ogsr_engine\COMMON_AI\script_engine.cpp
[error]Line          : 60
[error]Description   : [CScriptEngine::lua_pcall_failed]: [luabind::detail::class_rep::function_dispatcher] Caught unhandled exception!


[18.02.25 13:20:09.282] [10804] ***************************[ScriptCrashHandler]**********************************
[18.02.25 13:20:09.282] [10804] stack traceback:
    [C]: at 0x7ff6ec160348
    [C]: in function 'game_vertex_id'
    d:\dreamreader\gamedata\scripts\xr_gulag.script:159: in function 'prepare_jobs'
    d:\dreamreader\gamedata\scripts\xr_gulag.script:128: in function 'initialize'
    d:\dreamreader\gamedata\scripts\smart_terrain.script:858: in function 'create_gulag'
    d:\dreamreader\gamedata\scripts\smart_terrain.script:670: in function <d:\dreamreader\gamedata\scripts\smart_terrain.script:629>
    [C]: in function 'update'
    d:\dreamreader\gamedata\scripts\se_stalker.script:172: in function <d:\dreamreader\gamedata\scripts\se_stalker.script:148>
[18.02.25 13:20:09.282] [10804]     Locals: 
[18.02.25 13:20:09.282] [10804]      string (*temporary) : [luabind::detail::class_rep::function_dispatcher] Caught unhandled exception!
[18.02.25 13:20:09.282] [10804]     End
[18.02.25 13:20:09.282] [10804]     Locals: 
[18.02.25 13:20:09.282] [10804]      userdata (*temporary) : (class CPatrolPathParams): 0000033A5CC11590
[18.02.25 13:20:09.283] [10804]      number (*temporary) : 0.000000
[18.02.25 13:20:09.283] [10804]     End
[18.02.25 13:20:09.283] [10804]     Locals: 
[18.02.25 13:20:09.283] [10804]      Userdata: self
[18.02.25 13:20:09.283] [10804]              Table: self.ObjectJob
[18.02.25 13:20:09.283] [10804]              Table: self.groups
[18.02.25 13:20:09.283] [10804]              number self.population_non_exclusive : 0.000000
[18.02.25 13:20:09.283] [10804]              string self.ltx_name : misc\gulags\gulag_tasks.ltx
[18.02.25 13:20:09.283] [10804]              Table: self.JobLoaded
[18.02.25 13:20:09.283] [10804]              Table: self.Job
[18.02.25 13:20:09.283] [10804]                      table self.Job.1 : [...]
[18.02.25 13:20:09.290] [10804] Can't dump script call stack - Engine corrupted
[18.02.25 13:20:09.290] [10804] ********************************************************************************
 

Уже по 5 раз перепроверял конфиги и срипт гулага, вайпоинты и т.д. - никак на ошибку не вышел.

Может кто из вас сможет увидеть ошибку?

логика гулага в СДКвайпоинты в СДК

Скрытый текст


;*************** depotlager *******************

[logic1@gar_depot_lager]
active = sleeper1@gar_depot_lager

[sleeper1@gar_depot_lager]
path_main = sleeper_1
soundgroup = bar_dolg_bunker
meet = no_meet

[logic2@gar_depot_lager]
active = sleeper2@gar_depot_lager

[sleeper2@gar_depot_lager]
path_main = sleeper_2
soundgroup = bar_dolg_bunker
meet = no_meet

[logic3@gar_depot_lager]
active = walker3@gar_depot_lager

[walker3@gar_depot_lager]
path_walk = guard1_walk
path_look = guard1_look
meet = meet@neutral

[logic4@gar_depot_lager]
active = walker4@gar_depot_lager

[walker4@gar_depot_lager]
path_walk = guard2_walk
path_look = guard2_look
meet = meet@neutral

[logic5@gar_depot_lager]
active = walker5@gar_depot_lager

[walker5@gar_depot_lager]
path_walk = worker1_walk
path_look = worker1_look
meet = meet@neutral

[logic6@gar_depot_lager]
active = walker6@gar_depot_lager

[walker6@gar_depot_lager]
path_walk = worker2_walk
path_look = worker2_look
meet = meet@neutral

[logic7@gar_depot_lager]
active = walker7@gar_depot_lager

[walker7@gar_depot_lager]
path_walk = worker3_walk
path_look = worker3_look
meet = meet@neutral

[logic8@gar_depot_lager]
active = walker8@gar_depot_lager

[walker8@gar_depot_lager]
path_walk = worker4_walk
path_look = worker4_look
meet = meet@neutral

[logic9@gar_depot_lager]
active = walker9@gar_depot_lager

[walker9@gar_depot_lager]
path_walk = worker5_walk
path_look = worker5_look
meet = meet@neutral

[logic10@gar_depot_lager]
active = walker10@gar_depot_lager

[walker10@gar_depot_lager]
center_point  = camp_center
path_walk = camp_center_task
radius = 2.4
meet = meet@neutral

[logic11@gar_depot_lager]
active = walker11@gar_depot_lager

[walker11@gar_depot_lager]
center_point  = camp_center
path_walk = camp_center_task
radius = 2.4
meet = meet@neutral

[logic12@gar_depot_lager]
active = walker12@gar_depot_lager

[walker12@gar_depot_lager]
center_point  = camp_center
path_walk = camp_center_task
radius = 2.4
meet = meet@neutral

Скрытый текст

    if type == "gar_depot_lager" then
        t = { section = "logic1@gar_depot_lager",
            idle = 0,
            prior = 10, state = {0},
            in_rest = "", out_rest = ""
        }
        table.insert(sj, t)
        t = { section = "logic2@gar_depot_lager",
            idle = 0,
            prior = 10, state = {0},
            in_rest = "", out_rest = ""
        }
        table.insert(sj, t)
        t = { section = "logic3@gar_depot_lager",
            idle = 0,
            prior = 10, state = {0},
            in_rest = "", out_rest = ""
        }
        table.insert(sj, t)
        t = { section = "logic4@gar_depot_lager",
            idle = 0,
            prior = 10, state = {0},
            in_rest = "", out_rest = ""
        }
        table.insert(sj, t)
        t = { section = "logic5@gar_depot_lager",
            idle = 0,
            prior = 10, state = {0},
            in_rest = "", out_rest = ""
        }
        table.insert(sj, t)
        t = { section = "logic6@gar_depot_lager",
            idle = 0,
            prior = 10, state = {0},
            in_rest = "", out_rest = ""
        }
        table.insert(sj, t)
        t = { section = "logic7@gar_depot_lager",
            idle = 0,
            prior = 10, state = {0},
            in_rest = "", out_rest = ""
        }
        table.insert(sj, t)
        t = { section = "logic8@gar_depot_lager",
            idle = 0,
            prior = 10, state = {0},
            in_rest = "", out_rest = ""
        }
        table.insert(sj, t)
        t = { section = "logic9@gar_depot_lager",
            idle = 0,
            prior = 10, state = {0},
            in_rest = "", out_rest = ""
        }
        table.insert(sj, t)
        t = { section = "logic10@gar_depot_lager",
            idle = 0,
            prior = 10, state = {0},
            in_rest = "", out_rest = ""
        }
        table.insert(sj, t)
        t = { section = "logic11@gar_depot_lager",
            idle = 0,
            prior = 10, state = {0},
            in_rest = "", out_rest = ""
        }
        table.insert(sj, t)
        t = { section = "logic12@gar_depot_lager",
            idle = 0,
            prior = 10, state = {0},
            in_rest = "", out_rest = ""
        }
        table.insert(sj, t)
    end

 

    if type == "gar_depot_lager" then
        return function (gulag)
            return 0
        end
    end

 

    if gulag_type == "gar_depot_lager" then
        return npc_community == "stalker"
    end

 

Лучше сделать мод с 0, чем пытаться залатать багованный.

DarkSnowder.gif

21 минуту назад, DarkSnowder сказал:

вайпоинты в СДК

Вейпоинты это зеленые крестики же? А что они не на аи-сетке стоят?

 

Вылет из-за того, что движок не смог для вейпоинта получить гейм-вертекс. А не смог получить, похоже из-за того, что вейпоинт не на аи-сетке.

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

@abramcumner АИ-сетка есть под walk-поинтами (то бишь точке, в которой НПС непосредственно будет стоять-находится) look-точки могут быть где угодно - там АИ не нужна. Странно что движок не дает информации о конкретном поинте, если это действительно так.

Лучше сделать мод с 0, чем пытаться залатать багованный.

DarkSnowder.gif

17 минут назад, DarkSnowder сказал:

Странно что движок не дает информации о конкретном поинте, если это действительно так.

Отладочный может и дает.

Кстати walker10 - 12 это точно walker`ы, а не kamp`ы?

@abramcumner не, kamp-ы. Кстати я этого сам не заметил (упустил видимо). Но исправление на такой вариант

Скрытый текст

[logic10@gar_depot_lager]
active = kamp1@gar_depot_lager

[kamp1@gar_depot_lager]
center_point  = camp_center
path_walk = camp_center_task
radius = 2.4

 

[logic11@gar_depot_lager]
active = kamp2@gar_depot_lager

[kamp2@gar_depot_lager]
center_point  = camp_center
path_walk = camp_center_task
radius = 2.4

 

[logic12@gar_depot_lager]
active = kamp3@gar_depot_lager

[kamp3@gar_depot_lager]
center_point  = camp_center
path_walk = camp_center_task
radius = 2.4

вылет не убрал. Что в этом лагере не так - ума не приложу

Лучше сделать мод с 0, чем пытаться залатать багованный.

DarkSnowder.gif

Тогда на время добавить в xr_gulag.script перед 159 строкой строку dbglog("path_name: "..path_name) 

Только вместо dbglog указать твою функцию для логгирования.

Тогда перед вылетом в логе будет путь, на котором игра крашится.

Изменено пользователем abramcumner
  • Нравится 1
  • Полезно 1
2 hours ago, den_z said:

Может быть из-за того, что "flamethrower_bad" считается object-ом

Все детали указаны как секции, а не как объекты (тип "string", а не "userdata") – не должно быть отличий в спавне.

В конфиге предмета "flamethrower_bad" не была назначена прозрачная модель?

  • Согласен 1
  • Полезно 2

Мини-моды: ТЧ ЧН ЗП

Шпаргалка

@Norman Eisenherz, по поводу "запчасти на пол" вываливаются почти все, но без "flamethrower_bad" - Я в списке запчастей (которые спавнятся после взрыва огнемёта), "flamethrower_bad" заменил на "обычный автомат" или винтовку " wpn_lr300". После проверки работы "--Генератора огнесмеси" -   "запчасти на пол"  "обычный автомат" или винтовка " wpn_lr300" появляются... (только огнемёт Шурупа "wpn_flame" - не спавнится).

 Сам предмет "flamethrower_bad"  находится по пути - config - misc - quest_items  - список ниже:

Скрытый текст

 

[flame_parts]:identity_immunities
GroupControlSection    = spawn_group
discovery_dependency = 
;$spawn                 = "devices\quest_items\decoder"
;$prefetch             = 32
class                = II_ATTCH
cform                = skeleton
visual                = amk\flame_prt_gorelka.ogf
radius                = 1
;script_binding        = stalker.object_init
;quest_item            = true

description            = flame_part_desc

inv_name            = item_flame1_name    
inv_name_short        = item_flame1_name
inv_weight            = 0
inv_grid_width        = 1
inv_grid_height        = 1
inv_grid_x            = 11
inv_grid_y            = 3
cost                = 50


[gorelka]:flame_parts
visual                = amk\flame_prt_gorelka.ogf
description            = gorelka_descr
inv_name            = gorelka    
inv_name_short        = gorelka
inv_weight            = 1
inv_grid_width        = 1
inv_grid_height        = 1
inv_grid_x            = 1
inv_grid_y            = 40


[manometr]:flame_parts
visual                = amk\flame_prt_manometr.ogf
description            = manometr_descr
inv_name            = manometr
inv_name_short        = manometr
inv_weight            = 1
inv_grid_width        = 1
inv_grid_height        = 1
inv_grid_x            = 0
inv_grid_y            = 40

[trubka]:flame_parts
visual                = amk\flame_prt_trubka.ogf
description            = trubka_descr
inv_name            = trubka
inv_name_short        = trubka
inv_weight            = 0.5
inv_grid_width        = 2
inv_grid_height        = 1
inv_grid_x            = 2
inv_grid_y            = 40
cost                = 500

[flamethrower_bad]:flame_parts
visual                = amk\wpn_flame_brk.ogf
description            = flama_descr
inv_name            = item_flamethrower_bad_name    
inv_name_short        = item_flamethrower_bad_name
inv_weight            = 5
inv_grid_width        = 4
inv_grid_height        = 2
inv_grid_x            = 13
inv_grid_y            = 38

 

25.02.2025 в 20:02, Norman Eisenherz сказал:

В конфиге предмета "flamethrower_bad" не была назначена прозрачная модель?

Как понимать "В конфиге предмета "flamethrower_bad" не была назначена прозрачная модель" - это что-то связано с "картинкой"?

 Norman Eisenherz - интересная вещь происходит, сделал "подмену". "Накатил" на готовый ствол  "wpn_lr300" (получилась новая секция "flamethrower_bad2"), переименовал... но   visual  "нового ствола" не стал менять, оставил    visual     = weapons\lr300\wpn_lr300.ogf

После взрыва огнемета появились "все запчасти на пол" и сам ствол "wpn_lr300" (единственное при наведении на ствол показывает новые надписи "сломанный огнемет" и картинка этого огнемета - менял надписи и координаты картинки).

Потом поменял  визуал ствола  visual     = weapons\lr300\wpn_lr300.ogf  на    visual     = amk\wpn_flame_brk.ogf  сломанного огнемёта  "flamethrower_bad" - Запустил Игру и после взрыва огнемёта - "все запчасти на пол", а визула "flamethrower_bad" нет!!! 

Не понятно, где подвох - в "оригинале" scripta после взрыва все спавнится и сам "flamethrower_bad"...  Когда поменяли в строке   object("wpn_flame") на  item_in_slot(2)  "flamethrower_bad" перестал появлятся.

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

 

В SDK или в каком-нибудь OGF viewer модель [wpn_flame_brk.ogf] открывается?

 

Еще можно к спавну этой секции дописать

local test_obj = alife():create("flamethrower_bad",pos,lv,gv))

и после спавна (отдельным вызовом, не в этом же цикле) проверить

if level.object_by_id( test_obj.id )

Мини-моды: ТЧ ЧН ЗП

Шпаргалка

23 часа назад, den_z сказал:

Потом поменял  визуал ствола  visual     = weapons\lr300\wpn_lr300.ogf  на    visual     = amk\wpn_flame_brk.ogf  сломанного огнемёта  "flamethrower_bad"

Если кучей что-то спавнится в одной точке, то оно может улететь под террейн. Возможно ЛР-ка в силу своих особенностей и размеров шейпа, физически не вступает в конфликт с другими предметами. Можно попробовать заспавнить все предметы не на землю, а в рюкзак и потом выкинуть вручную:

alife():create("flamethrower_bad",pos,lv,gv,0)

0 - айди актора.

 

А вот то, что

23 часа назад, den_z сказал:

Когда поменяли в строке   object("wpn_flame") на  item_in_slot(2)  "flamethrower_bad" перестал появлятся.

странно. А точно там еще чего-нибудь не поменялось? Точно ничего не упустили?

  • Нравится 1

Telegram-канал RayTwitty Space

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

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

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

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

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

Войти

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

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

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