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

amik

Жители
  • Число публикаций

    1 130
  • Регистрация

  • Последнее посещение

  • Дней в топе

    3
  • AMKoin

    156 [Подарить AMKoin]

Весь контент пользователя amik

  1. malandrinus А там точно был видео ролик? Дело в том что проектор можно и партиклом сделать (опять же таки саму текстуру преподносить в seq).
  2. singapur22 Разве lanim.xr? Если посмотреть телек в АЕ, то можно увидеть ту часть (экрана в нашем случае) куда прописан файл fx_stalker.seq. Анимка из lanim.xr может только "подстраивается" под видео, и то сомневаюсь что она участвует в этом (в билдах может быть), в lanim.xr текстуру подключить не возможно, там ты можешь настроить и анимировать любой цвет (костер, лампы, молнии и т.д. ) без текстур (даже возможности подключи текстуры там нету). Через АЕ можно анимировать любую часть объекта прописав файл seq с перебором текстур. Подправьте меня если что
  3. Приветствую. Можно ли вывести видео файл в телевизор сталкера? Например сделать альфа канал текстуре и подставить туда огм файл (как-то).
  4. amik

    Разговоры о модах

    _http://kp.ua/daily/press/detail/3843/ Хотя это не о модах, но все же...
  5. saruman_ten У GSC свои инструменты, они в СДК игру не делают.
  6. amik

    Работы Cromm Cruac (CoP)

    monk Спасибо. Пси хотел бы сделать под цвет туч, чтобы сильно не выделялся из общей картины. Выброс, страшненький ... Все скоро подправлю. Cromm Cruac Хорошо. Если у тебя будут предложения, пиши. google: Ok. If you will offer, write.
  7. amik

    World of Stalker

    Автор острова 22ff baronlda Успехов в создании данной модификации.
  8. amik

    Разговоры о модах

    mikelik Я не говорю что это не проблема. Слово просто у меня несет немного другой характер. _Val_ Мне тоже это по душе.
  9. amik

    Разговоры о модах

    А чем мешает выбор варианта "брать или нет" то или иное задание? Если мне нужно спереть ящик с базы долга то у меня есть вариант: либо взять его "силой" либо втереться в доверие и спереть его, можно даже полюбить данную группировку и понять на кой ляд этот ящик был нужен тому кто его заказывал... Не нужно всяких установок и прочих примочек. Нужен просто умный сценарий который позволит добиваться целей (тех которые пришлись ГГ по душе) всеми доступными путями (силой, расследованием, разговором и покупкой информации (что-там еще).
  10. amik

    Работы Cromm Cruac (CoP)

    РеВыброс для AtmosFear3 (ДЕМО). Все сделано, но не совсем так как я хотел. Пси выброс не тестировался, какая будет картинка я даже не представляю Выброс blowout_wave_0 хотел сделать как на видео трейлере к ЧН. Не получилось из-за отсутствия подходящей текстуры толстой вспышки. Подправлю если кто тыкнет носом где и что не так (скрины приветствуются). На других сайтах не распространяйте, так как черт знает что там в архиве. Это так, для своих http://narod.ru/disk/19271039001/AtmosFear...Effect.rar.html
  11. amik

    Разговоры о модах

    Valerich Форум у нас большой. Может что и получится у Вас (Нас). Хотя... за оделяло не могу не согласится. Либо можно делать все самому + просить отдельных личностей о помощи в реализации той или иной фишки/идеи. Это наверное единый правильный путь. По поводу интервью, не уважают игроков в GSC наверное, раз говорят руки не дошли.
  12. amik

    Опросы форума.

    Нравятся ли вам моды построенные на базе АМК-ТЧ? 1. Да, все без исключения. 31.23% 2. Нет, ни один не нравится. 3.51% 3. Да, Народная Солянка. 29.82% 4. НСЛ. 3.86% 5. NLC. 16.84% 6. Да, я делаю свой мод на базе АМК. 2.81% 7. Да, но другая модификация. 7.72% 8. Я в них не играл. 2.46% 9. Не люблю творчество АМК. 1.75%
  13. amik

    [SoC] Вопросы по SDK

    strchi 1. Нету. И при чем здесь материал? Шейдер нужно править/делать. 2. Нету такого. Есть тема на АМК. Там собрана вроде бы вся информация по этому вопросу. 3. seq (как и в оригинале). Еще наверное с шейдером пляски для реалистичности. 4. seq + партикл. Это я бы так реализовал. Возможно можно и по другому.
  14. amik

    Все о партиклах

    SibireaStalker Выброс к АФ3 уже на тестах у The ReapeR(а), ждем от него одобрения эффекта... С птичками... сделать такое возможно и получится, но движок ТЧ загнется (ЗП не знаю). Сколько там должно быть текстурок? Минимум 1000-1500, на статике возможно и можно будет глянуть, но не на динамике (статика без проблем переносит партиклы любой сложности). И какой эффект эта "стайка" будет нести для игры? Возможно это и красиво, но что-то должно быть, чтобы так было например что-то в сюжете
  15. amik

    Разговоры о модах

    zubr14 Ну это мелочь, я про более глобальные вещи говорю. Пускай даже они сделают нормальную высадку десанта из вертолета, или чтобы нпс стреляли из укрытия не "высовываясь" (анимки того и другого есть в оригинальном ТЧ), но все это не то. Возможно у меня одного "любовь" проходит, не знаю...
  16. amik

    Разговоры о модах

    Кто это придумал)? В GSC про тот самый сталкер никто уже не думает. Они делают вторую часть, которая еще больше отдалит сталкера от ТЧ а тем более от "билдовской" атмосферы. А то что Дима устал это и так понятно)). Уже из игры выжато все что можно, интерес как мне кажется пропадает не только у мододелов...
  17. amik

    Уроки по модостроению

    Вот кое что от Stalk15. Авторы функций не указаны (Для ТЧ). function spawn_x14 () alife():create("Секция",vector():set(-7.32,-34.48,13.18),1542,2799) end Функции типа "Проверка на взятие предмета..." я лично использую в квестах тегами <function_complete>файл.функция</function_complete> function search_weapon_complete1(actor, npc) if db.actor ~= nil then if db.actor:object("ПРЕДМЕТ") then db.actor:give_info_portion("ПОРШЕНЬ") return true end end return false end local t_wpn = {"ПРЕДМЕТ1", "ПРЕДМЕТ1", "ПРЕДМЕТ1"} function search_ALL_weapons_complete() local gg = db.actor if gg then for i=1,#t_wpn do if not gg:object(t_wpn[i]) then return false end end gg:give_info_portion("ПОРШЕНЬ") return true end return false end Основная функция: function Actor_Has_ListItems(sSection,iNum) if not iNum then iNum = 1 end local oActor = db.actor local iCnt = 0 if oActor and sSection then oActor:iterate_inventory( function (dummy, oItem) if oItem:section() == sSection then iCnt = iCnt + 1 if iCnt >= iNum then return true --/> актор имеет N предметов end end end ,nil) end return iCnt >= iNum --/> имеет ли актор N предметов end Вызов: function search_2_bumazhki_sidr_complete() return this.Actor_Has_ListItems("medkit", 10) end function search_weapon_complete(actor, npc) if db.actor ~= nil then return db.actor:object("wpn_vintorez")~=nil end return false end function have_docs_from_x14(first_speaker, second_speaker) return first_speaker:object("ПРЕДМЕТ") ~= nil end function give_sidor_docs(first_speaker, second_speaker) dialogs.relocate_item_section(second_speaker, "ПРЕДМЕТ", "out") end function give_nagrada_x14 (trader, actor) dialogs.relocate_item_section(trader, "ПРЕДМЕТ", "in") end function have_n_m1() return ИМЯ_СКРИПТА.have_n_m("bread",2,"kolbasa",2,"conserva") end function have_n_m(section,number) local actor = db.actor if actor then local cnt = 0 actor:iterate_inventory( function (dummy, item) if item:section() == section then cnt = cnt + 1 end end ,nil) return cnt >= number end return false end function punch() -- set_inactivate_input_time(30) local snd_obj = xr_sound.get_safe_sound_object([[affects\hit_fist]]) snd_obj:play_no_feedback(db.actor, sound_object.s2d, 0, vector(), 1.0) level.add_cam_effector("camera_effects\fusker.anm", 999, false, "") end Отнимаем: function reputation_down_10(stalker, player) db.actor:change_character_reputation(db.actor:character_reputation() - 10) end Плюсуем: function reputation_up_10(stalker, player) db.actor:change_character_reputation(db.actor:character_reputation() + 10) end function malo_hp() db.actor.health = -0.3 --Минус 30% дезек end function Delete_ak74u_from_Actor() local oItem = db.actor:object("medkit") --/ определяем предмет у ГГ if oItem then --/ у ГГ есть предмет db.actor:drop_item(oItem) --/ выбрасываем предмет (опционально) alife():release(alife():object(oItem:id()), true) --/ удаляем из игры end end function dell() for a = 1,65534 do local se_obj = alife():object(a) if se_obj and se_obj:section_name() == "СЕКЦИЯ ПРЕДМЕТА" then alife():release(se_obj, true) end end end function Delete_2_bumazhki_sidora_from_Actor() local cnt = db.actor:object_count() local ch=0 for i=0, cnt-1 do local item = db.actor:object(i) if item:section() == "medkit" then local sobj = alife():object(item:id()) if sobj then alife():release(sobj,true) ch = ch+1 if ch == 7 then --7 - кол-во удаляемых аптечек break end end end end end function teleportate_to_() local a = vector() a.x = -241.71509460448 a.y = -26.742816052856 a.z = -304.54711914063 db.actor:set_actor_position(a) end function ReleaseRandomItem(num) local actor = db.actor local cnt = actor:object_count() if cnt<num then return end for i=1,num do local item = actor:object(math.random(0, cnt-1)) local sobj = alife():object(item:id()) if sobj then alife():release(sobj,true) cnt = actor:object_count() end end end вызывать так: ReleaseRandomItem(5) -- 5 - число удаляемых предметов Вызов через диалог: function RRI() имя_файла.ReleaseRandomItem(5) end Пример: <action>имя_файла.RRI</action> function join_monolith (actor, npc) -- ставить на дельта апдейт printf ("ACTOR NOW IN имя группировки COMMUNITY") if db.actor and level_id.имя уровня then -- пример l01_escape и т.п db.actor:set_character_community ("имя группировки", 0, 0) end end function habar_davay(actor, npc) treasure_manager.get_treasure_manager():give_treasure("имя тайника") end function test_index() local cnt = db.actor:object_count() for i=0, cnt-1 do local item = db.actor:object(i) local sobj = alife():object(item:id()) if sobj then alife():release(sobj,true) end end end local iTimer function Start_Timer_5_minutes() --/ (пере)запуск таймера (из диалога) iTimer = time_global() + 5*1000 --/ взводим таймер на 5cek end function Timer_N_minutes() --/ вызывается из ':update' сталкер-биндера if iTimer and iTimer < time_global() then --/ проверка текущего значения iTimer = nil --/ выключаем таймер скрипт.функция() --/ выполняем действие end end local iTimer local last function start_timer_minutes_test(seconds) if last~= nil then iTimer = time_global()+last --/ взводим таймер на остаток времени last else iTimer = time_global() + 7*1000 --/ взводим таймер например 7 сек. end end function timer_n_minutes_test() --/ вызывается из ':update' сталкер-биндера if iTimer then last=iTimer-time_global() -- присваиваем переменной остаток времени до конца работы таймера if iTimer < time_global() then iTimer = nil --/ выключаем таймер last=nil СКРИПТ.ФУНКЦИЯ--/ выполняем действие end end end -- выводим значение таймера в обратном отсчете на худ function hud_static() --/ вызывается из ':update' сталкер-биндера local hud = get_hud() local st if iTimer then st = hud:GetCustomStatic("hud_timer") if st==nil then hud:AddCustomStatic("hud_timer", true) st = hud:GetCustomStatic("hud_timer") end if last~=nil then local hours = math.floor(last/3600000) local minutes = math.floor(last/60000 - hours*60) local seconds = math.floor(last/1000 - hours*3600 - minutes*60) local text = string.format("%02d:%02d:%02d",hours,minutes,seconds) -- выводим время в формате 00:00:00 --local text=string.format("%.f",last/1000) st:wnd():SetTextST(text) end else if hud:GetCustomStatic("hud_timer")~=nil then hud:RemoveCustomStatic("hud_timer") end end end Автор:Николай ФеНиКс(ФеНиКс) if bone_index > 0 and who then if who:id() == db.actor:id() then --/ для актора local oActiveItem = db.actor:object("wpn_svd") if oActiveItem then --/ у актера проверяемое оружие local kuda = "" if bone_index == 14 or bone_index == 15 then kuda = "Ранен в глаз" elseif bone_index == 13 then kuda = "Ранен в голову" elseif bone_index == 16 then kuda = "Ранен в челюсть" elseif bone_index == 17 then kuda = "Ранен в шею" elseif bone_index == 9 or bone_index == 10 or bone_index == 11 or bone_index == 18 then kuda = "Ранен в грудь" elseif bone_index >= 1 and bone_index <= 8 then kuda = "Ранен в ногу" elseif bone_index >= 19 and bone_index <= 42 then kuda = "Ранен в руку" end news_manager.send_tip(db.actor, kuda, nil, nil, 2000) end end end Вставлять функцию в мотиватор в функцию hit_callbak. Например, после этого: if self.st.hit then xr_logic.issue_event(self.object, self.st.hit, "hit_callback", obj, amount, local_direction, who, bone_index) end function mochim_five_nps() if has_alife_info("первый_грохнут") and has_alife_info("второй_грохнут") and has_alife_info("третий_грохнут") and has_alife_info("четвертый_грохнут") and has_alife_info("и_пятый_наконец") then return true else return false end end Использование: В теле квеста пишем complete'ы: <infoportion_complete>esc_kvest_secret_merc_kill_poslannick</infoportion_complete> <function_complete>имя_файла.mochim_five_nps</function_complete> После выполнения условий функции mochim_five_nps выдается поршень esc_kvest_secret_merc_kill_poslannick и задание обновляется. local ObjId=0 function pda_killer_spawn() local obj= alife():create("pda_merc_killer_glav",vector():set(-223.700,-7.678,-129.688),17000,281) local text = "Текст метки" level.map_add_object_spot_ser(obj.id, "blue_location", text) --/blue_location - тип метки ObjId=obj.id end Эту метку можно удалить так: function delete_spot() for a=1,65534 do --Перебор айди local obj = alife():object(a) if obj and obj:section_name() == "pda_merc_killer_glav" then --/pda_merc_killer_glav -- Секция предмета или НПС level.map_remove_object_spot(obj.id,"blue_location") break end end end local obj = alife():story_object( 6 ) -- 6 - сид Волка local obj_id = obj.id function add_spot_on_map(obj_id,type,text) if obj_id then if not text then text = "no_text" end level.map_add_object_spot_ser(obj_id, type, text) end end Вызываем: function add_spot_on_map2(obj_id,type,text) имя_файла.add_spot_on_map(obj.id,"green_location","Текст") end Метку можно убрать вот так: local obj = alife():story_object( 6 ) local obj_id = obj.id function remove_spot_from_map(obj_id,type) if obj_id and level.map_has_object_spot(obj_id, type) ~= 0 then level.map_remove_object_spot(obj_id, type) end end эту вызывать: function remove_spot() this.remove_spot_from_map(obj.id,"green_location") end function kvest_search_2_bumazhki_sidr_complete() news_manager.send_tip(db.actor, "%c[255,255,128,128]Автор сообщения\n%c[default]Текст сообщения", 0, "wolf", 17000) end local text = "Здесь текст" function test() news_manager.send_tip(db.actor, text, 0, "trader", 20000) end Спавним рестриктор на координатах Волка с радиусом метра 2.Делаем логику рестриктору: [logic] active = sr_idle [sr_idle] on_actor_inside = %+esc_on_talk% ;Выдача поршня ;Или так(Выбрать одно): on_actor_inside = %=on_talk%" ;Функция Если выбрали поршень, то создаем его: <info_portion id="esc_on_talk"> <action>СКРИПТ.on_talk</action> </info_portion> Вызываем функцию и видим диалог: function on_talk() local npc = level_object_by_sid(006) db.actor:run_talk_dialog(npc) end function immotral() local npc1 = level_object_by_sid(006) --волк local npc2 = level_object_by_sid(092) --проводник local npc3 = level_object_by_sid(032)-- кузнецов local npc4= level_object_by_sid(100) --Серый if npc1 then npc1.health = 1 end if npc2 then npc2.health = 1 end if npc3 then npc3.health = 1 end if npc4 then npc4.health = 1 end end В голову дохнут. function name() local npc = level_object_by_sid(006) npc:set_character_community("имя группировки", 0, 0) end Если разговариваем с самим Волком, то вызываем эту функцию: function name(actor, npc) npc:set_character_community("имя группировки", 0, 0) end function dell_kluk_final() local se_obj = alife():object("esc_wolf") if se_obj then alife():release(se_obj, true) end end function do_something() local item = db.actor:object("antirad") if antirad then db.actor:eat(item) end end Должно быть так: function do_something() local item = db.actor:object("antirad") if item then db.actor:eat(item) end end Надет ли костюм function check_outfit() local outfit = db.actor:item_in_slot(6) if outfit:section() == "exo_outfit" then --/Если в 6 слоте присутствует "exo_outfit" тогда return true --/"exo_outfit" одет else return false --/"exo_outfit" не одет end end Не надет ли костюм function check_outfit() local outfit = db.actor:item_in_slot(6) if outfit:section() == "exo_outfit" then --/Если в 6 слоте присутствует "exo_outfit" тогда return true --/"exo_outfit" не одет else return false --/"exo_outfit" одет end end function hit_nanesti() for a=1,65635,1 do local obj=level.object_by_id(a) if obj and string.find(obj:name(),"ПРЕДМЕТ") then local h = hit (); h.power = 10000; h.direction = vector():set (0, 0, 0); h.impulse = 0; h.draftsman = obj; h.type = hit.explosion; obj:hit (h); end end end function rest() local npc = level_object_by_sid(006) --волк if npc and level.name() == "l01_escape" then return true else return false end end function go_to_marsh_complete() if level_name == "l01escape" then return true else return false end end
  18. amik

    Текстурные мелочи для STALKER

    Нечего особенного)) Все делает задний фон!! На счет автора картинки я ошибся , ее автор mvn78 Вот psd (от PS3), подставляйте любой фон и сохраняйте в правильном формате (смотрите на формат оригинального ui_mainmenu.dds) http://narod.ru/disk/18840299001/ui_mainmenu.psd.html п.с. посты можно объединить.
  19. amik

    Работы Cromm Cruac (CoP)

    Я делаю правки выброса и пси шторма для АФ3. На этой недели думаю уже все будет готово. Ждите
  20. amik

    Опросы форума.

    Так был поставлен вопрос, я не имею право дописывать свои варианты ответов Кстати он будет висеть до тех пор пока не появится новый вопрос, задать его может каждый. Так что ждемс.
  21. amik

    Сообщество Мапперов

    karavan Я хоть и в картах ноль, но кое что знаю. Думаю поймешь: http://www.amk-team.ru/forum/index.php?s=&...st&p=518440 + от себя: то что говорил malandrinus ты можешь проверить сам, 1. Включив демо рекорд и поднявшись на большую высоту, ты увидишь горизонт там где его по идее и не должно быть. 1.2 Ты же не можешь (опять-же таки демо рекордом) улететь за скай бокс, разве не так? Если хочешь сделать новую локу послушайся D1mon(а)
  22. amik

    [SoC] Вопросы по SDK

    Valerich У тебя наверное динамический материал к нему подставлен да? Попробуй поставить статический, например любой из папки materials...
  23. С Днем Рождения! :)

  24. amik

    С днем рождения пропажа! :)

×
×
  • Создать...