Canonical player-facing UI specification

HUD & UI System

ข้อกำหนดรวมสำหรับ HUD, menus, maps, inventory, crafting, building, weapon workbench, progression, social, vehicle, death/respawn, settings และ accessibility ของ Lambeer ครอบคลุมทุก production phase โดยแยกสิ่งที่ยืนยันแล้วออกจาก visual/technical proposal และ TBD อย่างชัดเจน

Status: draftOwner: UnassignedUpdated: 2026-09-06 Language: Thai spec / English game copy

สถานะและขอบเขตอำนาจ

64SVG gameplay icons
40+Target screens/states
3Resolution tiers: FHD / 2K / 4K
2Languages: English / Thai

[CONFIRMED] พฤติกรรม UI และ flow ที่มาจาก owner workshop วันที่ 5–6 กันยายน 2026 เป็น requirement สำหรับทุก phase แม้ gameplay backend บางระบบยังไม่ได้สร้าง

[CONFIRMED 2026-09-06] สี, typography, spacing, icon language และ layouts ในเอกสารนี้ได้รับอนุมัติเป็น target implementation contract แล้ว ชื่อ class/widget ที่ระบุว่า proposed ยังคงเป็น target และห้ามอ้างว่าเป็น asset จริงจนกว่าจะถูกสร้างและตรวจใน Unreal

[TBD] ห้าม implement จุดที่ระบุ TBD ด้วยการตั้งสมมติฐานเอง

Blueprint boundary: เอกสารนี้ระบุ Widget Blueprint hierarchy และขั้นตอน implement แต่ agent ไม่ได้สร้าง แก้ Compile หรือ Save Blueprint assets การทำ Blueprint/PIE เป็นหน้าที่ของผู้ใช้ตามกฎโปรเจกต์

Purpose & Player Value

UI ต้องทำให้ survival simulation ที่ลึกอ่านออกได้ทันทีโดยไม่เปลี่ยนเกมให้เป็น arcade HUD ผู้เล่นเห็นสภาวะร่างกายและทรัพยากรสำคัญตลอดเวลา แต่ข้อมูลอาวุธบางชนิดยังต้องได้มาจากการกระทำในโลก เช่น check chamber/check magazine ความกดดันจึงยังมาจากการสังเกต ภาพ เสียง และการเตรียมตัว

  • เน้นข้อมูลเชิง survival แบบ SCUM โดยเฉพาะ metabolism, nutrition และ injury context
  • รองรับ mouse/keyboard และ Xbox/PlayStation controller ตั้งแต่โครงสร้างแรก
  • ใช้ flat, readable surfaces กับ visual language แบบ improvised survivor
  • ไม่มี hit marker, kill confirmation หรือ directional damage indicator
  • ทุก screen ต้องใช้ได้ที่ FHD, 2K, 4K และ ultrawide 16:10/21:9/32:9

Scope / Out of Scope

In scope

  • Player-facing HUD และทุก menu/screen
  • Single Player world/save selection
  • Server Browser และ character-per-server flow
  • CommonUI navigation + UMG passive HUD
  • English UI copy, English/Thai localization and subtitles
  • SVG icon sources และ controller glyph integration
  • Acceptance criteria และ manual PIE checklist

Explicitly out of scope

  • Custom launcher/patcher; Steam Client รับผิดชอบ distribution/update
  • Closed captions สำหรับ environmental sound
  • Hit marker, headshot marker, kill confirmation, damage direction
  • Squad roster HUD panel
  • Sleeping-bag respawn
  • Clan Search/Join browser
  • Item Compare และ destructive confirmation ใน inventory
  • ลด/ปิด blood และ wet-lens effects

Visual System [CONFIRMED]

รูปแบบเป็นแผ่นโลหะ/อุปกรณ์เอาตัวรอดที่นำมาประกอบใหม่ แต่ตัด texture grunge ออกจากพื้นหลักเพื่อรักษาความอ่านง่าย ใช้ขอบเหลี่ยมมนเล็กน้อย, เส้นแบ่งชัด, shadow ต่ำ และสี brass เป็น accent เฉพาะ focus/selection/action

Background #0D0F0C
Surface #161A15
Raised #293126
Accent #D1AA55
Text #EEF0E8
Danger #C6544F
Positive #7EAA71
Information #6D9FBA

Typography

  • [APPROVED] UI English, Thai และ subtitles ใช้ Google Sans จาก RawResource/Fonts/Google_Sans/; target composite/font-family asset คือ /Game/Lambeer/UI/Common/Fonts/FF_UI_Primary.
  • Default face: GoogleSans-Regular.ttf; ใช้ Medium/SemiBold/Bold variants ตาม hierarchy และไม่ใช้ Italic เป็นข้อมูลสำคัญเพียงอย่างเดียว ไฟล์ที่ตรวจมี Thai-block glyph 87 codepoints รวม basic Thai set.
  • TBD-HUD-UI-002 RESOLVED 2026-09-06: Font metadata and the official Google Fonts source repository identify SIL Open Font License 1.1 without Reserved Font Names; the retained license is RawResource/Fonts/Google_Sans/OFL.txt.
  • Numbers, timers, compass degrees and ammunition inspection use tabular figures; verify tabular-figure behavior in the imported composite font.
  • Body text minimum at 1080p: 18 px equivalent; captions 20 px equivalent before user scaling.

Scale & ultrawide

  • Reference canvas: 1920×1080; layout uses anchors and DPI scaling, never fixed full-screen coordinates.
  • HUD anchors follow the physical viewport edges on ultrawide as confirmed.
  • HUD Scale, Safe Zone, Text Size และ Crosshair Customization are required settings beyond the owner's minimum accessibility list.
  • Critical prompt/reticle content stays near the view center; edge HUD observes user safe-zone inset.

UI Architecture & Layer Contract

[CONFIRMED] ใช้ Hybrid CommonUI + UMG: CommonUI สำหรับ navigable screens และ modal stack; UMG ปกติสำหรับ passive gameplay overlays และ world-space prompts

Game ViewportWBP_UIRootHUD LayerScreen LayerModal LayerToast Layer
WBP_UIRoot : UCommonUserWidget                         [PROPOSED]
├─ Layer_GameHUD : Overlay
│  ├─ WBP_HUDRoot : ULambeerHUDWidget
│  ├─ WBP_ContextStatusList
│  ├─ WBP_NotificationFeed
│  └─ WBP_InteractionPromptHost / world prompt projection
├─ Layer_Screens : UCommonActivatableWidgetStack
│  ├─ WBP_MainMenu / SaveWorldSelect / ServerBrowser
│  ├─ WBP_CharacterCreation / SpawnMap
│  ├─ WBP_Inventory / WorldMap / Crafting / Skills
│  ├─ WBP_Achievements / ClanSquad / WeaponWorkbench
│  └─ WBP_Settings / PauseMenu / DeathRespawn
├─ Layer_Modals : UCommonActivatableWidgetStack
│  ├─ WBP_ContextMenu / WBP_ItemSplit
│  ├─ WBP_MagazineLoadPlanner / WBP_InviteInbox
│  └─ WBP_ErrorDialog / WBP_ExternalLinkConfirm
└─ Layer_Toast : WBP_ToastQueue

Input modes

StateCommonUI input configWorld behavior
Passive HUDGameไม่มี cursor; gameplay รับ input
Inventory/Map/Menu in MultiplayerMenuโลกไม่ pause; character ยังเสี่ยงและ gameplay movement ถูก block
Single Player pauseMenuโลก pause จริง
Multiplayer menuMenuเปิด menu แต่ server world ไม่ pause
Radial menuAllรับ look selection + game state ที่จำเป็น; ไม่ pause multiplayer

CommonUI, CommonInput, CommonGameViewportClient และ controller data assets เป็น target dependency; ยังไม่พบว่าเปิดใช้ใน Lambeer.uproject ณ วันที่เอกสารนี้จัดทำ

Screen Catalog

IDTarget WidgetหมวดPhaseหน้าที่
UI-SCR-MAINWBP_MainMenuFrontend1Continue SP, Start SP, Server Browser, Settings, Feedback URL, Exit
UI-SCR-SAVESWBP_SaveWorldSelectFrontend1เลือก local persistent world; จำ world ล่าสุดสำหรับ Continue
UI-SCR-SERVERWBP_ServerBrowserFrontend2–3Official/Community, Favorite, Ping, Population, Search/Filter
UI-SCR-CHARWBP_CharacterCreationFrontend1Preset, hair, skin/eye color, live preview; character per server
UI-SCR-SPAWNWBP_SpawnMapFrontend1เลือกหนึ่งในสี่ starter towns หรือ respawn point
UI-HUD-ROOTWBP_HUDRootGameplay HUD1Survival bars, compass, minimap, hands, quick slots
UI-HUD-PROMPTWBP_InteractionPromptGameplay HUD1Projected near target: key, action, item, quantity, hold, denied reason, alternatives
UI-HUD-BOSSWBP_BossHUDGameplay HUD1+Boss health bar; marker inspection reveals respawn timer/status
UI-HUD-VEHICLEWBP_VehicleHUDGameplay HUD2Diegetic speed/RPM + overlay fuel/damage/gear/seats/access
UI-SCR-INVENTORYWBP_InventoryInventory1Paper doll, worn containers, both hands, back weapons, 10 quick slots
UI-SCR-CONTAINERWBP_ContainerTransferInventory1Player/container side-by-side, Take All/Transfer All
UI-SCR-CRAFTWBP_CraftingInventory1+Searchable recipes, material reservation, player/station queues
UI-SCR-BUILDWBP_BuildRadialInventory1Piece radial, cost, tier, snap, rotate, placement reason
UI-SCR-BUILD-ACTIONWBP_BuildActionRadialInventory1+Upgrade, repair, demolish, authorize
UI-SCR-WORKBENCHWBP_WeaponWorkbenchInventory1+3D inspect + attachment rail + repair/salvage/action channel
UI-SCR-MAGWBP_MagazineLoadPlannerInventory1Head rounds, repeat pattern, tail rounds; preserves fire order
UI-SCR-MAPWBP_WorldMapInventory1+Full discovered map, marker visibility controls, squad pings
UI-SCR-SKILLSWBP_SkillsProgression2XP number, progress bar, level, next bonus
UI-SCR-ACHIEVEWBP_AchievementsProgression1+Catalog, progress, unlocked state, reward
UI-SCR-GROUPWBP_ClanSquadSocial1–2Create, invite inbox, roster, roles, promote/kick/leave, activity log
UI-SCR-CHATWBP_TextChatSocial1+Server, proximity, squad channels
UI-SCR-VOICEWBP_VoicePanelSocial1+Channel, PTT, speaker, per-player volume, mute/block
UI-SCR-DEATHWBP_DeathRespawnGameplay HUD1Full map, last selected bed or fresh spawn, death location, killer/cause
UI-SCR-PAUSEWBP_PauseMenuSettings1Pause SP; menu-only in multiplayer
UI-SCR-SETTINGSWBP_SettingsSettings1Graphics, Display, Audio, Voice, Controller, KBM, Gameplay, HUD, Accessibility

Gameplay HUD Reference

Always-visible survival cluster

[CONFIRMED] แสดง Health, Stamina, Hunger, Thirst, Temperature, Energy, Sleep และ Immunity ตลอดเวลาเป็น icon + bar โดยไม่แสดงตัวเลข ค่าผิดปกติใช้รูปทรง/ไอคอน/ข้อความร่วมกับสี

Contextual statuses

Bleeding, infection, fracture, poison, cold, overheated, wetness, encumbrance และ buffs ปรากฏในรายการ contextual เรียงตาม severity แล้วตามเวลาที่เกิด ห้ามซ่อน critical status ด้วย overflow; แถวที่ล้นย้ายเป็น expandable stack

Low-health visual

HPStatePresentation
≤30%Warningขอบแดงบาง; heartbeat audio เริ่มเตือน
≤20%Criticalขอบแดงเข้มขึ้นและ field-of-view edge breathing ช้า
≤10%Near deathขอบแดงสูงสุด, desaturation เฉพาะรอบนอก; reticle/prompt ยังอ่านได้

Blood & water on lens

  • Blood splash เกิดเมื่อเลือดจาก melee, gunshot หรือ explosion ระยะใกล้กระเด็นถึงกล้อง; hold 2 วินาที แล้ว fade 5 วินาที
  • Wet droplets เริ่มทันทีเมื่อโดนฝนหรือจาก swimming/emerge; เมื่อไม่มี source แล้ว fade 5 วินาที
  • ไม่มี option ลดหรือปิด blood/wet effects
  • Disable Flashing เปลี่ยน white flash เป็น black-frame feedback โดยไม่ตัด critical information

World Map & Spawn Reference

BedSquadBossDeath bag

Spawn flow uses the same full-map component with selectable starter-town regions or the last selected bed.

  • Initial spawn: หลัง character creation เลือกหนึ่งในสี่ starter towns ได้อิสระ แล้ว server เลือก valid point ภายใน perimeter ที่เลือก
  • Respawn: เลือกเฉพาะ bed ที่เลือกไว้ล่าสุด หรือ Fresh Spawn; ไม่มี sleeping bag
  • Fresh Spawn หลังตายเลือกหนึ่งในสี่ starter towns ได้อิสระอีกครั้ง
  • Death marker หายเมื่อ loot bag despawn หรือถูกเก็บหมด

Frontend, Saves & Server Flow

Main MenuSP Save WorldsServer BrowserCharacter per ServerStarter MapPersistent World

Main Menu

  • Continue (Single Player): เข้า world ล่าสุดที่จำไว้; disabled พร้อมเหตุผลเมื่อไม่มี local world
  • Start Single Player: เปิด Save World Select เสมอ ไม่เขียนทับอัตโนมัติ
  • Server Browser: Official/Community tabs, favorite, ping, population, name search, hide full/empty, compatible version และ friendly-fire filter เมื่อ server metadata มีค่า
  • Settings, Feedback (external URL), Exit

Single Player

ใช้ gameplay rules และ persistence เหมือน multiplayer แต่ไม่มีผู้เล่นอื่นและ pause ได้จริง แต่ละ local world แยก save/persistence เหมือน server world รายหนึ่ง Exact local server process topology remains TBD-HUD-UI-003 ใน technical design; UI ไม่ขึ้นกับว่าจะเป็น standalone process หรือ embedded authority

Steam distribution

ไม่มี custom launcher/patcher ใน scope Steam Client เป็น launch/update surface หลัก Steam App ID, branch UX และ exact Feedback URL remain TBD-HUD-UI-004.

Inventory, Containers & Quick Slots

CHARACTER / HANDS
L
R
BW1
BW2
DROP
USE
JACKET · 6 SLOTS
ITEM
MED
BACKPACK · 18 SLOTS
WOOD
MAG
FOOD
TOOL
  • รองรับ drag-and-drop, click-to-select, context menu และ keyboard/controller navigation
  • Actions: Split Stack, Transfer All, Take All, Sort, Search, Inspect, Use, Equip, Drop Quantity; ไม่มี Compare และไม่ต้อง confirmation
  • Loot/container/corpse/death bag ใช้ player และ target container แบบ side-by-side
  • Quick slots 10 ช่อง ปุ่ม 1–0; กดเพื่อถือ item แล้วใช้ด้วย left/right input ตาม item in hand
  • [CONFIRMED] Slot 1–2 สงวนให้ Back Weapon 1–2 เท่านั้น ห้าม bind item อื่นลงสองช่องนี้ เมื่อไม่มี Back Weapon ช่องนั้นต้องว่างและไม่มี manual binding ที่ถูกซ่อนหรือ restore ภายหลัง
  • Item ที่ผ่าน use/hold contract สามารถ bind ได้เฉพาะ Quick Slot 3–0; server ต้อง reject การ assign item อื่นเข้า display slots 1–2 (internal array indices 0–1).
TBD-HUD-UI-001 RESOLVED 2026-09-06: Back Weapon owns slots 1–2 exclusively; no collision, overwrite, suspended manual assignment, or restore state is permitted.

Crafting, Queue, Skills & Achievements

RECIPES
Bandage
Gun Repair Kit
Steel Door
Boss Weapon
BANDAGE

Searchable recipe detail, source storage, requirements, station/tier, duration and output.

Available after reservations: Cloth 18 → Cost 4 → Remaining 14
PLAYER QUEUE
1 · Bandage ×2
Reserved: Cloth ×8
2 · Repair Kit
Waiting

Order cannot be changed.

Queue contract [CONFIRMED]

  • Reserve/deduct materials immediately when adding; availability calculation subtracts every earlier queue reservation
  • Cancel returns all reserved materials
  • Queue continues after leaving station and after logout
  • Station queue and player queue are separate per player and per station; order cannot be changed
  • Station craft consumes only that station's storage; general personal craft consumes only player's carried inventory
  • If station is destroyed, cancel its pending crafts and return reserved items to the authoritative station-destruction recovery path; exact overflow destination remains TBD-HUD-UI-005

Skills

Dedicated screen displays every confirmed skill with exact XP, progress bar, level and next qualitative/numeric bonus. Level caps, XP curves and formulas remain canonical TBDs in Crafting & Progression.

Achievements

Catalog/progress screen is scoped per character on each server. Unlocks grant rewards. Achievement IDs, names, thresholds, icons, reward payload and platform-service integration remain TBD-E2F4910C; UI supports optional hidden criteria and claim/non-claim reward presentation without selecting one until the catalog is approved.

Weapon Workbench & Magazine Planner

WEAPON
Optic
Muzzle
Magazine
Grip
Stock
Laser
SELECTED SLOT

Compatibility, current attachment, field/workbench rule and channel duration.

Durability state

[PROPOSED LAYOUT] ซ้ายเป็น slot rail, กลางเป็น 3D inspect ที่หมุน/zoom ได้, ขวาเป็น action/context panel การเลือก hotspot ใน 3D และ slot list ต้อง sync กัน Controller ใช้ shoulder buttons สลับ slot และ right stick หมุนโมเดล

Magazine planner [CONFIRMED]

FMagazineLoadPlan
├─ HeadRounds[]       // ยิงก่อน เช่น AP ×3
├─ LoopPattern[]      // AP ×1, FMJ ×2 แล้ววนจนพื้นที่กลางเต็ม
└─ TailRounds[]       // ยิงท้าย เช่น FMJ ×10

BuildFireOrder(capacity):
  append HeadRounds
  repeat LoopPattern until remaining middle capacity is full
  if capacity ends mid-pattern, stop at that round
  append TailRounds in their specified fire order

Default load behavior ยังคงใช้ลำดับที่ผู้เล่น drag ammunition ใส่ magazine ผู้เล่นเปิด context menu ของ magazine เพื่อใช้ advanced planner สามส่วน Fire-order preview ต้องแสดงจากนัดแรกที่จะยิงไปนัดสุดท้ายอย่างชัดเจน

Building, Vehicle & Boss UI

Building radial

Piece selection, resource cost, material tier, snap mode, rotation และ placement failure reason เฉพาะที่เกี่ยวข้อง

Interaction radial แยกสำหรับ Upgrade, Repair, Demolish, Authorize

Vehicle

Diegetic speed/RPM บน dashboard; overlay แสดง fuel, overall/component damage, gear, seats และ key/access state

Storage เปิดผ่าน IA_Inventory เท่านั้น

Boss

Boss health bar ระหว่าง encounter ไม่มี damage numbers/hit marker

Respawn timer แสดงหลัง inspect marker เท่านั้น; เมื่อพื้นที่ยังมีผู้เล่นแสดง “Respawn blocked: area occupied”

Clan, Squad, Chat & Voice

  • ไม่มี Squad roster HUD แต่ยังมี squad world marker, minimap/world-map marker, compass ping และ voice speaking indicator ใกล้ตัวละคร
  • Group screen: Create, Invite, Invite Inbox, roster, Leader/Officer/Member, Promote, Kick, Leave; ไม่มี Search/Join
  • Leader และ Officer เชิญสมาชิกได้; build/door/storage access ไม่แยกตาม role
  • Activity log แสดง actor/action/target สำหรับ invite, kick, leave รวมถึง member death, online และ offline
  • Text chat channels: Server, Proximity, Squad
  • Voice: proximity/squad channel selector, push-to-talk, speaking indicator, per-player volume, mute และ block

TBD-HUD-UI-007: Clan creation naming/tag rules, role authority สำหรับ promote/kick และ log retention/persistence ยังไม่ถูกกำหนด

Death, Pause, Settings & Accessibility

Death/respawn

แสดง killer/cause, death location และ full map ผู้เล่นเลือก bed ที่เลือกไว้ล่าสุดหรือ Fresh Spawn เท่านั้น Fresh Spawn เปิดการเลือกสี่ starter towns ไม่มี sleeping bag marker

Pause

Single Player หยุดโลกจริง Multiplayer เปิด menu และบล็อก player input แต่โลก/server ไม่หยุด พร้อม persistent warning “WORLD CONTINUES WHILE MENU IS OPEN.”

Settings taxonomy

Graphics, Display, Audio, Voice, Controller, Mouse + Keyboard, Gameplay, HUD และ Accessibility รองรับ full key rebinding, hold/toggle aim-crouch-sprint, sensitivity แยก hip/shoulder/ADS และ invert axes

Accessibility

  • Semantic colorblind palette presets; สถานะไม่ใช้สีอย่างเดียว
  • Subtitles สำหรับ dialogue/spoken narrative; ไม่มี environmental closed captions
  • Reduce Camera Shake
  • Disable Flashing: ใช้ black-frame feedback แทน white flash
  • HUD Scale, Safe Zone, Text Size และ Crosshair Customization
  • English/Thai localization; layout รองรับ text expansion และ Thai line breaking
  • ทุก CommonUI screen ใช้ mouse, keyboard และ controller ได้โดยไม่เกิด focus trap

Implementation Contract: Classes, Data & Events

รายการต่อไปนี้เป็นชื่อ target เพื่อให้ implementation สม่ำเสมอ ไม่ได้อ้างว่า source/asset มีอยู่แล้ว

Proposed typeRequired fields / responsibilityAuthority
FUIHUDSnapshot8 survival normalized values, contextual statuses, weight state, aim stateOwning-client view of authoritative state
FUIWeaponHandStateHand, ItemId, handedness, durability state, fire mode, observed mag/chamber info, observation validityServer truth + client knowledge mask
FUIMapMarkerMarkerId, category, world location, label, visibility scope, expiry/source entityServer for shared; local for filters
FInteractionPromptStateTargetId, action, display name, quantity, glyph action, hold duration/progress, denied reason, alternativesServer validates action
FCraftingQueueEntryQueueId, owner/station, recipe, count, reserved inputs, start/end, status, recovery destinationServer persistent
FMagazineLoadPlanHeadRounds, LoopPattern, TailRounds, preview fire orderServer validates compatible ammo/capacity
FVehicleHUDStateSpeed, RPM, gear, fuel, overall/component damage, seats, accessRelevant vehicle state
FServerBrowserEntryServerId, type, name, ping, players/max, version, favorite, rules metadataSession/backend
FWorldSaveSummaryWorldId, display name, last played, character summary, compatibility/corrupt stateLocal persistence index
FUIAchievementEntryAchievementId, title, description, progress, threshold, unlocked, reward payload/statusPer-character/server persistent
FGroupActivityLogEntryTimestamp, actor ID/name, action, target ID/name, event categoryServer group registry

Event surface [PROPOSED]

OnHUDSnapshotChanged(FUIHUDSnapshot)
OnInteractionPromptChanged(FInteractionPromptState)
OnObservedWeaponInfoChanged(EHand, FUIWeaponHandState)
OnMapMarkersChanged(TArray<FUIMapMarker>)
OnCraftQueueChanged(FGuid QueueId)
OnAchievementUnlocked(FName AchievementId, FRewardPayload)
OnGroupActivityLogged(FGroupActivityLogEntry)
OnInputMethodChanged(ECommonInputType, GamepadName)

Gameplay Tags [PROPOSED]

UI.Layer.HUD | UI.Layer.Screen | UI.Layer.Modal | UI.Layer.Toast
UI.Screen.Inventory | Map | Crafting | Skills | Achievements | Group | Settings
UI.Status.Bleeding | Infection | Fracture | Poison | Cold | Hot | Wet | Encumbered
UI.Marker.Squad | Ping | Landmark | Death | Boss | Bed | Base | Vehicle | POI
UI.Input.Game | Menu | All
UI.Notification.Info | Warning | Critical | Reward

Input Actions

StatusActionPurpose
ExistingIA_InventoryInventory/container/vehicle storage entry
ExistingIA_InteractContext action
ProposedIA_UI_Pause, IA_UI_MapTop-level screens
ProposedIA_QuickSlot_1IA_QuickSlot_0Hold item from slot
ProposedIA_UI_Ping, IA_UI_VoicePTT, IA_UI_ChatSocial/world communication
Proposed CommonUIUI.Action.Accept, Back, Context, TabLeft, TabRightDevice-independent navigation and glyphs

SVG Icon Asset Kit

[CONFIRMED 2026-09-06] Source: RawResource/UI/Icons/ · exactly 64 SVG files · 64×64 viewBox · white solid silhouette · transparent background · tint in UMG · approved import target /Game/Lambeer/UI/Common/Icons/T_UI_*

Platform glyphs ใช้ source ที่ตรวจพบแล้วใน Content/Lambeer/UI/ControllerGlyphs/PlayStation Series/Vector/ และ Xbox Series/Vector/ ห้ามเปลี่ยนชื่อหรือดัดแปลงโดยไม่ตรวจ license/source package

Healthui_stat_health.svg
Staminaui_stat_stamina.svg
Hungerui_stat_hunger.svg
Thirstui_stat_thirst.svg
Temperatureui_stat_temperature.svg
Energyui_stat_energy.svg
Sleepui_stat_sleep.svg
Immunityui_stat_immunity.svg
Bleedingui_status_bleeding.svg
Infectionui_status_infection.svg
Fractureui_status_fracture.svg
Poisonui_status_poison.svg
Compassui_nav_compass.svg
Minimapui_nav_minimap.svg
Mapui_nav_map.svg
Boss markerui_marker_boss.svg
Left handui_combat_left_hand.svg
Right handui_combat_right_hand.svg
Magazineui_combat_magazine.svg
Chamberui_combat_chamber.svg
Craftingui_system_crafting.svg
Buildingui_system_building.svg
Vehicleui_system_vehicle.svg
Achievementui_system_achievement.svg
รายการไฟล์ทั้งหมด 64 รายการ

ui_stat_* 8, ui_status_* 8, navigation/markers 8, combat 8, actions 8, crafting/build/vehicle 8, inventory/social 8, system/navigation 8. ตรวจ XML แล้วทุกไฟล์ ณ 2026-09-06

Acceptance Criteria

IDScenarioExpected outcome
AC-UI-001HUD at FHD/2K/4K and 16:10/21:9/32:9ทุก element anchor ถูกต้อง ไม่มี overlap/clipping; edge HUD ตาม physical viewport และ safe-zone setting
AC-UI-002Survival state updates8 bars แสดงตลอดเวลา ไม่มีตัวเลข; status contextual ใช้ icon/text ไม่ใช้สีอย่างเดียว
AC-UI-003ADS enteredCrosshair ซ่อน; HUD ไม่แสดง hit confirmation
AC-UI-004Weapon not inspectedMagazine/chamber แสดง UNKNOWN; check action เท่านั้นที่เปิดเผย observed state
AC-UI-005Blood reaches cameraHold 2 s และ fade 5 s; near gunshot/explosion และ melee ใช้ contract เดียวกัน
AC-UI-006Rain/swim lens effect endsDroplets เริ่มทันทีและ fade หมดใน 5 s หลัง source จบ
AC-UI-007Open menu in multiplayerWorld continues; player input blocked; warning visible
AC-UI-008Pause in single playerWorld simulation pauses and resumes without losing menu state
AC-UI-009Craft queue reservationAvailability subtracts earlier queue entries; cancel refunds; queue persists across logout
AC-UI-010Station destroyedStation queue cancels; no duplication/loss except unresolved overflow path is blocked from implementation
AC-UI-011Magazine plan capacity ends mid-patternPreview and authoritative sequence stop mid-pattern and preserve head→loop→tail fire order
AC-UI-012Controller changes Xbox↔PlayStation↔KBMGlyphs update without closing screen; focus remains on same semantic control
AC-UI-013Death bag despawns/is emptiedDeath marker disappears from compass, minimap and map
AC-UI-014Boss marker inspectedTimer/status appears; occupied area shows exact blocked message
AC-UI-015English↔ThaiNo clipped labels; Thai subtitles wrap correctly; navigation/focus order unchanged
AC-UI-016Disable Flashing enabledWhite flash is replaced with black feedback while information remains readable

Manual PIE Checklist

User-only execution: Agent ไม่เริ่มหรือควบคุม PIE ช่อง Result ต้องกรอกด้วยผลที่ผู้ใช้ทดสอบจริงเท่านั้น
IDManual testResult
PIE-UI-001เปิด HUD ที่ 1920×1080, 2560×1440, 3840×2160 และ ultrawide; ตรวจ anchor/safe zoneNot run
PIE-UI-002ลด survival stats ผ่านแต่ละ threshold และตรวจ 8 bars/status/low-HP edgesNot run
PIE-UI-003สลับ Hip/Shoulder/ADS/Melee/Throw/Interact และตรวจ reticleNot run
PIE-UI-004ถืออาวุธซ้าย/ขวา/สองมือ; check magazine/chamber; ตรวจ hidden knowledgeNot run
PIE-UI-005ทดสอบ blood จาก melee/gunshot/explosion และ wet lens จาก rain/swim พร้อมจับเวลาNot run
PIE-UI-006เปิด inventory/container; drag, click, context, keyboard/controller, split/take/transfer/sort/searchNot run
PIE-UI-007เพิ่ม/cancel/persist crafting queue และทำลาย station ระหว่าง craftNot run
PIE-UI-008สร้าง magazine head/loop/tail plan ที่ capacity ตัดกลาง patternNot run
PIE-UI-009สลับ KBM/Xbox/PlayStation ระหว่างทุก CommonUI screen และตรวจ focus/backNot run
PIE-UI-010เปิด menu ใน SP/MP และยืนยัน pause behavior ต่างกันNot run
PIE-UI-011สลับ English/Thai, UI scale, safe zone, text size และ colorblind presetsNot run
PIE-UI-012ตาย เลือก last bed/fresh town และตรวจ marker lifecycle เมื่อ bag ถูกเก็บ/หมดเวลาNot run

Decisions / Blocking TBDs

  1. TBD-HUD-UI-001Resolved 2026-09-06: Back Weapon 1–2 exclusively own slots 1–2; other bindings are rejected and no restore state exists.
  2. TBD-HUD-UI-002Resolved 2026-09-06: Google Sans is approved; Thai coverage, repository/UE target paths, embedded OFL metadata, official source, and retained OFL.txt are verified.
  3. TBD-HUD-UI-003 — Single Player authority process topology; UI contract ไม่ขึ้นกับคำตอบ
  4. TBD-HUD-UI-004 — Steam App ID/integration metadata และ Feedback URL
  5. TBD-HUD-UI-005 — destination เมื่อ station destruction refund เกิน storage capacity
  6. TBD-E2F4910C — achievement catalog, thresholds และ reward payloads (preserved canonical ID)
  7. TBD-HUD-UI-007 — clan naming/tag rules, promote/kick permissions และ log retention
  8. TBD-HUD-UI-008Resolved 2026-09-06: visual tokens, layouts และ 64-icon solid/silhouette kit approved as documented.

Relationships & Source of Truth

เอกสารนี้เป็น source of truth สำหรับ presentation, navigation, widget hierarchy และ player-facing state เท่านั้น Gameplay values, authority และ persistence ยังคงอยู่ใน feature/technical document ที่เชื่อมโยง