Skip to content

webyep-art/MaxQ

Repository files navigation

🚀 MaxQ

MaxQ is a high-fidelity structural physics and telemetry diagnostics extension for Sable flight and ship mechanics in Minecraft, built on NeoForge 1.21.1.

It introduces real-time stress analysis, propagating impact forces, and dynamic, zero-loss ship structural splitting. When structural stresses exceed material thresholds, ships will snap and split off into independent, physically simulated wreckage branches!


📊 Key Features

📡 1. MaxQ Flight Diagnostics (Veil ImGui Console)

Provides real-time aeronautical telemetry directly in-game via a custom overlay built on Veil's ImGui integration:

  • Atmospheric Density: Dynamically scales based on barometric altitude ($\rho = 1.225 \cdot e^{-h / 8000}$).
  • Velocity & Speed: Real-time velocity vectors and speed calculations (in m/s and km/h).
  • Dynamic Pressure (MaxQ): Calculated instantly using atmospheric density and speed ($Q = \frac{1}{2} \rho v^2$).
  • Stress Diagnostics: Interactive switches to toggle advanced debug visualizers (e.g., Stress Visualizer and Aerodynamics Tunnel).

🏗️ 2. Real-Time Multi-Factor Structural Stress

Forces are evaluated at $2\text{ Hz}$ to guarantee zero server lag, calculating three primary stresses on every block:

  1. Compressive Weight Load: Cumulative structural mass stacked downwards along the ship's local Y-axis columns.
  2. Leverage Stress: Rotational torque proportional to the block's mass and distance from the ship's physical rotation center (center of mass).
  3. Aerodynamic Drag: Directional drag calculated using dynamic pressure ($Q$) and the exposure angle of the block's relative orientation facing the velocity vector.

💥 3. Propagating Shockwave BFS Graphs

On heavy impacts (rapid deceleration above $5.6\text{ m/s}$ per tick):

  • The Point of Impact is dynamically localized (lowest block in contact coordinate).
  • A Shockwave BFS (Breadth-First Search) Graph Traversal propagates the kinetic energy through the ship's structural block connectivity graph.
  • Kinetic energy decays exponentially by $6%$ per block hop, producing a realistic, localized impact fracture rather than global damage.

🪓 4. Zero-Loss Physical Splitting & Snapping

If the combined structural stress exceeds a block's absolute Yield Strength, the ship will snap:

  • Yield Strength is dynamically computed using the block's material hardness and structural neighbor support connectivity (ranging from a weak $1$-neighbor beam to a strong $4+$-neighbor core).
  • An isolated structural branch (up to $45%$ of total ship size) is calculated using a specialized BFS.
  • The branch snaps cleanly and transforms into a brand new independent physical Sable SubLevel with randomized linear and angular push forces, creating zero block loss!

🛠️ Getting Started

  1. Import & Sync: Open the project folder in IntelliJ IDEA and let Gradle synchronize dependencies.
  2. Local Run: Execute the game client using the runClient Gradle task.
  3. Telemetry Console: Open the Veil Editor in-game (using the configured Veil menu key) to access the MaxQ Flight Diagnostics panel.

📝 License

This project is licensed under the MIT License - see the LICENSE file for details.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages