QuestRider 2 Опубликовано 14 Декабря 2016 (изменено) Кто подскажет в чем фигня? Я после взятия квеста, отношу предмет Бармену, но задание не обновляется, как исправить? <game_task id="walk_to_barmen_quest"> <title>Посыльный</title> <objective> <text>Передать флеш-диск</text> <icon height="50" width="50" x="100" y="50">ui\ui_icons_task</icon> <infoportion_set_complete>quest_walktobarman_done</infoportion_set_complete> </objective> <objective> <text>Передать Бармену флешку</text> <map_location_type hint="bar_barman">blue_location</map_location_type> <object_story_id>bar_Barman</object_story_id> <infoportion_complete>quest_walktobarman_one</infoportion_complete> </objective> <objective> <text>Принести документ Сидоровичу</text> <map_location_type hint="escape_trader">blue_location</map_location_type> <object_story_id>Escape_Trader</object_story_id> <infoportion_complete>quest_walktobarman_done</infoportion_complete> </objective> </game_task> В info_l01escape вот эти инфопоршни <info_portion id="quest_walktobarman_started"> <task>walk_to_barmen_quest</task> </info_portion> <info_portion id="quest_walktobarman_one"></info_portion> <info_portion id="quest_walktobarman_done"></info_portion> вот Диалог Сидора <dialog id="walk_to_barman"> <has_info>tutorial_end</has_info> <dont_has_info>quest_walktobarman_started</dont_has_info> <phrase_list> <phrase id="5"> <text>walk_to_barman_5</text> </phrase> <phrase id="1"> <text>walk_to_barman_1</text> <next>2</next> </phrase> <phrase id="2"> <text>walk_to_barman_2</text> <next>3</next> </phrase> <phrase id="3"> <text>walk_to_barman_3</text> <next>4</next> <next>5</next> </phrase> <phrase id="0"> <text>walk_to_barman_0</text> <next>1</next> </phrase> <phrase id="4"> <text>walk_to_barman_4</text> <give_info>quest_walktobarman_started</give_info> <next>6</next> </phrase> <phrase id="6"> <text>walk_to_barman_6</text> <action>quest_escape.quest_flash_walktobarman</action> </phrase> </phrase_list> </dialog> <dialog id="walk_to_barman_done"> <has_info>quest_walktobarman_one</has_info> <dont_has_info>quest_walktobarman_done</dont_has_info> <phrase_list> <phrase id="7"> <text>walk_to_barman_done_7</text> <next>8</next> </phrase> <phrase id="8"> <text>walk_to_barman_done_8</text> </phrase> <phrase id="5"> <text>walk_to_barman_done_5</text> <next>6</next> </phrase> <phrase id="1"> <text>walk_to_barman_done_1</text> <next>2</next> </phrase> <phrase id="2"> <text>walk_to_barman_done_2</text> <next>3</next> </phrase> <phrase id="3"> <text>walk_to_barman_done_3</text> <next>4</next> </phrase> <phrase id="0"> <text>walk_to_barman_done_0</text> <next>1</next> </phrase> <phrase id="6"> <text>walk_to_barman_done_6</text> <next>7</next> </phrase> <phrase id="4"> <text>walk_to_barman_done_4</text> <action>quest_escape.quest_doc_walktobarman_dat_item</action> <give_info>quest_walktobarman_done</give_info> <next>5</next> </phrase> </phrase_list> </dialog> И Бармена <dialog id="bar_quest_walk_to_barmen_one"> <has_info>quest_walktobarman_started</has_info> <dont_has_info>quest_walktobarman_one</dont_has_info> <phrase_list> <phrase id="2"> <text>bar_quest_walk_to_barmen_one_2</text> <next>3</next> </phrase> <phrase id="1"> <text>bar_quest_walk_to_barmen_one_1</text> <next>2</next> </phrase> <phrase id="3"> <text>bar_quest_walk_to_barmen_one_3</text> <action>quest_escape.quest_doc_walktobarman</action> <next>4</next> </phrase> <phrase id="0"> <text>bar_quest_walk_to_barmen_one_0</text> <action>quest_escape.quest_flash_walktobarman_dat_item</action> <give_info>quest_walktobarman_one</give_info> <next>1</next> </phrase> <phrase id="4"> <text>bar_quest_walk_to_barmen_one_4</text> </phrase> </phrase_list> </dialog> Изменено 14 Декабря 2016 пользователем Kirgudu Поделиться этим сообщением Ссылка на сообщение
QuestRider 2 Опубликовано 17 Декабря 2016 (изменено) Парни, подайте идей для квестов. Квестодатель: Ридер Группировка: Долг Месторасположение: Кордон Любые квесты, но первые на кордоне. Вот история: Меченный, я прав? Ну ладно расскажу мою историю... Я долговец, тоесть был им, на Армейских складах я со своим отрядом нарвался на мутантов, их вроде кровососами называют, мы их перестреляли, благо без потер обошлось. Но около водонопорной башни увидели наймов, они явно кого-то выссматривали, ну и нас заметили. Ну, короче я остался без отряда и пошел к начальству говорить, что миссию не смог выполнить, а когда двигался в сторону бара, нарвался на телепорт, представляешь впервые увидел телепорт в зоне, около забора был. Ну после вспышки я оказался на кордоне, ну и решил тут остатся. Вот квест, правильно ли все написал? Скрипты: function add_dolg () alife():create("esc_quest_rider",vector():set(-192.22,-17.96,-137.801),244704,111) end function artefact_mayatnik_have() if db.actor:object("af_medusa") then return true end return false end function artefact_mayatnik_give(first_speaker, second_speaker) dialogs.relocate_item_section(second_speaker, "af_medusa", "out") end Песронаж: character_desc_escape <!---------------------------------------esc_quest_rider-----------------------------------------------------> <specific_character id="esc_quest_rider" team_default = "1"> <name>esc_quest_rider_name</name> <icon>ui_npc_u_stalker_do_antigas</icon> <bio>esc_fanat_bio</bio> <class>esc_rider</class> <community>dolg</community> <terrain_sect>stalker_terrain</terrain_sect> <rank>678</rank> <reputation>10</reputation> <money min="12000" max="20000" infinitive="0"/> <snd_config>characters_voice\human_01\stalker\</snd_config> <crouch_type>-1</crouch_type> <panic_treshold>0</panic_treshold> <visual>actors\dolg\stalker_do_antigas</visual> <supplies> [spawn] \n wpn_pm \n ammo_9x18_fmj = 1 \n wpn_ak74 \n ammo_5.45x39_fmj \n </supplies> #include "gameplay\character_criticals_4.xml" <start_dialog>escape_quest_rider_startdialog</start_dialog> <start_dialog>dm_hello_dialog</start_dialog> <actor_dialog>dm_cool_info_dialog</actor_dialog> <actor_dialog>dm_help_wounded_medkit_dialog</actor_dialog> <actor_dialog>quest_ot_ridera_let1</actor_dialog> <actor_dialog>quest_ot_ridera_let1_done</actor_dialog> </specific_character> npc_profile <character id="esc_quest_rider"> <class>esc_rider</class> </character> spawn_section [esc_quest_rider]:stalker $spawn = "respawn\esc_quest_rider" character_profile = esc_quest_rider spec_rank = veteran community = dolg custom_data = scripts\esc_questriders_log.ltx Логика в esc_questriders_log [logic] active = remark@base danger = danger_condition meet = meet [remark@base] anim = wait no_move = true target = nil meet = meet [meet] meet_state = 10|hello@hail| 10|wait@wait meet_state_wpn = 10| hello@talk_hello| 10| threat@threat_weap victim_wpn = 5|actor use = true use_wpn = false Квест tasks_escape.ltx <game_task id="quest_mayatnik_on_ac"> <title>quest_mayatnik</title> <objective> <icon>ui_iconsTotal_tutorial_find_artefact</icon> <article>find_artefact_mayatnik</article> <infoportion_complete>esc_quest_for_AC_done</infoportion_complete> </objective> <objective> <text>finded_artefact_mayatnik</text> <function_complete>escape.artefact_mayatnik_have</function_complete> <infoportion_complete>esc_quest_for_AC_have</infoportion_complete> <infoportion_set_complete>esc_quest_for_AC_have</infoportion_set_complete> </objective> <objective> <text>finded_artefact_mayatnik_1</text> <infoportion_complete>esc_quest_for_AC_done</infoportion_complete> </objective> </game_task> Диалоги <dialog id="quest_ot_ridera_let1"> <has_info>startdialog_with_rider</has_info> <dont_has_info>esc_quest_for_AC</dont_has_info> <phrase_list> <phrase id="1"> <text>quest_ot_ridera_let1_1</text> <next>2</next> </phrase> <phrase id="2"> <text>quest_ot_ridera_let1_2</text> <next>3</next> </phrase> <phrase id="3"> <text>quest_ot_ridera_let1_3</text> <next>4</next> </phrase> <phrase id="4"> <text>quest_ot_ridera_let1_4</text> <next>5</next> </phrase> <phrase id="5"> <text>quest_ot_ridera_let1_5</text> <next>6</next> </phrase> <phrase id="6"> <text>quest_ot_ridera_let1_6</text> <give_info>esc_quest_for_AC</give_info> </phrase> <phrase id="0"> <text>quest_ot_ridera_let1_0</text> <next>1</next> </phrase> </phrase_list> </dialog> <dialog id="quest_ot_ridera_let1_done"> <has_info>esc_quest_for_AC_have</has_info> <dont_has_info>esc_quest_for_AC_done</dont_has_info> <phrase_list> <phrase id="4"> <text>quest_ot_ridera_let1_done_4</text> </phrase> <phrase id="1"> <text>quest_ot_ridera_let1_done_1</text> <next>2</next> </phrase> <phrase id="0"> <text>quest_ot_ridera_let1_done_0</text> <next>1</next> </phrase> <phrase id="3"> <text>quest_ot_ridera_let1_done_3</text> <next>4</next> </phrase> <phrase id="2"> <text>quest_ot_ridera_let1_done_2</text> <action>escape.artefact_mayatnik_give</action> <give_info>esc_quest_for_AC_done</give_info> <next>3</next> </phrase> </phrase_list> </dialog> И инфопоршни <info_portion id="esc_quest_for_AC"> <task>quest_mayatnik_on_ac</task> </info_portion> <info_portion id="esc_quest_for_AC_have"></info_portion> <info_portion id="esc_quest_for_AC_done"></info_portion> Изменено 17 Декабря 2016 пользователем QuestRider 1 Поделиться этим сообщением Ссылка на сообщение
QuestRider 2 Опубликовано 5 Июня 2017 Люди, помогите, я запарился искать инфу нассчет инфопоршней. Кто знает, как выдать инфопоршень, тогда когда ГГ будет в определенном месте, например: ГГ с Волком идет к тоннелю за АТП, и на дороге ведущей к тоннелю активируется инфопоршень и по этому инфопорншю спавнятся мутанты в тоннеле и идут себе гулять, а мы зачищаем их. Мне нужен скрипт или что-то, чтобы выдавался инфопоршень на этой дороге, можно без именный координат, я сам поставлю. Добавочка: как сделать сообщение как в солянке (ну это типо: "Бармен: Стрелок, подойти ко мне в бар. Стрелок: хорошо бармен скоро буду Бармен: жду") И вот как раз ты проходишь мимо АТП и активируется инфопоршень который дает команду функции(или как там это фигня вызывается) на сообщение. Ковырялся в моде Апокалипсис, нашел тип этого function sidor_msg1(first_speaker, second_speaker) local snd_obj = xr_sound.get_safe_sound_object( [[msgs\sidor]] )snd_obj:play_no_feedback(db.actor, sound_object.s2d, 0, vector(), 1.0)news_manager.send_tip(db.actor, "%c[255,200,0,0]Сидорыч:\n%c[default] Сталкер! У тебя ПДА моего покойного друга, Меченного. Зайди, я хорошо заплачу.", nil, nil, 35000)end Поделиться этим сообщением Ссылка на сообщение
QuestRider 2 Опубликовано 7 Июня 2017 Насчет первого я разобрался, это рестрикторы вроде так называются. Делаются в алл.спавне, если кому надо, то вот: [5066] ; cse_abstract propertiessection_name = space_restrictor --не изменятьname = sgm_kvest --имя(изменять на любое)position = -209.579498291016, -20.438346862793, -153.762054443359 --позиция(брать через команду rs_stats on)direction = 0, 0, 0 --хз че, но ставьте примерно на нольversion = 119 -- тоже самоеscript_version = 6 ---....spawn_id = 2788 --вроде нужен свой(вроде); cse_alife_object propertiesgame_vertex_id = 50 --брать через скрипты distance = 3 -- любое значениеlevel_vertex_id = 43937 --брать тоже через скриптыobject_flags = 0xffffffbe --донт ченджcustom_data = <[logic] --логикаactive = sr_idle --логика[sr_idle] --логикаon_actor_inside = %+msg_sidor1% --инфопоршень (вот для этого мне нужен был рестриктор)END --конец(обязательно); cse_shape propertiesshapes = 1 __________ shape_0:type = box | лучшеshape_0:axis_x = 14.8584299087524,0,0 | неshape_0:axis_y = 0,4.67763805389404,0 < shape_0:axis_z = 0,0,4.59808111190796 | менятьshape_0:offset = 0,0,0 |___________; cse_alife_space_restrictor propertiesrestrictor_type = 3 --ставим 3(это лучше);;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; А начсет сообщения на PDA, Перепробовал многие способы, но при всех способах текст искаженный, всегда, ток не английский он нормальный. function new_sms (actor, npc)news_manager.send_tip(db.actor, "new_sms_text", 10000, "ecolog", 18000, 902)endАвтор: LaRento Еще был получше вариант, но я увы его удалил, потом найду, как исправить карявый текст в сообщении? Поделиться этим сообщением Ссылка на сообщение
QuestRider 2 Опубликовано 8 Июня 2017 (изменено) Это снова я, разобрался и с PDA сообщениями, также расскажу как я это сделал. [spoiler=файл news_manager.script]news = {tips_esc_trader_about_anomalies = xr_sound.get_safe_sound_object([[characters_voice\scenario\trader\trader_tutorial_anomalies_1]]),... ... ...new_sms_text = xr_sound.get_safe_sound_object([[msgs\shustryi]]), То что синим = это ссылка на текст и ссылка на выдачу, потом скажу где надо. А перевод на русский в файле: string_table_tips_escape.xml То что оранжевым = это ссылка на звуковой файл, в моей случае msgs\shustryi <string id="new_sms_text"> --ссылка <text>Стрелок, зайди ко мне, я на кардоне.</text> --текст </string> [spoiler=Алл.спавн]Дальше сложней, нам нужно создать рестриктор, и в логику написать вот это: [logic] active = sr_idle [sr_idle] on_actor_inside = sr_tip --переход на логику [sr_tip] name = new_sms_text -- тот текст type = tips -- либо tips, либо news sender = trader --от кого(картинка сидоровича) on_actor_inside = nil --если актор в зоне, если хотите чтобы вне рестриктора было не видно сообщения showtime = 15000 --время 15 сек(вроде) END --и обязательно конец И все, теперь при входе в рестриктор выполняется функция сообщения на пда со звуком без корявого текста. Изменено 8 Июня 2017 пользователем QuestRider Поделиться этим сообщением Ссылка на сообщение