kish 320 Опубликовано 2 Мая 2011 (изменено) Leshik, Заменить ЧАЭС на заднем плане В файле ui_mm_main.xml (gamedata\config\ui) есть строки: <back_movie x="148" y="0" width="876" height="400"> <texture x="0" y="0" width="876" height="400">ui\ui_mm_main_back_crop</texture> </back_movie> Вот путь к текстуре, которая отвечает за ЧАЭС: gamedata\textures\ui\ui_mm_main_back_crop.ogm Собственно надо заменить текстуру на свою и прописать к ней путь в ui_mm_main.xml Изменено 2 Мая 2011 пользователем kish . Поделиться этим сообщением Ссылка на сообщение
kish 320 Опубликовано 3 Мая 2011 Leshik, Конвертируем программой ffmpeg2theora-0.23 1-Для переконвертирования нужно перетащить ролик AVI на иконку программы 2-Переименовать выходной файл из "OGV" в "OGM" Для конвертации я пользуюсь именно ей. . Поделиться этим сообщением Ссылка на сообщение
kish 320 Опубликовано 20 Июня 2011 (изменено) Здравствуйте. Есть зоны убора оружия у торговцев. Вопрос: Как убрать их? В каких файлах поправить? (Я так понимаю надо что-то сделать с рестрикторами?) Изменено 20 Июня 2011 пользователем kish . Поделиться этим сообщением Ссылка на сообщение
kish 320 Опубликовано 30 Июля 2011 ...в каком файле нужно подправить координаты... Правиться совместно с новостями на ХУДе. координаты новостей правятся в файле maingame_pda_msg.xml, что в папке gamedata\config\ui <icon_static x="0" y="-72" width="49" height="29" stretch="1"/> ….. <text x="0" y="-72" font="letterica16" r="255" g="255" b="255"/> Чем больше число с минусом, тем выше новости поднимаются вверх!!!!! По дефаулту: y="4" . Поделиться этим сообщением Ссылка на сообщение
kish 320 Опубликовано 1 Августа 2011 (изменено) ..... но что то не получается ничего, менял игрек по разному, нет на экране ничего. Как все таки нужно сделать, если это вообще можно. Так потому и нет, что y="0" (ушло за пределы экрана). Все остальное правильно. Поставь, например, y="-76" и поднимется к верху (чем больше число с минусом, тем выше поднимается по экрану) <window> <!-- ICON --> <icon_static x="0" y="-76" width="49" height="29" stretch="1"/> <!-- MSG TEXT --> <text_static x="0" y="0" width="540" height="29" complex_mode="1"> <text x="0" y="-76" font="letterica16" r="255" g="255" b="255"/> </text_static> </window> Изменено 1 Августа 2011 пользователем kish . Поделиться этим сообщением Ссылка на сообщение
kish 320 Опубликовано 5 Августа 2011 (изменено) Helsing, В 1.2.3 много чего нет того что есть в 1.4.1.2. В основном - amk.скрипт, amk_mod.скрипт. В этих скриптах много чего добавлено, и на них все "завязано" Оффлайн алайф + новости amk_names_lists.script, news_data.script, news_main.script, amk_offline_alife.script, amk.script, amk_mod.script, bind_stalker.script, xr_wounded.script. Но все эти скрипты надо переделывать под версию 1.2.3. Рандомные тайники treasure_manager.скрипт Есть еще отличная тема по тайникам - http://www.amk-team.ru/forum/index.php?sho...10244&st=20 Изменено 5 Августа 2011 пользователем kish . Поделиться этим сообщением Ссылка на сообщение
kish 320 Опубликовано 7 Августа 2011 (изменено) Disord, Не получится: Изменено 7 Августа 2011 пользователем kish . Поделиться этим сообщением Ссылка на сообщение
kish 320 Опубликовано 9 Августа 2011 (изменено) Biler, Какие файлы еще нужно выдрать, что бы получились Динамические новости (АМК) Еще нужны файлы amk.скрипт, amk_mod.скрипт (необходимо редактировать, отключить не нужное), bind_stalker.скрипт (тоже надо редактировать, выбрать нужные строки и добавить в свой мод) какие правки нужно делать под адаптацию на другой мод Вот для оригинала ТЧ: В bind_stalker: 1. после: --' Загружаем настройки дропа death_manager.init_drop_settings() Добавить: amk.on_game_load(obj) 2. после: function actor_binder:net_destroy() Добавить: amk.on_game_save(obj) 3. В конец функции: function actor_binder:take_item_from_box(box, item) перед последним end добавить: amk.on_item_take_from_box(box,item) 4. В конец функции: function actor_binder:info_callback(npc, info_id) перед последним end добавить: amk.on_info() 5. В конец функции: function actor_binder:on_item_take (obj) перед последним end добавить: amk.on_item_take(obj) 6. В конец функции: function actor_binder:on_item_drop (obj) перед последним end добавить: amk.on_item_drop(obj) 7. После: if self.bCheckStart then printf("SET DEFAULT INFOS") добавить: if not has_alife_info("storyline_actor_start") and 8. после: if not has_alife_info("level_changer_icons") then self.object:give_info_portion("level_changer_icons") end level_tasks.add_lchanger_location() self.bCheckStart = false end Добавить: amk.on_actor_upade() В amk_mod: --новости function show_news() local when,where,text,mat = amk_news_lists.get_strings() local name,sname = amk_names_lists.get_strings() local reason,dead = amk_death_lists.get_strings() local uniq=amk_uniq_news_lists.get_strings() if math.random(0,1)>0.5 then when,where = where,when end if math.random(0,1)>0.8 then name="" end if math.random(0,1)>0.1 then mat="" end if math.random(0,1)>0.4 then if math.random(0,1)>0.4 then amk.send_tip(when.." "..where.." "..text.." "..mat,name.." "..sname,nil,15) else amk.send_tip(name.." "..sname..". "..dead..". "..reason,"Погиб сталкер:",nil,10,"death") end else amk.send_tip(uniq,name.." "..sname,nil,15) end amk.g_start_timer("show_news",0,0,math.random(40,80)) --amk.g_start_timer("show_news",0,0,2,"show") end ------------------- Надо смотреть есть ли такие файлы в другом моде и править в нужных местах программой WinMerge. может у кого уже готовый для чистой версии, а там я сам адаптирую? В теме "Раритеты" в мастерской есть вариант "Динамические новости + спальный мешок АМК". Посмотри, адаптируй Изменено 9 Августа 2011 пользователем kish . Поделиться этим сообщением Ссылка на сообщение
kish 320 Опубликовано 9 Августа 2011 (изменено) Biler, Теперь я хочу спальный мешок убрать, а вместо него адаптировать New Sleep Mo Тогда в amk_mod.script удали все функции сна. Вот эти: --сон function reduce_need_sleep(time) local tmp=amk.load_variable("gg_need_sleep",0) tmp=tmp-time*120 if tmp<0 then tmp=0 end amk.save_variable("gg_need_sleep_nrg",0) amk.save_variable("block_sleep_menu",0) amk.save_variable("gg_need_sleep",tmp) test_sleep_pp() end function test_for_need_sleep() if sleep_manager.is_sleep_active() == false then amk.save_variable("gg_need_sleep",amk.load_variable("gg_need_sleep",0)+1) test_sleep_pp() end amk.g_start_timer("gg_need_sleep",0,0,6) end function test_sleep_pp() local tmp=amk.load_variable("gg_need_sleep",0) if tmp>360 then sleep_manager.main(5+amk.load_variable("gg_need_sleep_nrg",0)) end if tmp>300 then level.add_pp_effector("yantar_underground_psi.ppe", 999, true) level.set_pp_effector_factor(999, 5.0) end if tmp<=300 then level.remove_pp_effector(999) end end function check_sleep_item(obj) local section = obj:section() local stype=nil if section=="energy_drink" then stype="nrg" elseif (section=="medkit" or section=="medkit_army" or section=="medkit_scientic") then stype="med" elseif section=="matras" then stype="matras" end if stype~=nil then amk.start_timer("sleep_"..stype,0.1,obj:id()) end end function test_for_need_sleep_nrg(oid) if alife():object(oid)==nil then local n=amk.load_variable("gg_need_sleep_nrg",0) if n<3 then amk.save_variable("gg_need_sleep_nrg",n+1) amk.save_variable("gg_need_sleep",amk.load_variable("gg_need_sleep",0)-30+n*10) test_sleep_pp() end amk.g_start_timer("block_sleep_menu",0,1,0) amk.save_variable("block_sleep_menu",1) end end function test_for_need_sleep_med(oid) if alife():object(oid)==nil then amk.save_variable("gg_need_sleep",amk.load_variable("gg_need_sleep",0)+3) test_sleep_pp() end end function test_for_need_sleep_matras(oid) if alife():object(oid)==nil then if amk.load_variable("block_sleep_menu",0)==0 then local spwn=ui_cheat.cheat(get_hud()) level.start_stop_menu(spwn,true) else amk.send_tip("Меченый не может спать из-за действия энергетика","Сообщение",nil,5) end amk.spawn_item_in_inv("matras") end end ---------------------- И скрипты: ar_sleep, sleep_manager, xr_effects, ui_cheat конфиги: ui_movies, ui_cheat_wnd, string_table_amk_matras, actorsleep, amk_mod_matras, dream (в items убрать инклуд amk_mod_matras.ltx) и еще: item_rukzak.ogf. что нужно оставить в файле amk.script (а что можно убрать), адаптирую на R.M.A. Mod 1.1 ? Если будет что-то лишнее, будет видно по логу вылета, ну и надо будет закоментировать нужную строку. KubikRubik, В конфигах отсутствует секция "weapon_immunities". Посмотри где-то забыл добавить эту секцию. Изменено 9 Августа 2011 пользователем kish . Поделиться этим сообщением Ссылка на сообщение
kish 320 Опубликовано 14 Августа 2011 Всем привет. Есть проблема. FATAL ERROR [error]Expression : fatal error [error]Function : CScriptEngine::lua_error [error]File : E:\stalker\patch_1_0004\xr_3da\xrGame\script_engine.cpp [error]Line : 73 [error]Description : <no expression> [error]Arguments : LUA error: ...mes\s.t.a.l.k.e.r\gamedata\scripts\ogsm_funcs.script:99: attempt to compare nil with number Дело в том, что вылет по таймеру. Есть функции таймера: -- Проверка таймеров, использует 3 следующие за ним функции для выбора действия function check_timers() local tmp for a=1,100,1 do tmp=load_variable("rt"..a,nil) if tmp~=nil then __timer_found(a) end end for a=1,100,1 do tmp=load_variable("gt"..a,nil) if tmp~=nil then __g_timer_found(a) end end end function __timer_found(idx) local time = game.time() --time in seconds since 1970 local name,params if load_variable("rt"..idx.."d", nil)<=time then name=load_variable("rt"..idx, nil) params=load_variable("rt"..idx.."p", nil) del_variable("rt"..idx) del_variable("rt"..idx.."d") del_variable("rt"..idx.."p") __do_timer_action(name,params) return true end return false end function __g_timer_found(idx) local gtime = level.get_time_days()*60*24+level.get_time_hours()*60+level.get_time_minutes() --time in game minutes local name,params if load_variable("gt"..idx.."d", nil)<=gtime then name=load_variable("gt"..idx, nil) params=load_variable("gt"..idx.."p", nil) del_variable("gt"..idx) del_variable("gt"..idx.."d") del_variable("gt"..idx.."p") __do_timer_action(name,params) return true end return false end и такие же функции в amk.script: --проверка таймеров, использует 3 следующие за ним функции для выбора действия -function check_timers() local tmp for a=1,100,1 do tmp=load_variable("xt"..a,nil) if tmp~=nil then __timer_found(a) end end for a=1,100,1 do tmp=load_variable("gt"..a,nil) if tmp~=nil then __g_timer_found(a) end end end function __timer_found(idx) local time = game.time() --time in seconds since 1970 local name,params if load_variable("xd"..idx, nil)<=time then name=load_variable("xt"..idx, nil) params=load_variable("xp"..idx, nil) del_variable("xt"..idx) del_variable("xd"..idx) del_variable("xp"..idx) oau_reason=name.." "..params __do_timer_action(name,params) return true end return false end function __g_timer_found(idx) local gtime = level.get_time_days()*60*24+level.get_time_hours()*60+level.get_time_minutes() --time in game minutes local name,params if load_variable("gd"..idx, nil)<=gtime then name=load_variable("gt"..idx, nil) params=load_variable("gp"..idx, nil) del_variable("gt"..idx) del_variable("gd"..idx) del_variable("gp"..idx) oau_reason=name.." "..params __do_timer_action(name,params) return true end return false end А вот 99 строка в ogsm_funcs.script: if load_variable("gt"..idx.."d", nil)<=gtime then Пробовал закоментировать функции в амк.скрипте, но ни чего не помогло, вылет тот же. Пробовал закоментировать в ogsm_funcs.script, стало вылетать по 234 строке в этом скрипте: -- Колбэк на апдейт ГГ function on_actor_update() if not timer_trigger then timer_trigger=game.time() end if timer_trigger<=game.time() then timer_trigger=game.time()+5000 check_timers()-------------------------------------Вот эта строка 234 end ogsm_surge.update_surge() end Помогите пожалуйста . Поделиться этим сообщением Ссылка на сообщение
kish 320 Опубликовано 20 Августа 2011 (изменено) Вот такой вопрос, как в сообщения о смерти сталкеров добавить группировку убитого..? В народной солянке.. Сообщения о смерти сталкеров обычно берутся из amk_death_lists.скрипт, уникальные сообщения от группировок в amk_uniq_news_lists.скрипт. Сообщения о группировках есть ещё в news_data.скрипт (community_name["stalker"]... и т.д.), впиши свою группировку. Текст сообщений строится из news_main.скрипт, тексты сообщений в news_data.скрипт, звуки сообщений в news_manager.скрипт. Изменено 20 Августа 2011 пользователем kish . Поделиться этим сообщением Ссылка на сообщение
kish 320 Опубликовано 21 Августа 2011 покопался в погоде(48 секций на каждый пол часа заделал), вернул солнце и луну с помощью ogsm скриптов и поймал вылет .... помогите прошу) "global_wnd" есть в game_tutorials.xml. Посмотри где-то в этом файле не закрыл тег. . Поделиться этим сообщением Ссылка на сообщение
kish 320 Опубликовано 27 Августа 2011 .....Что это может быть?Помогите пожалуйста. Попробуй так, как у меня: function assign_storage_and_bind(npc, ini, scheme, section) local npc_id = npc:id() local st if not db.storage[npc_id][scheme] then db.storage[npc_id][scheme] = {} st = db.storage[npc_id][scheme] st["npc"] = npc -- Схема стартует впервые - прибиндить --printf("DEBUG: assign_storage_and_bind: bind scheme: '%s'", scheme) _G[schemes[scheme]].add_to_binder(npc, ini, scheme, section, st) else st = db.storage[npc_id][scheme] end st["scheme"] = scheme st["section"] = section st["ini"] = ini return st end Только у меня без AI_Mon Modification. . Поделиться этим сообщением Ссылка на сообщение
kish 320 Опубликовано 19 Сентября 2011 (изменено) Извините меня,я имел ввиду где хранятся координаты текста(новая игра,и т.д) Координаты кнопок в главном меню прописаны в ui_mm_main.xml <menu_main btn_height="30" font="graffiti22" a="255" r="0" g="0" b="0"> <btn name="btn_new_game" caption="ui_mm_newgame" /> <btn name="btn_load" caption="ui_mm_load_game" /> <btn name="btn_multiplayer" caption="ui_mm_multiplayer_n" /> <btn name="btn_options" caption="ui_mm_options_n" /> <btn name="btn_credits" caption="ui_mm_credits" /> <btn name="btn_quit" caption="ui_mm_quit2windows" /> </menu_main> <menu_main_last_save btn_height="30" font="graffiti22" a="255" r="0" g="0" b="0"> <btn name="btn_new_game" caption="ui_mm_newgame" /> <btn name="btn_load" caption="ui_mm_load_game" /> <btn name="btn_lastsave" caption="ui_mm_last_save" /> <btn name="btn_multiplayer" caption="ui_mm_multiplayer_n" /> <btn name="btn_options" caption="ui_mm_options_n" /> <btn name="btn_credits" caption="ui_mm_credits" /> <btn name="btn_quit" caption="ui_mm_quit2windows" /> </menu_main_last_save> Тексты кнопок - ui_st_mm.xml п.с. пожалуйста юзайте Notepad++ последней версии. С помощью этой программы все находиться за считанные секунды Изменено 19 Сентября 2011 пользователем kish . Поделиться этим сообщением Ссылка на сообщение
kish 320 Опубликовано 18 Января 2012 saruman_ten, ef_creature_type Дословно: тип монстра Field of hit_test (left,right, bottom, top ) Дословно: Координаты области теста хита http://www.translate.ru/ . Поделиться этим сообщением Ссылка на сообщение
kish 320 Опубликовано 15 Июля 2013 (изменено) И по поводу моего вопроса - да окно не появляется, спальник просто исчезает из инвентаря Этот баг из-за ошибок в скриптах (много раз у меня подобное было) . Может добавишь спальник из амк? (тем более что скрипты амк уже есть) Изменено 15 Июля 2013 пользователем kish . Поделиться этим сообщением Ссылка на сообщение