temakonkin 0 Опубликовано 2 Августа 2011 огромный сори если уже есть такие вопросы, огромная просьба не банить,.. хочу заспавнить нового НПС на кордоне под мостом, кординаты я снял, и в скрипте их отметил, но он всёравно спавнится в лагере новичков... Вот моя функция спавна непися...... function esc_unik_lost () alife():create("esc_unik_lost",vector():set(-47.79,-8.51,-62.10),35362,47) end и ешо, просьба пояснить.... 1. как же всётаки его поставить под мост? 2. как можно узнать level_vertex и game_vertex...? 3. есть ли огранечения на колличество заспавненных НПС на отдельный участок карты -на пример: можно ли в подвале на кордоне заспавнить рядом пятерых неписей? 4. Кто может помочь мне разобраться в логике НПС... т.к по урокам настройки логики, которые есть на форуме я ничего не понял... Сталкер в душе - сталкер по жизни! Поделиться этим сообщением Ссылка на сообщение
temakonkin 0 Опубликовано 27 Августа 2011 (изменено) при распаковке all.sapwn возникла проблема... после запуска батника, ACDC начинает ругаться, говорит что- physic_destroyable_object physic_destroyable_object physic_destroyable_object ......................... physic_destroyable_object physic_destroyable_object physic_destroyable_object physic_destroyable_object wpn_ak74_m1 update data left [12] in kat_wpn_ak74_m1 at D:\acdc\acdc.pl line 2319. D:\acdc>pause Для продолжения нажмите любую клавишу . . . Perl у меня имеется.... ACDC скачал с Wiki -это написано в bat, который запускает сам acdc acdc.pl -d all.spawn pause Вопрос: в чём проблема, и как её исправить? и что значит строка update data left [12] in kat_wpn_ak74_m1 at D:\acdc\acdc.pl line 2319. Проблема: Втайнике ничего не спавнится.... Делал по этой статье Вопрос: вчём проблема? Изменено 27 Августа 2011 пользователем temakonkin Сталкер в душе - сталкер по жизни! Поделиться этим сообщением Ссылка на сообщение
temakonkin 0 Опубликовано 29 Сентября 2011 (изменено) Начинаю нову игру, идёт загрузка <<синхронизация>> после получаю вылет... -Вот лог вылета Expression : no_assert Function : CXML_IdToIndex<class CInfoPortion>::GetById File : e:\stalker\patch_1_0004\xr_3da\xrgame\xml_str_id_loader.h Line : 112 Description : item not found, id Arguments : ds_rokfor_start 1. -В каком файле искать ошибку? 2. -помогите разобраться, что значит Description : item not found, id Arguments : ds_rokfor_start И Line : 167 Description : Spawn doesn't correspond to the graph : REBUILD SPAWN! Вопрос из категории "ковыряемся в файлах" и достоин иной соответствующей темы. --/ Artos Изменено 29 Сентября 2011 пользователем Artos Сталкер в душе - сталкер по жизни! Поделиться этим сообщением Ссылка на сообщение
temakonkin 0 Опубликовано 19 Декабря 2011 возможно ли организовать запись строки в переменную из окна редактирования текста в игре....прошу привести примеры!))) второй вопрос....возможноли в игре отображать интернет страницы? На пример в ПДА... Всем кто ответит заранее спасибо! Сталкер в душе - сталкер по жизни! Поделиться этим сообщением Ссылка на сообщение
temakonkin 0 Опубликовано 21 Декабря 2011 Artos Просто возникла идея сделать "Сталкер браузер"..... За помошь с записью в переменную спасибо)))) Окно редактирование текста для ссылки ясделал, но окно для открытия интернет страниц так и не нашёл...... Сталкер в душе - сталкер по жизни! Поделиться этим сообщением Ссылка на сообщение
temakonkin 0 Опубликовано 26 Января 2012 (изменено) прочитал на вики статью про рандрмный спавн мутантов, там был приведён код который я немного переделал... получилось вот это ---------spawn mobs-------------------------------------------- ---------РАНДОМныЙ ВПАВН МУТАНТОВ НА УРОВНЯХ------------------- ---------VER 1.0.3--------------------------------- local level_vertexes={ marsh=528961 } local game_vertexes={ marsh={3337,3581} } local mutants = { "zombie_ghost_hell", "zombie_normal_hell", "zombie_immortal_hell", "bloodsucker_weak_hell", "tushkano_normal_hell", "snork_weak_hell", "burer_weak_hell", "cat_weak_hell", "chimera_weak_hell", "gigant_strong_hell" } function init() local count = math.random(5,20) local section = mutants[math.random(table.getn(mutants))] local lv = math.random(level_vertexes[level.name()]["lvid"]) local gv = game_vertexes[level.name()]["gvid"] local lv_1 = math.random(level_vertexes[level.name()]["lvid"]) local gv_e = game_vertexes[level.name()]["gvid"] local lv_e = math.random(level_vertexes[level.name()]["lvid"]) alife():create(mutants,vector():set(lv,lv_1,gv),lv_e,gv_e) end это вот пока коряво написанное чудо вылетает с таким логом Клиент: Синхронизация... * phase time: 40 ms * phase cmem: 323655 K * [win32]: free[925240 K], reserved[70832 K], committed[1101016 K] * [ D3D ]: textures[322140 K] * [x-ray]: crt heap[323655 K], process heap[7972 K], game lua[26940 K], engine lua[265 K], render[0 K] * [x-ray]: economy: strings[4403 K], smem[28222 K] ! Unknown command: file____:_system.ltx * Log file has been saved successfully! ! Unknown command: section_:_space_restrictor * Log file has been saved successfully! ! Unknown command: lines___:_4 * Log file has been saved successfully! ! Unknown command: line_0_:_$spawn_=_"ai\space_restrictor" * Log file has been saved successfully! ! Unknown command: line_1_:_GroupControlSection_=_spawn_group_restrictor * Log file has been saved successfully! ! Unknown command: line_2_:_class_=_SPC_RS_S * Log file has been saved successfully! ! Unknown command: line_3_:_script_binding_=_bind_restrictor.bind * Log file has been saved successfully! ! Unknown command: actor_net_spawn * Log file has been saved successfully! ! Unknown command: LEVEL_POSTPROCESS:_level:_[marsh],_postprocess:_[none] * Log file has been saved successfully! ! Unknown command: WEATHER:_'boloto'_now_'true' * Log file has been saved successfully! 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: ...н Зоны\gamedata\scripts\mob_random_spawn_list.script:42: attempt to index field '?' (a number value) Прошу указать на мои ошибки и помочь мне организовать "рандомный спавн мутантов на незаселённых уровнях". Ребят, не казните меня сильно за плагиат...."я ещё не волшебник, а только учусь"...))))) Тем кто ответит заранее благодарен!!! Изменено 26 Января 2012 пользователем ColR_iT Сталкер в душе - сталкер по жизни! Поделиться этим сообщением Ссылка на сообщение
temakonkin 0 Опубликовано 26 Января 2012 (изменено) ColR_iT так что недостача. так и есть я привел не весь код..... Весь он выглядит так(но думаю это ничего не меняет)... ---------spawn mobs-------------------------------------------- ---------РАНДОМныЙ ВПАВН МУТАНТОВ НА УРОВНЯХ------------------- ---------VER 1.0.3--------------------------------- local level_vertexes={ marsh=528961 } local game_vertexes={ marsh={3337,3581} } local mutants = { "zombie_ghost_hell", "zombie_normal_hell", "zombie_immortal_hell", "bloodsucker_weak_hell", "tushkano_normal_hell", "snork_weak_hell", "burer_weak_hell", "cat_weak_hell", "chimera_weak_hell", "gigant_strong_hell" } function init_old() local count = math.random(5,20) --выбираем кол-во заспавненых мобов local section = mutants[math.random(table.getn(mutants))] -- выбираем секцию моба local lv = math.random(level_vertexes[level.name()]["lvid"]) --выбираем левел вертекс local gv = level_vertexes[level.name()]["gvid"] --выбираем гэйм вертекс for ind = 1, count do alife():create(section, level.vertex_position(lv), lv, gv)--\\level.vertex_position(lv) - позиция левел вертекса end end alife():create("marsh_bandit_novice_b_1",vector():set(521.22204589844,1.3338094949722,9.2732839584351),494720,3548) function init() local count = math.random(5,20) --выбираем кол-во заспавненых мобов local section = mutants[math.random(table.getn(mutants))] -- выбираем секцию моба local lv = math.random(level_vertexes[level.name()]["lvid"]) --выбираем левел вертекс local gv = game_vertexes[level.name()]["gvid"] --выбираем гэйм вертекс local lv_1 = math.random(level_vertexes[level.name()]["lvid"]) local gv_e = game_vertexes[level.name()]["gvid"] local lv_e = math.random(level_vertexes[level.name()]["lvid"]) alife():create(mutants,vector():set(lv,lv_1,gv),lv_e,gv_e) end вот этой темой я руководствовался http://www.stalkerin.gameru.net/wiki/index...ения_о_скриптах На счет того, что я передаю..... в переменной содержатся L и G вертекс уровня, после чего вычисляется произольное его значение-которое передаётся в фун-ю спавна, local lv_e = math.random(level_vertexes[level.name()]["lvid"]) ................ alife():create(mutants,vector():set(lv,lv_1,gv),lv_e,gv_e) также в случайном порядке вычисляется секция спавна local mutants = { "zombie_ghost_hell", "zombie_normal_hell", "zombie_immortal_hell", "bloodsucker_weak_hell", "tushkano_normal_hell", "snork_weak_hell", "burer_weak_hell", "cat_weak_hell", "chimera_weak_hell", "gigant_strong_hell" } .................................... local section = mutants[math.random(table.getn(mutants))] вот собственно цели идеи........... Изменено 26 Января 2012 пользователем ColR_iT Сталкер в душе - сталкер по жизни! Поделиться этим сообщением Ссылка на сообщение
temakonkin 0 Опубликовано 15 Апреля 2012 (изменено) такая вот проблема возникла...когда попытался вывести окно после использования предмета. Делал на моде Lost World Trops of Doom 2.4 в bind_stalker создаю два колбека self.object:set_callback(callback.host, nil) и self.object:set_callback(callback.host, self.use_mps_big, self) потом пишу функцию function actor_binder:on_item_drop (obj) level_tasks.proceed(self.object) terrorizm.li(obj) lwc_inventory.ItemDrop(obj) end -----МОЯ_ФУНКЦИЯ----- function actor_binder:use_mps_big(obj) main_map_use.main_map_use_2(obj) end в main_map_use вот это function main_map_use_2(obj) if obj ~= nil then if obj:section() == "map_big" then local hud = map_big_ui(get_hud()) level.start_stop_menu(hud, true) end end end class "map_big_ui" (CUIScriptWnd) function map_big_ui:__init(owner) super() self.owner = owner self:InitControls() self:InitCallBacks() end function map_big_ui:InitControls() self:Init(50,50,550,450) local xml = CScriptXmlInit() xml:ParseFile("ui_map_self.xml") xml:InitStatic("background", self) self:Register(xml:Init3tButton("caption", self),"caption") self:Register(xml:Init3tButton("btn_quit", self),"btn_quit") end functionmap_big_ui:InitCallBacks() self:AddCallback("btn_quit", ui_events.BUTTON_CLICKED, self.on_quit, self) end functionmap_big_ui:OnKeyboard(dik, keyboard_action) CUIScriptWnd.OnKeyboard(self,dik,keyboard_action) if keyboard_action == ui_events.WINDOW_KEY_PRESSED then end return true end function map_big_ui:check_game() -- проверка запущена ли игра local check = false if level.present() and (db.actor ~= nil) and db.actor:alive() then check = true end return check end function map_big_ui:on_quit() self:GetHolder():start_stop_menu(self, true) alife():create("sleep_bag", db.actor:position(), db.actor:level_vertex_id(), db.actor:game_vertex_id(), db.actor:id()) end после запуска игры, начинаю новую игру и на "клиент синхронизация" получаю безлоговый вылет....пробовал вешать функцию на другой колбек-всё работает, а вот именно на моём нет. подскажите что я сделал не так.... заранее благодарен! Используй тэг спойлера для портянок кодов. --/Artos Изменено 15 Апреля 2012 пользователем temakonkin Сталкер в душе - сталкер по жизни! Поделиться этим сообщением Ссылка на сообщение
temakonkin 0 Опубликовано 15 Апреля 2012 (изменено) Artos благодарю за быстрый ответ!!! я только учусь, так что спасибо на счёт того что имена колбеков зарезервированы(так я понимаю?) я не знал! Если не знаешь - читай статьи и ФАКи! --/Artos полетел дальше эксперементировать... [x] Изменено 16 Апреля 2012 пользователем Artos Сталкер в душе - сталкер по жизни! Поделиться этим сообщением Ссылка на сообщение