Top-right Performance Monitor
Owner-requested implementation, 2026-10-14. The gameplay HUD displays local FPS, Unreal player-facing round-trip latency in milliseconds (RTT), and incoming/outgoing packet loss percentages (LOSS RX/TX). The Night Ops panel sits above the minimap and follows the existing HUD scale/safe-zone host. It is informational and does not capture input.
FPS uses application frame-count changes over real elapsed time. Network data is read only from the local client's open server connection. Standalone and listen-server hosts show Offline for network fields. Missing connections or uninitialized measurements show N/A. Each loss direction shows N/A when its sample has no observed packets; observed traffic with no loss may show 0.0%. No synthetic ping, remote probes, or durable gameplay state are introduced.
Implementation and verification: native monitor contract and evidence. Owner visual acceptance and dedicated-server client PIE checks remain pending.
2026-09-22 — Item Details / Distance Explorer: Compact Inspector A and the selected Distance Explorer are implemented in source. Firearms expose an icon opening base damage and independently visible Shoulder/ADS angular spread over an upright white PNG silhouette at the current player height, without gravity. Closed-Editor build, widget compile/save and non-PIE HUD 42/42 passed; owner PIE remains pending. Final PNG import/save/readback, rebuild and focused Ballistics 2/2 passed; the upright silhouette was checked in an offscreen render fixture. Canonical contract and acceptance. Combat HUD damage numbers/hit markers remain disabled.
สถานะà¹à¸¥à¸°à¸‚à¸à¸šà¹€à¸‚ตà¸à¸³à¸™à¸²à¸ˆ
[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 [G4.3 OWNER-REPORTED FULL PIE PASS 2026-09-14] Revision 3 applies the owner's screenshot corrections: equal fixed-size hand cards, smaller hand/slot titles, square Q1–Q0 cards, four equal segments plus exact current values for all eight Stats, a themed weight node and a tighter compass. Native build, non-PIE automation 24/24 and five affected Widget Blueprint compile/save/readback checks pass. The owner confirmed the complete G4.3 checklist, including overall presentation, Hands/Quick Slots and responsive English/Thai layout. See Gate G4.3 redesign.
[CONFIRMED 2026-09-08] Gate G2 KBM/design-system PIE is recorded as passed in TECH-HUD-UI-IMPLEMENTATION: HUDScale, SafeZoneScale, TextScale and Thai Gallery culture switching. Physical Xbox/PlayStation checks remain deferred. Colorblind presets in PIE-UI-011 remain not run.
[CONFIRMED 2026-09-10] Gate G3 gameplay HUD slice is closed. Owner PIE confirmed Wood→slots 3–0, blood/wet/status injectors, markers, inventory/quick-slot correction, L_Dev_Sandbox throw/sledgehammer checks, bed sleep without standing still, a slight Sleeping screen dim, L1810 field inspection, Lambeer.Damage 10, eight GAS-colored bars, UI_G3GiveBackWeapons, ADS-hidden reticle, no HitMarker, nearby 2 m / LOS blood, low-health 30/20/10 edges, rain-lens droplets plus shelter, and prompt quantity/denied. G3 rain presentation is HUD droplets + UI_G3SetRain; rain VFX is out of G3. HOLD text waits for a real hold action. [CONFIRMED 2026-09-11] G3.2 skeletal L1810 and magazine-as-item passed owner PIE; wet-look remains deferred until materials expose WetAmount. See TECH-HUD-UI-IMPLEMENTATION. [CONFIRMED 2026-09-12] G4 UI-CORE-001 / UI-CORE-002 inventory lifecycle, Tab toggle, Worn slots and command backends passed owner PIE. [CONFIRMED 2026-09-12] G4 UI-CORE-004 north-up minimap and frozen full-map death diamond passed owner PIE. [CONFIRMED 2026-09-13] pan/zoom/center, shared ping, filter toggles, map↔inventory Tab switching, and the zoom-clip retest passed (zoomed image stays inside the map panel). [CONFIRMED 2026-09-12] G4 UI-CORE-005/UI-CORE-006 follow-through passed owner PIE: packed backpack dump, loot-panel interact, immediate-respawn HUD refresh. [CONFIRMED 2026-09-13] UI-CORE-005 passed. [CONFIRMED 2026-09-13] UI-CORE-006 Last Bed after Sleep and four-town Fresh Spawn passed. Gate G4 is closed. [CONFIRMED 2026-09-12] G4 UI-CORE-007 dedicated-server pause passed owner PIE: HUD Escape opens pause with “WORLD CONTINUES WHILE MENU IS OPEN.â€, local move/look blocked, other client/server keep running, Resume/Escape/Back close; inventory Escape closes inventory first; Tab/M do not stack. [CONFIRMED 2026-09-13] standalone PAUSED/world-pause passed. [CONFIRMED 2026-09-13] UI-CORE-008 settings passed (Thai labels, HUD Scale/Safe Zone persist, Display Revert, no Text Scale control). [OWNER-REPORTED G4.2 PASS 2026-09-14] The approved UI-CORE-003 Night Ops Inventory presentation, retained interactions and Search-free header passed in G4.2. Search was removed by owner decision. G4.2 is closed and G4.3 is next.
[OWNER-REPORTED G4.2 PASS 2026-09-14] The Night Ops Inventory/transfer presentation passed its native build, Widget Blueprint compile/save/readbacks and focused non-PIE automation 3/3. The owner accepted the final PIE presentation and all retained drag/command/transfer interactions. Search was the sole failed route and was removed by explicit owner decision as unsuitable for this game; Development Game/Editor builds and the field-free WBP_Inventory compile/save/readback pass. The owner then confirmed the Search-free header and retained layout passed. G4.2 is closed.
[G4.4 OWNER-REPORTED FULL PIE PASS 2026-09-14] Pause/Settings Option B — Tactical Side Rail is implemented and accepted under G4.4; native, automation and Widget Blueprint checks pass, and the owner confirmed the complete PIE checklist. The strict closure sequence G4 → G4.2 → G4.3 → G4.4 is satisfied; this made G5 eligible, and G5 entered implementation on 2026-09-15.
[G5 SP FRONTEND OWNER-REPORTED PASS 2026-09-16] Owner reported Main Menu/Continue/Save World Select, Character Creation visual, persistence/restart/rejoin and Pause Save/Exit passed. [G5 DEDICATED FOLLOW-CAMERA OWNER-REPORTED PASS 2026-09-16] Extra dedicated first-time Character Creation restores the hip follow camera behind the pawn. [G5 DEDICATED PAUSE/EXIT/RESTORE OWNER-REPORTED PASS 2026-09-16] Dedicated Pause is MENU / ONLINE SESSION without Save; Exit to Main Menu leaves the dedicated world and client 2 running; restore skips Character Creation. [G5 DEDICATED SERVER BROWSER JOIN OWNER-REPORTED PASS 2026-09-16] After Exit to Main Menu, Refresh/Join on the Community tab returns the same character. UE 5.8 Play As Client is the dedicated topology. Steam/Feedback/production-map work remains blocked and G5 stays open.
[TBD] ห้าม implement จุดที่ระบุ TBD ด้วยà¸à¸²à¸£à¸•ั้งสมมติà¸à¸²à¸™à¹€à¸à¸‡
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
- Inventory Search
- Item Compare à¹à¸¥à¸° destructive confirmation ใน inventory
- ลด/ปิด blood à¹à¸¥à¸° wet-lens effects
Visual System [CONFIRMED]
Gameplay HUD à¹à¸¥à¸° Inventory ใช้ Night Ops presentation จาภInventory_UI_NEW.png: near-black blue surfaces, thin steel-blue outlines, low shadow, cool white text à¹à¸¥à¸° cyan interaction accent. ระบบà¸à¸·à¹ˆà¸™à¸—ี่ยังไม่ได้รับ Night Ops pass คง baseline improvised-survival เดิมจนมี gate ขà¸à¸‡à¸•นเà¸à¸‡; ห้ามนำ brass/olive chrome เà¸à¹ˆà¸²à¸à¸¥à¸±à¸šà¹€à¸‚้ามาใน HUD/Inventory ที่ปิดหรืà¸à¸à¸³à¸¥à¸±à¸‡à¸—ำ gate à¹à¸¥à¹‰à¸§
Background #070D12Surface #0D161CRaised #121E26Border #364A56Border Bright #617580Accent #58EBEFText #DFE7EAMuted #8797A0Danger #C6544FInventory/transfer and gameplay HUD share these Night Ops tokens. Reuse resource-less RoundedBox geometry for scalable chrome; reserve bitmap textures for semantic silhouettes and lens effects.
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
WBP_UIRoot→HUD LayerScreen LayerModal LayerToast LayerWBP_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
| State | CommonUI input config | World behavior |
|---|---|---|
| Passive HUD | Game | ไม่มี cursor; gameplay รับ input |
| Inventory/Map/Menu in Multiplayer | Menu | โลà¸à¹„ม่ pause; character ยังเสี่ยงà¹à¸¥à¸° gameplay movement ถูภblock |
| Single Player pause | Menu | โลภpause จริง |
| Multiplayer menu | Menu | เปิด menu à¹à¸•่ server world ไม่ pause |
| Radial menu | All | รับ look selection + game state ที่จำเป็น; ไม่ pause multiplayer |
CommonUI, CommonInput, CommonGameViewportClient à¹à¸¥à¸° controller data assets เป็น target dependency; ยังไม่พบว่าเปิดใช้ใน Lambeer.uproject ณ วันที่เà¸à¸à¸ªà¸²à¸£à¸™à¸µà¹‰à¸ˆà¸±à¸”ทำ
Screen Catalog
| ID | Target Widget | หมวด | Phase | หน้าที่ |
|---|---|---|---|---|
| UI-SCR-MAIN | WBP_MainMenu | Frontend | 1 | Continue SP, Start SP, Server Browser, Settings, Feedback URL, Exit |
| UI-SCR-SAVES | WBP_SaveWorldSelect | Frontend | 1 | เลืà¸à¸ local persistent world; จำ world ล่าสุดสำหรับ Continue |
| UI-SCR-SERVER | WBP_ServerBrowser | Frontend | 2–3 | Official/Community, Favorite, Ping, Population, Search/Filter |
| UI-SCR-CHAR | WBP_CharacterCreation | Frontend | 1 | Preset, hair, skin/eye color, live preview; character per server |
| UI-SCR-SPAWN | WBP_SpawnMap | Frontend | 1 | เลืà¸à¸à¸«à¸™à¸¶à¹ˆà¸‡à¹ƒà¸™à¸ªà¸µà¹ˆ starter towns หรืภrespawn point |
| UI-HUD-ROOT | WBP_HUDRoot | Gameplay HUD | 1 | Survival bars, compass, minimap, hands, quick slots |
| UI-HUD-PROMPT | WBP_InteractionPrompt | Gameplay HUD | 1 | Projected near target: key, action, item, quantity, hold, denied reason, alternatives |
| UI-HUD-BOSS | WBP_BossHUD | Gameplay HUD | 1+ | Boss health bar; marker inspection reveals respawn timer/status |
| UI-HUD-VEHICLE | WBP_VehicleHUD | Gameplay HUD | 2 | Diegetic speed/RPM + overlay fuel/damage/gear/seats/access |
| UI-SCR-INVENTORY | WBP_Inventory | Inventory | 1 | Paper doll, worn containers, both hands, back weapons, 10 quick slots |
| UI-SCR-CONTAINER | WBP_ContainerTransfer | Inventory | 1 | Player/container side-by-side, Take All/Transfer All |
| UI-SCR-CRAFT | WBP_Crafting | Inventory | 1+ | Searchable recipes, material reservation, player/station queues |
| UI-SCR-BUILD | WBP_BuildRadial | Inventory | 1 | Piece radial, cost, tier, snap, rotate, placement reason |
| UI-SCR-BUILD-ACTION | WBP_BuildActionRadial | Inventory | 1+ | Upgrade, repair, demolish, authorize |
| UI-SCR-WORKBENCH | WBP_WeaponWorkbench | Inventory | 1+ | 3D inspect + attachment rail + repair/salvage/action channel |
| UI-SCR-MAG | WBP_MagazineLoadPlanner | Inventory | 1 | Head rounds, repeat pattern, tail rounds; preserves fire order |
| UI-SCR-MAP | WBP_WorldMap | Inventory | 1+ | Full discovered map, marker visibility controls, squad pings |
| UI-SCR-SKILLS | WBP_Skills | Progression | 2 | XP number, progress bar, level, next bonus |
| UI-SCR-ACHIEVE | WBP_Achievements | Progression | 1+ | Catalog, progress, unlocked state, reward |
| UI-SCR-GROUP | WBP_ClanSquad | Social | 1–2 | Create, invite inbox, roster, roles, promote/kick/leave, activity log |
| UI-SCR-CHAT | WBP_TextChat | Social | 1+ | Server, proximity, squad channels |
| UI-SCR-VOICE | WBP_VoicePanel | Social | 1+ | Channel, PTT, speaker, per-player volume, mute/block |
| UI-SCR-DEATH | WBP_DeathRespawn | Gameplay HUD | 1 | Full map, last selected bed or fresh spawn, death location, killer/cause |
| UI-SCR-PAUSE | WBP_PauseMenu | Settings | 1 | Pause SP; menu-only in multiplayer |
| UI-SCR-SETTINGS | WBP_Settings | Settings | 1 | Graphics, Display, Audio, Voice, Controller, KBM, Gameplay, HUD, Accessibility |
Gameplay HUD Reference
Durability state only
Chamber: UNKNOWN
Field Cabinet · 1.4 s
Always-visible survival cluster
[OWNER-CORRECTED 2026-09-14] à¹à¸ªà¸”ง Health, Stamina, Hunger, Thirst, Temperature, Energy, Sleep à¹à¸¥à¸° Immunity ตลà¸à¸”เวลาเป็น icon-node + segmented gauge à¹à¸•่ละ rail มี 4 shaped segments ขนาดเท่าà¸à¸±à¸™, threshold ticks, angular current-level marker à¹à¸¥à¸°à¸„่าปัจจุบันจริงทางขวา; filled-segment count, icon, รูปทรงà¹à¸¥à¸°à¸•ัวเลขต้à¸à¸‡à¸—ำให้สถานะà¸à¹ˆà¸²à¸™à¹„ด้โดยไม่พึ่งสีà¸à¸¢à¹ˆà¸²à¸‡à¹€à¸”ียว
Contextual statuses
Bleeding, infection, fracture, poison, cold, overheated, wetness, encumbrance à¹à¸¥à¸° buffs ปราà¸à¸à¹ƒà¸™à¸£à¸²à¸¢à¸à¸²à¸£ contextual เรียงตาม severity à¹à¸¥à¹‰à¸§à¸•ามเวลาที่เà¸à¸´à¸” ห้ามซ่à¸à¸™ critical status ด้วย overflow; à¹à¸–วที่ล้นย้ายเป็น expandable stack
Low-health visual
| HP | State | Presentation |
|---|---|---|
| ≤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 วินาที
- ขณะ Sleeping หน้าจà¸à¸¡à¸·à¸”ลงเล็à¸à¸™à¹‰à¸à¸¢ (alpha 0.22) เพื่à¸à¹ƒà¸«à¹‰à¹€à¸«à¹‡à¸™ rest state ใน G3; ไม่ใช่ซีนนà¸à¸™à¸ªà¸¡à¸šà¸¹à¸£à¸“์ à¹à¸¥à¸°à¹„ม่ได้à¹à¸—นที่ blood/wet
- ไม่มี option ลดหรืà¸à¸›à¸´à¸” blood/wet effects
- Disable Flashing เปลี่ยน white flash เป็น black-frame feedback โดยไม่ตัด critical information
Night Ops HUD presentation sources — Gate G4.3
/Game/Lambeer/UI/HUD/Textures/NightOps/. Revision 3 enforces equal 300×116 logical single/two-hand cards, smaller 9 pt card/slot titles, ten 96×96 Quick Slots, four equal segments plus exact current values for every Stat, a themed weight icon-node, and a 720×48 compass with shorter ticks and tighter label spacing. Closed-Editor LambeerEditor Win64 Development and headless non-PIE Lambeer.HUD passed 24/24 with zero warnings/failures; evidence is Saved/Logs/G43OwnerFeedbackPass3.log and Saved/Automation/G43OwnerFeedbackPass3/index.json. Unreal MCP compiled, saved and read back the five affected Widget Blueprints with expected native parents, and the owner reported the complete G4.3 PIE checklist passed.CurrentWeight / WeightCapacity ratio, clamped to the visible 0–100% range. Missing or invalid capacity data renders an empty fill; the indicator remains hidden when weight data is unavailable. This visual-only correction does not change inventory capacity or encumbrance behavior. The 2× revision passed the closed-Editor native build, WBP_HUDRoot compile/save/readback and Lambeer.HUD 43/43 with no warnings or errors.The two ImageGen interaction-mask attempts were rejected because they baked a checkerboard background; neither was copied or imported. Interaction therefore reuses the approved G4.2 focus-corner mask and adds a crisp Slate diamond. ADS still collapses the reticle entirely; there is no HitMarker, headshot marker, kill confirmation, damage-direction indicator or baked copy.
P13 map-specific spawn option — confirmed and implemented 2026-09-23: the owner approved Kit Proof Town only in /Game/Lambeer/World/Maps/KitProofTown/L_KitProofTown. The UI and server share the exact-package whitelist, normalizing PIE prefixes; other maps retain the existing four-town choices. The option still requires an authored spawn region. Non-PIE regression passed; owner runtime entry/respawn acceptance remains pending. Canonical P13 integration and acceptance checklist.
World Map & Spawn Reference
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
generation.json.P08_UI_Save_world.png and P08_UI_Server_browser.png refine the Save World Select and Server Browser presentation without changing their established save/session contracts. Both screens use a framed 16:9 Night Ops shell, a persistent LAMBEER identity/sidebar rail, cyan selected/focus outlines, compact uppercase hierarchy and dark layered content surfaces. Save World Select presents visible world cards with a separate world-action rail; Server Browser presents visible favorite/server/player/ping/action columns with Search and Refresh in the header. Names, player counts, images and server rows shown in the references are illustrative only.

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 รายหนึ่ง [CONFIRMED 2026-09-14] TBD-HUD-UI-003: shipping SP ใช้ embedded authority เป็น NM_Standalone ในโปรเซสเดียวà¸à¸±à¸™ เพื่à¸à¹ƒà¸«à¹‰ pause โลà¸à¹„ด้ตามสัà¸à¸à¸² G4. UI ขà¸à¸‡ save list ยังไม่ขึ้นà¸à¸±à¸š topology. รายละเà¸à¸µà¸¢à¸” persistence à¸à¸¢à¸¹à¹ˆà¸—ี่ TECH-NETWORK-ARCH.
Steam distribution
ไม่มี custom launcher/patcher ใน scope Steam Client เป็น launch/update surface หลัภSteam App ID, branch UX à¹à¸¥à¸° exact Feedback URL remain TBD-HUD-UI-004.
P08 implementation evidence — 2026-09-16: Native ULambeerMainMenuScreen, ULambeerSaveWorldScreen, ULambeerServerBrowserScreen, frontend/session subsystems and character-entry state are implemented. Unreal MCP created, compiled, saved and read back WBP_MainMenu, WBP_SaveWorldSelect, WBP_ServerBrowser and WBP_CharacterCreation. Owner reported the original Single Player frontend, Character Creation visual, persistence/restart and Pause Save/Exit checks passed. The later owner-supplied Save Worlds/Server Browser reference refresh is implemented in the native parent classes with shared opaque-id row buttons; closed-Editor LambeerEditor Win64 Development, focused Lambeer.Frontend automation 4/4 and both Widget Blueprint compile/save/readbacks pass. The refreshed presentation still requires owner PIE visual acceptance. Dedicated/listen persistable worlds advertise a Null/LAN session; one-process PIE lists those hosts by listen port because Null FindSessions cannot see the same-process beacon. Owner reported dedicated Pause/Exit/restore and Server Browser Refresh/Join. UE 5.8 Play As Client starts the dedicated world automatically. Feedback remains disabled while its URL is empty; Steam metadata and the production gameplay destination remain unresolved. Editor validation may use L_Dev_Sandbox only as a stand-in, never as approved production geography.
Inventory, Containers & Quick Slots
RawResource/ConceptReference/Inventory_UI_NEW.png is the current visual source of truth for Inventory, container transfer and the G4.3 gameplay HUD presentation. The style uses a near-black blue shell, layered blue-black panels, thin steel-blue outlines, cool white text, muted blue-gray secondary text and cyan focus/hover accents. The former Rescue Equipment off-white/orange pack and its earlier Inventory_UI.png reference are removed. This change is presentation-only: preserve existing layout, gameplay values and command/replication contracts. Sample characters, items, counts and key hints remain illustrative rather than approved gameplay data.
Inventory_UI_NEW.png): use its palette, surface hierarchy, border weight, typography hierarchy and cyan state language while retaining the approved runtime layout and live gameplay data. Earlier layout concept remains hierarchy evidence only. See the current integration record.Latest owner correction — 2026-09-14; native build passed; owner PIE pending: The prior WrapBox still received only its desired width because its HorizontalBox slot used HAlign_Left. The saved asset and native layout now use HAlign_Fill on that parent slot, while the WrapBox contents remain left-aligned. NativeGetDesiredFocusTarget now returns the first equipment slot instead of its non-focusable layout panel. This corrects the earlier explanation of the focus warning. WBP_Inventory compiled/saved and parent alignment readback passed; LambeerEditor Win64 Development rebuilt successfully on 2026-09-14 (DLL 00:21:19). Focused non-PIE Lambeer.HUD.InventoryCommandRules passed 1/1 with zero warnings/errors; report: Saved/Automation/InventoryWornWidthFocus/index.json. Owner client PIE must still verify row fill and absence of the focus warning.
/Game/Lambeer/UI/Inventory/Textures/NightOps/T_UI_Inventory_NightOps_Focus, tinted cyan/red by live state. Unreal MCP compiled/saved all four assets against the rebuilt DLL; readback found no remaining /Textures/RescueEquipment/ reference and only resource-less RoundedBox chrome plus the Night Ops focus mask. The native Editor build and three focused non-PIE Inventory tests passed without warnings/errors. Existing item icons, live portrait material, Drop glyph, then-current 126-square Worn/container cells, responsive WrapBox, flexible Q1/Q2/hands, viewport inset and remaining inventory commands remain unchanged. Inventory Search was removed by owner decision on 2026-09-14.LambeerInventoryPresentation::SlotSize / SlotLabelFontSize. Closed-Editor LambeerEditor Win64 Development rebuild สำเร็จ; focused non-PIE Inventory tests ผ่าน 3/3 ไม่มี warning/error. Owner PIE ยังรà¸.Background #070D12Surface #0D161CRaised #121E26Border #364A56Border Bright #617580Accent #58EBEFText #DFE7EAMuted #8797A0Header à¹à¸ªà¸”ง Inventory, carried weight à¹à¸¥à¸° Close; ไม่มี Search. Character preview à¸à¸´à¸™à¸žà¸·à¹‰à¸™à¸—ี่ 36%; Left Hand, Right Hand à¹à¸¥à¸° Drop à¸à¸¢à¸¹à¹ˆà¹ƒà¸•้ preview โดยไม่มี Compare panel.
Inventory region 64%. Worn ทั้ง 9 ช่à¸à¸‡à¹à¸¥à¸° cell ใน container เป็นสี่เหลี่ยมจัตุรัส 88×88 à¹à¸¥à¸°à¸•้à¸à¸‡à¸¡à¸à¸‡à¹€à¸«à¹‡à¸™ Worn โดยไม่ scroll; เฉพาะ Body Pockets / Pants / Jacket / Vest / Backpack à¹à¸¥à¸° worn storage panels à¸à¸·à¹ˆà¸™à¹€à¸—่านั้นที่ scroll. Sort à¸à¸¢à¸¹à¹ˆà¹ƒà¸™ header ขà¸à¸‡à¹à¸•่ละ container.
Q1–Q0 à¸à¸¢à¸¹à¹ˆà¸•ำà¹à¸«à¸™à¹ˆà¸‡à¸„งที่ใต้ main content à¹à¸¥à¸°à¸¡à¸µ action-hint footer à¹à¸¢à¸. Focus order: Worn → Containers → Hands/Drop → Quick Slots. Selection uses the Night Ops cyan accent พร้à¸à¸¡ shape/corner marker ไม่ใช้สีà¸à¸¢à¹ˆà¸²à¸‡à¹€à¸”ียว.
Loot/container variant: เมื่à¸à¹€à¸Šà¸·à¹ˆà¸à¸¡à¸à¸±à¸š corpse, death bag, crate หรืภstorage ให้ซ่à¸à¸™ character preview ชั่วคราวà¹à¸¥à¸°à¹ƒà¸Šà¹‰à¸žà¸·à¹‰à¸™à¸—ี่à¸à¸¥à¸²à¸‡à¹€à¸›à¹‡à¸™ Player Inventory / Target Inventory à¹à¸šà¸š side-by-side. Player container à¹à¸•่ละใบà¹à¸ªà¸”ง Transfer All; target header à¹à¸ªà¸”ง Take All. Q1–Q0 à¹à¸¥à¸° action hints ต้à¸à¸‡à¸„งตำà¹à¸«à¸™à¹ˆà¸‡à¹€à¸”ิมเพื่à¸à¹„ม่ให้ muscle memory เปลี่ยน.
[G4 IMPLEMENTATION 2026-09-12; G4.2 CLOSED 2026-09-14] Interact à¸à¸±à¸š death bag/crate เปิด inventory à¹à¸¥à¸°à¹ƒà¸Šà¹‰ side-by-side Player | Target ผ่าน WBP_ContainerTransfer ที่ bind เป็น Transfer_Target; Scroll_Loot เป็น collapsed fallback. à¸à¸²à¸£à¹à¸à¹‰ child-button drag interception à¹à¸¥à¸° BackWeapon↔BackWeapon / directional HeldHand↔BackWeapon ผ่าน build, focused automation à¹à¸¥à¸° owner PIE à¹à¸¥à¹‰à¸§. Search ถูà¸à¸–à¸à¸”à¸à¸à¸à¸•ามคำตัดสินขà¸à¸‡à¹€à¸ˆà¹‰à¸²à¸‚à¸à¸‡. ไม่ vacuum-loot à¹à¸¥à¸°à¹„ม่à¸à¸²à¸à¸‚à¸à¸‡à¸à¸¥à¸±à¸šà¹€à¸‚้า death bag.
Resolution behavior: FHD เป็น reference density; 2K/4K ใช้ DPI scaling ไม่เพิ่มจำนวนช่à¸à¸‡. 16:10 เพิ่มพื้นที่à¹à¸™à¸§à¸•ั้งให้ container list. 21:9/32:9 เพิ่ม outer gutters à¹à¸¥à¸°à¸£à¸±à¸à¸©à¸²à¸„วามà¸à¸§à¹‰à¸²à¸‡ content à¸à¸¥à¸²à¸‡à¹à¸—นà¸à¸²à¸£à¸¢à¸·à¸” slot จนเสียสัดส่วน. ทุภregion à¸à¸¢à¸¹à¹ˆà¸ ายใน Safe Zone.
- รà¸à¸‡à¸£à¸±à¸š drag-and-drop, click-to-select, context menu à¹à¸¥à¸° keyboard/controller navigation
- Actions: Split Stack, Transfer All, Take All, Sort, Inspect, Use, Equip, Drop Quantity; ไม่มี Search, 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).
NestedContents. Equip จาà¸à¹€à¸¡à¸™à¸¹à¹à¸¥à¸° Ctrl+RMB เลืà¸à¸à¸Šà¹ˆà¸à¸‡à¸à¸±à¸•โนมัติà¹à¸šà¸šà¹€à¸”ียวà¸à¸±à¸™. ถ้าเปิด container à¸à¸¢à¸¹à¹ˆ Ctrl+LMB ย้ายหนึ่ง stack ระหว่างตัวละครà¸à¸±à¸š container; ห้ามà¸à¸²à¸à¸‚à¸à¸‡à¹€à¸‚้า death bag. à¸à¸²à¸£à¹€à¸à¹‡à¸šà¸‚à¸à¸‡à¸ˆà¸²à¸à¹‚ลà¸: Clothing สวมถ้าช่à¸à¸‡à¸§à¹ˆà¸²à¸‡ (ถ้าทับไปช่à¸à¸‡à¹€à¸à¹‡à¸šà¸‚à¸à¸‡); Weapon เข้ามืà¸à¸à¹ˆà¸à¸™; à¸à¸·à¹ˆà¸™ merge stack ที่ยังไม่เต็ม à¹à¸¥à¹‰à¸§à¸Šà¹ˆà¸à¸‡à¸§à¹ˆà¸²à¸‡ à¹à¸¥à¹‰à¸§à¸¡à¸·à¸; bCanHolsterOnBack เข้าหลังว่างà¸à¹ˆà¸à¸™à¸Šà¹ˆà¸à¸‡à¹€à¸à¹‡à¸šà¸‚à¸à¸‡. Stale index: server ตรวจ ExpectedItemId. เจ้าขà¸à¸‡à¸•ัด Inventory Search à¸à¸à¸à¸ˆà¸²à¸à¹€à¸à¸¡ จึงไม่มีช่à¸à¸‡à¸«à¸£à¸·à¸ client filter นี้à¹à¸¥à¹‰à¸§. Action hint ด้านล่างà¹à¸ªà¸”ง Drag, RMB menu, Ctrl+RMB Equip, Ctrl+LMB Transfer à¹à¸¥à¸° Tab close.Crafting, Queue, Skills & Achievements
Searchable recipe detail, source storage, requirements, station/tier, duration and output.
Reserved: Cloth ×8
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
- [CONFIRMED 2026-09-22]
TBD-HUD-UI-005: if a station is destroyed, cancel that station's pending station-queue crafts. Put the station storage contents that still remain and the full reserved-material refund from those crafts into one recovery container at the wreck. The container accepts that refund in the destruction transaction, so the old storage capacity does not clip or delete items. Loot it through the existing crate/death-bag container transfer. It uses the same 24-hour world-up remaining despawn as death bags and runtime drops. Personal crafting queues stay with the player. Ordinary cancel still refunds into the living station's storage. Active queue rows and this container are saved on schema 1 outside the player record. See the implementation note below.
[IMPLEMENTED 2026-09-22] ULambeerCraftingSubsystem reserves top-level stacks immediately, keeps personal and station queues separate, and refuses reordering. Cancel returns every reserved slice to the living source. When that source has no free slot for a slice that cannot merge, cancel is refused and the row stays. Nested contents are not a crafting source. Station destruction cancels only that station's queues and spawns ALambeerStationRecoveryContainer with the remaining storage plus the full reserved slices. The container reuses crate/death-bag loot transfer, the death-bag full-loot slot/weight caps, the death-bag empty cleanup, and the 24-hour world-up despawn. It does not create a death marker. Queue rows are the optional CraftingQueues array on the schema-1 world-state payload. The wreck is world-drop kind StationRecovery. Schema version stays 1. StartSeconds, EndSeconds and RecoveryDropId are stored and remain unset. No recipe DataAsset, craft completion, output grant, or missing-output rule is in this slice. UI-SYS-002 is not started.
Skills
Dedicated screen displays every confirmed skill with exact XP, progress bar, Level 1–10 and next qualitative/numeric bonus. [CONFIRMED 2026-09-22] FEAT-CRAFTING-PROGRESSION defines the 100-XP starting threshold, 20%-per-level curve, 2,080-XP cap and numeric bonuses. The UI reads authoritative progress and does not calculate or award XP locally.
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
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
[OWNER SELECTED 2026-10-14 — BUILD CATALOG] Tap R while holding WoodenMallet / another usable Hammer to toggle a centered Night Ops catalog. Choose category/piece, Resource and named Appearance, then Select & Place to restore the HUD and enter existing hologram placement. No selection click places a world site. Cursor and keyboard navigation are available; movement/look are blocked during selection. R release does nothing; R/Esc closes without creating a preview. Owner revision 2026-10-14 removes the separate lower selected-piece preview and gives its height to the grid; piece/Appearance thumbnails remain. Selection refresh retains the header, sidebar, Esc Close and scroll hosts; owner flicker report and correction. The held-Hammer HUD guide is localized EN/TH. The separate aimed-player Squad invitation ring remains. Canonical window, input, data, persistence and owner checklist.
Owner correction — repeated placement, 2026-09-30: Successful LMB placement keeps the preview and selected piece/material tier/rotation available for the next placement. Only one commit is in flight at a time; success/rejection releases that gate without exiting placement. RMB or ESC ends the mode, and ESC does not open Pause on the cancelling press. Late results cannot restore a cancelled mode or affect a replacement. See canonical behavior and validation. Owner PIE acceptance is pending.
Completed-name positioning correction — 2026-09-30: The owner reported a name card visibly detached from its item. Projection now converts viewport pixels into the actual UMG parent geometry rather than assigning pixels directly to a logical canvas. Completed building names use the mesh top-center with a small screen-space gap and bottom-center card alignment; per-frame tracking uses that same bounds anchor. The standalone fallback uses DPI-aware viewport placement. Existing interaction copy is retained. See owner evidence, correction and validation status. Owner camera/DPI/HUD-scale retest is pending.
Completed-piece focus correction — 2026-09-30; owner PIE pending: A completed building changes from construction interaction to an inspect-only piece name, including completion while focused and the completed garage child assembly. Both the material card and the generic E/Add available materials/Cannot interact prompt disappear. Inspect-only focus does not advertise an interaction reticle or dispatch E. No actual building HP currently exists, so the UI does not synthesize health. The prompt host suppresses the entire key badge and uses the native name card even if a legacy custom prompt visual is present. Continuous can-place feedback and placement rejection/retry now follow the building preview and result contract; the owner-only multiplayer checklist remains pending.
Historical Command Ring confirmation — 2026-09-30; superseded by Build Catalog 2026-10-14: Confirming the final piece/material-tier choice immediately closes the Command Ring, restores the HUD and enters placement preview while R may still be held. Releasing R afterward is a no-op because the radial is already closed; it must not duplicate or reset the preview. The confirming LMB press remains consumed for its input frame, so placing the selected piece requires a subsequent press. Category/piece navigation and material-tier selection remain the existing flow. Source: ALambeerPlayerController::SelectBuildingPiece commits via EndBuildingRadial, and the detached radial returns without refreshing choices. The closed-Editor LambeerEditor Win64 Development build passes, and 45 canonical HTML documents validate with zero errors/warnings. Owner-only PIE acceptance remains pending: hold R through final confirmation, check that the ring disappears and one preview appears, then release R and confirm that the preview remains through successive placements until RMB or ESC cancels the mode.
Building placement input follow-up — 2026-09-30: LMB while placing a preview is consumed for the entire input frame, including the duplicate raw-mouse/Enhanced Input callback after preview removal; it must not trigger melee or focus aim. The surface-placement correction and owner-approved reach are recorded in Building placement follow-up. Owner PIE retest remains pending.
Placement refinement — 2026-09-30: Free placement follows the footprint center under the crosshair and wheel rotation is fine-grained. Attraction uses completed construction's authored snap points; the world grid and unfinished holograms do not attract the preview. An invalid steep-ground Slab preview turns red and remains open when LMB is rejected. See free placement, snap rules, wheel rotation and center-ground validation for authoritative values. Owner-only PIE acceptance remains pending.
0 / 2 world text and requested three Night Ops proposals plus camera-facing presentation. 01 Material Strip is compact and horizontal; 02 Build Card adds piece/tier identity; 03 Progress Beacon emphasizes the resource and completion ring. All show the selected tier's resource, contributed/required quantity, remaining amount and Interact guide. Wood 0/2 for Slab 50 is illustrative progress using the existing catalog bill; the designs do not require all three tier materials simultaneously. Blue-black surfaces, thin steel-blue borders, cool-white text and cyan accents follow the existing Night Ops palette. Editable mockup source: RawResource/UI/Building/Materials_Concepts_20260930/material_ui_concepts.html. Owner selected 02 Build Card with separate material rows: ULambeerBuildingMaterialWidget replaces the plain TextRender label on ALambeerBuildingSite. A screen-space WidgetComponent anchors the 352-pixel-wide Night Ops card above the local mesh-bounds center and keeps it facing each viewing client's camera. Each row shows the real item definition name/icon (vector fallback if absent), contributed/required quantities, cyan progress, and an explicit complete/remaining state. The footer retains the E interaction guide. Current Squad members see it within the existing 300 cm interaction range; completion hides the whole card. It does not capture cursor/focus or add collision. Presentation is local and derived from the existing replicated site record; no save-schema change is needed. See the actual Slab 50 bill rendered by native UMG. The closed-Editor LambeerEditor Win64 Development build and Lambeer.UI.BuildingMaterialCard automation pass with zero errors/warnings. Owner PIE camera-facing, contribution refresh and completion visibility checks remain pending.RawResource/UI/Building/Materials_Concepts_20260930/multi_material_ui_concepts.html.[OWNER CONFIRMED 2026-09-29] Tapping R while holding a usable item with Tool.Role.Hammer toggles the Build Catalog window. Selection leads to a local placement preview; valid placement creates a Squad-owned unfinished hologram that outsiders cannot see. A player without current Squad membership cannot place and receives a clear create-or-join-Squad placement failure reason. Current Squad members can contribute or remove it without holding a Hammer. A nearby member sees material progress as world-anchored UI at the hologram rather than a persistent global HUD element; completion occurs immediately when the bill is full. The catalog must remain distinct from the placed site and must not replace firearm Reload on R. The exact interaction range follows the existing interaction contract.
[HISTORICAL 2026-09-29/30 — SUPERSEDED BY BUILD CATALOG 2026-10-14] The former building radial presentation uses Night Ops concept 1, Command Ring (RawResource/UI/Building/Concepts_20260929/01_command_ring.png) as its starting reference. The owner confirmed the new wheel is visible and requested cursor-free relative mouse selection. The current implementation shows only the wheel and bottom R/mouse/LMB/RMB guide, with no separate outer border or other overlay panels; it temporarily collapses the normal gameplay HUD. Mouse movement highlights a wedge without moving the camera; LMB confirms it. Following the owner's PIE report that up/down selection was inverted, the mouse Y delta is reversed for the wheel. Owner PIE confirmation of the corrected mapping remains pending.
Build Catalog
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â€
Death, Pause, Settings & Accessibility
Death/respawn
à¹à¸ªà¸”ง killer/cause, death location à¹à¸¥à¸° full map ผู้เล่นเลืà¸à¸ bed ที่เลืà¸à¸à¹„ว้ล่าสุดหรืภFresh Spawn เท่านั้น Fresh Spawn เปิดà¸à¸²à¸£à¹€à¸¥à¸·à¸à¸à¸ªà¸µà¹ˆ starter towns ไม่มี sleeping bag marker
[G4 IMPLEMENTATION 2026-09-12] สำหรับ Gate G4, last selected bed คืà¸à¹€à¸•ียงที่เริ่ม Sleep ล่าสุด ไม่มี sleeping bag à¹à¸¥à¸°à¸¢à¸±à¸‡à¹„ม่มี action à¹à¸¢à¸à¸ªà¸³à¸«à¸£à¸±à¸šà¹€à¸¥à¸·à¸à¸ spawn bed. G4 ไม่มี despawn timer ใน runtime; [CONFIRMED 2026-09-14] P07 à¸à¸³à¸«à¸™à¸” death bag à¹à¸¥à¸° runtime world drop ให้ persist à¹à¸¥à¸° despawn หลัง 24 ชั่วโมงเวลาจริงที่ world เปิดà¸à¸¢à¸¹à¹ˆ โดยทดเวลาที่เหลืà¸à¸«à¸¥à¸±à¸‡à¹€à¸›à¸´à¸”ใหม่ — ดู TECH-NETWORK-ARCH. Loading a saved dead character reopens this spawn-select screen; it must not restore a locked corpse that can no longer die. Death marker ตาม bag ที่ยังมีขà¸à¸‡ หรืà¸à¸–ูภdebug-destroy. ขà¸à¸‡à¸—ี่à¸à¸¢à¸¹à¹ˆà¹ƒà¸™ worn backpack/pants/vest ถูภpack เข้า NestedContents ขà¸à¸‡à¹ƒà¸šà¸™à¸±à¹‰à¸™à¸•à¸à¸™ dump ไม่ถูà¸à¹€à¸—เป็นà¸à¸à¸‡à¸«à¸¥à¸§à¸¡à¹ƒà¸™ bag. à¸à¸” interact ที่ death bag เปิด inventory loot panels (เลืà¸à¸à¹€à¸à¹‡à¸šà¸—ีละชิ้น หรืภTake All) ไม่ดูดทั้งà¸à¸à¸‡à¸—ันที. หลัง respawn ต้à¸à¸‡à¸¥à¹‰à¸²à¸‡ blood overlay à¹à¸¥à¸° low-HP edges ที่ค้าง. WBP_DeathRespawn exists under /Game/Lambeer/UI/Map/. สี่ starter towns บน L_Dev_Sandbox เป็น labeled stand-in ในโฟลเดà¸à¸£à¹Œ Outliner G4/SpawnRegions ไม่ใช่พิà¸à¸±à¸” production (TBD-WORLD-001 ไม่เปลี่ยน). Owner-reported pass 2026-09-12 สำหรับ packed backpack dump, loot-panel interact à¹à¸¥à¸° immediate-respawn HUD refresh. Owner-reported pass 2026-09-13 สำหรับ UI-CORE-005. Last Bed à¹à¸¥à¸° four-town Fresh Spawn ยังเป็น UI-CORE-006 à¹à¸¥à¸°à¸¢à¸±à¸‡à¹„ม่ถูà¸à¸•ั้งชื่à¸à¹ƒà¸«à¸¡à¹ˆ. รายละเà¸à¸µà¸¢à¸”เทคนิค: UI-CORE-005 / UI-CORE-006.
Pause
Single Player หยุดโลà¸à¸ˆà¸£à¸´à¸‡ Multiplayer เปิด menu à¹à¸¥à¸°à¸šà¸¥à¹‡à¸à¸ player input à¹à¸•่โลà¸/server ไม่หยุด Owner correction 2026-09-14: ไม่à¹à¸ªà¸”งข้à¸à¸„วาม world-continues warning บน Pause UI. Owner decision 2026-09-15: เฉพาะ Single Player à¹à¸ªà¸”ง Save. [P08 DEDICATED DISCONNECT 2026-09-16] Exit to Main Menu à¹à¸ªà¸”งทั้ง Single Player à¹à¸¥à¸° dedicated/listen clients: SP ยังบังคับ required-player save เมื่ภsnapshot เà¸à¹ˆà¸²à¸à¸§à¹ˆà¸² 30 วินาที; dedicated client disconnect โดยไม่ save à¸à¸±à¹ˆà¸‡ client เพราะ server Logout ยัง flush ตัวละครà¸à¸¢à¸¹à¹ˆ.
[G4 IMPLEMENTATION 2026-09-12] UI-CORE-007 ใช้ NetMode ขà¸à¸‡ session ไม่ใช่à¸à¸²à¸£à¹€à¸”าà¸à¸±à¹ˆà¸‡ client: เฉพาะ NM_Standalone ที่ pause ได้. Owner-reported pass 2026-09-12 เดิมครà¸à¸šà¸„ลุม dedicated-server warning, local input block, world continuity à¹à¸¥à¸° Resume/Escape/Back; owner-reported pass 2026-09-13 ครà¸à¸šà¸„ลุม standalone PAUSED/world-pause. Owner correction 2026-09-14 supersedes warning presentation only: ถà¸à¸”ข้à¸à¸„วาม warning à¸à¸à¸à¸ˆà¸²à¸ current Pause UI à¹à¸•่ไม่เปลี่ยน multiplayer world-continuity หรืภinput behavior. [G5 PAUSE SAVE/EXIT OWNER-REPORTED PASS 2026-09-16] Save เรียภrequired-player snapshot ผ่าน ULambeerWorldPersistenceSubsystem à¹à¸¥à¸°à¸¢à¸±à¸‡à¹€à¸›à¹‡à¸™ standalone-only. Exit ตรวจเวลาจริงตั้งà¹à¸•่ durable snapshot ล่าสุดเฉพาะ SP; ถ้าเà¸à¸´à¸™ 30 วินาทีต้à¸à¸‡ save สำเร็จà¸à¹ˆà¸à¸™à¸ˆà¸¶à¸‡ travel ไป /Game/Lambeer/World/Maps/L_MainMenu/L_MainMenu à¹à¸¥à¸°à¸–้า save ล้มเหลวให้ยà¸à¹€à¸¥à¸´à¸ exit พร้à¸à¸¡à¹à¸ªà¸”งสถานะ. Dedicated Exit to Main Menu ไม่ save à¸à¸±à¹ˆà¸‡ client. WBP_PauseMenu ใช้ native ULambeerPauseScreen::EnsureLayout. รายละเà¸à¸µà¸¢à¸”: UI-CORE-007 à¹à¸¥à¸° G5 dedicated checklist.
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
[G4 IMPLEMENTATION 2026-09-12] UI-CORE-008 เพิ่ม staged draft/apply/revert. G4 persist ได้เฉพาะ HUD Scale, Safe Zone Scale, language en/th à¹à¸¥à¸° Display resolution/window mode จาภengine GameUserSettings. Owner decision 2026-09-13: Text Scale ไม่ปรับใน G4 Settings (ล็à¸à¸ 1.0); Text Size ยังà¸à¸¢à¸¹à¹ˆà¹ƒà¸™ accessibility list สำหรับรà¸à¸š settings ถัดไป. Display ที่เสี่ยงต้à¸à¸‡ Confirm ไม่เช่นนั้น revert ใน 15 วินาที (implementation clamp). หมวดà¸à¸·à¹ˆà¸™à¹à¸ªà¸”งเหตุผลà¹à¸¥à¸°à¸«à¹‰à¸²à¸¡ persist. Crosshair Customization, colorblind, subtitles, rebind, camera shake à¹à¸¥à¸° Disable Flashing ยังเป็น G8 หรืà¸à¸£à¸à¸„่าที่à¸à¸™à¸¸à¸¡à¸±à¸•ิ. Unreal MCP created, compiled and saved /Game/Lambeer/UI/Menus/WBP_Settings. Parent is ULambeerSettingsScreen. Designer tree is empty; runtime layout comes from C++ EnsureLayout. Owner reported Apply th left settings labels in English 2026-09-12; that screen had hardcoded English / ungathered NSLOCTEXT. Follow-through binds settings labels to ST_UI_Common_EN/ST_UI_Common_TH, applies FF_UI_Primary, and refreshes after Apply. Owner-reported pass 2026-09-13 สำหรับ Thai settings labels (no tofu), HUD Scale/Safe Zone persist, Display Revert à¹à¸¥à¸° stacking. Text Scale ถูà¸à¸–à¸à¸”จาภG4 Settings. Owner-reported pass 2026-09-13 หลัง rebuild: HUD ไม่มีตัวปรับ Text Scale. รายละเà¸à¸µà¸¢à¸”: UI-CORE-008.
[CROSSHAIR SETTINGS EXTENSION — OWNER RETEST PENDING 2026-09-20] Crosshair Customization is no longer deferred: CrosshairStyleIndex accepts and persists values 0–9 in ULambeerUserSettings. The runtime-built WBP_Settings HUD panel exposes the selector with localized English/Thai field copy and a live 72×72 preview; the ten style names remain fixed English product names. Preview and gameplay share LambeerCrosshairDrawing::DrawStyle, so they cannot drift into different shapes. Unsupported values are rejected at Apply and sanitized to Precision Dot when loading old or invalid config.
Pause & Settings Night Ops — Gate G4.4
English and ภาษาไทย while persistence continues to use en/th. Locked Text Scale 1.0, unavailable categories and G5 scope do not change. Native build, HUD automation 24/24 and both Widget Blueprint compile/save/readbacks pass; the owner reported the complete G4.4 PIE checklist passed.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. Owner decision 2026-09-13: G4 Settings ไม่มี Text Scale (ล็à¸à¸
1.0); Text Size ยังเป็น required setting สำหรับรà¸à¸šà¸–ัดไป - 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 type | Required fields / responsibility | Authority |
|---|---|---|
FUIHUDSnapshot | 8 survival normalized values, contextual statuses, weight state, aim state | Owning-client view of authoritative state |
FUIWeaponHandState | Hand, ItemId, handedness, durability state, fire mode, observed mag/chamber info, observation validity | Server truth + client knowledge mask |
FUIMapMarker | MarkerId, category, world location, label, visibility scope, expiry/source entity | Server for shared; local for filters |
FInteractionPromptState | TargetId, action, display name, quantity, glyph action, hold duration/progress, denied reason, alternatives | Server validates action |
FLambeerCraftingQueueEntry | QueueId, owner/station, recipe, count, reserved stack slices, start/end, status, recovery destination. The 2026-09-22 queue slice persists active rows only. Start, end, and recovery id stay unset until production exists. | Server persistent on the schema-1 world-state payload |
FMagazineLoadPlan | HeadRounds, LoopPattern, TailRounds, preview fire order | Server validates compatible ammo/capacity |
FVehicleHUDState | Speed, RPM, gear, fuel, overall/component damage, seats, access | Relevant vehicle state |
FServerBrowserEntry | ServerId, type, name, ping, players/max, version, favorite, rules metadata | Session/backend |
FWorldSaveSummary | WorldId, display name, last played, character summary, compatibility/corrupt state | Local persistence index |
FUIAchievementEntry | AchievementId, title, description, progress, threshold, unlocked, reward payload/status | Per-character/server persistent |
FGroupActivityLogEntry | Timestamp, actor ID/name, action, target ID/name, event category | Server 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
| Status | Action | Purpose |
|---|---|---|
| Existing | IA_Inventory | Inventory/container/vehicle storage entry |
| Existing | IA_Interact | Context action |
| Existing (G4 default M) | IA_UI_Map / runtime IA_UI_Map_Runtime | World map screen toggle. Authored asset is optional; G4 binds M at runtime. |
| Existing (G4 default Escape) | IA_UI_Pause / runtime Escape | HUD-only pause/menu toggle. Authored asset is optional; G4 reuses the existing runtime Escape mapping. Inventory/map/death consume Escape first. |
| Proposed | IA_QuickSlot_1…IA_QuickSlot_0 | Hold item from slot |
| Existing (P11 assets; IMC_Default T) | IA_TacticalDeviceToggle | Mounted laser/light master on/off. Canonical: FEAT-WEAPON-CUSTOMIZATION. Asset path /Game/Lambeer/Core/Input/Actions/IA_TacticalDeviceToggle. MCP readback 2026-09-21: IMC_Default DefaultKeyMappings binds unmodified T. The leftover deprecated Mappings array was emptied the same day. |
| Existing (P11 assets; IMC_Default Ctrl+T) | IA_TacticalDeviceCycle | Cycle on-state presentation (LaserON/LightOFF, LaserON/LightON). Asset path /Game/Lambeer/Core/Input/Actions/IA_TacticalDeviceCycle. MCP readback 2026-09-21: IMC_Default DefaultKeyMappings binds T with IA_Ctrl chord (Ctrl+T). BP_LambeerPlayerController already adds IMC_Default as a default mapping context. |
| Proposed | IA_UI_Ping, IA_UI_VoicePTT, IA_UI_Chat | Social/world communication |
| Proposed CommonUI | UI.Action.Accept, Back, Context, TabLeft, TabRight | Device-independent navigation and glyphs |
SVG Icon Asset Kit
[IMPLEMENTED 2026-09-07] Source: RawResource/UI/Icons/ · exactly 64 SVG files · 64×64 viewBox · white solid silhouette · transparent background. Unreal MCP imported 64 tintable 256×256 textures at /Game/Lambeer/UI/Common/Icons/T_UI_*; asset metadata preserves each source SVG because UE Texture Factory does not import SVG directly.
Platform glyphs remain at their verified paths under /Game/Lambeer/UI/ControllerGlyphs/PlayStation_Series/ and Xbox_Series/. G2 controller-data classes reference them without rename/modification; runtime device switching remains pending owner PIE evidence.
ui_stat_health.svgui_stat_stamina.svgui_stat_hunger.svgui_stat_thirst.svgui_stat_temperature.svgui_stat_energy.svgui_stat_sleep.svgui_stat_immunity.svgui_status_bleeding.svgui_status_infection.svgui_status_fracture.svgui_status_poison.svgui_nav_compass.svgui_nav_minimap.svgui_nav_map.svgui_marker_boss.svgui_combat_left_hand.svgui_combat_right_hand.svgui_combat_magazine.svgui_combat_chamber.svgui_system_crafting.svgui_system_building.svgui_system_vehicle.svgui_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
| ID | Scenario | Expected outcome |
|---|---|---|
| AC-UI-001 | HUD at FHD/2K/4K and 16:10/21:9/32:9 | ทุภelement anchor ถูà¸à¸•้à¸à¸‡ ไม่มี overlap/clipping; edge HUD ตาม physical viewport à¹à¸¥à¸° safe-zone setting |
| AC-UI-002 | Survival state updates | 8 segmented gauges à¹à¸ªà¸”งตลà¸à¸”เวลา ไม่มีตัวเลข; filled-segment count, marker, icon/shape à¹à¸¥à¸° contextual icon/text ทำให้สถานะไม่พึ่งสีà¸à¸¢à¹ˆà¸²à¸‡à¹€à¸”ียว |
| AC-UI-003 | ADS entered | Crosshair ซ่à¸à¸™; HUD ไม่à¹à¸ªà¸”ง hit confirmation |
| AC-UI-004 | Weapon not inspected | Magazine/chamber à¹à¸ªà¸”ง UNKNOWN; check action เท่านั้นที่เปิดเผย observed state |
| AC-UI-005 | Blood reaches camera | Hold 2 s à¹à¸¥à¸° fade 5 s; near gunshot/explosion à¹à¸¥à¸° melee ใช้ contract เดียวà¸à¸±à¸™ |
| AC-UI-006 | Rain/swim lens effect ends | Droplets เริ่มทันทีà¹à¸¥à¸° fade หมดใน 5 s หลัง source จบ |
| AC-UI-007 | Open menu in multiplayer | World continues; player input blocked; warning visible |
| AC-UI-008 | Pause in single player | World simulation pauses and resumes without losing menu state |
| AC-UI-009 | Craft queue reservation | Availability subtracts earlier queue entries; cancel refunds; queue persists across logout |
| AC-UI-010 | Station destroyed | That station's queue cancels. Remaining storage and the full reserved-material refund go into one wreck recovery container with no duplication or loss. Ordinary cancel still refunds into living station storage. |
| AC-UI-011 | Magazine plan capacity ends mid-pattern | Preview and authoritative sequence stop mid-pattern and preserve head→loop→tail fire order |
| AC-UI-012 | Controller changes Xbox↔PlayStation↔KBM | Glyphs update without closing screen; focus remains on same semantic control |
| AC-UI-013 | Death bag despawns/is emptied | Death marker disappears from compass, minimap and map |
| AC-UI-014 | Boss marker inspected | Timer/status appears; occupied area shows exact blocked message |
| AC-UI-015 | English↔Thai | No clipped labels; Thai subtitles wrap correctly; navigation/focus order unchanged |
| AC-UI-016 | Disable Flashing enabled | White flash is replaced with black feedback while information remains readable |
| AC-UI-017 | Crosshair style changed and settings reapplied/reopened | Exactly ten styles are selectable, previewed and persist; the preview matches gameplay, HipRelaxed/ShoulderAim update, ADS remains hidden, and semantic Melee/Throw/Interaction reticles remain authoritative |
| AC-UI-018 | Aim with firearm, melee weapon or empty hands | Firearm/melee aim fades in a centered radial black vignette from all four edges and corners with a readable center; empty-hand guard does not show it. A world interact prompt such as E Open must not hide the vignette. |
Manual PIE Checklist
L_Dev_Sandbox passed, then bed sleep plus the slight Sleeping dim after Energy Jog/sprint drain. Scoped record: survival/bed pass. Remaining HUD checks, firearm inspections and G3 close are not covered.UI_G3GiveBackWeapons and keys 1/2, ADS hides the reticle, no HitMarker, nearby 2 m / LOS blood, low-health 30/20/10 edges, and UI_G3SetRain lens droplets plus shelter. Scoped record: HUD close pass 1–7.UI-CORE-001 and UI-CORE-002 passed: Tab opens and closes without crash, Worn clothing slots are visible, sandbox clothing pickups equip, and the 2026-09-11 command rules still hold. Gate G4 stays open for map, death/spawn, pause and settings. The approved Inventory/container presentation is planned as Gate G4.2 under preserved task ID UI-CORE-003. Checklist: G4 inventory pass.UI-CORE-004 passed: pan/zoom/center, shared ping, filter toggles, map↔inventory Tab switching, and the zoomed map image stays inside the map panel. North-up minimap and frozen full-map death diamond already passed 2026-09-12. Checklist: UI-CORE-004.UI-CORE-005 passed. Packed backpack dump, loot-panel interact and immediate-respawn HUD refresh already passed 2026-09-12. Owner reported UI-CORE-006 Last Bed after Sleep and four-town Fresh Spawn passed. Checklist: UI-CORE-006.UI-CORE-007 passed, including standalone PAUSED/world-pause. Dedicated-server WORLD CONTINUES already passed 2026-09-12. Single Player Exit-to-main later passed as UI-FE-009 on 2026-09-16. Dedicated Exit-to-main later passed as UI-FE-005 on 2026-09-16. Checklist: UI-CORE-007.UI-CORE-008 passed: HUD has no Text Scale control; Display Revert, language/font, categories, HUD Scale/Safe Zone and stacking already passed. Text Scale stays locked at 1.0. For G4.2 UI-CORE-003, the owner passed the Night Ops presentation, all retained interactions and final Search-free header. Search was explicitly removed after its sole failure. Native/Blueprint/automation validation passes after removal. See G4.2 evidence. Checklist: UI-CORE-008.UI-HUD-018 and UI-MENU-001 are closed. See G4.4 checklist.LambeerEditor Win64 Development and headless non-PIE Lambeer.HUD 24/24 pass; this is not PIE acceptance and does not reopen G4.3. Recheck in a client Preview window: face N with W left / E right, look right, and confirm compass caret plus map/minimap symbols move to E.| ID | Manual test | Result |
|---|---|---|
| PIE-UI-001 | เปิด HUD ที่ 1920×1080, 2560×1440, 3840×2160 à¹à¸¥à¸° ultrawide; ตรวจ anchor/safe zone | Owner pass 2026-09-14 for the G4.3/G4.4 supported responsive presentation matrix |
| PIE-UI-002 | ลด survival stats ผ่านà¹à¸•่ละ threshold à¹à¸¥à¸°à¸•รวจ 8 bars/status/low-HP edges | Partial owner pass 2026-09-10 — eight GAS-colored bars and low-HP 30/20/10 edges; Hunger/Thirst/Energy warning-critical matrix not newly reported |
| PIE-UI-003 | สลับ Hip/Shoulder/ADS/Melee/Throw/Interact à¹à¸¥à¸°à¸•รวจ reticle | Partial owner pass 2026-09-10 — ADS hides reticle; throw/sledgehammer melee 2026-09-09; Hip/Shoulder/Interact matrix not newly reported |
| PIE-UI-004 | ถืà¸à¸à¸²à¸§à¸¸à¸˜à¸‹à¹‰à¸²à¸¢/ขวา/สà¸à¸‡à¸¡à¸·à¸; check magazine/chamber; ตรวจ hidden knowledge | Partial owner pass 2026-09-10 — L1810 chamber/magazine inspect; GiveBackWeapons keys 1/2; Q1/Q2 2026-09-08; two-hand sledgehammer 2026-09-09; full left/right matrix not newly reported |
| PIE-UI-005 | ทดสà¸à¸š blood จาภmelee/gunshot/explosion à¹à¸¥à¸° wet lens จาภrain/swim พร้à¸à¸¡à¸ˆà¸±à¸šà¹€à¸§à¸¥à¸² | Partial owner pass 2026-09-10 — nearby ApplyDamage 2 m / LOS blood and rain-lens droplets/shelter; melee/gunshot/explosion-specific sources and swim not newly reported |
| PIE-UI-006 | เปิด inventory/container; drag, click, context, keyboard/controller, split/take/transfer/sort; Inventory Search is excluded | Owner pass 2026-09-12 — G4 UI-CORE-001/UI-CORE-002 KBM inventory: Tab toggle, Worn slots, clothing pickup/equip, plus command rules and pocket drag/drop. G4.2 owner retests exposed drag interception and physical Q1/Q2/hand routing defects; source corrections, Game/Editor builds and focused tests passed. [OWNER-REPORTED G4.2 PASS 2026-09-14] The final Night Ops presentation, responsive layout, focus/opacity correction, retained drag/command/transfer interactions and Search-free header passed. Search was removed by owner decision. Controller remains deferred because hardware is unavailable. |
| PIE-UI-007 | เพิ่ม/cancel/persist crafting queue à¹à¸¥à¸°à¸—ำลาย station ระหว่าง craft | Not run |
| PIE-UI-008 | สร้าง magazine head/loop/tail plan ที่ capacity ตัดà¸à¸¥à¸²à¸‡ pattern | Not run |
| PIE-UI-009 | สลับ KBM/Xbox/PlayStation ระหว่างทุภCommonUI screen à¹à¸¥à¸°à¸•รวจ focus/back | Deferred — Xbox/PlayStation hardware unavailable; unverified, not failed |
| PIE-UI-010 | เปิด menu ใน SP/MP à¹à¸¥à¸°à¸¢à¸·à¸™à¸¢à¸±à¸™ pause behavior ต่างà¸à¸±à¸™ | Owner pass 2026-09-14 — G4.4 Option B dedicated-server and Standalone Pause presentation/behavior, including local input blocking, multiplayer continuity and resume/back routes. Owner-reported pass 2026-09-16 for G5 Single Player Save and Exit to Main Menu, dedicated Pause/Exit/restore, and Server Browser Refresh/Join. Controller deferred |
| PIE-UI-011 | สลับ English/Thai, UI scale, safe zone, text size à¹à¸¥à¸° colorblind presets | Partial overall; owner pass 2026-09-14 for the G4.3/G4.4 English/Thai, HUD Scale, Safe Zone and responsive menu/HUD scope. Text Scale remains absent from G4 Settings. Colorblind presets remain not run. Xbox/PlayStation device switching remains deferred (see PIE-UI-009) |
| PIE-UI-012 | ตาย เลืà¸à¸ last bed/fresh town à¹à¸¥à¸°à¸•รวจ marker lifecycle เมื่ภbag ถูà¸à¹€à¸à¹‡à¸š/หมดเวลา | Owner pass 2026-09-13 — G4 UI-CORE-005 marker lifecycle plus UI-CORE-006 Last Bed after Sleep and four-town Fresh Spawn. Packed backpack dump, loot-panel take and immediate-respawn HUD refresh already passed 2026-09-12. Sandbox towns are not production geography. Controller deferred |
Decisions / Blocking TBDs
TBD-HUD-UI-001— Resolved 2026-09-06: Back Weapon 1–2 exclusively own slots 1–2; other bindings are rejected and no manual-binding restore state exists.TBD-HUD-UI-002— Resolved 2026-09-06: Google Sans is approved; Thai coverage, repository/UE target paths, embedded OFL metadata, official source, and retainedOFL.txtare verified.TBD-HUD-UI-003— Resolved 2026-09-14: shipping Single Player uses embeddedNM_Standaloneauthority; UI save-list contract remains session-agnostic. Canonical persistence:TECH-NETWORK-ARCH.TBD-HUD-UI-004— Steam App ID/integration metadata à¹à¸¥à¸° Feedback URLTBD-HUD-UI-005— Resolved 2026-09-22: station destruction puts remaining storage and the full station-queue refund into one wreck recovery container. The container accepts that refund in the transaction, is looted like a crate or death bag, and uses the 24-hour world-up despawn. Persistence is P15, outside the current P07 record set.TBD-E2F4910C— achievement catalog, thresholds à¹à¸¥à¸° reward payloads (preserved canonical ID)TBD-HUD-UI-007— clan naming/tag rules, promote/kick permissions à¹à¸¥à¸° log retentionTBD-HUD-UI-008— Resolved 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 ที่เชื่à¸à¸¡à¹‚ยง
FEAT-COMBAT, FEAT-SURVIVAL, FEAT-INVENTORY, FEAT-CRAFTING-PROGRESSION, FEAT-BUILDING, FEAT-WEAPON-CUSTOMIZATION, FEAT-PLAYER-STATISTICS-ACHIEVEMENTS
FEAT-WORLD-DESIGN, FEAT-VEHICLES, FEAT-CLANS-SQUADS, FEAT-PVP-RAIDING-TRADING, FEAT-BOSS-ZOMBIES
TECH-HUD-UI-IMPLEMENTATION, TECH-NETWORK-ARCH, TECH-SERVERS-HOSTING, TECH-FOLDER-STRUCTURE, AUDIO-DIRECTION












Clan, Squad, Chat & Voice
[OWNER CONFIRMED 2026-10-01] Aim at another player and press
IA_Interactto open the building-style Night Ops Command Ring with only Invite to join squad. The recipient immediately gets a CommonUI modal with the inviter/Squad name and Yes / No; no Inbox navigation is required. No is initial focus, ESC declines, and controls wait for the server response. The Squad Invite action provides guidance instead of an online-player picker. Canonical flow, authority/persistence rules and owner PIE checklist.[OWNER CONFIRMED 2026-09-30] The Squad screen keeps a compact optional logo beside its required display name. Upload Logo and Edit Name are Leader-only actions enforced by the server; exact limits and persistence are in the resolved Squad identity decision. [OWNER SELECTED 2026-09-29] Option 1 — Simple Full Roster with Logo is the selected Night Ops visual layout: centered Inventory / Squad tabs at the top edge above the content panel, a separate upper-right Close action, compact identity/actions header, aligned selectable roster rows and a separate activity panel below, without character portraits. Switching Inventory / Squad tabs preserves the clicked mouse position. Squad keeps gameplay visible through translucent panels using the Inventory shell color at alpha 0.80; roster/activity rows do not add opaque fills. Edit Name and contextual member actions open transient dialogs. The example content is illustrative. The native Squad runtime screen and Widget Blueprint now exist; owner PIE visual and multiplayer acceptance remain pending. Canonical selection.
TBD-HUD-UI-007: Clan creation naming/tag rules, role authority สำหรับ promote/kick à¹à¸¥à¸° log retention/persistence ยังไม่ถูà¸à¸à¸³à¸«à¸™à¸”