MegaStalker 66 Опубликовано 19 Ноября 2016 Я помню, в моде АМК неписи крайне активно шарились по чужим тайникам, если они не были спрятаны черт знает куда. А сейчас играю в Зов Чернобыля, где такого нет. Вопрос - какой скрипт в АМК отвечал за обшаривание неписями тайников и как его без каких-либо загвоздок адаптировать к Зову Чернобыля? Если укажете хотя бы название скрипта(скриптов) - буду крайне признателен Все зовут меня Пришедший из Ниоткуда...Почему?Потому что я пришел из ниоткуда и иду в никуда... Поделиться этим сообщением Ссылка на сообщение
MegaStalker 66 Опубликовано 19 Ноября 2016 (изменено) @CRAZY_STALKER666, если будут - то я обращусь сюда, чтобы помогли узнать причину) Спасибо большое. @CRAZY_STALKER666, кстати, а за что вообще отвечает этот скрипт? Изменено 20 Ноября 2016 пользователем BFG Все зовут меня Пришедший из Ниоткуда...Почему?Потому что я пришел из ниоткуда и иду в никуда... Поделиться этим сообщением Ссылка на сообщение
MegaStalker 66 Опубликовано 14 Декабря 2016 (изменено) Срочно нужна помощь! Как можно уменьшить нагрузку от аномалий в ЗП? Многие люди говорят, что из-за огромного количества аномалий на локациях ЗП бывают лаги при включении урона неписям от аномалий. Вот я и хочу поправить данный глюк, ибо нормальную симуляцию хочу - без поблажек неписям. Второй вопрос - можно ли в ЧН отредактировать что-то, чтобы заставить неписей во время выброса прятаться по укрытиям или получать урон?а то пофигисты какие-то все, кроме ГГ... Изменено 14 Декабря 2016 пользователем MegaStalker Все зовут меня Пришедший из Ниоткуда...Почему?Потому что я пришел из ниоткуда и иду в никуда... Поделиться этим сообщением Ссылка на сообщение
MegaStalker 66 Опубликовано 1 Января 2017 (изменено) Спасайте! Скриптов вообще не знаю, но хочу адаптировать к моду CoC схему дин.аномалий из мода АМК. Вопрос - надо ли мне создавать отдельный скриптовый файл и копировать в него связанную с аномалиями байду из файла amk.scripts(как я понял, отвечающие за спавн аномалий функции)? И есть ли у кого-то в наличии схема из того же АМК, с помощью которой контроллер превращает нормальных сталкеров в зомбированных? Буду очень благодарен, если скинете ее. Ну и напоследок - ходят по всему интернету слухи, будто в АМК научили сталкеров обходить аномалии. Если скинете мне ее и объясните примерно, как с ней ведут себя сталкеры - век не забуду. Изменено 1 Января 2017 пользователем MegaStalker Все зовут меня Пришедший из Ниоткуда...Почему?Потому что я пришел из ниоткуда и иду в никуда... Поделиться этим сообщением Ссылка на сообщение
MegaStalker 66 Опубликовано 3 Января 2017 (изменено) @Zander_driver, я нашел в этом файле что-то, отвечающее за установление неписю группировки зомбированные, но ничего не понял в коде ни до этого, ни после. Можешь вкратце объяснить, за что отвечает код в указанном тобой файле? Стоп, я кажется слегка разобрался. Вот, видимо, функция, которая отвечает за зомбирование. self.chtime=time_global()+2000 if self.object:clsid()==clsid.controller_s and self.object:alive() thenamk.mylog("zombifying")local npc=self.object:get_enemy()if npc thenif npc:id()~=db.actor:id() and npc:clsid()==clsid.script_stalker and self.object:see(npc) andnpc:character_community()~="zombied" and self.object:position():distance_to(npc:position())<30 thenlocal sobj=alife():object( npc:id() )if sobj and sobj.online thenlocal zomb=amk.load_table("zombies")zomb[sobj.id]={master=self.object:id(),comm=npc:character_community(),gw=npc:goodwill(db.actor)}amk.save_table("zombies",zomb)npc:set_character_community("zombied",0,0)local orgtbl=amk.read_stalker_params(sobj)if (not string.find(orgtbl.profile,"_zombi")) thenorgtbl.profile=orgtbl.profile.."_zombi"endamk.mylog("zombied "..npc:name().." profile "..orgtbl.profile)amk.write_stalker_params(orgtbl,sobj)endendendend Я разобрался с видимостью врага, дистанцией до него и т.д. Но я не понимаю, каким боком к этой функции относится время и куда сохраняется зомбирование непися? Ну и самое главное - что такое amk.mylog? Изменено 3 Января 2017 пользователем MegaStalker Все зовут меня Пришедший из Ниоткуда...Почему?Потому что я пришел из ниоткуда и иду в никуда... Поделиться этим сообщением Ссылка на сообщение
MegaStalker 66 Опубликовано 3 Января 2017 @naxac, понял. То есть никакие доп.функции из АМК мне не придется адаптировать? Все зовут меня Пришедший из Ниоткуда...Почему?Потому что я пришел из ниоткуда и иду в никуда... Поделиться этим сообщением Ссылка на сообщение
MegaStalker 66 Опубликовано 3 Января 2017 (изменено) @naxac, ого, классно сделано! И относительно понятно для человека, никогда не писавшего скрипты. Представить себе не могу, чтобы я без твоей помощи делал. @naxac, смотри, я постарался поменять кое-что в соотвествии с твоими функциями. Просьба поправить, если где-то что-то не так(я скрипты только начал изучать) self.chtime=time_global()+2000 if self.object:clsid()==clsid.controller_s and self.object:alive() then local npc=self.object:get_enemy() if npc then if npc:id()~=db.actor:id() and npc:clsid()==clsid.script_stalker and self.object:see(npc) and npc:character_community()~="zombied" and self.object:position():distance_to(npc:position())<30 then local sobj=alife():object( npc:id() ) if sobj and sobj.online then local zomb=load_pstor_table("zombies") zomb[sobj.id]={master=self.object:id(),comm=npc:character_community(),gw=npc:goodwill(db.actor)} save_pstor_table("zombies",zomb) npc:set_character_community("zombied",0,0) local orgtbl=pstor_load_all(sobj) if (not string.find(orgtbl.profile,"_zombi")) then orgtbl.profile=orgtbl.profile.."_zombi" end pstor_save_all(orgtbl,sobj) end end end end ===============================Реализация функций для скрипта(вынести в отдельный файл!)======================================= function save_pstor_table(pk, tbl, obj) local tp for k, v in pairs(tbl) do if v == true then pk:w_u8(pstor_true) elseif v == false then pk:w_u8(pstor_false) else tp = type(v) if tp == "number" then pk:w_u8(pstor_number) pk:w_float(v) elseif tp == "string" then pk:w_u8(pstor_string) pk:w_stringZ(v) elseif tp == "table" then pk:w_u8(pstor_table) xr_logic.save_pstor_table(pk, v, obj) elseif tp == "userdata" then pk:w_u8(pstor_custom) pk:w_stringZ(v.classname == k and "" or v.classname) v:save(pk) else abort("xr_logic.save_pstor_table for %s: not registered type '%s' encountered [ %s :: %s ]", obj:name(), tv, k, utils.to_str(v)) end end pk:w_stringZ(k) end pk:w_u8(pstor_end_table) end function load_pstor_table(pk, tbl, obj) local k, v, n while true do n = pk:r_u8() if n == pstor_end_table then return tbl else if n == pstor_true then v = true elseif n == pstor_false then v = false elseif n == pstor_number then v = pk:r_float() elseif n == pstor_string then v = pk:r_stringZ() elseif n == pstor_table then v = {} xr_logic.load_pstor_table(pk, v, obj) elseif n == pstor_custom then local cls = reader:r_stringZ() if cls == "" then cls = k end v = pstor_custom_impl[cls]() v:load(pk) else abort("У объекта [%s] повреждён пстор, этим сохранением нельзя пользоваться - удалите его и переиграйте с предыдущего.", obj:name()) v = nil end k = pk:r_stringZ() tbl[k] = v end end end function pstor_save_all(obj, packet) local npc_id = obj:id() local pstor = db.storage[npc_id].pstor if not pstor then pstor = {} db.storage[npc_id].pstor = pstor end save_pstor_table(packet, pstor, obj) end function pstor_load_all(obj, reader) local npc_id = obj:id() local pstor = db.storage[npc_id].pstor if not pstor then pstor = {} db.storage[npc_id].pstor = pstor end if (not db.actor) and npc_id ~= 0 then abort("Не создан актор. Возможно, синтаксическая ошибка в bind_stalker.script") end load_pstor_table(reader, pstor, obj) end Изменено 3 Января 2017 пользователем MegaStalker Все зовут меня Пришедший из Ниоткуда...Почему?Потому что я пришел из ниоткуда и иду в никуда... Поделиться этим сообщением Ссылка на сообщение
MegaStalker 66 Опубликовано 4 Января 2017 (изменено) @naxac, я совсем запутался. Вот смотри, у меня есть указанный тобой файл, для своего удобства я оставил в нем только твои функции. А как мне их теперь применить в самом скрипте зомбирования? Мне надо переименовывать что-то или как? Ведь в скрипте имя функции одно, а в файле xr_logic другое. Изменено 4 Января 2017 пользователем MegaStalker Все зовут меня Пришедший из Ниоткуда...Почему?Потому что я пришел из ниоткуда и иду в никуда... Поделиться этим сообщением Ссылка на сообщение
MegaStalker 66 Опубликовано 6 Января 2017 Народ, никак не могу из указанного мной скрипта найти функции - такие, как amk.write, amk.read... Все скрипты перерыл, они упоминаются - но алгоритмы самих функций не могу найти. Вопрос - где находятся объявления этих функций и можно ли переписать скрипт без их использования? Все зовут меня Пришедший из Ниоткуда...Почему?Потому что я пришел из ниоткуда и иду в никуда... Поделиться этим сообщением Ссылка на сообщение
MegaStalker 66 Опубликовано 7 Января 2017 (изменено) @Kondr48, я хочу поиграть в мод CoC, который по сути является платформой для собственных модов. Поэтому я хотел перенести из АМК зомбирование неписей контролёром. Но поскольку ссылок тут на другие функции, судя по всему, целая туча, мне проще всего будет использовать весь файл скрипта. За информацию большое спасибо, она мне еще пригодится в будущем. Изменено 7 Января 2017 пользователем MegaStalker 1 Все зовут меня Пришедший из Ниоткуда...Почему?Потому что я пришел из ниоткуда и иду в никуда... Поделиться этим сообщением Ссылка на сообщение
MegaStalker 66 Опубликовано 10 Февраля 2017 (изменено) Народ,к вам вопрос. Есть ли какие-либо аналоги нет-пакетов в ванильном сталкере и можно ли использовать их вместо аналогов из модов?(опыта в скриптах почти ноль) И в каком файле эти функции лежат? Я просто хочу вместо функций АМК и ОГСЕ использовать функции самой игры, если это реально - адаптировать самостоятельно скрипты я не смогу. Изменено 11 Февраля 2017 пользователем MegaStalker Все зовут меня Пришедший из Ниоткуда...Почему?Потому что я пришел из ниоткуда и иду в никуда... Поделиться этим сообщением Ссылка на сообщение
MegaStalker 66 Опубликовано 11 Февраля 2017 Народ, а есть ли здесь шарящие в скриптах? Я просто хочу применить пару скриптовых баз для CoC(ogse_signals и amk), поскольку там лежат нужные мне функции, а выдирать из файлов их отдельно побаиваюсь. К тому же нужна адаптация. Вот надеюсь, что мне кто-то расскажет, как проделать эту адаптацию своими руками - потому что скрипты я более-менее понимаю, но сам никогда не писал, могу только выбрать нужные файлы(которые мне, собственно говоря, и надо адаптировать). Все зовут меня Пришедший из Ниоткуда...Почему?Потому что я пришел из ниоткуда и иду в никуда... Поделиться этим сообщением Ссылка на сообщение
MegaStalker 66 Опубликовано 11 Февраля 2017 (изменено) @dsh, хорошо, за это большое спасибо. А с функциями от АМК могут возникнуть какие-то проблемы, если брать ТОЛЬКО файл amk.scripts? Или же можно обойтись и без него? Просто я выдирал зомбирование неписей из АМК и там были вызывались связанные с нет пакетами функции от АМК. Хочу узнать, есть ли им замена в скриптах оригинальных игр. И да, еще один вопрос. Что такое RvP? Изменено 11 Февраля 2017 пользователем MegaStalker Все зовут меня Пришедший из Ниоткуда...Почему?Потому что я пришел из ниоткуда и иду в никуда... Поделиться этим сообщением Ссылка на сообщение
MegaStalker 66 Опубликовано 25 Января 2018 Народ, к вам такой вопрос по поводу алайфа из АМК и новостей оттуда же. В общем, я скопировал связанные с ними и еще парочку скриптов(на починку оружия и на обшаривание НПС трупов и тайников) в патч 1.0007. Все норм работает, стволы чинятся, сталкеры забирают все, что плохо лежит(в том числе и из ящиков в деревне новичков и т.д.). Так вот, мне кто-то может сказать, когда должна заработать эта симуляция жизни с новостями? А то я уже вернулся с флешкой Шустрого, но пока что никаких новостей в игре нету. Все зовут меня Пришедший из Ниоткуда...Почему?Потому что я пришел из ниоткуда и иду в никуда... Поделиться этим сообщением Ссылка на сообщение
MegaStalker 66 Опубликовано 25 Января 2018 @Dennis_Chikin скинул файлы, которые мне подсказали: amk_death_lists.scripts, amk_names_lists.scripts, amk_news_lists.scripts, amk_unique_news_lists.scripts, amk.scripts, amk_mod.scripts и amk_offline_alife.script. Скрипты с алкоголизмом, ремонтом и обшариванием тайников НПС еще, но мне лень искать имена этих файлов(где-то записаны, а где - не знаю). Все зовут меня Пришедший из Ниоткуда...Почему?Потому что я пришел из ниоткуда и иду в никуда... Поделиться этим сообщением Ссылка на сообщение
MegaStalker 66 Опубликовано 25 Января 2018 В общем, народ, я ничего не понимаю. Как мне правильно подключить скрипты этих новостей, чтобы они работали? Потому что я не понимаю, как это делать(( Все зовут меня Пришедший из Ниоткуда...Почему?Потому что я пришел из ниоткуда и иду в никуда... Поделиться этим сообщением Ссылка на сообщение
MegaStalker 66 Опубликовано 25 Января 2018 (изменено) 1 час назад, Dennis_Chikin сказал: По обоим последним постам: вы требуете угадать, что у вас в кармане. Смотрите имеющиеся моды, и разбирайтесь, как оно там работает. has_alife_info("info") - дожно быть прописано это самое инфо, причем не использующееся где-то еще. И, да, можно в net_spawn(), но сначала определиться, что именно надо. И, да, как правило, все нужное уже где-то сделано. Про "как подключить скрипты" - тоже, понять, что именно надо, и написать в соответствующем месте код для подключения. При этом понимая, что скопированный откуда-то скрипт вполне может потребовать еще чего-то оттуда же. Новости из amk требуют код из amk.script, и тот в свою очередь ссылается еще на десяток скриптов. Да я это понимаю, я просто не понимаю, где конкретно подключаются скрипты. В патче уже есть сильно урезанный набор скриптов от АМК, т.е. все нужные файлы там есть, а вот где подключать скрипты - не понимаю. Совсем. Можешь какой-то пример привести, что именно надо прописывать(я про код)? Потому что в скриптах не шарю совсем, никогда ими не занимался - только редактировал конфиги. Изменено 25 Января 2018 пользователем MegaStalker Все зовут меня Пришедший из Ниоткуда...Почему?Потому что я пришел из ниоткуда и иду в никуда... Поделиться этим сообщением Ссылка на сообщение
MegaStalker 66 Опубликовано 28 Мая 2018 Здраствуйте. Попытался подключить для себя динамические новости к последней версии OGSM на Тени Чернобыля и добавить в них некрологи из АМК. В файле bind.stalker я, как и положено, прописал функцию для запуска этих самых новостей в игре через секцию actor_binder:update. , в файле news_main эти некрологи прописал, но игра обиделась за мои действия со скриптами и вместо запуска выплюнула следующий лог: Скрытый текст FATAL ERROR [error]Expression : fatal error [error]Function : CScriptEngine::lua_error [error]File : E:\stalker\sources\trunk\xr_3da\xrGame\script_engine.cpp [error]Line : 73 [error]Description : <no expression> [error]Arguments : LUA error: ...ow of chernobyl\gamedata\scripts\bind_stalker.script:465: attempt to call field 'show_news_main' (a nil value) Как я понял, она не видит функцию(хотя она есть в файле) show_news_main. В чем проблема? Огромная просьба помочь, т.к. в скриптах я абсолютно не шарю, попытался разобраться в файлах и подключить по примеру. Архив с файлами для новостей и сам файл из OGSM прилагаются, смотрите ссылку ниже. Скрытый текст https://drive.google.com/open?id=12PfbmWXChQvEBGyN6kviYUayp3Px0vuP 2 Все зовут меня Пришедший из Ниоткуда...Почему?Потому что я пришел из ниоткуда и иду в никуда... Поделиться этим сообщением Ссылка на сообщение
MegaStalker 66 Опубликовано 28 Мая 2018 @AndreySol, попробую, потом напишу результат. Все зовут меня Пришедший из Ниоткуда...Почему?Потому что я пришел из ниоткуда и иду в никуда... Поделиться этим сообщением Ссылка на сообщение
MegaStalker 66 Опубликовано 28 Мая 2018 (изменено) Попробовал так прописать, ошибка осталась, игра не запускается. Пожалуйста, кто можете - скачайте архив и гляньте, что я не так подключаю или еще что делаю. А можно по-человечески объяснить, что значит "вешаем на правую мышь" и как собственно проверять? Я же сказал, что в скриптах ничего не шарю, потому и прошу помощи. Изменено 28 Мая 2018 пользователем MegaStalker 1 Все зовут меня Пришедший из Ниоткуда...Почему?Потому что я пришел из ниоткуда и иду в никуда... Поделиться этим сообщением Ссылка на сообщение