Dennis_Chikin 3 658 Опубликовано 24 Апреля 2014 Поделиться Опубликовано 24 Апреля 2014 (изменено) "Что у нее внутри, и как это сделать лучше". Для тех, кто уже разбирается в скриптах, конфигах, текстурах и "других страшных словах" ©, и имеет желание и время действительно делать их лучше.См. подробности в первом посте.Тема НЕ является ни столом заказов, ни службой техподдержки, ни справочным бюро. Изменено 28 Апреля 2014 пользователем Dennis_Chikin 2 1 Солянка обезжиренная, диетическая, полезные советы по "солянке", текущий тестовый патч Ссылка на комментарий
Это популярное сообщение. Dennis_Chikin 3 658 Опубликовано 12 Декабря 2014 Это популярное сообщение. Поделиться Опубликовано 12 Декабря 2014 https://www.dropbox.com/s/wvub0j4ix30gecy/trade_manager.script?dl=0 В общем, вот. На ту же тему - "очистим от тормозов". При загрузке в частности, ну и вообще. Поскольку чистая соль сейчас мало кого интересует, а к ОПам патчефиксы пекутся как блины - по-людски, с перевешиванием всего на xr_meet, делать не стал. Зато можно прямо файл закидывать, как есть. Смысл - тот же, что и с _g.script, но при загрузке в присутствии неписей, ну или при подходе к лагерям неписей. Плюс обновление ассортимента раз в сутки, либо сюжетное. Зато сюжетное - максимум в течение 2-х минут. Как-то так. upd: h24 - игровые часы между этими самыми обновлениями. upd2: Если нет файла _util.script - который поддерживает вывод логов, то замените строку function log( ... ) _util.log( "trade_manager", ... ) end на function log() end 5 2 2 Солянка обезжиренная, диетическая, полезные советы по "солянке", текущий тестовый патч Ссылка на комментарий
Dennis_Chikin 3 658 Опубликовано 22 Декабря 2014 Поделиться Опубликовано 22 Декабря 2014 (изменено) Выкладывается для изучения. Просто "скопировать и запустить" ни куда нельзя. Not for "direct" use, education only ! https://www.dropbox.com/s/w2ehajvidhfys4e/new_smart_terrains.zip?dl=0 Здесь - по тому что заточено именно под Соль, с учетом ее "фирменных" глюкобагов. В общем, не "вроде как", а, похоже, допилил и как-то оттестил. Что сделано: Проблема - "32-45 июня" в гулагах. Формат сохранений изменен. Смысл - проверяем и храним не 64 бита, а таки 32, но от момента загрузки сэйва. Сохраняем дельту. Не думаю, что кто-то будет бегать месяц игрового времени по одной локации и без единого сэйва. Время и классы берутся не вызовами функций, а переменные из global namespace (смотрим _g.script из ранее выкладывавшегося). Заодно развернул часть функций на предмет скорости выполнения. Добавлен отлов странного, и оно таки отлавливается. Поддерживается альтернативный, "плоский" формат для gulag_*.script Исправлено сочетание idle и timeout, исправлен вообще не работавший timeout. Всякие Звездочеты и прочие Петрухи теперь нормально ходят в офлайне. Предикаты всегда поднимают приоритет работ автоматически. Так что теперь за этим можно не следить. Снят конфликт между назначением "эксклюзивов" и условиями назначения. Хотя сами эти "эксклюзивы" - затея довольно дурная. Скриптовый фикс ВСЕХ известных на данный момент глюкобагов соляночного олспавна: полезно на предмет "какие они вообще бывают" и что с ними делать. Убраны все привнесенные за всю историю модостроения "пессимизации". todo: разобраться окончательно с таблицей классов, и снести все дублирующие извлечения - записи всех дублирующих таблиц. Вот как-то так. Изменено 15 Апреля 2017 пользователем Dennis_Chikin 2 2 Солянка обезжиренная, диетическая, полезные советы по "солянке", текущий тестовый патч Ссылка на комментарий
Dennis_Chikin 3 658 Опубликовано 21 Марта 2015 Поделиться Опубликовано 21 Марта 2015 (изменено) https://www.dropbox.com/s/h1yohxmnrt8pvlz/ai.zip?dl=0 В общем, вот как-то так: аи-пак для неписей в мирной и условно мирной жизни. Только для изучения. "Скопировать и запустить" не получится, "адаптировать" ни под какие ОП2 не буду (это или половину ОП2 переделывать, или вернуть все в тот же вид, в каком было - ну а зачем тогда делалось ?). Education only ! Not for "copy&run" ! Что и зачем сделано: пачка делающих одно и то же (а по тому нещадно тормозящих и между делом конфликтующих) скриптов собраны в 4: ранения и самолечение (в том числе во время боя) - xr_wounded.script сидение у костра - xr_kamp.script (убрано сидение в костре, "война за место" и зацикливание звуков), подбирание предметов, шмон трупиков, оттаскивание трупиков от костра, лечение других неписей (под обстрелом и через всю локацию ни куда не премся) - watcher_act.script уборщик + переодевание + утилизация хлама + инициализация респавна + переспавн аномалий (убраны тормоза стандарного сякоуборщика и глюки от переодевания у переодевателя) - xl_offline.script Конкретно по подбиранию, обиранию, трупотасканию и лечению все расстояния, ценность действия и т.д. теперь задаются явным образом, и выбирается соответствующее действие. Сканирование локации "плавное" - увиденные и досягаемые объекты анализируются по одному за апдейт. Более подробные описания смотрите в более ранних постах. скрипты с таблицами и xl_relations - вспомогательные, общие для всех. Также, watcher_act.script требует для правильной работы координаты костров для трупотаскания из xr_kamp.script и признак включенного самолечения от xr_wounded.script Для желающих "адаптаций" напоминаю, что скриптики с функцией init() нужно инициализировать, актор и время (global_time_ms, game_time_sec и т.д.), таблицы классов c_* - должны быть в глобальном адресном пространстве; таблица pstor для актора, неписей, монстров - должна быть создана в том числе и при первой загрузке (добавьте создание в reinit() ). xrs_medic и xrs_armor - не нужны, отключить везде. Для правильной анимации самолечения из любого состояния также добавлен стэйт: eat_yad = { weapon = "strapped", movement = move.stand, mental = anim.free, bodystate = move.standing, animstate = "sit_ass", animation = "eat_yad" } -- в state_lib.script его надо. ну и много-много мусора надо убирать из amk.script, amk_mod.script, bind_stalker.script и т.д. Ну, как оно все работает вместе - демосборку дам по запросу: там 110мег, это только на кордоне побегать (на свалку не ходим, в пещеру не ходим). Время запуска - естественно, сокращено до 8 (было 14) секунд на фазу загрузки и 5-15 секунд (было мно-о-ого) на "синхронизацию", загрузка геометрии и прочей графики - естественно, ждет добровольцев . Изменено 15 Апреля 2017 пользователем Dennis_Chikin 1 3 Солянка обезжиренная, диетическая, полезные советы по "солянке", текущий тестовый патч Ссылка на комментарий
Dennis_Chikin 3 658 Опубликовано 22 Марта 2015 Поделиться Опубликовано 22 Марта 2015 (изменено) В общем, связка se_respawn и системы ньюсов - это ужасно. То есть, когда переспавн одного непися или монстра - это еще терпимо. А вот когда 2 десятка за раз, особенно во время боя... Ну и со входом в онлайн - аналогично. Лаг и в пару секунд может приключиться. Или даже серия лагов. В общем, переделал. Типа полуфабрикат: https://www.dropbox.com/s/49kt5apawrix74y/news.zip?dl=0 Идея такая, что свеженаспавненное/вошедшее в онлайн - просто заносится в табличку, и там ждет нормального апдейта, а на апдейте уже разбирается, по одному. Если новость вывели - все остальные ожидающие удаляются. То есть, ни каких вызовов ни откуда не надо. Да, ну и вообще подсократил ту икебану, которая была, заодно перевесив с "таймеров" на нормальный апдейт раз в 5 секунд. Мда, надо бы остальное так же переделать, и микроквесты с монстроспавном допилить, и перевесить на Захара, или еще кого из охотников... Upd: перезалил. Поправил жертв "копипасты", где была путаница id уровня и названия уровня, а также "автораспознавания" игровых и серверных объектов. get_point_description() всегда требует имя карты, а get_nearest_stalker() - id карты. Сделал простой, очевидны и быстрый вызов mob_death(), следующий на очереди - смерть неписей. Ибо "универсальный" вызов on_death() был, опять же, слишком монстровиден, как и on_spawn(). Изменено 15 Апреля 2017 пользователем Dennis_Chikin 3 Солянка обезжиренная, диетическая, полезные советы по "солянке", текущий тестовый патч Ссылка на комментарий
Это популярное сообщение. Dennis_Chikin 3 658 Опубликовано 17 Мая 2015 Это популярное сообщение. Поделиться Опубликовано 17 Мая 2015 (изменено) С целью неумножения "Кода Шредингера" выкладываю связку системы ремонта/апгрейда: https://www.dropbox.com/s/72arqao5gczhisq/repair.zip?dl=0 Внутри: скрипт ремящика и скрипт ремонта/апгрейда/закупки ремкомплектов + скрины + пример диалога для Сидоровича; данные забиты пока тоже только для Сидоровича. По тому как 1700 костюмов снести отовсюду и еще столько же стволов, провести ревизию на бредовые предметы, все потом убалансировать и оттестить для всех предметов и всех торговцев - это не на один день развлекуха, и даже не на неделю. Основная цель: избавиться от мегабайтных конфигов/хml и прочих wawka_dialog.script Апгрейд пока, для демонстрации, оставлен заменой предметов, потом когда-нибудь будет чисто скриптовый (то есть, все "укрепления", ПНВ и т.д. - будут писаться в свойства конкретного предмета). Бартер на арты/водку решил убрать, ибо не балансируется от слова совсем, никак. Все только через деньги. Запчасти теперь используются при "полевом" ремонте ремящиком , а у торговцев/ремонтников - только за деньги и время. То есть, запчасти заказываются и заменяются без участия игрока. Ибо иначе - бред. Все текстуры - из стандартной соли. картинко Изменено 15 Апреля 2017 пользователем Dennis_Chikin 1 1 7 Солянка обезжиренная, диетическая, полезные советы по "солянке", текущий тестовый патч Ссылка на комментарий
Это популярное сообщение. Dennis_Chikin 3 658 Опубликовано 25 Мая 2015 Это популярное сообщение. Поделиться Опубликовано 25 Мая 2015 (изменено) https://www.dropbox.com/s/epfziftf4s5z3sm/sidor_rel.zip?dl=0 Зачищать - так зачищать. В смысле, простыни с xml и вызовы из них. На сей раз - правка отношений. Инклуды в диалог - в тот же файл, что и ремонты; escape_dialog_rel.script - собственно менюшка. xl_relations.script - это все смены группировок, отношений и прочего к соляночным сюжетным событиям, + всякие медальоны/печатки и иже с ними. Просто не стал дублировать, поскольку там вся смена отношений с бандюками в ТД лежит. С вояками трогается туда/сюда info стрельбы под мостом (esc_bridge_pass_fire) - надо Шерстюка на нее же перевесить. С нетралами - лечится "общее" отношение + дополнительно проверяется для каждого непися из деревни новичков, и ежели что - выставляется обратно в нейтралы. Переносить в ОПу - ну, можно частично (оторвать вызов для Борова, и перенести считывание таблицы отношений их xl_relations в собственно escape_dialog_rel.script, в диалогах заменить строки про "исправить отношения с группировками" на строки с вызовом скрипта. Изменено 15 Апреля 2017 пользователем Dennis_Chikin 1 4 Солянка обезжиренная, диетическая, полезные советы по "солянке", текущий тестовый патч Ссылка на комментарий
Это популярное сообщение. Dennis_Chikin 3 658 Опубликовано 31 Мая 2015 Это популярное сообщение. Поделиться Опубликовано 31 Мая 2015 (изменено) Неожиданно овощи контейнеры. https://www.dropbox.com/s/88xhgdo9tmipowd/arc_containers.zip?dl=0 картинка Вид - практически стандартный, но все одним скриптом. Коэффициенты подбирать не надо - все считается правильно при любом течении времени. Строки конфигов с inventory_radiation не нужны - все берется из стандартного radiation_restore_speed =, арты (и любые другие предметы) из инвентаря дают половину радиации с пояса (коэффициент правится непосредственно в скрипте). Текстуры - стандартные соляночные. "Балласт" изменен на такой: [arc_ballast]:arc_baseclass = AMMO box_size = 50000 inv_weight = 500 visual = physics\box\box_lab_01.ogf description = ballast_you-should-not-see-this inv_name = ballast inv_name_short = ballast_s inv_grid_width = 0 inv_grid_height = 0 inv_grid_x = 4 inv_grid_y = 18 k_dist = 1 k_disp = 3 k_hit = 1 k_impulse = 1 k_pierce = 1 impair = 1 buck_shot = 1 tracer = off wm_size = 0.05 [arc_ballast_loader]:wpn_pm ; нефиг заниматься переспавном, когда есть вес оружия с патронами description = ballast_you-should-not-see-this inv_name = ballast inv_name_short = ballast_s inv_grid_width = 0 inv_grid_height = 0 inv_weight = 0 quest_item = true default_to_ruck = true startup_ammo = 0 ammo_limit = 65000 ammo_current = 0 ammo_elapsed = 0 ammo_mag_size = 65000 ammo_class = arc_ballast ef_weapon_type = 0 slot = 7 - он же, по совместительству, "антиграв" на +-650кг (арты, снижающие вес, и т.д.) К сожалению, плотно привязан к менеджеру инвентаря (учет, перепаковка, пояс, кэширование параметров предметов и иже с ними), плавный апдейт, принудительную инициализацию и т.д., отвязывать смысла не вижу, поскольку получится точно такое же глюкотормозилово, как и было. P.S. "радиация от рюкзака: 2" - это не ошибка. Арты показываются и те, которые на поясе, и те, которые в рюкзаке. upd 03.06: Поправил перерассчет радиации от артов с учетом многообразия возможных манипуляций рюкзак-тайники-контейнеры-пояс. В менеджер инвентаря добавил возможность принудительного вызова перескана (до этого блокировалось при открытом инвентаре, чтобы не дергался во время торговли). Перезалил. Изменено 15 Апреля 2017 пользователем Dennis_Chikin 2 3 3 Солянка обезжиренная, диетическая, полезные советы по "солянке", текущий тестовый патч Ссылка на комментарий
Это популярное сообщение. Dennis_Chikin 3 658 Опубликовано 21 Июня 2015 Это популярное сообщение. Поделиться Опубликовано 21 Июня 2015 В общем, переписываю в очередной раз wather_act.script: ибо апдейт полусотни неписей (кордон) с лютым, бешеным сканированием в основном таких же неписей - это заметно даже на "растащенной" проверке предметов. Поскольку собственно интересных неписям предметов обычно - 0, а вот сканируются - по 3-4 десятка memory_object'ов на каждого. И это еще хорошо, если 3-4. Плюс для каждого непися еще и рекурсивный перебор пачек схем происходит. Рандомизация тоже не спасает, поскольку периодически случается накладывание. И это самое "периодически" - довольно частое. Так что все сканирование и все проверки перевешиваю в апдейт актора. Как ни странно, движок заметно разгружается. 6 Солянка обезжиренная, диетическая, полезные советы по "солянке", текущий тестовый патч Ссылка на комментарий
Кантор 391 Опубликовано 12 Октября 2015 Поделиться Опубликовано 12 Октября 2015 Чисто из любопытства спрошу, разработка новой версии НС так и идёт под четвёртый патч? На Амк вообще в курсе что уже почти полтора года на GOG доступны DRM-free версии игры 2.0.X.X Конкретно сейчас уже 2.0.0.5. Добавлено BFG, 12 Октября 2015 Новая Солянка будет идти под ЛЮБЫМ патчем. Это уже сделано давно. Мой комп: Asus@Z170 MaximusVIII Hero + Intel 8700k(QNLV) +24ГБ DDRIV + PA-GTX1060 SUPER JETSTREAM 6G+SSD SAMSUNG PM981A 1Tb.. Ссылка на комментарий
Это популярное сообщение. Dennis_Chikin 3 658 Опубликовано 14 Декабря 2015 Это популярное сообщение. Поделиться Опубликовано 14 Декабря 2015 (изменено) Арты, как известно, "в текстуры" не проваливаются. А если проваливаются - то сразу на 300 метров вглубь. По тому что такие модели. © И доставать их на поверхность - нарушение аффтырьских правов и вообще злостное читерство, за которое в свое время на этом форуме и посты терли, и в бан отправляли. https://www.dropbox.com/s/8j0j7l25xqenao5/bind_art.script?dl=0 Чтобы заработал, надо в artefacts.ltx в секцию [af_base] добавить строчку script_binding = bind_art.bind работает для всех солянок, оп*, амк и т.д. и т.п. Изменено 15 Апреля 2017 пользователем Dennis_Chikin 6 2 Солянка обезжиренная, диетическая, полезные советы по "солянке", текущий тестовый патч Ссылка на комментарий
mb14 1 Опубликовано 28 Декабря 2015 Поделиться Опубликовано 28 Декабря 2015 (изменено) Камрады, заметил, что броня иногда слетает. Вроде в инвентаре стоит экза, пнв работает, а защита вроде уменьшается. Еще заметил, что по собственной тени можно определить, что броня слетела, если видно простую курку, то да, броня слетела. Это как лечится? З.Ы. Поисковиками прошерстил, вреде нет ничего на данную тему. Изменено 28 Декабря 2015 пользователем mb14 Ссылка на комментарий
Dennis_Chikin 3 658 Опубликовано 28 Декабря 2015 Поделиться Опубликовано 28 Декабря 2015 Вот ни разу такого не замечал, чтоб "защита уменьшалась". Видимо, по тому и нету. Более того, если б она слетала - были бы проблемы там, где идут поверки на наличие брони в слоте. Или это что-то типа того "на-на костюма", который, да, зачем-то специально сделан самоснимающимся. Равно как и "невидимый". Вообще, костюм в соли примерно вот года так с 2009-го просто перестал фактически от чего-либо защищать, а скорость, с которой он портится - успешно сводит в 0 и остатки. Так что - дополнительный вес переноски и пнв - собственно, и есть все ее текущие функции. Если же речь идет об чем-то альтернативном - да, не удивлюсь, если кто-то где-то зачем-то добавил принудительное снятие или порчу вообще любых костюмов. Но это уже к тем авторам. То, что при смерти актор оказывается почему-то без костюма - вот это - так и задумано, да. Зачем - ни кто не знает. Чтобы было. Но на что-либо, пока актор жив - не влияет. Солянка обезжиренная, диетическая, полезные советы по "солянке", текущий тестовый патч Ссылка на комментарий
mb14 1 Опубликовано 28 Декабря 2015 Поделиться Опубликовано 28 Декабря 2015 Экза военных, экза монолитовцев. Потеря потеря брони чувствуется сильно. Обычно такое происходит после обыска трупов сталкеров. 1 Ссылка на комментарий
Eugen81 1 008 Опубликовано 28 Декабря 2015 Поделиться Опубликовано 28 Декабря 2015 (изменено) @mb14, в bind_stalker.script в функцию actor_binder:on_item_take (obj) в конец: -- фикс переодевания гг при взятии броника if obj:clsid() == clsid.equ_stalker_s then local outfit = db.actor:get_current_outfit() if outfit and outfit:id() ~= obj:id() then db.actor:transfer_item(outfit, db.actor) end end взял из ОП-2. Изменено 28 Декабря 2015 пользователем Eugen81 2 1 Ссылка на комментарий
Dennis_Chikin 3 658 Опубликовано 28 Декабря 2015 Поделиться Опубликовано 28 Декабря 2015 Код несколько странный и загадочный. Скорее, стоит посмотреть, что там с броней вообще происходит, и когда именно, чем сравнивать ид со взятым. Скажем, сравнить с тем, что в слоте, и что запомнено с последнего раза. Ну, наверное, к себе проверку добавлю и погоняю. 1 Солянка обезжиренная, диетическая, полезные советы по "солянке", текущий тестовый патч Ссылка на комментарий
mb14 1 Опубликовано 28 Декабря 2015 Поделиться Опубликовано 28 Декабря 2015 Eugen81 Спасибо вроде работает. Ссылка на комментарий
Eugen81 1 008 Опубликовано 28 Декабря 2015 Поделиться Опубликовано 28 Декабря 2015 (изменено) Ага. Изначальный скрипт от Charsi. http://www.amk-team.ru/forum/index.php?showtopic=9514&p=814466 http://stalkerin.gameru.net/wiki/index.php?title=SoC._Исправление_сброса_визуала_костюма_ГГ Изменено 28 Декабря 2015 пользователем Eugen81 1 Ссылка на комментарий
Desertir 202 Опубликовано 4 Января 2016 Поделиться Опубликовано 4 Января 2016 А на счет этих фиксов, чисто ради интереса спрошу. Типичная проверка на апдейте "объема" инвентаря, который зависит от костюма, если переполнен - выкидываем вещь. Если мы снимем очень вместительный костюм (экзик с большим рюкзаком), то вещи из нас посыпятся. А что будет если такой финт db.actor:transfer_item(outfit, db.actor) провернуть? Апдейт успеет пройти в этом случае? ТЧ 1.0004. SAP и Trans mod github Ссылка на комментарий
mb14 1 Опубликовано 24 Апреля 2016 Поделиться Опубликовано 24 Апреля 2016 (изменено) Когда выкладывал весь хабар в нычку по квесту с наемниками на АС, заметил, что проблема с растущей радиацией вроде бы решается, если сохранится без хабара в рюкзаке, а потом с этого сейва загрузится.Еще умудрился словить баг, все стволы, броники и прочиий хабар, который я продавал торговцам, оставался у них после загрузки с сейвов и переходе с других локаций. Проблемма, думаю вызвана кулаками, которые купил вроде бы у Сидора, а потом ему же безуспешно пытался продать. З.Ы. Цена кулаков 0. Провел экспереммент, из рякзака выкинул в нычку только все радиоактивное и ящики для артов, опусташил все слоты под арты, созранился-загрузился, радиация не растет. Изменено 24 Апреля 2016 пользователем mb14 Ссылка на комментарий
Dennis_Chikin 3 658 Опубликовано 1 Июля 2016 Поделиться Опубликовано 1 Июля 2016 Отключение лютого, бешеного, беспощадного и бессмысленного апдейта 100500 рестрикторов, которые ничего не делают, кроме как ЖРУТ. Для ВСЕХ солянок. https://dl.dropboxusercontent.com/u/27871782/bind_restrictor.script https://dl.dropboxusercontent.com/u/27871782/sr_idle.script Обязательно парой. Подробности см. http://www.amk-team.ru/forum/topic/12926-sistema-alife-logika-povedeniia-igrovykh-obektov/?p=1020283и далее. 1 Солянка обезжиренная, диетическая, полезные советы по "солянке", текущий тестовый патч Ссылка на комментарий
Рекомендуемые сообщения