
Muzafir
Проверенные-
Число публикаций
132 -
Регистрация
-
Последнее посещение
-
AMKoin
1,908 [Подарить AMKoin]
Весь контент пользователя Muzafir
-
[SoC] Ковыряемся в файлах
Muzafir ответил на тему форума автора Halford в Скрипты / конфиги / движок
У меня такая проблема. Создал новую группировку, она к ГГ нейтральна. Все вроде бы хорошо, но если бойца этой группировки ранят, он лежит просит аптечку, у ГГ в инвентаре аптечка есть, но диалога, чтобы ее отдать не появляется. Почему? -
В death_items_by_communities.ltx косяка нет. Я просто скопировал секцию и переименовал. Добавлю твою проверку. Еще раз спасибо.
-
Вносил, точно помню. Сейчас перепроверю, может накосячил там где-то На всякий, настройки дропа - это death_items_by_communities.ltx? Проверил, как ты сказал - и название локации и инфопорция точно правильны
-
Нынешний код: function actor_binder:net_spawn(data) printf("actor net spawn") level.show_indicators() self.bCheckStart = true self.weapon_hide = false -- спрятано или нет оружие при разговоре. weapon_hide = false -- устанавливаем глобальный дефолтовый флаг. if object_binder.net_spawn(self,data) == false then return false end db.add_actor(self.object) if self.st.disable_input_time == nil then level.enable_input() end self.weather_manager:reset() -- game_stats.initialize () if(actor_stats.add_to_ranking~=nil)then actor_stats.add_to_ranking(self.object:id()) end if (level.name() == "simeiz") and not has_alife_info("keep_base_defend_started") then self.object:give_info_portion("keep_base_defend_started") end --' Загружаем настройки дропа death_manager.init_drop_settings() return true end death_manager - стандартный. Я только в конце одной строки дописал новую группировку. На количество строк это не повлияло 135 строка - это for k,v in pairs(spawn_items) do --' Доспавниваем необходимое количество итемов: --' Необходимо составить список объектов которые могут быть заспавнены для персонажа local spawn_items = item_by_community[self.npc:character_community()] for k,v in pairs(spawn_items) do --' По каждому объекту необходимо получить зависимости if check_item_dependence(self.npc, k) == true then --' По каждому объекту необходимо получить количество local number = math.ceil(math.random(count_by_level[k].min, count_by_level[k].max)) --' Необходимо заспавнить нужное количество. create_items(self.npc, k, number, v) end 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: ...a.l.k.e.r. soc\gamedata\scripts\death_manager.script:135: bad argument #1 to 'pairs' (table expected, got nil)
-
Я это понимаю, поэтому и хочу сделать по-человечески. Только что намеренно написал название локации неправильно. Никаких вылетов. Выходит это условие не проверяется?
-
Все очень логично, что ты предлагаешь. Но почему этот же код при копи-пасте в delta-update работает? Эх, Сталкер - ни шага без боли!!!
-
Да, если при несуществующем инфопоршне получаю именно такой вылет Если вешаю на нет_спаун, выше, строчек --' Загружаем настройки дропа death_manager.init_drop_settings() Как только в перестрелке кого-либо убивают, получаю вылет с руганью на этот death_manager. script Если после него просто ничего не происходит. Если вешаю на update. Задание появляется в ПДА, но беззвучно и не засчитывается при убийстве группы нападающих (как должно). Тут, вероятно, что-то уже с заданием.
-
Ок. Попробую еще раз. Я тоже где-то читал, что так правильно, так и Zander_driver сказал, но почему-то не работало. Если не лень, гляньте выше, где я выложил целиком нет-спаун. Может куда-то не туда засовываю?
-
таск в поршень добавлен. Не знаю, как с помощью скриптов проверить, что возвращает db.actor:has_info(), но таск создан. Это первое, что я проверил
-
Локация моя. Недавно допилил графику. Хочу немного "оживить" перед релизом. Чтобы интереснее было изучать, если кто-то захочет глянуть. Кстати, все заработало через функцию delta. Обычного звука получения задания нет, но задание в ПДА появляется. Через нет_спавн почему-то не получалось.
-
Пробовал только что. Получаю вылет без лога
-
Помогите новичку. Хочу выдать задание ГГ сразу после появления на локации. Вот так выглядит у меня ф-ия actor_binder:net_spawn(data) function actor_binder:net_spawn(data) printf("actor net spawn") level.show_indicators() self.bCheckStart = true self.weapon_hide = false -- спрятано или нет оружие при разговоре. weapon_hide = false -- устанавливаем глобальный дефолтовый флаг. if object_binder.net_spawn(self,data) == false then return false end db.add_actor(self.object) if self.st.disable_input_time == nil then level.enable_input() end self.weather_manager:reset() -- game_stats.initialize () if(actor_stats.add_to_ranking~=nil)then actor_stats.add_to_ranking(self.object:id()) end --' Загружаем настройки дропа death_manager.init_drop_settings() if (level.name() == "simeiz") and not has_alife_info("keep_base_defend_started") then self.object:give_info_portion("keep_base_defend_started") end return true end Как видно, свой код я вставил перед return'ом, но ничего не происходит. Задание не выдается. Название инфопорции и локации перепроверил - все верно
-
Всю голову сломал этими скриптами. Если я правильно понял, чтобы выдать ГГ задание сразу после перехода на локацию, то в файле bind_stalker.script нужно найти функцию function actor_binder:net_spawn(data) и в нее вставить такой кусок кода: if (level.name() == "simeiz") and -- название локации not has_alife_info("keep_base_defend") then -- и данная инфопорция (старт квеста) не выдавалась self.object:give_info_portion("keep_base_defend ") – выдать ее end
-
Ок, спасибо. В скриптах я новичок, но с этим понятно. Сейчас буду разбираться, как повесить коллбэк на net_spawn
-
Ты имеешь ввиду, здесь нужно выдать игроку инфопорцию, которая стартует квест?
-
Подскажите, как можно выдать ГГ квест без диалога с кем-либо? Во всех уроках квесты активируются в диалоге. Мне нужно чтобы ГГ получал задание после перехода на локацию. Окружить точку перехода спейс-рестрикоторами или может какой-то способ потолковей есть?
-
@билдомассон, конвертни в obj рабочую модель. Открой в Актор Эдиторе и посмотри какой шейп назначен рут кости. Насколько я помню, шейпы не нужны костям, к которым не привязан меш
-
Ты имеешь ввиду зайти в настройки и вручную исправить Y scale шейпа, так чтобы он коснулся сетки? Флаг spawn-элемента при attach'e все равно переместится в центр группы
-
@Дядя Богдан, у тебя скелету (похоже всему, т.к. начинается с root) назначен не динамический тип материала. Просто назначь другой в Actor Editor. Выбери что-нибудь из папки objects. Для самого ТОЗа подойдет large_weapon. Или просто всему скелету назначь default_object. Тоже должно прокатить.
-
Всем привет! Подскажите, как правильно заспавнить (через СДК) аномалию "Жгучий пух". Если, как остальные Spawn Element/zones/burning_fuzz1 и присоединяю шейп, то при запуске новой игры - вылет с ошибкой: Line : 121 Description : ! MODEL: can't find cycle: Ну а если спавнить как Spawn Element/object/physics/anomaly/topolinyipuh, - "отказывается" жечь
-
Ок, спасибо. Как обычно, никуда не денешься от экспериментов . Я сделал одну локу. Идея в том, чтобы туда можно было в любой момент зайти просто пострелять - отвести душу. Можно хоть всех вынести, основной сюжет это не затронет. Эдакий сюжетный оффтопчик. Поэтому думаю прицепить пока к оригинальной игре. А если кому-то приглянется, пусть уже люди, создающие серьезные моды и паки, используют по своему усмотрению. Или может тогда не париться и откомпилить на максе как есть, чтобы игра сразу грузилась на ней? Так и познакомиться с ней будет удобней
-
Это да. Но при правках спавна вроде каждый раз нужно начинать новую игру. Это значит - каждый раз добираться до перехода на локу? Вот что меня смущает.
-
Я просто не очень разбираюсь в вопросе. Все по туторам и опытным путем. Когда изменяется сюжет, компилится только спавн, поэтому не будет лишних затрат времени на компиляцию, так?
-
Спасибо. Можно еще совет? Меня на локе уже все устраивает в плане графики. Ничего не хочу менять. Сейчас она одна в паке и скомпилирована на драфте. Есть еще желание попробовать ее заселить и организовать небольшой сюжет. Как лучше сделать: стоит ли сейчас ее компилировать на максе и собрать весь пак локаций. Или сначала поиграться с сюжетом?
УЧИМСЯ МОДДИНГУ
ИГРАЕМ В МОДЫ НА ТЧ
ИГРАЕМ В МОДЫ НА ЧН И ЗП
- [ЧН] OGSM CS 1.8 CE Fixes
- [ЧН] HARDWARMOD 3.2
- [ЗП] The Long Road
- [ЧН] New vision of War
- [ЧН] Old Good Stalker Mod - Clear Sky
- [ЗП] Unofficial Patch
- [ЗП] Смерти вопреки
- [ЗП] Контракт на хорошую жизнь
- [ЗП] Shoker Weapon Mod 2.1
- [ЗП] Hardcore pack for SGM 2.2
- [ЗП] Контракт Синдиката
- [ЗП] Клондайк 2.0
- ...и другие моды
ПОЛЕЗНОЕ И РАЗНОЕ