Vivecraft Eureka Camera Fix 0.3.6-hotfix1
================================

Overview
--------
Unofficial client-side compatibility add-on for Minecraft Forge 1.20.1 using:
- Vivecraft 1.20.1-1.3.15 Forge
- Valkyrien Skies 2.4.11
- Eureka 1.6.3

The mod corrects the displaced Vivecraft camera on Eureka ship mounts, reduces
severe local Vivecraft-model vibration, and can hide the complete normal HUD
while the local player rides a Valkyrien Skies ShipMountingEntity.

Important
---------
Back up important worlds before installing, updating, or removing compatibility
mods. Use this mod at your own risk. No responsibility is accepted for crashes,
rendering problems, lost data, or other unexpected behavior.

This project was developed with AI assistance. The author does not claim to
have the technical ability to solve every incompatibility or support every mod
combination. Sorry if a problem cannot be corrected.

Camera settings
---------------
[camera_fix]
mode = "MANUAL_OFFSET"
offsetX = 0.0
offsetY = 1.8
offsetZ = 0.0

MANUAL_OFFSET is the tested default. It keeps Valkyrien Skies' mounted camera
and applies the configured world-space offset.

Player model stabilization
--------------------------
playerModelFix = true

This rebuilds the local Vivecraft full-body pose in the ship's render-local
coordinate frame. Disable it if another animation or player-model mod behaves
incorrectly.

Mounted HUD behavior
--------------------
mountedHudMode = "HIDDEN"

Available values:
- HIDDEN: while riding Valkyrien Skies' ShipMountingEntity, temporarily enable
  Minecraft's built-in F1 hideGui state.
- NORMAL: leave the HUD unchanged.

HIDDEN is the default. It hides the complete normal HUD, including the hotbar,
health, hunger, armor, experience, crosshair, First Aid, Survive, Jade, and
Vivecraft's hand/wrist/head-attached normal HUD. Inventory, chat, pause,
configuration, and other opened screens remain usable.

Version 0.3.6-hotfix1 uses Forge's official ClientTickEvent. It no longer depends on a
Minecraft tick Mixin, isController(), or nearby helm-block searches. Each END
client tick only checks the current vehicle type. hideGui is written when the
mounted state changes, or if another mod/user makes it visible while mounted.

The HUD state that existed before mounting is saved and restored after
dismounting, disconnecting, returning to a menu, or changing the mode to NORMAL.

Diagnostics
-----------
diagnostics = false
diagnosticIntervalSeconds = 5

When enabled, latest.log contains lines beginning with:
Mounted F1 HUD eventSeen=

Expected mounted example:
eventSeen=true enabled=true mounted=true forcing=true hideGui=true
vehicle=org.valkyrienskies.mod.common.entity.ShipMountingEntity

Installation
------------
1. Remove every older vivecraft_vs_camera_fix JAR.
2. Place vivecraft_vs_camera_fix-0.3.6-hotfix1.jar in the client mods folder.
3. Keep Vivecraft, Valkyrien Skies, and Eureka installed normally.
4. Delete the old client config only when you want defaults regenerated.

Known limitations
-----------------
- Real Quest 3 testing is required.
- HIDDEN applies to every Valkyrien Skies ShipMountingEntity, including
  non-controller passenger seats that use the same entity type.
- A mod that forcibly changes hideGui every tick may compete with this mod.
