Подскажите, иконку в формате .dds можно сделать только в фотошопе или в других программах тоже? Например, Paint.net.
И если в пайнте можно, объясните - как? Спасибо.
Тема | Форум | Posted by | Дата |
---|---|---|---|
|
|
Подскажите, иконку в формате .dds можно сделать только в фотошопе или в других программах тоже? Например, Paint.net.
И если в пайнте можно, объясните - как? Спасибо.
Edited by Fagot, 25 November 2013 - 02:43.
Я не являюсь их автором!
Функции найдены в разное время на разных сайтах, или получены мною от хороших людей.
Выдача инфопоршня:
function give_info () db.actor:give_info_portion("название_инфопоршня") end
Вставляем, например, в диалог активацию: <action>название_скрипта.give_info</action> .
================================================
Забрать инфопоршень :
function info_del() db.actor:disable_info_portion("название_удаляемого_поршня ") end
================================================
Выдача инфопоршня при взятии предмета:
в bind_stalker.script ищем функцию function actor_binder:on_item_take (obj) и в ней добавляем:
--функция отслеживания появления предметов в инвентаре: if db.actor then name = obj:section() if db.actor:object("предмет") ~= nil then db.actor:give_info_portion("поршень") end end
===============================================
Спавн мёртвого сталкера:
function название_функции() local obj= alife():create("trup",vector():set(-206.574,-22.534,-128.532),46581,58) obj:on_death() end
"trup" - название секции трупа из spawn_sections.ltx .
==============================================
Спавн раненого (нужны функции АМК):
function v_zhopu_ranenji () local obj = alife():create("ranenji_x18",vector():set(-117.569,0.817,-510.170),40101,834) local tbl = amk.read_stalker_params(obj) tbl.sid = 99999 --сид (можно убрать) tbl.health = 0.1 tbl.updhealth = 0.05 amk.write_stalker_params(tbl, obj) end
===============================================
Выдача предмета актору:
function название_функции (first_speaker, second_speaker) dialogs.relocate_item_section(second_speaker, "название_предмета","in") end
===============================================
Выдаём два одинаковых предмета:
function название_функции (first_speaker, second_speaker) dialogs.relocate_item_section(second_speaker, "название_предмета", "in",2) end
Если надо больше меняем цифру 2 на нужную.
==============================================
Выдать несколько разных предметов актору:
function назв_функц (first_speaker, second_speaker) dialogs.relocate_item_section(second_speaker, "ammo_12x70_buck", "in") dialogs.relocate_item_section(second_speaker, "ammo_9x18_pmm", "in") dialogs.relocate_item_section(second_speaker, "ammo_9x18_pmm", "in") dialogs.relocate_item_section(second_speaker, "ammo_5.45x39_ap","in") dialogs.relocate_item_section(second_speaker, "medkit_army", "in") end
===============================================
Забрать предмет у актора:
function medusu_peredal(first_speaker, second_speaker) dialogs.relocate_item_section(second_speaker, "af_medusa", "out") end
===============================================
Спавн в рюкзак ГГ:
function название_функции() local obj = alife():create("предмет", db.actor:position(), db.actor:level_vertex_id(), db.actor:game_vertex_id(), db.actor:id()) end
===============================================
Проверка наличия предмета у актора:
function назв_функц(task, objective) if db.actor ~= nil then return db.actor:object("af_medusa") ~= nil end return false end
В начало диалога, после <dialog id="... вставляем: <precondition>название_скрипта.название_функции</precondition>
Таким образом диалог не появится у персонажа до тех пор, пока у нас в рюкзаке не будет Медузы.
===============================================
Проверка нескольких разных предметов с разным количеством:
function chasti_mutantov(task, objective) return new_dialog.item_much("mutant_dog_tail",4) ~= false and new_dialog.item_much("mutant_flesh_eye",3) ~= false and new_dialog.item_much("mutant_psevdodog_tail",2) ~= false and new_dialog.item_much("mutant_snork_leg",2) ~= false end
Необходим new_dialog.script , в оригинале ТЧ его нет, взять можно в Народной Солянке.
==============================================
Проверка наличия денег у ГГ(4000 руб.):
function actor_has_money() return db.actor:money()>=4000 end
==============================================
Передача денег от нпс актору(400 руб.):
function medusa_money(first_speaker, second_speaker) dialogs.relocate_money(first_speaker, 400, "in") end
==============================================
Передача денег от ГГ сталкеру(2000 руб.):
function назв_функц(actor, npc) dialogs.relocate_money(npc,2000,"out") end
==============================================
Забрать все деньги у ГГ:
function deneg_hren(actor, npc) local actor = db.actor all_money_actor = actor:money() if actor and npc then dialogs.relocate_money(npc, all_money_actor, "out") end end
===============================================
Удалить предмет из рюкзака ГГ (и из игры вообще):
function назв_функц() local oItem = db.actor:object("предмет") if oItem then db.actor:drop_item(oItem) alife():release(alife():object(oItem:id()), true) end end
===============================================
Удаление сталкера(или предмета) по его секции:
function dell_stalk() 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
===============================================
Удаление по СИДу(story id):
function del() local sim = alife() local se_obj = sim:story_object(888) --сид if se_obj then sim:release(se_obj, true) end end
=================================================
НПС становится врагом...:
function название_функции(actor, npc) npc:force_set_goodwill(-5000, actor) end
...или дрУгом... В этом случае убрать знак минус перед цифрой 5000.
=================================================
Сделать врагами нескольких НПС, по sid-у:
function actor_enemy_mg (actor, npc) local npc = level_object_by_sid (99994) -- сид if npc ~= nil then npc:set_relation (game_object.enemy, db.actor) end local npc = level_object_by_sid (99995) if npc ~= nil then npc:set_relation (game_object.enemy, db.actor) end local npc = level_object_by_sid (99996) if npc ~= nil then npc:set_relation (game_object.enemy, db.actor) end end
====================================================
Эффект выброса:
function vjbros() xr_effects.start_small_reject (actor, npc) if math.random(0, 1001) < 999 then local h = hit() h.direction = vector():set( 1, 0, 0 ) h.impulse = 1 h.draftsman = db.actor h.power = 1 h.type = hit.telepatic db.actor:hit(h) end end
====================================================
Делаем группировку нейтральной для игрока:
function dolg_neitral(npc, actor) local chkgoodwill = relation_registry.community_goodwill("dolg",db.actor:id()) relation_registry.set_community_goodwill ("dolg",db.actor:id(),120) end
Функции работают на ТЧ-1.0004 .
Сложная логика радиоприёмника.
В рассматриваемом приёмнике есть два набора музыкальных композиций. Например, рок и попса.
Сперва играет рок. При наведении прицела на радио, появляется надпись "переключить канал" (например). При переключении, выбирается следующая случайная композиция из "рок". Когда ГГ получает инфопоршень stalk_v_td, происходит переход в секцию ph_sound@muzjka_3, где уже играет попса, с теми же самыми настройками, что и у рока...
[logic] active = ph_sound@muzjka_1 ; рок: [ph_sound@muzjka_1] tips = radio_switch; надпись,появляющаяся при наведении прицела на радио(в string_table_ui.xml) snd = radio_td1; название звуковой темы (sound_theme.script) looped = false; музыка будет проигрываться без остановки, по кругу max_idle = 1000 random = true; случайный выбор композиции on_use = ph_sound@muzjka_2; при нажатии "использовать",переход в следующую секцию(для смены трека) no_hit = false; нанеся урон приёмнику, выключаем его on_info = {+stalk_v_td} ph_sound@muzjka_3; при наличии инфопоршня, переходим в секцию с попсой ; рок: [ph_sound@muzjka_2] tips = radio_switch snd = radio_td1 looped = false max_idle = 1000 random = true on_use = ph_sound@muzjka_1 no_hit = false on_info = {+stalk_v_td} ph_sound@muzjka_3 ; попса: [ph_sound@muzjka_3] tips = radio_switch snd = radio_td2 looped = false max_idle = 1000 random = true on_use = ph_sound@muzjka_4 no_hit = false ; попса: [ph_sound@muzjka_4] tips = radio_switch snd = radio_td2 looped = false max_idle = 1000 random = true on_use = ph_sound@muzjka_3 no_hit = false
ph_snd_themes["radio_td1"] = { "characters_voice\\scenario\\priemnik_rupor_pripyat\\magnitofon_25", "characters_voice\\scenario\\priemnik_rupor_pripyat\\magnitofon_23", "characters_voice\\scenario\\priemnik_rupor_pripyat\\magnitofon_20", "characters_voice\\scenario\\radiopriemniki\\agroprom\\pesnyarj_bel_pusha", "characters_voice\\scenario\\radiopriemniki\\temnaya_dolina\\Pesnyary-Molodost-moya-Belorussiya", "characters_voice\\scenario\\radiopriemniki\\temnaya_dolina\\Pesnjary-Berezovyi_Sok", "characters_voice\\scenario\\priemnik_rupor_pripyat\\magnitofon_22" } ph_snd_themes["radio_td2"] = { "characters_voice\\scenario\\radiopriemniki\\A_Vivaldi-Vremena_goda-dekabr", "characters_voice\\scenario\\radiopriemniki\\IS_Bah-Orkestrovaya_suita_1068", "characters_voice\\scenario\\radiopriemniki\\IS_Bah-Tokkata_re_minor_565", "characters_voice\\scenario\\radiopriemniki\\A_Vivaldi-Vremena_goda-avgust", "characters_voice\\scenario\\radiopriemniki\\pripyat\\magnitofon_6", "characters_voice\\scenario\\priemnik_rupor_pripyat\\magnitofon_20", "characters_voice\\scenario\\priemnik_rupor_pripyat\\magnitofon_22", "characters_voice\\scenario\\radiopriemniki\\PI_Chaikovskii-Shelkunchik" }
Может кто подскажет, интересует такое: где и как заменить рандомные приветсвия Сидоровича, когда заходим к нему в бункер.
Напомню, он говорит, например, такое - "Вернулся ?" , "Есть что-то стоящее ?", "Хабар принес ? " и т.д. Насколько я понимаю, это к диалогам не относится ибо в ПДА - Журнал - История такого нет. оно туда не попадает. То, что звуки надо прогнать через СДК, это понятно, еще бы понять, где эти звуки в какой папке лежат и может еще какие -то нюансы есть типа прописывания в каких-то скриптах.
Поможет кто советом ?
Котобегемот, gamedata\sounds\characters_voice\scenario\trader .
Файлы trader_script1a_1.ogg, trader_script1a_2.ogg и т.п. Заменяй на свои.
Нет.
и может еще какие -то нюансы есть типа прописывания в каких-то скриптах
Можно пример создания диалогов, если для этого я задействовал новые файлы.
Edited by Fаgot, 30 November 2016 - 02:55.
StalkerNest,
1. config\gameplay\твой_файл
2. config\text\rus\твой_файл_с_русским_текстом
В твой_файл пишешь:
<dialog id="moi_dialog"> <phrase_list> <phrase id="0"> <text>moi_dialog_1</text> <next>1</next> </phrase> <phrase id="1"> <text>moi_dialog_2</text> <next>2</next> </phrase> <phrase id="2"> <text>moi_dialog_3</text> </phrase> </phrase_list> </dialog>
В русско-язычный файл вставляешь:
<string id="moi_dialog_1"> <text>Здравствуйте...</text> </string> <string id="moi_dialog_2"> <text>До свидания...</text> </string> <string id="moi_dialog_3"> <text>Сам дурак...</text> </string>
Потом, в character_desc_локация.xml своему персонажу вставляешь ссылку на диалог:
<actor_dialog>moi_dialog</actor_dialog>
Это простейший диалог, без условий.
Всем доброго дня! не знаю по теме здесь пишу но у меня просьба....кто может дать ссылку на патч что бы откатить версию 1.0006 до 1.0004. по инету искал долго но ничего нормального не нашёл.
патч что бы откатить версию 1.0006 до 1.0004.
День добрый!
Загляни сюда, там то что тебе нужно.
http://stalker-worlds.games/load/stalker/9724-stalker-quotvozvrat-s-10006-do-10004-versiiquot.html
ссылку на патч что бы откатить версию 1.0006 до 1.0004
Подозреваю что у тебя пиратка, т.к. если лицензия то не вижу проблем в переустановке.
Могу посоветовать простой способ в несколько кликов - удали из корневого каталога игры папку bin и архивы gamedata.dbc и gamedata.dbd, потом скачай и поставь вот эту папку bin от четвёртого патча и всё у тебя эта версия игры, ставь моды и играй.
сюда
Ссылка ушла в мир иной
Edited by olodkav, 10 February 2017 - 14:09.
Ссылка ушла в мир иной
Вскоре будет в теме, залью на наш яндекс диск.
у меня лицензия
Понятно, но в целом это не имеет значения. Официальных откатчиков нет, т.е. по сути ты будешь пользовать стороннюю программу и тем самым теряешь лицензию. В общем, сделай так как я написал и играй.
Забыл добавить - папку bin и gamedata.dbd и dbc не удаляй, а перенеси куда нибудь с пометкой о том что это шестой патч и поставь то что я тебе дал, потом когда захочешь вернёшь как было и снова будет шестой патч. |
Юра, зачем ты ему оф.патч дал, он не поможет, при запуске будет проверка реестра и установщик сообщит о том что уже установлена версия выше и як то кажуть - "усе, кiна не буде"
Edited by olodkav, 10 February 2017 - 15:12.
"усе, кiна не буде"
Денис, а ему нужен отктчик? Сейчас сделаем.
у меня лицензия и версия там 1.0006 и поэтому хочу откатить до 1.0004
https://yadi.sk/d/CVjBBtRM3DoYEH
Это - даунгрейд! Тоже, что и патч, только наоборот. Он вернёт вам версию 1.0004, если у вас есть версия 1.0006 или 1.0005
Удачи в Зоне сталкер!
Обьясните как укомплектовать .ogf файл чтобы игра его приняла . У меня задача просто отрезать кусочек модели от оружия , но при конвертации теряется часть данных