LoVisual/mod
LoVisual AI 15f070af6d
Some checks failed
CI / backend (cargo test + clippy) (push) Failing after 6m48s
CI / frontend (lint + test + build) (push) Failing after 24s
CI / mod (gradle test + checkFolderLimit) (push) Successful in 1m57s
feat(mod): Stage 3 (continued) — LivingEntityLod + BubbleColumnUp + LevelRendererOutline
Per mod/docs/optimize-layer-design.md Stage 3 (continued). Three more simple
mixin'ы are added on top of the existing RenderBackendOps + lazy-clear/TBO/
RenderTypes trio:

mixins/optimize/entity/LivingEntityLodMixin.java:
- ModifyExpressionValue on LivingEntityRenderer.submit's shouldRenderLayers
  call — return false when the entity's distanceToCameraSq is beyond the
  Stage 1 entity_lod threshold. Skips the layer pass (armour, held items,
  eyes, cape, elytra, stuck arrows) for far entities. Ported from
  zako.opt.mixin.entity.LivingEntityLodMixin.

mixins/optimize/particle/BubbleColumnUpParticleMixin.java:
- WrapOperation on BubbleColumnUpParticle.tick's ClientLevel.getFluidState
  call — consult BubbleColumnCache first, store on miss. Cache is cleared
  per-tick (BlockPos.asLong key + game-tick tracking). Ported from
  zako.opt.mixin.particle.BubbleColumnUpParticleMixin.

mixins/optimize/world/LevelRendererOutlineMixin.java:
- Inject on LevelRenderer.doEntityOutline HEAD-cancellable — skip the
  outline render when no glowing entity was seen this frame (OutlineTracker).
- WrapOperation on LevelRenderer.addMainPass's clearColorTexture — call
  OutlineTracker.markGlowing() to record that the renderer is about to
  draw an outline this frame. (Conservative: marks every clear, not just
  the entity-outline one — ZakoOpt uses @Local for precision, we keep it
  simple to avoid MixinExtras @Local fragility across MC versions.)
- Ported from zako.opt.mixin.entity.LevelRendererOutlineMixin.

Helpers (features/.../optimize/):
- particle/TickCache<V>: generic per-tick keyed cache (Long2ObjectOpenHashMap).
  BubbleColumnCache wraps it for FluidState. Other per-tick caches
  (ParticleLightCache etc.) can reuse it in later Stage 3 commits.
- particle/BubbleColumnCache: thin wrapper over TickCache<FluidState>.
- world/OutlineTracker: per-frame state for the outline-skip optimization
  (glowingThisFrame + dirty flag, beginFrame/markGlowing/markCleared API).

lovisual.mixins.json: three new entries in the 'client' array:
  optimize.entity.LivingEntityLodMixin
  optimize.particle.BubbleColumnUpParticleMixin
  optimize.world.LevelRendererOutlineMixin

Tests (JUnit 5):
- TickCacheTest: 9 tests covering get/put/clear-on-tick-change/multi-key/
  overwrite/null-values/long-keys.
- OutlineTrackerTest: 8 tests covering enabled flag, skip-when-no-glowing,
  begin-frame-clears, dirty-tracking, needsClear logic.
- (BubbleColumnCache itself is a 4-line wrapper around TickCache so its
  test would just re-test TickCache — skipped.)
Total suite: 866 tests, 0 failures. checkFolderLimit: OK (0 папок >4).
2026-10-10 18:53:38 +02:00
..
config feat(mod): ProjectileTrails, KillEffect death modes (Shatter/Ascend/Explosion/Disintegrate), TNT fuse bar; compact TODO 2026-10-02 10:01:37 +02:00
docs docs(mod): mark Stage 1+2 done and Stage 3 partial in optimize-layer-design.md 2026-10-10 18:53:38 +02:00
gradle/wrapper chore(history): squash 59 commit(s) from 2026-09-23 2026-09-23 22:38:08 +02:00
src feat(mod): Stage 3 (continued) — LivingEntityLod + BubbleColumnUp + LevelRendererOutline 2026-10-10 18:53:38 +02:00
tools chore(history): squash 100 commit(s) from 2026-09-24 2026-09-24 23:52:12 +02:00
.gitignore chore(history): squash 59 commit(s) from 2026-09-23 2026-09-23 22:38:08 +02:00
build.gradle feat: frontend perf and a11y pass, plus mod visuals, hero main menu, Simple Voice Chat and vanilla chat autocomplete 2026-10-01 21:29:54 +02:00
DEV_GUIDE.md chore(history): squash 59 commit(s) from 2026-09-23 2026-09-23 22:38:08 +02:00
gradle.properties release: bump mod to 0.1.3; skip the CI release build when the release already exists 2026-10-09 22:23:23 +02:00
gradlew ci(release): commit the mod's Gradle wrapper launch scripts 2026-09-28 14:19:18 +02:00
gradlew.bat ci(release): commit the mod's Gradle wrapper launch scripts 2026-09-28 14:19:18 +02:00
LICENSE chore(history): squash 59 commit(s) from 2026-09-23 2026-09-23 22:38:08 +02:00
lombok.config chore(history): squash 59 commit(s) from 2026-09-23 2026-09-23 22:38:08 +02:00
NOTICE feat(mod): Stage 1 optimization helpers (backend-independent) 2026-10-10 14:50:50 +02:00
README.md docs: add a real root README and rewrite the frontend one 2026-09-28 17:28:41 +02:00
settings.gradle chore(history): squash 59 commit(s) from 2026-09-23 2026-09-23 22:38:08 +02:00
TODO.md feat(mod): cosmetics settings category with custom card previews, in-chat widget quick settings, HUD and ClickGUI look pages, TotemSound 2026-10-07 17:54:25 +02:00

LoVisual

Minecraft utility client for PvP and automation. Developed and maintained by loki5512344.

Java Fabric License

English | Русский


English

Overview

LoVisual is an open-source legit utility client for Minecraft. It provides configurable visual, HUD, and UI features with a custom ClickGUI, theme system, and addon API.

LoVisual is developed and maintained by loki5512344. The goal is to keep adding new features and maintain compatibility with the latest Minecraft versions.

Quick Start

  1. Install Fabric Loader 0.19.3+ for MC 26.2+
  2. Download the LoVisual jar
  3. Place it in your mods/ folder along with Fabric API and Sodium
  4. Open the ClickGUI with RShift (configurable)

Features

Feature Description
Combat ProjectilePuncher, Reach, RubberHand, SpearAssist, TPSSync, PvpCooldowns, NoFriendDamage, TargetESP, Predictions, DamageTint
Visuals ESP, NameTags, Chams, Crosshair, FullBright, MotionBlur, NoRender, Freecam, Hitboxes, Light, ChinaHat, Trinkets, SpatialGui, and more
Player AutoTool, ClickPearl, FakeLag, NoDelay, LockSlot, AutoRespawn, DeathCoords, NoInteract
Misc BetterMinecraft, FakePlayer, HitSounds, NameProtect, MessageFilter, NoSound, DefineTarget
HUD Draggable & static elements: TargetHUD, ModuleList, Watermark, Reach, Armor, Potions, Keystrokes, Coords, Notifications, Scoreboard
ClickGUI Full-featured GUI with module browser, settings editor, theme editor, config profiles
Config profiles .lvcfg profiles for modules, HUD, and themes — shareable between users
Addon API Versioned addon API for extending the client
Custom renderer Custom UI rendering with MSDF fonts, SVG icons, and shader support
Iris/Sodium/Xaero Optional compatibility with popular mods

Compatibility

Mod Status
Sodium ✅ Required
Iris ✅ Optional — shaderpack support
ImmediatelyFast ✅ Optional — performance
Entity Culling ✅ Optional — performance
Xaero's Minimap ✅ Optional — waypoint integration
Xaero's World Map ✅ Optional — waypoint integration
ViaFabricPlus ✅ Optional — protocol translation

Dependencies

  • Required: Fabric Loader 0.19.3+, Fabric API, Sodium, Java 25+
  • Optional: Iris, ImmediatelyFast, ViaFabricPlus, Entity Culling, Xaero's Minimap, Xaero's World Map

Installation

  1. Download the jar from Releases
  2. Place it in your mods/ folder
  3. Restart the game

Русский

Обзор

LoVisual — открытый легитный утилитарный клиент для Minecraft. Включает настраиваемые визуальные, HUD и UI-модули, кастомный ClickGUI, систему тем и API для аддонов.

LoVisual разрабатывается и поддерживается loki5512344. Цель — добавлять новые возможности и поддерживать актуальные версии Minecraft.

Быстрый старт

  1. Установите Fabric Loader 0.19.3+ для MC 26.2+
  2. Скачайте LoVisual jar
  3. Положите в папку mods/ вместе с Fabric API и Sodium
  4. Откройте ClickGUI через RShift (настраивается)

Возможности

Возможность Описание
Combat ProjectilePuncher, Reach, RubberHand, SpearAssist, TPSSync, PvpCooldowns, NoFriendDamage, TargetESP, Predictions, DamageTint
Visuals ESP, NameTags, Chams, Crosshair, FullBright, MotionBlur, NoRender, Freecam, Hitboxes, Light, ChinaHat, Trinkets, SpatialGui и другие
Player AutoTool, ClickPearl, FakeLag, NoDelay, LockSlot, AutoRespawn, DeathCoords, NoInteract
Misc BetterMinecraft, FakePlayer, HitSounds, NameProtect, MessageFilter, NoSound, DefineTarget
HUD Перетаскиваемые и статические элементы: TargetHUD, ModuleList, Watermark, Reach, Armor, Potions, Keystrokes, Coords, Notifications, Scoreboard
ClickGUI Полноценный GUI с браузером модулей, редактором настроек, тем и профилей конфигов
Профили .lvcfg Профили для модулей, HUD и тем — можно шарить между пользователями
Addon API Версионированное API для аддонов
Кастомный рендер UI-рендеринг с MSDF-шрифтами, SVG-иконками и шейдерами
Iris/Sodium/Xaero Опциональная совместимость с популярными модами

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

Мод Статус
Sodium ✅ Требуется
Iris ✅ Опционально — шейдерпаки
ImmediatelyFast ✅ Опционально — производительность
Entity Culling ✅ Опционально — производительность
Xaero's Minimap ✅ Опционально — интеграция waypoint
Xaero's World Map ✅ Опционально — интеграция waypoint
ViaFabricPlus ✅ Опционально — протокол

Зависимости

  • Обязательные: Fabric Loader 0.19.3+, Fabric API, Sodium, Java 25+
  • Опциональные: Iris, ImmediatelyFast, ViaFabricPlus, Entity Culling, Xaero's Minimap, Xaero's World Map

Установка

  1. Скачайте jar из Releases
  2. Положите в папку mods/
  3. Перезапустите игру

Development

Building

./gradlew build

Docs

License

GNU General Public License v3.0. See LICENSE.

Credits

  • The SpatialGui module (rendering the open screen as a 3D plane in the world) is adapted from Spatial GUI (MIT License).

TODO

План разработки и актуальный статус ведутся в TODO.md.