Dennis_Chikin 3 661 Опубликовано 5 Сентября 2015 (изменено) условия %+gans_kvest_proval% я бы растащил по разным секциям. Ибо код, который проверяет условия выдачи - в общем, я его ниасилил, поскольку алкоголь в таких количествах мне запрещен. По крайней мере, когда правил Юрика - так и пришлось сделать. Ну, про сякоархаровских крыс вилетающих ты должен бы помнить. 2 Карлан: флудим ? Изменено 5 Сентября 2015 пользователем Dennis_Chikin Солянка обезжиренная, диетическая, полезные советы по "солянке", текущий тестовый патч Поделиться этим сообщением Ссылка на сообщение
Dennis_Chikin 3 661 Опубликовано 18 Сентября 2015 На сколько я помню исходники - третья цифра не используется ни где. Кстати, рассчет вероятностей в асболютном большинстве же исходников - кривой. 1 1 Солянка обезжиренная, диетическая, полезные советы по "солянке", текущий тестовый патч Поделиться этим сообщением Ссылка на сообщение
Dennis_Chikin 3 661 Опубликовано 20 Сентября 2015 [boar_strong]:m_boar_e...community = boarВнезапно, да ? Солянка обезжиренная, диетическая, полезные советы по "солянке", текущий тестовый патч Поделиться этим сообщением Ссылка на сообщение
Dennis_Chikin 3 661 Опубликовано 20 Сентября 2015 (изменено) А в game_relations учитывается вообще species = Первая страница темы, все ссылки - на материалы на русском. "А причем тут species?" - гм, впрочем, я тоже путать могу, да. Изменено 20 Сентября 2015 пользователем Dennis_Chikin Солянка обезжиренная, диетическая, полезные советы по "солянке", текущий тестовый патч Поделиться этим сообщением Ссылка на сообщение
Dennis_Chikin 3 661 Опубликовано 27 Сентября 2015 Не трогать хиты, а прописать в логике соответствующую схему. Солянка обезжиренная, диетическая, полезные советы по "солянке", текущий тестовый патч Поделиться этим сообщением Ссылка на сообщение
Dennis_Chikin 3 661 Опубликовано 27 Сентября 2015 [walker@...] wounded = wounded@чего-то_там [wounded@чего-то_там] при каких хитах чего делаем. Или смарт должен был иметь соотв. cond и прекратить свое существование? Ты знал ! © 1 Солянка обезжиренная, диетическая, полезные советы по "солянке", текущий тестовый патч Поделиться этим сообщением Ссылка на сообщение
Dennis_Chikin 3 661 Опубликовано 28 Сентября 2015 (изменено) На сколько помню - да. Динамические же. По поводу поиска причин проседания fps - ну так я вам кашпировкий, что-ли ? Вылавливайте с разных точек конкретное место, и вспоминайте, что такого красивого туда всаживали. Хабарыча, коий является заслуженным специалистом по украшениям подобного рода, увы, давно ни кто не видел. Точно известно, что подобный эффект умеют, во-первых, партиклы с завышенным сроком жизни (за подробностями - к amik, он подобное исправлял), во-вторых, традиционно, текстуры с размерами типа 13191x216. Но список явно не полный. Изменено 28 Сентября 2015 пользователем Dennis_Chikin Солянка обезжиренная, диетическая, полезные советы по "солянке", текущий тестовый патч Поделиться этим сообщением Ссылка на сообщение
Dennis_Chikin 3 661 Опубликовано 28 Сентября 2015 (изменено) Не совсем так. Там КУЧА аномалий, которые просто тупо удаляются при первом запуске игры (и, кстати, если этого не сделать - пойдут вылеты без лога), и несколько сюжетных. "Сюжетные", кстати, тоже не без греха (знаменитый вылет при выходе из лабиринта и в МГ). Изменено 28 Сентября 2015 пользователем Dennis_Chikin Солянка обезжиренная, диетическая, полезные советы по "солянке", текущий тестовый патч Поделиться этим сообщением Ссылка на сообщение
Dennis_Chikin 3 661 Опубликовано 29 Сентября 2015 при заходе в зону аномалии Поскольку я принципиально против мега- и гигаолспавнов, то на этот счет ни чего не скажу, кроме того, что при спавне скриптом им в пакет таки зачем-то прописывается радиус/шейп. Ну и с классами еще стоит разобраться. Солянка обезжиренная, диетическая, полезные советы по "солянке", текущий тестовый патч Поделиться этим сообщением Ссылка на сообщение
Dennis_Chikin 3 661 Опубликовано 1 Октября 2015 Ну, положим, эффект, который описывал я, имел место на статике с минимальными настройками. А вот что именно на локацию добавили в составе тех 4-х гигабайт "апдейта" - пытался автора распросить, но в ответ получил от группы товарищей справедливое замечание, что нищебродам без видюхи за 30 килобаксов и плазменной панели, купленной обязательно в кредит, нехрен лезть в разработку, а надобно молчать в тряпочку. На этом собственно все и закончилось. Солянка обезжиренная, диетическая, полезные советы по "солянке", текущий тестовый патч Поделиться этим сообщением Ссылка на сообщение
Dennis_Chikin 3 661 Опубликовано 11 Октября 2015 (изменено) Ну так ищем function gulag:set_restrictions( ... ) и смотрим: npc:add_restrictions(), npc:remove_restrictions() Ну и при чем здесь нетпакет/логика ? Изменено 11 Октября 2015 пользователем Dennis_Chikin Солянка обезжиренная, диетическая, полезные советы по "солянке", текущий тестовый патч Поделиться этим сообщением Ссылка на сообщение
Dennis_Chikin 3 661 Опубликовано 11 Октября 2015 либо выбрасывают пистолеты, либо выбрасывают основной ствол. В оригинале неписи ничего не выбрасывают. То есть, разбирайтесь с тем, что Вы добавили. 2 Солянка обезжиренная, диетическая, полезные советы по "солянке", текущий тестовый патч Поделиться этим сообщением Ссылка на сообщение
Dennis_Chikin 3 661 Опубликовано 31 Октября 2015 (изменено) Ну вот какбы с уборщиками все сводится либо просканировать таки все предметы, раскидать по таблицам в зависимости от нужного признака, и посчитать, сколько чего, и выбросить лишнее. Можно добавить сроки давности, или еще какие условия. Что тут еще сделать - это, например, вместо сканирования, строить таблицы на базе se_что_попало.on_register(), или использовать эти же таблицы для других надобностей. Также, есть вариант БЕЗ уборщика, поскольку у многи предметов в конфигах предусмотрено "время протухания". Ну, могу дать еще более монстровидный, который как раз делает ВСЕ СРАЗУ, только что кофе не варит. К нему еще обвязка нужна, но на посмотреть - здесь: https://dl.dropboxusercontent.com/u/27871782/xl_offline.script- в принципе, все довольно очевидно. (И, да, обвязка выдается по запросу, дублирующие моды/паки и иже с ними можно снести). Поскольку здесь собраны все дублирующие операции этих самых модов-паков - быстрый. Но монстровидный. Перерыв сам скрипт "bind_stalker" данной строки не нашел ( использовал даже ворлд с поиском по буквам) На самом деле - добавить в любое удобное место, до момента, когда убираемые предметы пытаются входить в онлайн. Что-то типа bind_stalker: function actor_binder:reinit() sak_off_corpses.off_corpses() ... Можно почитать http://www.amk-team.ru/forum/index.php?showtopic=13078&p=967266- на предмет общих принципов. Старался доступно расписывать. Изменено 31 Октября 2015 пользователем Dennis_Chikin Солянка обезжиренная, диетическая, полезные советы по "солянке", текущий тестовый патч Поделиться этим сообщением Ссылка на сообщение
Dennis_Chikin 3 661 Опубликовано 1 Ноября 2015 (изменено) npc:set_mental_state( anim.danger ) npc:set_body_state( move.crouch ) - переходит в присяд npc:set_mental_state( anim.free ) npc:set_body_state( move.crouch ) - вылет error in stalker with visual actors\novice\green_stalker_4 В куда копать ? Дополнительная информация: данный конкретный гражданин не хочет делать state_mgr.set_state( npc, "search" ) - ограничивается этаким полупоклоном. Аристократ, блин... Изменено 1 Ноября 2015 пользователем Dennis_Chikin Солянка обезжиренная, диетическая, полезные советы по "солянке", текущий тестовый патч Поделиться этим сообщением Ссылка на сообщение
Dennis_Chikin 3 661 Опубликовано 2 Ноября 2015 Да-да, а так же авторы оп2 написали сам сталкер, виндовс и изобрели собственно компьютеры. Там древняя "динамическая" погода стоит, от Ивара. И даже не он тот скрипт писал. Есть, кстати, более альтернативные, для той же самой, динамической. С подробными комментариями, что зачем, и без "amk.load_variable()". Выброс - тоже проверяется в зависимости от того, какой прикручиваем. Если ни какой не прикручиваем - ничего не проверяется 1 Солянка обезжиренная, диетическая, полезные советы по "солянке", текущий тестовый патч Поделиться этим сообщением Ссылка на сообщение
Dennis_Chikin 3 661 Опубликовано 2 Ноября 2015 (изменено) В наиболее распространенных динамических что-то типа такого: local r, k, v, kk, vv, t if ini:section_exist( "weather_transition_times" ) then for i = 0, ini:line_count( "weather_transition_times" ) - 1 do r, k, v = ini:r_line( "weather_transition_times", i, "", "" ) t = {} trans_n = trans_n + 1; trans_t[trans_n] = { k + 0, v, t } if ini:section_exist( v ) then for ii = 0, ini:line_count( v ) - 1 do r, kk, vv = ini:r_line( v, ii, "", "" ) t[kk] = vv if t_prob[vv] then trans_types[kk] = vv end end else abort( "invalid section: [%s]", v ) end end else abort( "invalid section: [weather_transition_times]" ) end Ну и выбор: if s then -- для следующего раза for k, v in string_gmatch( s, "([%w]+):?([%d]*),?" ) do -- log( "info", "update, allowed: [%s:%s]", k, v ) if t_prob[k] then v = t_prob[k]; tt[k] = v; nn = nn + v else v = trans_types[k] if v then v = t_prob[v]; tt[k] = v; nn = nn + v else log( "error", "invalid section: [%s], line: [%s]", t[2], k ) end end end end if t_prob[next_w] and not tt[next_w] then -- текущая тоже участвует в конкурсе s = t_prob[next_w]; tt[next_w] = s; nn = nn + s -- log( "info", "update, add current: [%s]", next_w ) end if nn ~= 0 then s = math_random( nn ) -- log( "info", "update, total: %s, rnd: %s", nn, s ) -- for k, v in pairs( tt ) do log( "info", "update, [%s:%s]", k, v ) end for k, v in pairs( tt ) do if v < s then s = s - v else next_w = k; break end end -- log( "info", "update, next: [%s]", next_w ) else log( "error", "invalid section: [%s], entry [%s] absent", t[2], next_w ) end Либо то же самое по смыслу, но в 100500 строк. То есть, в итоге, выбор идет вот отсюда: [weather_transition_times] 0 = weather_transition_list0000 ; 00:00 ... 1380 = weather_transition_list2300 ; 23:00 [weather_transition_list0000] transition230000 = dry ... transition230005 = stormy foggy = transition000000:7 rainy = transition000001:5 stormy = transition000002:4, transition000003:5 thunder = transition000004:3 Количество строк и секций безусловно стоило бы уменьшить, по сравнению с оригиналом, с сделать, скажем, 2-4 раза в сутки, а не каждый час. Заодно можно будет согласовать параметры clouds_color и rain_density у секций, между которыми производится выбор, чтобы цвет неба резко не дергался, а дождь при ясном небе не падал мегасосульками в количестве 100500 штук на миллиметр экрана. Гм, а не переместить ли это в более соответствующую тему ? Изменено 2 Ноября 2015 пользователем Dennis_Chikin 2 Солянка обезжиренная, диетическая, полезные советы по "солянке", текущий тестовый патч Поделиться этим сообщением Ссылка на сообщение
Dennis_Chikin 3 661 Опубликовано 2 Ноября 2015 В погодной теме есть почти построчный разбор двухстраничного скрипта, заточенного на то, чтоб работать с погодой Ивара, не трогая конфигов. И, да, вот в этом конкретном скрипте имеет место быть local t_prob = { -- вероятности типов погоды ["beta"] = 20, ["dry"] = 10, ["foggy"] = 10, ["rainy"] = 20, ["grey"] = 20, ["stormy"] = 10, ["thunder"] = 10 } То есть, оверрайдящих прописанное в конфигах Ивара. В конце-концов, из них можно просто вынести все строки и секции с упоминанием transition, оставив переходы foggy = rainy, без всяких цифр, и будет работать вот эта табличка, только для оставленных переходов. Мегаскипт на 100500 мегабайт и смотреть не буду - это тот же самый времен OGSM и SPR, с небольшими изменениями и ровно тем же функционалом, только без "предсказания", и тормознее. На нем точно так же можно убрать лишние transition, и добавить подстановку вероятностей из внешней таблицы, только вникать дольше. Проблема во всех, абсолютно всех решений с "динамической" погодой - в строчках clouds_color и rain_density, которые должны быть максимально близки у всех секций, с которых/на которые переходим. Иначе будет эффект "выключателя". Или править движок, чтобы вычислял переходные значения, и растягивал на время между переключениями. 3 Солянка обезжиренная, диетическая, полезные советы по "солянке", текущий тестовый патч Поделиться этим сообщением Ссылка на сообщение
Dennis_Chikin 3 661 Опубликовано 2 Ноября 2015 "возможно лучше будет вывести эти параметры в rw, и в самом менеджере погоды" - если лезть в движок, то там и вычисления. И там же отдавать следующую - спрашивать обратно. Собственно, и отдельный менеджер после этого уже не нужен. Солянка обезжиренная, диетическая, полезные советы по "солянке", текущий тестовый патч Поделиться этим сообщением Ссылка на сообщение
Dennis_Chikin 3 661 Опубликовано 3 Ноября 2015 Ну вот вероятность и должна задаваться в олспавне в явном виде, да. А вообще - не дело это: создавать случайные предметы через олспавн. Кстати, тоже вопрос: ни кто не помнит, где регулируется время существования best_enemy/best_danger для неписей ? Много лет назад я это как-то правил, но забыл за ненадобностью. То есть, непись кого-то увидел/услышал, определил во враги, и запомнил. И даже в сэйв ухитряется себе записать. Также, нанесение хита союзникам при стрельбе в воздух - это sr_territory, или еще где-то ? Солянка обезжиренная, диетическая, полезные советы по "солянке", текущий тестовый патч Поделиться этим сообщением Ссылка на сообщение
Dennis_Chikin 3 661 Опубликовано 5 Ноября 2015 (изменено) Имею на руках некий мод и некий сэйв к нему. В этом самом сэйве гражданин Волк явно чем-то напуган. Причем, при внимательном изучении оказалось, что по npc:best_danger() он постоянно получает этот самый danger с типом attack_sound, источником является он сам. Точнее, сначала от другого непися, а потом уже сам. То есть, сам орет, и сам себя боится, по тому и орет. Что делалось с неписями, их конфигами и т.д., а также со звуками, материалами и т.д. - неизвестно. "Все и сразу". Так что вопрос опять же стандартный: где чего могли наделать, и куда именно смотреть ? Ну не верю, что ни у кого такого не случалось. Да, там же отдельно доставляют трупы, тоже с этим же самым attack_sound. То есть, лежит такой вот покойничек, и орет на всю Зону. Причем звук этот, "атакующий" долетает аж за 120 с лишним метров. Изменено 5 Ноября 2015 пользователем Dennis_Chikin 2 Солянка обезжиренная, диетическая, полезные советы по "солянке", текущий тестовый патч Поделиться этим сообщением Ссылка на сообщение