Makc_Evdokimov 0 Опубликовано 10 Ноября 2012 Поделиться Опубликовано 10 Ноября 2012 WARWER, все-таки коряво я выражаюсь)) что ты говоришь, что я - одно и тоже) вот только в ЧН, я рассматриваю относительно чистого неба, в боевках принимаю участие, кажется, такие сквады: [mar_csky_general] auto_id = true faction = csky npc = sim_default_csky_0, sim_default_csky_0, sim_default_csky_0, sim_default_csky_0, sim_default_csky_1 ... вот ты говоришь про респавн, а можно попросить тебя показать пример логики смарта, в котором спавнятся нпс? у меня прописано так: targets = имя_моего_смарта sim_type = default squad_capacity = 1 squad_id = 1 respawn_sector = {=smart_squad_population(csky:имя_моего_смарта:2)} csky no_mutant = true вот еще пример с респавном в логике смарта: targets = имя_моего_смарта sim_type = territory squad_capacity = 2 squad_id = 5 att_restr = имя_моего_смарта_2_sr_attack def_restr = имя_моего_смарта_2_sr_defence respawn_sector = {=spawn_smart_captured_by_faction(csky)} csky,renegade Вот с логикой смартов, я не до конца разобрался, может пояснишь это: respawn_sector = {=spawn_smart_captured_by_faction(csky)} csky,renegade - ??? и это: respawn_sector = {=smart_squad_population(csky:имя_моего_смарта:2)} csky - ??? (как я понимаю, при кол-ве отрядов в смарте "имя_моего_смарта" будут подспавниваться допл. отряды? или я не прав?) Ссылка на комментарий
Artos 99 Опубликовано 10 Ноября 2012 Поделиться Опубликовано 10 Ноября 2012 (изменено) Makc_Evdokimov, хм... импонирует твоя нацеленность. Конечно же тебе решать на какой уровень устанавлиывать планку (а вдруг у тебя "бубкины-задатки" ;-) ), но обычно именно постепенное поступательное движение вперед приводит к успеху, а рывки - нередко приводят к срывам. Ну да это все же оффтопик, хотя и немаловажный. 1. Если тебя интересует конкретный случай, то никак тут не обойтись без общих понятий и условий. Тут все же не кашпировские, чтобы по неведомым твоим остальным правкам/добавкам в очищенную игру предсказывать иль прогнозировать то или иное. Ты создал секцию для экспансии некой группировки. Не указал ни наличие других секций, ни какой группировке это приписано, ни какие еще группировки в твоей игре и какими силами они обладают. Ну как тут можно гворить о, например, требуемом параметре precondition_power, если от него расчитывается вероятность "военных действий", но как минимум еще требуется и текущие "силы" группировок? 2. Собственно сюжет в игре начинается сразу и без всяких на то специальных инфопоршней. Война группировок может конечно идти и по "рельсам" из инфопоршней, но и без них так же. В твоей секции всего два условия, чтобы секция активизировалась (при наличии конечно же вообще отрядов) - вот и смотри что не дает начаться экспансии твоего отряда, если группировке указана цель и задан путь. 3. Если ты не изучишь основы скриптов, то или тебе требуется персональный "репетитор", который будет переводить твои "человечные" мысли на язык движка и обратно, или будешь долго и часто наступая на грабли нащупывать в темноте верный путь. Как минимум, подмогой тут может быть умение читать и понимать лог (о чем уже второй раз повторяю). Как уже выше подсказал - раскомментируй строки вывода в лог в указанной функции и читай лог или хотя бы покажи его тут. Если ты ожидаешь, что все тебе непонятное (а этого в игре ой как немало) будут тут персонально в очередной раз объяснять, гадая на кофейной гуще, то сильно заблуждаешься. И, плз. портянки кодов прячь за тэгом спойлера. P.S. Как правило, не даю готовых ответов, а если даю, то на конкретно сформулированный вопрос. В большинстве своем даю подсказки, чтобы моддмейкер сам делал (своею головою - говорят это более полезно ). (это чтобы не было напрасных ожиданий с твоей стороны) Изменено 10 Ноября 2012 пользователем Artos "Но иногда найдется вдруг чудак, этот чудак все сделает не так ..."© Машина времени Ссылка на комментарий
Makc_Evdokimov 0 Опубликовано 10 Ноября 2012 Поделиться Опубликовано 10 Ноября 2012 Сори, буду прятать под спойлер. Artos, ты меня на одну мыслю надоумил, нужно проверить.. я же, блин, практик, а не теоретик))) а в игре две группировки пока. но, я похоже упустил момент с силами группировок.. у меня же только 2 смарта, и оба идут как базы... третий же - дефолтный, и внем отряд одной из группировок. А я пытаюсь добиться нападения со стороны группировки, которая в меньшинстве, и не имеет под своим контролем никаких допл. точек.. вообщем щас попрактикуюсь..)) спасибо, хоть и не за конкретный ответ, а за промывание мозгов - говорят тоже полезно)) Ссылка на комментарий
Makc_Evdokimov 0 Опубликовано 11 Ноября 2012 Поделиться Опубликовано 11 Ноября 2012 долго кумекал, но ничего не накумекал(( вот только нашел один интересный space_restrictor: со следующим содержанием: [logic] active = sr_idle [sr_idle] on_actor_inside = {+mar_give_infa} sr_idle@end_section %=start_sim% [sr_idle@end_section] изучив, создал еще один space_restrictor (для выдачи info_portion "mar_give_infa"). с такой логикой: [logic] active = sr_idle [sr_idle] on_info = {=actor_in_zone(mar_space_restrictor_give_infa)} %+mar_give_infa% [sr_idle@end_section] и в игре, когда актор попадает в этот рестиктор, получаю вылет: FATAL ERROR [error]Expression : fatal error [error]Function : CScriptEngine::lua_error [error]File : E:\priquel\sources\engine\xrServerEntities\script_engine.cpp [error]Line : 180 [error]Description : <no expression> [error]Arguments : LUA error: ...е.р. - чистое небо\gamedata\scripts\sim_board.script:226: attempt to call global 'abort' (a nil value) stack trace: заглянул в sim_board.script на нужную строку: -- Берем соседние смарты. local nearest_points = board:get_nearest_smarts(next_point) for k,v in pairs(nearest_points) do if calc_point(v, next_point, squad, src_smart_id, tgt_smart_id, arhive, front) == true then - строка 226. arhive[next_point.id] = front[1] return true end end вообщем не понял в чем проблема. Растолкуйте, пожалуйста, если реально это). Правописание никто не отменял. Устное предупреждение. ColR_iT Ссылка на комментарий
Artos 99 Опубликовано 11 Ноября 2012 Поделиться Опубликовано 11 Ноября 2012 (изменено) Makc_Evdokimov, не ясно о чем ты там кумекал, а му тут как-то обделены талантом кашпировского... поэтому, совершенно не ясно что же такого интересного ты нашел в достаточно банальном рестрикторе с простенькой логикой и что же ты хотел изобразить? Зачем заменять нормальный параметр on_actor_inside на корявую (с ошибками) запись on_info = {=actor_in_zone(mar_space_restrictor_give_infa)} %+mar_give_infa% - ну никак не понятно. И само имя неясно откуда взялось, и как аргументы для подобного вызова функции задавать - стОит все же посмотреть в оригинале. Гадать о причине сумашествия движка/скриптов от такого употребления буковок в логике вероятно не стОит. Для меня самого такой вылет загадка. Как может ссылаться лог на переменную ('abort') которой в указанной логом строке и в помине нет, а в корневом скрипте (_g.script) эта функция должна точно быть - загадка. Тут уже не программист нужен, а толкователь абсурдов. Итого, отсебятина все же не должна доходить до абсурда, результаты которого и растолковать то никто не возьмется. Взявшись за логику - нужно понимать что означает каждая строка и каждый символ в строке, а не пытаться методом тыка получить нечто работающее. Изменено 11 Ноября 2012 пользователем Artos "Но иногда найдется вдруг чудак, этот чудак все сделает не так ..."© Машина времени Ссылка на комментарий
Makc_Evdokimov 0 Опубликовано 11 Ноября 2012 Поделиться Опубликовано 11 Ноября 2012 (изменено) Artos, поясню. Я снес все с УРОВНЯ. Скрипты же - не трогал вообще, их структура оригинальная абсолютно. Я уже говорил, что подразумевал, что в оригинальной игре симуляция жизни, в том числе и война группировок, связанны с получением определенного info_portion. И да, я не силен в понимании, и иногда методом тыка (логически продумав связку действий) что-либо делаю, и если ошибаюсь, то в след раз. учитываю свои ошибки... Ну так вот, на уровне оригинальном есть space_restrictor, при попадании в который начинается симуляция жизни. Но она начинается, только после получения из диалога (в оригинальной игре) определенного info_portion. Я же создал на новом уровне space_restrictor для получения этого info_portion (чтобы не играться с диалогами). В конечном итоге я получаю в игре этот самый info_portion, и иду в space_restrictor, который дает команду для начала симуляции жизни. И как только ГГ оказывается в этой зоне получаю ту самую ошибку. Ошибка указывает на проблемы со связыванием смартов. Вероятно с путями, но я не могу понять, к чему привязывать, поскольку все пути, которые я делал, основаны на схеме, которая использовалась и в оригинальной игре.. пути так же соответствуют схемам, которые описываются в уроках на stalkerin-не... Изменено 11 Ноября 2012 пользователем Makc_Evdokimov Ссылка на комментарий
Старлей 88 Опубликовано 16 Ноября 2012 Поделиться Опубликовано 16 Ноября 2012 (изменено) При совмещение некоторых файлов(конфигов, скриптов и текстур) столкнулся с таким вылетом: * NULLRT supported * ...and used * HWDST/PCF supported and used - r__tf_aniso 10 - r2_tf_mipbias 0. Starting engine... ! Player name in registry is empty! (InstallUserName) Loading DLL: xrGameSpy.dll ! Invalid ogg-comment version, file: d:\stalker clear sky\gamedata\sounds\characters_voice\scenario\video\ati.ogg stack trace: 0023:043CD98B xrGame.dll, CxImage::`copy constructor closure'() 0023:0044D1AC xrEngine.exe, CCF_Shape::ComputeBounds() Странный движковый вылет, в чем причина, не подскажете? P.S. Разобрался, причина: scripts\ui_main_menu.script Изменено 17 Ноября 2012 пользователем ColR_iT Ray Of Hope - кооператив сталкера OldStory Ссылка на комментарий
Отшельник12 12 Опубликовано 21 Ноября 2012 Поделиться Опубликовано 21 Ноября 2012 Как убрать худ в Чн ? Слышал в повелителе зоны есть такой скриптик. Для чистой чн нет ? Ссылка на комментарий
Artos 99 Опубликовано 23 Ноября 2012 Поделиться Опубликовано 23 Ноября 2012 (изменено) Отшельник12, а почему бы, самому не посмотреть в упомянутом повелителе зоны, и не взять оттуда нужные тебе строчки? Судя по невнятному вопросу о некоем "худе" - вероятно всего-то требуется повесить на хот-кеи level.hide_indicators() и level.show_indicators(). Изменено 23 Ноября 2012 пользователем Artos "Но иногда найдется вдруг чудак, этот чудак все сделает не так ..."© Машина времени Ссылка на комментарий
K.O.N.S.T.A.N.T.I.N. 1 Опубликовано 5 Декабря 2012 Поделиться Опубликовано 5 Декабря 2012 Добрый вечер. Задаю вопрос, который неоднократно звучал в этой теме, но так и остался без ответа. Поиском пользовался и в гугле пытался найти, не помогло.... Как изменить скорость течения игрового времени в Чистом небе? Играю в OGSM-1.8. Вариант с "alife/time_factor", почему-то не работает (хотя в Тени Чернобыля и Зов Припяти, всё получается), Хочу поставить скорость в 3 раза, а не в 10 (как в игре), превышающую реальное время (люблю побродить по Зоне). Начал новую игру, должно всё включится сразу, ан нет. Есть одна подсказка, что меняется в level.set_time_factor, но где он находится, не знаю... Помогите советом, очень надо... Искусство по-настоящему ругаться матом приходит только с умением водить машину. Ссылка на комментарий
Artos 99 Опубликовано 8 Декабря 2012 Поделиться Опубликовано 8 Декабря 2012 (изменено) Непонятно, для чего большое кол-во т.н. "моддеров" тужаться заниматься моддингом? К "учебе"(самообразованию) эти потуги по сбору "своих солянок" из готовых уроков+минимодов+статей и близко не стоят, т.к. похоже самостоятельное изучение кодов игры и использование своего серого вещества - уже вообще не известно для этих "моддеров". K.O.N.S.T.A.N.T.I.N., Тут раздел не для поигральщиков, кому захотелось почитерить/поизменять игру, а все же "Школа", поэтому потрудись немного напрячь свои мозги и найти тебе же нужное решение. Сам же пишешь, что "Играю в OGSM-1.8" - ну так и смотри именно в кодах мода, что же выставляет фиксированные значения для тайм-фактора. Простейший поиск по "time_factor" в скриптах даст тебе подсказку - level.set_time_factor(10). Вот и меняй как тебе захотелось... а не только на конфиги надейся. golovastik, вероятно модератор "подскажет" более детально, и може дажет "поможет", а пока - обратись к Кашпировскому (но не на этом форуме). Изменено 8 Декабря 2012 пользователем Artos "Но иногда найдется вдруг чудак, этот чудак все сделает не так ..."© Машина времени Ссылка на комментарий
K.O.N.S.T.A.N.T.I.N. 1 Опубликовано 8 Декабря 2012 Поделиться Опубликовано 8 Декабря 2012 (изменено) Сам отвечаю на свой вопрос, никто не дал подсказку, искал в скриптах, пересмотрел всё: С.Т.А.Л.К.Е.Р. - Чистое Небо\gamedata\scripts\ogsm_sleep. Меняем : -- Kirgudu function stopper_time_shift() -- в случае, если у нас не сон, а обморок после выброса или ограбления -- сны не смотрим, погоду меняем level.set_time_factor(10) - меняем 10 на 3 и время идёт в 3 раза быстрее, а не в 10. Другие level.set_time_factor(10) не трогаем, т.к. происходит несоответствие картинки и субтитров. Так-же, поменял в alife/time_factor на 3. Начал новую игру, время меняется, как хотел. Может кому пригодится, буду рад... Изменено 8 Декабря 2012 пользователем K.O.N.S.T.A.N.T.I.N. Искусство по-настоящему ругаться матом приходит только с умением водить машину. Ссылка на комментарий
Artos 99 Опубликовано 9 Декабря 2012 Поделиться Опубликовано 9 Декабря 2012 (изменено) Попробуем на примере вопроса от K.O.N.S.T.A.N.T.I.N. "Как изменить скорость течения игрового времени в Чистом небе?" - разобрать ошибки и грабли: 1. Задаю вопрос, который неоднократно звучал в этой теме, но так и остался без ответа.В любом ФАКе к игре Сталкера можно найти ответ на поставленный вопрос, т.е. то, что тайм-фактор, от которого зависит скорость течения игрового времени задается в конфиге alife.ltx параметром time_factor. Поэтому глупо сетовать на то, что никто и нигде не дал ответа на факовый вопрос.2. Играю в OGSM-1.8. Вариант с "alife/time_factor", почему-то не работаетСкорость течения времени в игре не постоянна. В модах есть ситуации, когда время ускоряется. Это и сон ГГ, когда за секунды проходят часы, и различные другие тестовые или иные нововведения.Там же в факах или в статьях/справочниках по функциям немало упоминаний про то, что скорость течения игрового времени может изменяться функцией level.set_time_factor(number). Т.о. если у вас скорость течения игры отлична от дефолтно установленной конфигом - то и следует искать те места в скриптах моди и функции, в которых это время меняется. К сожалению, нередко моддмейкеры экономят время и строки кода, и вместо универсального варианта пишут частные случаи. Так и в OGSM-1.8, немало строк, где жестко задается level.set_time_factor(10), что при желании изменить в конфиге скорость течения времени приводит к "не работает...". Если перед изменением времени считывать требуемое для игра значение из конфига, то подобных граблей можно избегать, т.е. писать так: factor = system_ini():r_float("alife","time_factor") level.set_time_factor(factor) - и тогда код скрипта будет пригоден для любого мода и/или изменения его. 3. Другие level.set_time_factor(10) не трогаем, т.к. происходит несоответствие картинки и субтитров.Вот еще одни грабли, на которые наступают новички... Скорость течения времени должно быть одинаково, исключая конечно сами события с ускоренным временем (сон, ...).Если в одном случае задавать тайм-фактор 3, а в другом 10 - то каково же будет время в игре? Ответ очевиден - будет таким, каким установлено в последнем случае вызова функции, т.е. получается непредсказуемым. Да и какова причина оставлять другие значения от заданного в конфиге? Есть только она причина, в игре/моде могут быть заданы таймеры, которые расчитаны из расчета игрового времени. При изменении тайм-фактора подобные времена может потребоваться скорректировать. Например в модах с выбросом от АМК-мода, потребуется скорректировать времена выброса (сам выброс состоит из 5-ти отрезков времени), т.к. они как раз и завязаны на игровом времени и при изменении тайм-фактора с 10 на 3 выбросы станут и короче и "скомканными". Изменено 9 Декабря 2012 пользователем Artos "Но иногда найдется вдруг чудак, этот чудак все сделает не так ..."© Машина времени Ссылка на комментарий
K.O.N.S.T.A.N.T.I.N. 1 Опубликовано 9 Декабря 2012 Поделиться Опубликовано 9 Декабря 2012 Artos Спасибо за пояснения! Добавил строчку: factor = system_ini():r_float("alife","time_factor"), перед: level.set_time_factor(factor), как вы рекомендовали ( 3 поменял, назад, на 10, в alife - оставил 3 ). Эту строчку можно добавить, кажется, только в одном месте. Попробовал начать игру с начала. Сразу возникло несовпадение картинки и субтитров, о чём я говорил в своём посте, ранее. Но возможно не будет, в дальнейшем, других, упоминаемых вами, багов. Время меняется, как хотел. Остаюсь на вашем варианте. Ещё раз спасибо за помощь. С уважением, Константин. Искусство по-настоящему ругаться матом приходит только с умением водить машину. Ссылка на комментарий
Artos 99 Опубликовано 9 Декабря 2012 Поделиться Опубликовано 9 Декабря 2012 (изменено) K.O.N.S.T.A.N.T.I.N., что ты называешь "несовпадением картинки и субтитров"? И каким боком к этому относится скорость течения (фактор) игрового времени? Выложи скрин - тогда можно о чем то говорить... Изменено 9 Декабря 2012 пользователем Artos "Но иногда найдется вдруг чудак, этот чудак все сделает не так ..."© Машина времени Ссылка на комментарий
K.O.N.S.T.A.N.T.I.N. 1 Опубликовано 9 Декабря 2012 Поделиться Опубликовано 9 Декабря 2012 Каким боком относится, я не знаю, скрин - ни разу не делал - не умею. "Несовпадение картинки и субтитров", в начале игры - это... уже пошёл первый диалог (субтитры), а картинка (видео), ещё показывает стену дома и постепенно переходит на нужное место (где происходит диалог). Т.е. видео отстаёт. Но это ладно... ГГ спит по 2-3 мин., хотя ставишь 5 часов, или "до утра" ( при последней правке). В общем, всё вернул в вариант, предложенный мною. Спит нормально, время идёт, как я хотел. Всё хорошо... надеюсь. :ny_ph34r_1: Искусство по-настоящему ругаться матом приходит только с умением водить машину. Ссылка на комментарий
K.O.N.S.T.A.N.T.I.N. 1 Опубликовано 10 Декабря 2012 Поделиться Опубликовано 10 Декабря 2012 (изменено) Проявился этот эффект: "Если в одном случае задавать тайм-фактор 3, а в другом 10 - то каково же будет время в игре? Ответ очевиден - будет таким, каким установлено в последнем случае вызова функции, т.е. получается непредсказуемым." Поменял все 10 на 3 (всего в 3 местах), поспал, время стало опять идти нормально. Получается, что самым оптимальным остаётся вариант замены всех 10 на 3 (например), без добавления каких-либо строчек. Изменено 10 Декабря 2012 пользователем K.O.N.S.T.A.N.T.I.N. Искусство по-настоящему ругаться матом приходит только с умением водить машину. Ссылка на комментарий
Morder07 3 Опубликовано 13 Декабря 2012 Поделиться Опубликовано 13 Декабря 2012 Как уменьшить частоту спавна отрядов "Долга"? После квеста на затопление подземелья они начинают спауниться в диких количествах, хочу это изменить как нибудь. Ссылка на комментарий
Старлей 88 Опубликовано 14 Декабря 2012 Поделиться Опубликовано 14 Декабря 2012 Morder07, Либо в se_respawn.script уменьши число НПС долга, но лучше в faction_duty.ltx проверь respawn_idle_time, respawn_hours и base_squad_number, т.к. это напрямую влияет на респавн. ================== Как заспавнить предмет в ящик(не в тайник а в ящик!)? Ray Of Hope - кооператив сталкера OldStory Ссылка на комментарий
Artos 99 Опубликовано 14 Декабря 2012 Поделиться Опубликовано 14 Декабря 2012 Старлей, "ящик" иль "тайник" - суть едина: спавн предмета возможен в объекты класса 'inventory_box' (о сталкерах иль монстрах не поминаем). Спавн "в ящик" ничем не отличается от спавна "сталкеру", т.е. последним (5-ым) аргументом в функции 'create' указывается игровой идентификатор (ID) владельца (объекта для спавна). Однако, в отличии от спавна "сталкеру", имеется нюанс: чтобы заспавненные "в ящик" предметы не исчезали из ящика после save-load - требуется перевести ящик в оффлайн и обратно. "Но иногда найдется вдруг чудак, этот чудак все сделает не так ..."© Машина времени Ссылка на комментарий
Рекомендуемые сообщения
Создайте аккаунт или авторизуйтесь, чтобы оставить комментарий
Комментарии могут оставлять только зарегистрированные пользователи
Создать аккаунт
Зарегистрировать новый аккаунт в нашем сообществе. Это несложно!
Зарегистрировать новый аккаунтВойти
Есть аккаунт? Войти.
Войти