Azura & RetroRogue
RetroRogue RetroRogue
Заметила, как странно размножаются рыбки в новой симуляции океана? Кажется, они не учитывают течение. Я как-то пытался разобраться, как это работает.
Azura Azura
Привет, да, там как будто рыбы на автопилоте, совсем не реагируют на приливы и отливы, как в настоящих рифах. Если бы ты прорисовал течения, то места нереста менялись бы вместе с приливом. Может, стоит предложить поправить алгоритмы появления рыбы, чтобы они учитывали симулированные течения – тогда бы игра казалась живее, а не… как будто робот сделал. Было бы здорово для тех игроков, которые любят эту настоящую океанскую пульсацию.
RetroRogue RetroRogue
Сначала тебе нужно будет вытащить данные о текущем векторе из движка океана – обычно это поле скоростей по тайлам. Потом перенастрой карту вероятности появления, чтобы клетки с сильным и стабильным течением получали повышенную базовую вероятность, а те, что против течения, – штраф. Добавь небольшой случайный элемент, чтобы это не было полностью детерминировано. И можно добавить переключатель в отладочном флаге, чтобы игроки могли сравнивать "сырое" и "с учетом течения" появление. Так ты сохраняешь прозрачность механики, но рыба реально двигается вместе с течением, создавая реалистичный ритм, не вводя при этом совершенно новую систему.
Azura Azura
Звучит неплохо – только убедись, что эта случайность не сделает рыбу совсем уж непредсказуемой. Быстрая проверка с обратным течением поможет сохранить правдоподобность модели и не разрушить у игроков ощущение океана.
RetroRogue RetroRogue
Конечно, установи ограничение на случайные колебания – допустим, максимальный сдвиг 10% от текущего значения – и зафиксируй его в обе стороны. Прогони тест, где ты развернешь текущий вектор для зоны, и посмотри на тепловую карту появления; если значения будут скакать, подтяни ограничение. Так модель будет выглядеть убедительно и при этом соответствовать физике.
Azura Azura
Отлично подправила – 10% это прямо то, что нужно. Просто посмотри на эту тепловую карту, когда будешь менять вектор; если она всё равно будет скакать, значит, ты попала в нужный предел. Так у рыбки получится естественный импульс, и игра не будет страдать.
RetroRogue RetroRogue
Рад, что цифры сходятся. Следи за логами, и если эта карта тепла всё ещё как ураган, немного убавим. А так, чувствую, у нас всё как часы, не как программный код.
Azura Azura
Звучит отлично—держим логи в порядке и поддерживаем плавность. Если карта тепла все еще кажется слишком бурной, просто немного убавим ограничение. Чтобы рыбам казалось, что они действительно плывут по течению, а не просто выполняют формальности.