Цитата(RayTwitty @ 16.11.2020, 19:07)
Цитата(Cossack-HD @ 16.11.2020, 12:03)
Игроку пофиг.
Игроку то может быть и пофиг, вот только сути это не меняет)) В оффлайне не происходит ничего такого, чтобы можно было назвать какой-то симуляцией.
Ну о чём и речь.
А что вообще можно назвать симуляцией?
Вон в онлайне (при игроке) столкнулись враждебные NPC, одни других победили и облутали и пошли дальше. Это симуляция жизни? Нет? Вон в скуриме с модами тоже так можно.
Если тоже самое происходит в оффлайне, это становится симуляцией?
Если это происходит только в онлайне, то это просто "хороший" ИИ - выбрал лучшее оружие, устранил сначала самых опасных врагов, добили раненых, взяли хабар, пошли в лагерь пить водку.
А если происходит и в оффлайне (вдали игрока), то тут работает уже "симуляция игрового мира", т.е. "глобальный" A-Life - игрок может застать этих NPC на любой стадии их приключений, тем самым как минимум наблюдать как NPC сближаются, перестреливаются, лутают или бухают, или вмешаться во всё это, убить и облудать всех и бухать в одну рожу.
Главный контент - кто, где, когда, что (лут) - эти переменные должны оставаться точными и разнообразными. Как - зависит от того, смотрит ли на это игрок. Если не смотрит, то "как" становится проще - без графонов и сложных просчётов.Т.е. есть 3 компонента:
1. Мотиватор шевелить ногами, с нормальным разнообразием (тут в каждой игре из трилогии были разные проблемы)
2. NPC взаимодействуют друг с другом (в ЗП лучше всего - лутают без модов)
3. Всё это работает независимо от присутствия игрока (не уверен, что в ЗП это работало, в ТЧ точно не работает)
Если хоть одно из этого не работает, то A-Life как-бы и нет.
Вот так что думаю, что абстрактно A-Life в оффлайне может работать как примитивная RTS - юниты там ходят по упрощёным графам, грабят корованы, иногда сидят в лагере. Приходит игрок, и детализация деятельности повышается: ходят ногами по collision mesh, грабят под фразочки "а ну-ка помацаем, что у нас тут", сидят в лагере с водочкой и закусоном и спят ночью.
Оффлайн алгоритму не нужно знать, есть ли в лагере часовой - можно в момент стычки монстров с лагерем и назначить одного часового, посмотреть его рейтинг опыта и снаряги, с учётом этого сделать рандом нападающий vs. часовой и просчитать сколько с какой стороны умерло NPC.
(Если влезть в подробности оффлайн расчёта этой стычки, то из 3 сталкеров выбираем рендомного часового, у которого рейтинг множится на фактор 1.0 а у спящих например на 0.5, типа они в момент просчёта не эффективны в обороне, ещё можно накинуть бонусных очков из мета-данных самого места - плюс за наличие ограждений, вышек. Минус, если в какой-то низине или по-другому стратегически невыгодно. Так и точку подхода нападающих тоже можно покрыть мета-данными, мол есть 4 подхода, самый опытный враг выберет самый выгодный (в онлайне тоже), да и трупы после оффлайн стычки будут спавниться на средних координатах между выбранным направлением нападениея и центром лагеря).
Когда игрок приближается к ночному лагерю, то часовой назначается, чтобы его мог увидеть игрок.
Т.е. это как в физике - пока элементарные частички не взаимодействуют, их конкретное состояние не играет роли. А как нужно провести взаимодействие или посмотреть на частички, то система вынуждено принимает какую-то позицию. И для этого не нужен квантовый компьютер, можно math random на все данные, которые не играют роли в оффлайне - экономия ресурсов и упрощение алгоритмов. И тут интересный вопрос - а стоит ли симулировать в оффлайне, или можно тупо выдумывать результаты "симуляции" прямо за углом, чтобы ГГ увидел последствия событий, которые якобы произошли?