35 lines
1.9 KiB
Markdown
35 lines
1.9 KiB
Markdown
# Ping colors
|
|
|
|
Maintained script: `scripts/ping_rainbow.lua`; included in the self-contained
|
|
Game/SDK builds through `assets_ship.go`. Root servers read the external script
|
|
on heartbeat, so a live fix does not require restarting the server or game.
|
|
|
|
## Current behavior and confirmation
|
|
|
|
The user confirmed on 2026-10-26 that signal/text colors now match and changing
|
|
ping digits no longer flicker. The initial three-slice version was confirmed
|
|
to show all signal bars, but its original tinted texture darkened the colors
|
|
and writing rich text caused a flash whenever native latency changed.
|
|
|
|
The maintained version uses a tiny white-RGB mask with the signal sprite's
|
|
original alpha. It crops only the named NetStatusPanel signal icon from its
|
|
atlas once on creation, not the whole UI. Three UV slices color each bar
|
|
independently. The background and native connectivity state remain unchanged.
|
|
|
|
Text keeps the real Client latency string. The canvas callback colors the
|
|
native TextGenerator glyph vertices instead of replacing the string with
|
|
color tags. This removes the native-setter/rich-text race. Current Client
|
|
capture proves `10ms` has sixteen populated vertices; no presumed trailing
|
|
quad is discarded. CanvasRenderer.GetMesh is unavailable in this engine, so
|
|
the current path uses the retained native generator and SetMesh.
|
|
|
|
Only the named walking/Battle latency widgets are targeted. No global Canvas,
|
|
world camera, server-name watermark or unrelated UI is modified. Lifecycle
|
|
cleanup restores owned components and disposes generated textures/meshes.
|
|
Research capture scripts stay in `tools/`, not `scripts/`.
|
|
|
|
Runtime evidence is retained under `battle_diagnostics/ping-colors-20261026/`.
|
|
The walking widget is Client-confirmed; Battle has the existing exact path
|
|
but was not separately exercised during this confirmation. Lua syntax checking
|
|
and shipping compilation are separate from that visual confirmation.
|