Show a first-time hint with a single line of code. No prefab, no canvas, no manager: the overlay builds itself and shows each hint only once. Full C# source, free.Every game has to explain itself the first time a player opens the shop, the map, the inventory. Building that means a prefab, a canvas, a manager, a "have they seen it?" flag — for a card with two lines of text.HintOnce is that card, minus the work:Hint.Show("first_shop", "The Shop", "Spend coins on upgrades here.");That is the whole integration. The FIRST time this line runs, a styled hint card appears over your game. Every later time, it does nothing. No prefab to place, no canvas to configure, no manager to drag into a scene — the overlay builds itself the first time it is needed and survives scene loads.WHAT YOU GET- One-line API: Hint.Show(id, title, body) — that's the integration- Shows once per id, remembered across sessions (PlayerPrefs)- Optional callback that also fires for already-seen hints, so coroutine chains never stall- Several hints in the same frame queue up instead of overwriting each other- Full theming: colors, badge/button labels, card size, sorting order; dark and light themes- Events for audio and analytics — no dependency on any specific audio system- Reset(id) / ResetAll() for "New Game", plus a Reset All Hints editor command- Interactive demo that builds its UI at runtime- Full C# source, no DLLs, no external dependenciesWHAT IT IS NOTA tutorial framework: no arrows pointing at buttons, no multi-step tours, no highlight cut-outs. It does the 90% case — "explain this thing once" — in one line.REQUIREMENTSUnity 6+ with uGUI and TextMeshPro (both ship with Unity 6). Works on all platforms including WebGL and mobile, with both input backends, and is Fast Enter Play Mode safe.Extracted from the shipped game Famechaser, where it explains day planning, the studio and the shop the first time each is opened.- 3 assemblies (Runtime, Editor, Demo), full C# source, ~600 lines, no DLLs and no external dependencies.- Runtime: self-bootstrapping overlay with its own canvas (sorting order configurable), PlayerPrefs persistence with an id index so ResetAll() removes only HintOnce keys, hint queue, Shown/Closed events, HintStyle struct with Default (dark) and Light themes.- Editor: Reset All Hints, Show Seen Hints, Add Demo To Scene.- Demo: builds its UI at runtime, six trigger buttons plus an event log; works with both input backends.- Verified with 28 logic tests and 6 PlayMode tests (visibility, dismissal, once-only, queue order, ResetAll, click blocking), plus an import test in a project without uGUI.AI/ML (large language models) was used as a coding and writing assistant: generating and refactoring the C# source, writing tests, and drafting the documentation and store text. The concept, architecture, code review, and all final decisions are human (Daniel Schnurbusch). The package contains only original C# source and text — no AI-generated art, audio, or third-party assets are included.





