Skip to main content

Galatea Reference Workload

Galatea is designated as the most trusted production Lua script. It is therefore the primary behavior-parity workload for the mining slice—not an example to discard and rewrite from assumptions.

The recovered architecture audit evaluated an 817-line version, but no Galatea source is present in the current checkout. Its size and debugging difficulty are historical evidence that reusable mechanisms sit on the wrong side of the Java–Lua boundary; capture the trusted running version and its hash before making current behavior or parity claims.

Target responsibility split

Lua should retain

  • user configuration and selected Galatea zone;
  • resource and tool policy;
  • player-competition and risk policy;
  • inventory-full, sell, reconnect, and stop decisions;
  • composition of harvest, travel, and inventory actions;
  • product-specific HUD choices.

Java/native engine should own

  • efficient world scans and connected-block discovery;
  • scan caching and precomputation;
  • candidate/vantage selection;
  • pathfinding, traversal, and movement recovery;
  • camera alignment and target tracking;
  • ray validation and mining timing;
  • retry classification and stuck detection;
  • cancellation and release of every controlled resource.

Hypixel pack should own

  • Galatea detection and named regions;
  • resource/item semantics;
  • island travel knowledge and menus;
  • server messages and failure interpretation;
  • server-version compatibility fixtures.

Candidate target script shape

local skyblock = hexis.packs.require("hypixel.skyblock")

local policy = {
avoid_players_within = config.competition_radius,
stop_when_inventory_full = true,
tool = config.tool,
}

local harvest = hexis.mining.harvest({
region = skyblock.regions.galatea(config.zone),
target = skyblock.resources.forage(config.resource),
policy = policy,
})

local result = hexis.await(harvest)

if result.code == "INVENTORY_FULL" and config.auto_sell then
hexis.await(skyblock.actions.sell_foraging_inventory())
end

The vocabulary is provisional. The desired shape is the key: Lua reads like a plan, while the engine performs the hard mechanic.

Migration method

  1. Export and hash the current trusted script, its configuration, and representative routes without modifying it.
  2. Trace each Lua state and helper to the game capability it serves.
  3. Classify every responsibility as policy, engine mechanism, or pack knowledge.
  4. Add telemetry to compare behavior, not implementation details.
  5. Extract one mechanism at a time behind an internal Java action.
  6. Bind it to Lua only after cancellation and cleanup tests pass.
  7. Run old and candidate workflows through replay fixtures.
  8. Perform gated live Minecraft/Hypixel comparison.
  9. Keep the old script as rollback until parity is established.

Parity scorecard

DimensionRequired evidence
Task successEquivalent or better resource completion rate
Behavior qualityNo regression in route, aim, or mining reliability
ResponsivenessNo new tick stalls or action latency
RecoveryStructured handling of obstruction, stale targets, and world change
SafetyNo stuck inputs, camera, GUI, or background actions
MaintainabilityMaterial reduction in mechanism-level Lua and duplicate state
PortabilityHypixel knowledge isolated in the pack
AI usabilityModel generates the policy without recreating raw mechanics

Galatea is successful when it becomes smaller and easier to reason about while remaining at least as trustworthy in practice.