▶️ ЗАБЕРИ СВОИ 8 ПОДАРКОВ 🎁 ПРИ СОЗДАНИИ СВОЕГО МАЙНКРАФТ СЕРВЕРА
Моды/Freelook
Freelook

Freelook

Мод Freelook для Майнкрафт: свободный обзор вокруг персонажа. Удобно для строительства, разведки и PvP. Настраиваемый режим активации, плавные переходы, поддержка серверов с opt-out.

Оцените первым
82.0K
19

Freelook - Mод для свободного обзора

Freelook - это небольшой, но крайне полезный мод для Майнкрафт, который позволяет тебе вращать камеру вокруг персонажа, не меняя направления взгляда. Если в ванильной игре, чтобы посмотреть по сторонам, нужно разворачивать персонажа (и менять направление движения), то с этим модом можно спокойно оглядываться, осматривать местность или строить детали, не теряя ориентации. Особенно пригодится в PvP, при исследовании пещер или просто для красивых скриншотов.

Особенности

  • Несколько режимов камеры - можешь настроить, как именно будет работать обзор (зажать кнопку, переключение и т.д.)
  • Гибкая настройка активации - выбери удобную клавишу и способ переключения
  • Цикл камер - если у тебя есть другие моды, меняющие камеру, Freelook умеет с ними дружить
  • Плавные переходы - картинка не дёргается, взгляд скользит естественно

Как мод работает на серверах?

Некоторые серверы считают свободный обзор читерством (например, чтобы заглядывать за углы). Начиная с версии 2.0.0, Freelook поддерживает простой протокол отказа. Когда ты заходишь на сервер, клиент отправляет пакет freelook:handshake. Если сервер хочет запретить мод, он отвечает пакетом freelook:disable, и весь сеанс мод будет отключён. Честно и удобно.

Вот пример того, как можно реализовать такую защиту на стороне сервера (код на Java):

Код примера (нажми, чтобы развернуть)
public class Example implements ModInitializer {
    @Override
    public void onInitialize() {
        PayloadTypeRegistry.clientboundPlay().register(DisableModPayload.TYPE, DisableModPayload.CODEC);
        PayloadTypeRegistry.serverboundPlay().register(HandshakePayload.TYPE, HandshakePayload.CODEC);

        ServerPlayNetworking.registerGlobalReceiver(HandshakePayload.TYPE,
                (payload, ctx) -> ServerPlayNetworking.send(ctx.player(), new DisableModPayload())
        );
    }

    public record DisableModPayload() implements CustomPacketPayload {
        public static final Type<DisableModPayload> TYPE = new Type<>(Identifier.parse("freelook:disable"));
        public static final StreamCodec<RegistryFriendlyByteBuf,  DisableModPayload> CODEC = StreamCodec.unit(new DisableModPayload());

        @Override
        public Type<? extends CustomPacketPayload> type() {
            return TYPE;
        }
    }

    public record HandshakePayload() implements CustomPacketPayload {
        public static final Type<HandshakePayload> TYPE = new Type<>(Identifier.parse("freelook:handshake"));
        public static final StreamCodec<RegistryFriendlyByteBuf, HandshakePayload> CODEC = StreamCodec.unit(new HandshakePayload());

        @Override
        public Type<? extends CustomPacketPayload> type() {
            return TYPE;
        }
    }
}
Код распространяется под лицензией LGPL 3.0.

Часто задаваемые вопросы

Совместимость

Minecraft: Java Edition

26.2.x26.1.x1.21.x1.12.x1.8.x

Платформы

Поддерживаемые окружения

Клиент

Зависимости

Ссылки

Детали

Лицензия:
Опубликован:1 год назад
Обновлён:4 недели назад
Главная