[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"portal-settings:figure:ru":3,"public-menus:all":45,"post:your-game-assistant-knows-the-game-but-does-it-know-your-game-state:ru":531,"related:post:your-game-assistant-knows-the-game-but-does-it-know-your-game-state:ru:1":1998},{"statusCode":4,"data":5,"message":44},200,{"tenantId":6,"lang":7,"defaultLang":8,"siteUrl":9,"contactEmail":10,"brandName":11,"logoUrl":12,"siteName":11,"siteDescription":13,"ogImage":14,"robotsIndex":15,"socialLinks":14,"reservedSlugs":14,"seoPolicy":16},"figure","ru","en","https:\u002F\u002Ffigure.rocks","info@stajic.de","Figure Rocks","\u002Ffavicon-32x32.png","",null,true,{"branding":17,"relatedContent":18,"crossDomainLinks":19},{"logoUrl":12},{"enabled":15},[20,23,26,29,32,35,38,41],{"url":21,"label":22,"isActive":15,"showInFooter":15,"includeInSameAs":15},"https:\u002F\u002Floving.rocks","loving.rocks",{"url":24,"label":25,"isActive":15,"showInFooter":15,"includeInSameAs":15},"https:\u002F\u002Fstajic.de","stajic.de",{"url":27,"label":28,"isActive":15,"showInFooter":15,"includeInSameAs":15},"https:\u002F\u002Fbazify.com","bazify.com",{"url":30,"label":31,"isActive":15,"showInFooter":15,"includeInSameAs":15},"https:\u002F\u002Fbazify.de","bazify.de",{"url":33,"label":34,"isActive":15,"showInFooter":15,"includeInSameAs":15},"https:\u002F\u002F2mesta.com","2mesta.com",{"url":36,"label":37,"isActive":15,"showInFooter":15,"includeInSameAs":15},"https:\u002F\u002F2mesta.de","2mesta.de",{"url":39,"label":40,"isActive":15,"showInFooter":15,"includeInSameAs":15},"https:\u002F\u002Fbazify.at","bazify.at",{"url":42,"label":43,"isActive":15,"showInFooter":15,"includeInSameAs":15},"https:\u002F\u002Fweb-hoch3.de","web-hoch3.de","Portal settings resolved",[46],{"id":47,"name":48,"location":49,"isActive":15,"isDefault":15,"items":50},2,"Main Menu","sidebar",[51,65,176,298,391,467],{"id":52,"title":53,"url":61,"target":62,"icon":63,"isActive":15,"productId":14,"categoryId":14,"shopCategoryId":14,"articleId":14,"pageId":14,"portfolioId":14,"children":64},"1",{"de":54,"en":55,"es":56,"fr":57,"it":55,"ru":58,"sr":59,"zh":60},"Startseite","Home","Inicio","Accueil","Главная","Početna","首页","\u002F","_self","i-lucide-home",[],{"id":66,"title":67,"url":69,"target":62,"icon":70,"isActive":15,"type":71,"productId":14,"categoryId":14,"shopCategoryId":14,"articleId":14,"pageId":14,"portfolioId":14,"children":72},"2",{"de":68,"en":68,"es":68,"fr":68,"it":68,"ru":68,"sr":68,"zh":68},"amiibo","\u002Famiibo","i-lucide-scan-line","custom",[73,85,92,106,120,134,148,162],{"id":74,"title":75,"url":69,"target":62,"icon":83,"isActive":15,"type":71,"productId":14,"categoryId":14,"shopCategoryId":14,"articleId":14,"pageId":14,"portfolioId":14,"children":84},"2-1",{"de":76,"en":77,"es":78,"fr":79,"it":79,"ru":80,"sr":81,"zh":82},"amiibo-Hub","amiibo Hub","Centro amiibo","Hub amiibo","Хаб amiibo","amiibo centar","amiibo 中心","i-lucide-layout-grid",[],{"id":86,"title":87,"url":89,"target":62,"icon":90,"isActive":15,"type":71,"productId":14,"categoryId":14,"shopCategoryId":14,"articleId":14,"pageId":14,"portfolioId":14,"children":91},"1772724791061",{"de":88,"en":88},"Franchise","\u002Famiibo\u002Ffranchise","i-lucide-star",[],{"id":93,"title":94,"url":103,"target":62,"icon":104,"isActive":15,"type":71,"productId":14,"categoryId":14,"shopCategoryId":14,"articleId":14,"pageId":14,"portfolioId":14,"children":105},"2-3",{"de":95,"en":96,"es":97,"fr":98,"it":99,"ru":100,"sr":101,"zh":102},"Region & Verpackung (EU\u002FUS\u002FJP)","Region & Packaging (EU\u002FUS\u002FJP)","Región y embalaje (UE\u002FEE. UU.\u002FJP)","Région & Emballage (UE\u002FUS\u002FJP)","Regione & Confezione (EU\u002FUS\u002FJP)","Регион & упаковка (EU\u002FUS\u002FJP)","Region & pakovanje (EU\u002FUS\u002FJP)","地区 & 包装 (EU\u002FUS\u002FJP)","\u002Famiibo-library\u002Famiibo-editions-and-regions","i-lucide-globe",[],{"id":107,"title":108,"url":117,"target":62,"icon":118,"isActive":15,"type":71,"productId":14,"categoryId":14,"shopCategoryId":14,"articleId":14,"pageId":14,"portfolioId":14,"children":119},"2-4",{"de":109,"en":110,"es":111,"fr":112,"it":113,"ru":114,"sr":115,"zh":116},"Schnellidentifikations-Checkliste","Fast Identification Checklist","Lista de identificación rápida","Liste d'identification rapide","Checklist identificazione rapida","Чек-лист быстрой идентификации","Kontrolna lista za brzu identifikaciju","快速识别清单","\u002Famiibo\u002Fidentify-checklist","i-lucide-list-checks",[],{"id":121,"title":122,"url":131,"target":62,"icon":132,"isActive":15,"productId":14,"categoryId":14,"shopCategoryId":14,"articleId":14,"pageId":14,"portfolioId":14,"children":133},"2-6",{"de":123,"en":124,"es":125,"fr":126,"it":127,"ru":128,"sr":129,"zh":130},"Tipps für Sealed-Sammlungen","Sealed Collection Tips","Consejos de colección sellada","Conseils collection scellée","Consigli collezione sigillata","Советы по коллекции Sealed","Saveti za zapečaćene kolekcije","密封收藏贴士","\u002Famiibo\u002Fsealed-tips","i-lucide-shield-check",[],{"id":135,"title":136,"url":145,"target":62,"icon":146,"isActive":15,"type":71,"productId":14,"categoryId":14,"shopCategoryId":14,"articleId":14,"pageId":14,"portfolioId":14,"children":147},"2-5",{"de":137,"en":138,"es":139,"fr":140,"it":141,"ru":142,"sr":143,"zh":144},"Zustand & Bewertung","Condition & Grading","Estado & Graduación","État & Évaluation","Condizioni & Valutazione","Состояние & Оценка","Stanje & ocenjivanje","品相与分级","\u002Famiibo-library\u002Famiibo-condition-and-grading","i-lucide-badge-check",[],{"id":149,"title":150,"url":159,"target":62,"icon":160,"isActive":15,"type":71,"productId":14,"categoryId":14,"shopCategoryId":14,"articleId":14,"pageId":14,"portfolioId":14,"children":161},"2-2",{"de":151,"en":152,"es":153,"fr":154,"it":155,"ru":156,"sr":157,"zh":158},"Ausgaben & Nachdrucke","Editions & Reprints","Ediciones & Reimpresiones","Éditions & Réimpressions","Edizioni & ristampe","Издания & переиздания","Izdanja & reizdanja","版本 & 重印","\u002Famiibo\u002Fcollecting\u002F","i-lucide-layers",[],{"id":163,"title":164,"url":173,"target":62,"icon":174,"isActive":15,"type":71,"productId":14,"categoryId":14,"shopCategoryId":14,"articleId":14,"pageId":14,"portfolioId":14,"children":175},"2-7",{"de":165,"en":166,"es":167,"fr":168,"it":169,"ru":170,"sr":171,"zh":172},"Nachdruck-Timeline","Reprint Timeline","Cronología de reimpresión","Chronologie des réimpressions","Cronologia ristampe","Хронология переизданий","Hronologija reprinta","重印时间轴","\u002Freference\u002Ftimelines\u002Famiibo-reprint-timeline","i-lucide-timer",[],{"id":177,"title":178,"url":187,"target":62,"icon":188,"isActive":15,"productId":14,"categoryId":14,"shopCategoryId":14,"articleId":14,"pageId":14,"portfolioId":14,"children":189},"3",{"de":179,"en":180,"es":181,"fr":182,"it":183,"ru":184,"sr":185,"zh":186},"Spiele","Games","Juegos","Jeux","Giochi","Игры","Igre","游戏","\u002Fgames","i-lucide-gamepad-2",[190,202,216,230,244,257,271,285],{"id":191,"title":192,"url":187,"target":62,"icon":83,"isActive":15,"productId":14,"categoryId":14,"shopCategoryId":14,"articleId":14,"pageId":14,"portfolioId":14,"children":201},"3-1",{"de":193,"en":194,"es":195,"fr":196,"it":197,"ru":198,"sr":199,"zh":200},"Spiele-Hub","Games Hub","Centro de juegos","Hub de jeux","Hub Giochi","Игровой центр","Centar za igre","游戏中心",[],{"id":203,"title":204,"url":213,"target":62,"icon":214,"isActive":15,"type":71,"productId":14,"categoryId":14,"shopCategoryId":14,"articleId":14,"pageId":14,"portfolioId":14,"children":215},"1-1",{"de":205,"en":206,"es":207,"fr":208,"it":209,"ru":210,"sr":211,"zh":212},"Neu & Angesagt","New & Trending","Novedades & Tendencias","Nouveautés & Tendances","Novità & Tendenze","Новинки & тренды","Novo & Popularno","新品 & 热门","\u002Fnews\u002Fgaming-news","i-lucide-sparkles",[],{"id":217,"title":218,"url":227,"target":62,"icon":228,"isActive":15,"productId":14,"categoryId":14,"shopCategoryId":14,"articleId":14,"pageId":14,"portfolioId":14,"children":229},"1-2",{"de":219,"en":220,"es":221,"fr":222,"it":223,"ru":224,"sr":225,"zh":226},"Angebote","Deals","Ofertas","Offres","Offerte","Акции","Ponude","优惠","\u002Fdeals","i-lucide-badge-percent",[],{"id":231,"title":232,"url":241,"target":62,"icon":242,"isActive":15,"productId":14,"categoryId":14,"shopCategoryId":14,"articleId":14,"pageId":14,"portfolioId":14,"children":243},"1-3",{"de":233,"en":234,"es":235,"fr":236,"it":237,"ru":238,"sr":239,"zh":240},"Release-Kalender","Release Calendar","Calendario de lanzamientos","Calendrier des sorties","Calendario delle uscite","Календарь релизов","Kalendar izdanja","发布日历","\u002Freleases","i-lucide-calendar-days",[],{"id":245,"title":246,"url":254,"target":62,"icon":255,"isActive":15,"type":71,"productId":14,"categoryId":14,"shopCategoryId":14,"articleId":14,"pageId":14,"portfolioId":14,"children":256},"3-2",{"de":247,"en":248,"es":249,"fr":250,"it":251,"sr":252,"zh":253},"amiibo-kompatible Spiele","amiibo-Compatible Games","Juegos compatibles con Amiibo","Jeux compatibles Amiibo","Giochi compatibili con amiibo","Amiibo kompatibilne igre","Amiibo 兼容游戏","\u002Freference\u002Fcompatibility","i-lucide-check-circle-2",[],{"id":258,"title":259,"url":268,"target":62,"icon":269,"isActive":15,"type":71,"productId":14,"categoryId":14,"shopCategoryId":14,"articleId":14,"pageId":14,"portfolioId":14,"children":270},"3-3",{"de":260,"en":261,"es":262,"fr":263,"it":264,"ru":265,"sr":266,"zh":267},"Wie amiibo funktionieren","How amiibo work","Cómo funcionan los Amiibo","Comment fonctionnent les Amiibo","Come funzionano gli Amiibo","Как работают Amiibo","Kako Amiibo rade","Amiibo 如何运作","\u002Fgames\u002Fhow-amiibo-unlocks-work","i-lucide-puzzle",[],{"id":272,"title":273,"url":282,"target":62,"icon":283,"isActive":15,"type":71,"productId":14,"categoryId":14,"shopCategoryId":14,"articleId":14,"pageId":14,"portfolioId":14,"children":284},"3-4",{"de":274,"en":275,"es":276,"fr":277,"it":278,"ru":279,"sr":280,"zh":281},"Beste Amiibo pro Spiel","Best amiibo per Game","Mejores Amiibo por juego","Meilleurs Amiibo par jeu","Migliori Amiibo per gioco","Лучшие Amiibo по играм","Najbolji Amiibo po igri","各游戏最佳 Amiibo","\u002Fgames\u002Fbest-amiibo-per-game","i-lucide-award",[],{"id":286,"title":287,"url":295,"target":62,"icon":296,"isActive":15,"type":71,"productId":14,"categoryId":14,"shopCategoryId":14,"articleId":14,"pageId":14,"portfolioId":14,"children":297},"3-5",{"de":288,"en":289,"es":290,"fr":291,"it":292,"ru":293,"sr":294},"Freischaltbares & Belohnungen","Unlockables & Rewards","Desbloqueables & Recompensas","Déblocables & Récompenses","Sbloccabili & Ricompense","Разблокировки & награды","Otključavanja & nagrade","\u002Fgames\u002Funlocks-and-benefits","i-lucide-gift",[],{"id":299,"title":300,"url":308,"target":62,"icon":309,"isActive":15,"productId":14,"categoryId":14,"shopCategoryId":14,"articleId":14,"pageId":14,"portfolioId":14,"children":310},"4",{"de":301,"en":302,"es":303,"it":304,"ru":305,"sr":306,"zh":307},"Sammeln","Collecting","Coleccionismo","Collezionismo","Коллекционирование","Kolekcionarstvo","收藏","\u002Fcollecting","i-lucide-gem",[311,322,336,349,363,377],{"id":312,"title":313,"url":320,"target":62,"icon":83,"isActive":15,"type":71,"productId":14,"categoryId":14,"shopCategoryId":14,"articleId":14,"pageId":14,"portfolioId":14,"children":321},"4-1",{"de":314,"en":315,"fr":316,"it":317,"ru":318,"zh":319},"Sammel-Hub","Collecting Hub","Hub de collecte","Hub di raccolta","Центр сбора","收藏中心","\u002Famiibo\u002Fcollecting",[],{"id":323,"title":324,"url":333,"target":62,"icon":334,"isActive":15,"type":71,"productId":14,"categoryId":14,"shopCategoryId":14,"articleId":14,"pageId":14,"portfolioId":14,"children":335},"4-2",{"de":325,"en":326,"es":327,"fr":328,"it":329,"ru":330,"sr":331,"zh":332},"Kaufberatung","Buying Guide","Guía de compra","Guide d'achat","Guida all'acquisto","Гид покупателя","Vodič za kupovinu","购买指南","\u002Famiibo-library\u002Famiibo-buying-smart","i-lucide-shopping-bag",[],{"id":337,"title":338,"url":346,"target":62,"icon":347,"isActive":15,"type":71,"productId":14,"categoryId":14,"shopCategoryId":14,"articleId":14,"pageId":14,"portfolioId":14,"children":348},"4-3",{"de":339,"en":339,"es":340,"fr":341,"it":342,"ru":343,"sr":344,"zh":345},"Fake vs Real","Falso vs. Real","Faux vs Vrai","Falso vs Vero","Фейк vs Оригинал","Lažno vs Pravo","真假对比","\u002Famiibo-library\u002Famiibo-buying-smart\u002Favoid-fake-listings","i-lucide-scan",[],{"id":350,"title":351,"url":360,"target":62,"icon":361,"isActive":15,"type":71,"productId":14,"categoryId":14,"shopCategoryId":14,"articleId":14,"pageId":14,"portfolioId":14,"children":362},"4-4",{"de":352,"en":353,"es":354,"fr":355,"it":356,"ru":357,"sr":358,"zh":359},"Aufbewahrung & Präsentation","Storage & Display","Almacenamiento & exhibición","Rangement & Présentation","Contenitori & Esposizione","Хранение & витрины","Odlaganje & izlaganje","存储 & 展示","\u002Famiibo-library\u002Famiibo-care-and-storage","i-lucide-box",[],{"id":364,"title":365,"url":374,"target":62,"icon":375,"isActive":15,"type":71,"productId":14,"categoryId":14,"shopCategoryId":14,"articleId":14,"pageId":14,"portfolioId":14,"children":376},"4-5",{"de":366,"en":367,"es":368,"fr":369,"it":370,"ru":371,"sr":372,"zh":373},"Preisübersicht","Price Guide","Guía de precios","Guide des prix","Guida ai prezzi","Гид по ценам","Cenovnik","价格指南","\u002Fcollections\u002Fprice-guide","i-lucide-bar-chart-3",[],{"id":378,"title":379,"url":388,"target":62,"icon":389,"isActive":15,"type":71,"productId":14,"categoryId":14,"shopCategoryId":14,"articleId":14,"pageId":14,"portfolioId":14,"children":390},"4-6",{"de":380,"en":381,"es":382,"fr":383,"it":384,"ru":385,"sr":386,"zh":387},"Raritäten","Rare Finds","Hallazgos únicos","Trouvailles rares","Pezzi rari","Редкие находки","Retki nalazi","稀有发现","\u002Fcollections\u002Frare-and-notable","i-lucide-trophy",[],{"id":392,"title":393,"url":401,"target":62,"icon":402,"isActive":15,"productId":14,"categoryId":14,"shopCategoryId":14,"articleId":14,"pageId":14,"portfolioId":14,"children":403},"5",{"de":394,"en":395,"es":396,"fr":395,"it":397,"ru":398,"sr":399,"zh":400},"Technik","Tech","Tecnología","Tecnologia","Технологии","Tehnologija","科技","\u002Ftech","i-lucide-cpu",[404,415,427,440,453],{"id":405,"title":406,"url":401,"target":62,"icon":83,"isActive":15,"productId":14,"categoryId":14,"shopCategoryId":14,"articleId":14,"pageId":14,"portfolioId":14,"children":414},"5-1",{"de":407,"en":407,"es":408,"fr":409,"it":410,"ru":411,"sr":412,"zh":413},"Tech Hub","Centro tecnológico","Hub Tech","Hub Tecnologico","Технохаб","Tehnološki centar","科技中心",[],{"id":416,"title":417,"url":424,"target":62,"icon":425,"isActive":15,"type":71,"productId":14,"categoryId":14,"shopCategoryId":14,"articleId":14,"pageId":14,"portfolioId":14,"children":426},"5-2",{"de":418,"en":419,"fr":420,"it":421,"ru":422,"zh":423},"Audio- & Mikrofonqualität","Audio & Mic Quality","Qualité audio & micro","Qualità audio & mic","Качество звука & микрофона","音频 & 麦克风质量","\u002Fgear\u002Faudio","i-lucide-mic",[],{"id":428,"title":429,"url":437,"target":62,"icon":438,"isActive":15,"type":71,"productId":14,"categoryId":14,"shopCategoryId":14,"articleId":14,"pageId":14,"portfolioId":14,"children":439},"5-3",{"de":430,"en":431,"es":432,"fr":433,"it":434,"sr":435,"zh":436},"Controller & Zubehör","Controllers & Accessories","Mandos & accesorios","Manettes & accessoires","Controller & Accessori","Kontroleri & dodatna oprema","控制器 & 配件","\u002Fgear\u002Fcontrols","i-lucide-joystick",[],{"id":441,"title":442,"url":450,"target":62,"icon":451,"isActive":15,"type":71,"productId":14,"categoryId":14,"shopCategoryId":14,"articleId":14,"pageId":14,"portfolioId":14,"children":452},"5-4",{"de":443,"en":444,"es":445,"fr":446,"it":447,"ru":448,"sr":449},"Displays & Aufnahme","Displays & Capture","Pantallas & Captura","Écrans & Capture","Display & Acquisizione","Дисплеи & Захват","Ekrani & snimanje","\u002Fgear\u002Fdisplays","i-lucide-monitor",[],{"id":454,"title":455,"url":464,"target":62,"icon":465,"isActive":15,"type":71,"productId":14,"categoryId":14,"shopCategoryId":14,"articleId":14,"pageId":14,"portfolioId":14,"children":466},"5-5",{"de":456,"en":457,"es":458,"fr":459,"it":460,"ru":461,"sr":462,"zh":463},"Netzwerkstabilität","Network Stability","Estabilidad de la red","Stabilité du réseau","Stabilità della rete","Стабильность сети","Stabilnost mreže","网络稳定性","\u002Fplaybooks\u002Fnetwork-stability","i-lucide-wifi",[],{"id":468,"title":469,"url":477,"target":62,"icon":478,"isActive":15,"productId":14,"categoryId":14,"shopCategoryId":14,"articleId":14,"pageId":14,"portfolioId":14,"children":479},"6",{"de":470,"en":470,"es":471,"fr":472,"it":473,"ru":474,"sr":475,"zh":476},"Shop","Tienda","Boutique","Negozio","Магазин","Prodavnica","商店","\u002Fshop","i-lucide-shopping-cart",[480,492,498,506,519],{"id":481,"title":482,"url":477,"target":62,"icon":490,"isActive":15,"productId":14,"categoryId":14,"shopCategoryId":14,"articleId":14,"pageId":14,"portfolioId":14,"children":491},"6-1",{"de":483,"en":484,"es":485,"fr":486,"ru":487,"sr":488,"zh":489},"Shop-Hub","Shop Hub","Centro de compras","Espace Boutique","Центр магазина","Centar za kupovinu","购物中心","i-lucide-store",[],{"id":493,"title":494,"url":496,"target":62,"icon":70,"isActive":15,"type":71,"productId":14,"categoryId":14,"shopCategoryId":14,"articleId":14,"pageId":14,"portfolioId":14,"children":497},"6-2",{"de":68,"en":68,"es":495,"fr":495,"it":495,"sr":495,"zh":495},"Amiibo","\u002Famiibo-shop",[],{"id":499,"title":500,"url":503,"target":62,"icon":504,"isActive":15,"type":71,"productId":14,"categoryId":14,"shopCategoryId":14,"articleId":14,"pageId":14,"portfolioId":14,"children":505},"6-3",{"de":501,"en":501,"es":501,"fr":501,"it":501,"ru":501,"sr":501,"zh":502},"LEGO","乐高","\u002Flego-shop","i-lucide-blocks",[],{"id":507,"title":508,"url":516,"target":62,"icon":517,"isActive":15,"productId":14,"categoryId":14,"shopCategoryId":14,"articleId":14,"pageId":14,"portfolioId":14,"children":518},"6-4",{"de":509,"en":510,"es":511,"fr":512,"it":513,"sr":514,"zh":515},"Figuren & Sammlerstücke","Figures & Collectibles","Figuras & Coleccionables","Figurines & Objets de collection","Figure & Collezionismo","Figure & kolekcionarstvo","手办 & 收藏品","\u002Fshop\u002Ffigures","i-lucide-package",[],{"id":520,"title":521,"url":528,"target":62,"icon":529,"isActive":15,"type":71,"productId":14,"categoryId":14,"shopCategoryId":14,"articleId":14,"pageId":14,"portfolioId":14,"children":530},"6-5",{"de":522,"en":522,"fr":523,"it":524,"ru":525,"sr":526,"zh":527},"Gaming Gear","Équipement gaming","Accessori gaming","Игровое снаряжение","Gejming oprema","游戏装备","\u002Fgaming-gear-shop","i-lucide-headphones",[],{"statusCode":4,"data":532,"message":1997},{"id":533,"title":534,"slug":535,"content":536,"contentJson":537,"excerpt":1157,"featuredImage":1158,"featuredImageAlt":1159,"featuredImageCaption":14,"featuredImageTitle":14,"featuredImageCopyright":14,"featuredImageAuthor":14,"featuredImageSourceUrl":14,"featuredImageLicense":14,"featuredImageIsAiGenerated":771,"status":1160,"publishedAt":1161,"createdAt":1162,"updatedAt":1163,"seoLocalePaths":1164,"categories":1173,"author":1178,"translations":1182},"438","Ваш игровой ассистент знает игру — но знает ли он ваше игровое состояние?","your-game-assistant-knows-the-game-but-does-it-know-your-game-state","\u003Cp>Игровой ассистент может знать механику, понимать патч и всё равно давать плохие советы, потому что он не знает состояние вашего текущего прохождения. Ваше здоровье, инвентарь, перезарядки, флаги квестов, позиция, состав группы, сложность, активные эффекты и прогресс миссии — всё это может изменить правильный следующий шаг.\u003C\u002Fp>\n\u003Caside class=\"editorjs-callout editorjs-callout--info my-6 rounded-xl border p-5 border-blue-300 bg-blue-50 dark:border-blue-900 dark:bg-blue-950\u002F20\" role=\"note\">\u003Cstrong class=\"block mb-2 text-gray-900 dark:text-gray-100\">Прямой ответ\u003C\u002Fstrong>\u003Cdiv class=\"text-gray-700 dark:text-gray-200\">\u003Cstrong>Правильный игровой совет требует достаточного состояния для принятия решения.\u003C\u002Fstrong> Знания игры и патча недостаточно, когда ответ зависит от того, что в данный момент верно в сессии игрока. Если ассистент не может наблюдать или надёжно восстановить эти переменные, он должен запросить их, указать допущения или снизить уверенность.\u003C\u002Fdiv>\u003C\u002Faside>\n\u003Caside class=\"editorjs-callout editorjs-callout--note my-6 rounded-xl border p-5 border-gray-300 bg-gray-50 dark:border-gray-700 dark:bg-gray-900\u002F40\" role=\"note\">\u003Cstrong class=\"block mb-2 text-gray-900 dark:text-gray-100\">Модель, используемая в этой статье\u003C\u002Fstrong>\u003Cdiv class=\"text-gray-700 dark:text-gray-200\">Тест полноты игрового состояния и модель критичного для решения состояния ниже — это практические фреймворки Figure Rocks. Они не являются формальными стандартами игровых движков. Они предназначены для отделения общих игровых знаний от информации, специфичной для сессии, необходимой для обоснованной рекомендации.\u003C\u002Fdiv>\u003C\u002Faside>\n\u003Cnav class=\"editorjs-toc\" data-editorjs-toc=\"true\" aria-label=\"Содержание\">\u003Cstrong class=\"editorjs-toc__title\">Содержание\u003C\u002Fstrong>\u003Col class=\"editorjs-toc__list editorjs-toc__list--depth-0\">\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-5\" class=\"editorjs-toc__link\">Игровые знания и игровое состояние — это разные вещи\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-9\" class=\"editorjs-toc__link\">Игровые движки уже рассматривают состояние как первостепенную информацию\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-13\" class=\"editorjs-toc__link\">Критичное для решения состояние\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-17\" class=\"editorjs-toc__link\">Тест полноты игрового состояния\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-19\" class=\"editorjs-toc__link\">Почему скриншоты помогают — и почему их недостаточно\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-23\" class=\"editorjs-toc__link\">Файл сохранения полнее — но всё ещё не обязательно достаточен\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-27\" class=\"editorjs-toc__link\">Постоянное состояние против временного состояния\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-29\" class=\"editorjs-toc__link\">Самое опасное отсутствующее состояние — то, которое меняет рекомендацию\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-33\" class=\"editorjs-toc__link\">Матрица достаточности состояния\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-35\" class=\"editorjs-toc__link\">Почему игровые ассистенты галлюцинируют состояние, даже когда знают игру\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-39\" class=\"editorjs-toc__link\">Наблюдаемое, сообщённое и предполагаемое состояние\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-41\" class=\"editorjs-toc__link\">Помощник, осведомлённый о состоянии, должен задавать меньше, но лучших вопросов\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-44\" class=\"editorjs-toc__link\">Свежесть состояния имеет значение\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-48\" class=\"editorjs-toc__link\">Состояние патча и состояние игрока решают разные проблемы\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-53\" class=\"editorjs-toc__link\">Проверка целостности игрового состояния\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-55\" class=\"editorjs-toc__link\">Что могло бы изменить этот ответ?\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-58\" class=\"editorjs-toc__link\">Ограничения\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-61\" class=\"editorjs-toc__link\">Заключение\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-64\" class=\"editorjs-toc__link\">Часто задаваемые вопросы\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-66\" class=\"editorjs-toc__link\">Глоссарий\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-68\" class=\"editorjs-toc__link\">Первоисточники\u003C\u002Fa>\u003C\u002Fli>\u003C\u002Fol>\u003C\u002Fnav>\n\u003Ch2 id=\"section-5\">Игровые знания и игровое состояние — это разные вещи\u003C\u002Fh2>\n\u003Cp>Общие игровые знания говорят вам, что может произойти: у способности есть перезарядка, враг сопротивляется определённому типу урона, квест требует флага, маршрут содержит опасность или предмет синергирует со сборкой.\u003C\u002Fp>\n\u003Cp>Игровое состояние говорит вам, что верно сейчас: способность всё ещё на перезарядке, враг в ярости, флаг квеста уже установлен, короткий путь разблокирован, у игрока 12 процентов здоровья или нужный предмет был израсходован пять минут назад.\u003C\u002Fp>\n\u003Cp>Рекомендация может быть правильной на уровне знаний и ошибочной на уровне состояния.\u003C\u002Fp>\n\u003Ch2 id=\"section-9\">Игровые движки уже рассматривают состояние как первостепенную информацию\u003C\u002Fh2>\n\u003Cp>Это различие не искусственное. Документация Unreal Engine от Epic разделяет Game Mode, Game State и Player State. Game State отслеживает информацию, которая меняется во время игры и должна быть доступна в течение сессии, а Player State отслеживает информацию, связанную с отдельными игроками.\u003C\u002Fp>\n\u003Cp>Gameplay Tags в Unreal — ещё один пример. Теги могут представлять текущие условия, такие как состояние движения, возможности, события или другие флаги, и игровая логика может проверять наличие определённых тегов перед разрешением действия.\u003C\u002Fp>\n\u003Cp>Важный урок для ИИ-ассистентов прост: сама игра часто принимает решения на основе явных переменных состояния. Ассистент, у которого нет этих переменных, пытается воспроизвести решение с неполными входными данными.\u003C\u002Fp>\n\u003Ch2 id=\"section-13\">Критичное для решения состояние\u003C\u002Fh2>\n\u003Cp>Не каждая игровая переменная важна для каждого вопроса. Полезная концепция — критичное для решения состояние: наименьший набор текущих переменных, которые могут изменить ответ на конкретный вопрос игрока.\u003C\u002Fp>\n\u003Csection class=\"editorjs-comparison my-6\">\u003Ch3 class=\"mb-3 text-lg font-semibold\">Примеры критичного для решения состояния\u003C\u002Fh3>\u003Cdiv class=\"overflow-x-auto\">\u003Ctable class=\"w-full border-collapse\">\u003Cthead>\u003Ctr>\u003Cth class=\"border border-gray-300 bg-gray-50 px-4 py-3 text-left dark:border-gray-700 dark:bg-gray-900\">\u003C\u002Fth>\u003Cth class=\"border border-gray-300 bg-gray-50 px-4 py-3 text-left font-semibold dark:border-gray-700 dark:bg-gray-900\">Вопрос\u003C\u002Fth>\u003Cth class=\"border border-gray-300 bg-gray-50 px-4 py-3 text-left font-semibold dark:border-gray-700 dark:bg-gray-900\">Вероятное критичное для решения состояние\u003C\u002Fth>\u003Cth class=\"border border-gray-300 bg-gray-50 px-4 py-3 text-left font-semibold dark:border-gray-700 dark:bg-gray-900\">Часто несущественно\u003C\u002Fth>\u003C\u002Ftr>\u003C\u002Fthead>\u003Ctbody>\u003Ctr>\u003Cth class=\"border border-gray-300 px-4 py-3 text-left font-semibold dark:border-gray-700\">Стратегия против босса\u003C\u002Fth>\u003Ctd class=\"border border-gray-300 px-4 py-3 dark:border-gray-700\">\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-3 dark:border-gray-700\">\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-3 dark:border-gray-700\">\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Cth class=\"border border-gray-300 px-4 py-3 text-left font-semibold dark:border-gray-700\">Решение по сборке\u003C\u002Fth>\u003Ctd class=\"border border-gray-300 px-4 py-3 dark:border-gray-700\">\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-3 dark:border-gray-700\">\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-3 dark:border-gray-700\">\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Cth class=\"border border-gray-300 px-4 py-3 text-left font-semibold dark:border-gray-700\">Прогресс квеста\u003C\u002Fth>\u003Ctd class=\"border border-gray-300 px-4 py-3 dark:border-gray-700\">\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-3 dark:border-gray-700\">\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-3 dark:border-gray-700\">\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Cth class=\"border border-gray-300 px-4 py-3 text-left font-semibold dark:border-gray-700\">Навигация\u003C\u002Fth>\u003Ctd class=\"border border-gray-300 px-4 py-3 dark:border-gray-700\">\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-3 dark:border-gray-700\">\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-3 dark:border-gray-700\">\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Cth class=\"border border-gray-300 px-4 py-3 text-left font-semibold dark:border-gray-700\">Решение потратить или сохранить\u003C\u002Fth>\u003Ctd class=\"border border-gray-300 px-4 py-3 dark:border-gray-700\">\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-3 dark:border-gray-700\">\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-3 dark:border-gray-700\">\u003C\u002Ftd>\u003C\u002Ftr>\u003C\u002Ftbody>\u003C\u002Ftable>\u003C\u002Fdiv>\u003C\u002Fsection>\n\u003Caside class=\"editorjs-callout editorjs-callout--success my-6 rounded-xl border p-5 border-emerald-300 bg-emerald-50 dark:border-emerald-900 dark:bg-emerald-950\u002F20\" role=\"note\">\u003Cstrong class=\"block mb-2 text-gray-900 dark:text-gray-100\">Ключевое правило\u003C\u002Fstrong>\u003Cdiv class=\"text-gray-700 dark:text-gray-200\">Ассистенту не нужно всё игровое состояние. Ему нужно \u003Cstrong>состояние, которое может изменить ответ\u003C\u002Fstrong>.\u003C\u002Fdiv>\u003C\u002Faside>\n\u003Ch2 id=\"section-17\">Тест полноты игрового состояния\u003C\u002Fh2>\n\u003Csection class=\"editorjs-process my-6\">\u003Ch3 class=\"mb-3 text-lg font-semibold\">Проверьте, достаточно ли у ассистента состояния для ответа\u003C\u002Fh3>\u003Cdiv class=\"grid grid-cols-1 md:grid-cols-2 xl:grid-cols-3 gap-4\">\u003Cdiv class=\"editorjs-process__step min-w-0  rounded-xl border border-gray-200 dark:border-gray-700 p-4\">\u003Cdiv class=\"text-xs font-semibold text-gray-500 dark:text-gray-400\">1\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 font-semibold text-gray-900 dark:text-gray-100\">1. Определите решение\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 text-sm text-gray-600 dark:text-gray-300\">Что именно игрок пытается выбрать, предсказать, диагностировать или оптимизировать?\u003C\u002Fdiv>\u003C\u002Fdiv>\u003Cdiv class=\"editorjs-process__step min-w-0  rounded-xl border border-gray-200 dark:border-gray-700 p-4\">\u003Cdiv class=\"text-xs font-semibold text-gray-500 dark:text-gray-400\">2\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 font-semibold text-gray-900 dark:text-gray-100\">2. Перечислите переменные, меняющие ответ\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 text-sm text-gray-600 dark:text-gray-300\">Определите текущие переменные, которые могут перевернуть или существенно изменить рекомендацию.\u003C\u002Fdiv>\u003C\u002Fdiv>\u003Cdiv class=\"editorjs-process__step min-w-0  rounded-xl border border-gray-200 dark:border-gray-700 p-4\">\u003Cdiv class=\"text-xs font-semibold text-gray-500 dark:text-gray-400\">3\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 font-semibold text-gray-900 dark:text-gray-100\">3. Отметьте наблюдаемое и предполагаемое состояние\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 text-sm text-gray-600 dark:text-gray-300\">Отделите переменные, которые ассистент действительно знает, от переменных, которые он вывел или угадал.\u003C\u002Fdiv>\u003C\u002Fdiv>\u003Cdiv class=\"editorjs-process__step min-w-0  rounded-xl border border-gray-200 dark:border-gray-700 p-4\">\u003Cdiv class=\"text-xs font-semibold text-gray-500 dark:text-gray-400\">4\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 font-semibold text-gray-900 dark:text-gray-100\">4. Проверьте актуальность\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 text-sm text-gray-600 dark:text-gray-300\">Значение состояния, которое было верным тридцать секунд назад, может уже устареть в текущем бою.\u003C\u002Fdiv>\u003C\u002Fdiv>\u003Cdiv class=\"editorjs-process__step min-w-0  rounded-xl border border-gray-200 dark:border-gray-700 p-4\">\u003Cdiv class=\"text-xs font-semibold text-gray-500 dark:text-gray-400\">5\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 font-semibold text-gray-900 dark:text-gray-100\">5. Проверьте скрытые зависимости\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 text-sm text-gray-600 dark:text-gray-300\">Флаги квестов, внутренние таймеры, состояние сервера или недокументированные переходы могут повлиять на результат.\u003C\u002Fdiv>\u003C\u002Fdiv>\u003Cdiv class=\"editorjs-process__step min-w-0  rounded-xl border border-gray-200 dark:border-gray-700 p-4\">\u003Cdiv class=\"text-xs font-semibold text-gray-500 dark:text-gray-400\">6\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 font-semibold text-gray-900 dark:text-gray-100\">6. Запрашивайте только недостающее критичное состояние\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 text-sm text-gray-600 dark:text-gray-300\">Не запрашивайте полный дамп сохранения, если достаточно двух недостающих переменных.\u003C\u002Fdiv>\u003C\u002Fdiv>\u003Cdiv class=\"editorjs-process__step min-w-0  rounded-xl border border-gray-200 dark:border-gray-700 p-4\">\u003Cdiv class=\"text-xs font-semibold text-gray-500 dark:text-gray-400\">7\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 font-semibold text-gray-900 dark:text-gray-100\">7. Указывайте допущения\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 text-sm text-gray-600 dark:text-gray-300\">Если критичную переменную невозможно наблюдать, раскройте допущение вместо того, чтобы молча его выдумывать.\u003C\u002Fdiv>\u003C\u002Fdiv>\u003C\u002Fdiv>\u003C\u002Fsection>\n\u003Ch2 id=\"section-19\">Почему скриншоты помогают — и почему их недостаточно\u003C\u002Fh2>\n\u003Cp>Скриншот может показать здоровье, инвентарь, местоположение, элементы интерфейса и видимые эффекты состояния. Это ценно, потому что превращает скрытый контекст пользователя в наблюдаемые доказательства.\u003C\u002Fp>\n\u003Cp>Но скриншот — это лишь проекция состояния. Он может не показывать перезарядки, скрытые флаги заданий, серверные переменные, текущие модификаторы сложности, недавно использованные ресурсы, настройки навыков игрока или то, что произошло непосредственно перед снимком экрана.\u003C\u002Fp>\n\u003Cp>Поэтому правильный вопрос не «Может ли ИИ видеть экран?», а «Содержит ли видимый экран состояние, необходимое для этого решения?»\u003C\u002Fp>\n\u003Ch2 id=\"section-23\">Файл сохранения полнее — но всё ещё не обязательно достаточен\u003C\u002Fh2>\n\u003Cp>Структурированное сохранение может показать гораздо больше, чем скриншот: инвентарь, прогресс, флаги, открытые локации, характеристики персонажа и постоянные выборы.\u003C\u002Fp>\n\u003Cp>Даже тогда сохранение может не содержать временное боевое состояние, живую конфигурацию сервера, условия подбора игроков или информацию, которая существует только в памяти во время текущей сессии.\u003C\u002Fp>\n\u003Cp>Для живых советов ассистенту может понадобиться сочетание постоянного и временного состояния.\u003C\u002Fp>\n\u003Ch2 id=\"section-27\">Постоянное состояние против временного состояния\u003C\u002Fh2>\n\u003Cdiv class=\"overflow-x-auto\">\u003Ctable class=\"w-full border-collapse\">\u003Cthead>\u003Ctr>\u003Cth class=\"border border-gray-300 px-4 py-2 text-left font-semibold\">Тип состояния\u003C\u002Fth>\u003Cth class=\"border border-gray-300 px-4 py-2 text-left font-semibold\">Примеры\u003C\u002Fth>\u003Cth class=\"border border-gray-300 px-4 py-2 text-left font-semibold\">Типичное время жизни\u003C\u002Fth>\u003C\u002Ftr>\u003C\u002Fthead>\u003Ctbody>\u003Ctr>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Постоянное\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Прогресс заданий, открытые области, инвентарь, дерево навыков, сюжетные выборы\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Сохраняется при сохранении\u002Fзагрузке\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Сессионное\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Текущее лобби, сид запуска, активная миссия, временное состояние мира\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Текущая игровая сессия или запуск\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Боевое\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Здоровье, фаза врага, перезарядки, баффы, позиция\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">От секунд до минут\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Внешнее\u002Fживое\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Серверное событие, ротация, хотфикс, пул подбора, серверное правило\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Управляется вне локального сохранения\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Производное\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Оценка DPS, эффективность маршрута, уровень риска, ожидаемая ценность ресурса\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Вычисляется из другого состояния\u003C\u002Ftd>\u003C\u002Ftr>\u003C\u002Ftbody>\u003C\u002Ftable>\u003C\u002Fdiv>\n\u003Ch2 id=\"section-29\">Самое опасное отсутствующее состояние — то, которое меняет рекомендацию\u003C\u002Fh2>\n\u003Cp>Отсутствие косметической переменной редко имеет значение. Отсутствие одного флага фазы босса может сделать всю стратегию недействительной.\u003C\u002Fp>\n\u003Cp>Вот почему полноту не следует измерять тем, сколько переменных есть у ассистента. Десять тысяч нерелевантных значений не компенсируют один отсутствующий критически важный для решения флаг.\u003C\u002Fp>\n\u003Cp>Таким образом, качество состояния — это скорее релевантность, корректность и свежесть, а не объём.\u003C\u002Fp>\n\u003Ch2 id=\"section-33\">Матрица достаточности состояния\u003C\u002Fh2>\n\u003Csection class=\"editorjs-comparison my-6\">\u003Ch3 class=\"mb-3 text-lg font-semibold\">Насколько уверенным должен быть ассистент?\u003C\u002Fh3>\u003Cdiv class=\"overflow-x-auto\">\u003Ctable class=\"w-full border-collapse\">\u003Cthead>\u003Ctr>\u003Cth class=\"border border-gray-300 bg-gray-50 px-4 py-3 text-left dark:border-gray-700 dark:bg-gray-900\">\u003C\u002Fth>\u003Cth class=\"border border-gray-300 bg-gray-50 px-4 py-3 text-left font-semibold dark:border-gray-700 dark:bg-gray-900\">Наблюдаемое критическое состояние\u003C\u002Fth>\u003Cth class=\"border border-gray-300 bg-gray-50 px-4 py-3 text-left font-semibold dark:border-gray-700 dark:bg-gray-900\">Отсутствующее критическое состояние\u003C\u002Fth>\u003Cth class=\"border border-gray-300 bg-gray-50 px-4 py-3 text-left font-semibold dark:border-gray-700 dark:bg-gray-900\">Лучшее поведение в ответе\u003C\u002Fth>\u003C\u002Ftr>\u003C\u002Fthead>\u003Ctbody>\u003Ctr>\u003Cth class=\"border border-gray-300 px-4 py-3 text-left font-semibold dark:border-gray-700\">Достаточно полное\u003C\u002Fth>\u003Ctd class=\"border border-gray-300 px-4 py-3 dark:border-gray-700\">\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-3 dark:border-gray-700\">\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-3 dark:border-gray-700\">\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Cth class=\"border border-gray-300 px-4 py-3 text-left font-semibold dark:border-gray-700\">Частично полное\u003C\u002Fth>\u003Ctd class=\"border border-gray-300 px-4 py-3 dark:border-gray-700\">\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-3 dark:border-gray-700\">\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-3 dark:border-gray-700\">\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Cth class=\"border border-gray-300 px-4 py-3 text-left font-semibold dark:border-gray-700\">Слабое состояние\u003C\u002Fth>\u003Ctd class=\"border border-gray-300 px-4 py-3 dark:border-gray-700\">\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-3 dark:border-gray-700\">\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-3 dark:border-gray-700\">\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Cth class=\"border border-gray-300 px-4 py-3 text-left font-semibold dark:border-gray-700\">Неизвестно\u003C\u002Fth>\u003Ctd class=\"border border-gray-300 px-4 py-3 dark:border-gray-700\">\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-3 dark:border-gray-700\">\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-3 dark:border-gray-700\">\u003C\u002Ftd>\u003C\u002Ftr>\u003C\u002Ftbody>\u003C\u002Ftable>\u003C\u002Fdiv>\u003C\u002Fsection>\n\u003Ch2 id=\"section-35\">Почему игровые ассистенты галлюцинируют состояние, даже когда знают игру\u003C\u002Fh2>\n\u003Cp>Языковые модели хорошо дополняют правдоподобные шаблоны. Если игрок говорит «Я на втором боссе и у меня мало лечения», модель может молча заполнить недостающие детали из типичных сценариев прохождения.\u003C\u002Fp>\n\u003Cp>Это может привести к ответу, который звучит персонализированно, но на самом деле не основан на состоянии игрока.\u003C\u002Fp>\n\u003Cp>Надёжный помощник должен различать три категории: наблюдаемое состояние, состояние, сообщённое пользователем, и предполагаемое состояние. Предполагаемое состояние никогда не должно молча превращаться в факт.\u003C\u002Fp>\n\u003Ch2 id=\"section-39\">Наблюдаемое, сообщённое и предполагаемое состояние\u003C\u002Fh2>\n\u003Cdiv class=\"overflow-x-auto\">\u003Ctable class=\"w-full border-collapse\">\u003Cthead>\u003Ctr>\u003Cth class=\"border border-gray-300 px-4 py-2 text-left font-semibold\">Источник состояния\u003C\u002Fth>\u003Cth class=\"border border-gray-300 px-4 py-2 text-left font-semibold\">Пример\u003C\u002Fth>\u003Cth class=\"border border-gray-300 px-4 py-2 text-left font-semibold\">Проблема надёжности\u003C\u002Fth>\u003C\u002Ftr>\u003C\u002Fthead>\u003Ctbody>\u003Ctr>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Наблюдаемое\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Экран\u002FAPI\u002Fсохранение показывает 18 HP\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Всё ещё может быть устаревшим или неверно прочитанным\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Сообщённое пользователем\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Игрок говорит, что ярлык разблокирован\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Обычно полезно, но может быть ошибочным или устаревшим\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Предполагаемое\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Помощник предполагает, что у игрока есть обычный предмет на этом этапе\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Должно оставаться предположением, пока не подтверждено\u003C\u002Ftd>\u003C\u002Ftr>\u003C\u002Ftbody>\u003C\u002Ftable>\u003C\u002Fdiv>\n\u003Ch2 id=\"section-41\">Помощник, осведомлённый о состоянии, должен задавать меньше, но лучших вопросов\u003C\u002Fh2>\n\u003Cp>Решение не в том, чтобы допрашивать игрока обо всём. Оно в том, чтобы определить наименьшее недостающее состояние, которое может изменить решение.\u003C\u002Fp>\n\u003Csection class=\"editorjs-comparison my-6\">\u003Ch3 class=\"mb-3 text-lg font-semibold\">Плохое уточнение против полезного уточнения\u003C\u002Fh3>\u003Cdiv class=\"overflow-x-auto\">\u003Ctable class=\"w-full border-collapse\">\u003Cthead>\u003Ctr>\u003Cth class=\"border border-gray-300 bg-gray-50 px-4 py-3 text-left dark:border-gray-700 dark:bg-gray-900\">\u003C\u002Fth>\u003Cth class=\"border border-gray-300 bg-gray-50 px-4 py-3 text-left font-semibold dark:border-gray-700 dark:bg-gray-900\">Слабый вопрос\u003C\u002Fth>\u003Cth class=\"border border-gray-300 bg-gray-50 px-4 py-3 text-left font-semibold dark:border-gray-700 dark:bg-gray-900\">Вопрос с учётом состояния\u003C\u002Fth>\u003C\u002Ftr>\u003C\u002Fthead>\u003Ctbody>\u003Ctr>\u003Cth class=\"border border-gray-300 px-4 py-3 text-left font-semibold dark:border-gray-700\">Босс\u003C\u002Fth>\u003Ctd class=\"border border-gray-300 px-4 py-3 dark:border-gray-700\">\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-3 dark:border-gray-700\">\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Cth class=\"border border-gray-300 px-4 py-3 text-left font-semibold dark:border-gray-700\">Квест\u003C\u002Fth>\u003Ctd class=\"border border-gray-300 px-4 py-3 dark:border-gray-700\">\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-3 dark:border-gray-700\">\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Cth class=\"border border-gray-300 px-4 py-3 text-left font-semibold dark:border-gray-700\">Маршрут\u003C\u002Fth>\u003Ctd class=\"border border-gray-300 px-4 py-3 dark:border-gray-700\">\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-3 dark:border-gray-700\">\u003C\u002Ftd>\u003C\u002Ftr>\u003C\u002Ftbody>\u003C\u002Ftable>\u003C\u002Fdiv>\u003C\u002Fsection>\n\u003Ch2 id=\"section-44\">Свежесть состояния имеет значение\u003C\u002Fh2>\n\u003Cp>Корректный снимок состояния может стать неверным почти мгновенно. Позиция в бою, здоровье, перезарядки и фаза врага — это высокочастотные переменные. Завершение квеста или разблокированные локации относительно стабильны.\u003C\u002Fp>\n\u003Cp>Поэтому помощник должен приписывать разные ожидания свежести разным классам состояния, а не считать весь извлечённый контекст одинаково актуальным.\u003C\u002Fp>\n\u003Caside class=\"editorjs-callout editorjs-callout--warning my-6 rounded-xl border p-5 border-amber-300 bg-amber-50 dark:border-amber-900 dark:bg-amber-950\u002F20\" role=\"note\">\u003Cstrong class=\"block mb-2 text-gray-900 dark:text-gray-100\">Свежесть — часть достоверности\u003C\u002Fstrong>\u003Cdiv class=\"text-gray-700 dark:text-gray-200\">Значение может быть подлинным и всё равно непригодным, потому что оно описывает игрока \u003Cstrong>до того, как ситуация изменилась\u003C\u002Fstrong>.\u003C\u002Fdiv>\u003C\u002Faside>\n\u003Ch2 id=\"section-48\">Состояние патча и состояние игрока решают разные проблемы\u003C\u002Fh2>\n\u003Cp>Осведомлённость о версии отвечает: «Какие правила сейчас действуют?» Осведомлённость о состоянии игрока отвечает: «Какие из этих правил важны в данной конкретной ситуации?»\u003C\u002Fp>\n\u003Cp>И то, и другое необходимо для сильного совета. Идеально актуальная модель патча всё равно может дать сбой, если она предполагает неверный инвентарь или состояние квеста. Идеальная модель состояния сохранения всё равно может дать сбой, если её значения механик относятся к предыдущему патчу.\u003C\u002Fp>\n\u003Caside class=\"editorjs-referral my-6\">\u003Ca href=\"https:\u002F\u002Ffigure.rocks\u002Fru\u002Fblog\u002Fpatch-notes-are-not-game-state-why-ai-game-advice-goes-stale-after-an-update\" class=\"flex flex-col sm:flex-row gap-4 rounded-xl border border-gray-200 dark:border-gray-700 p-4 transition hover:border-primary-500\">\u003Cdiv class=\"min-w-0 flex-1\">\u003Cstrong class=\"block text-lg text-gray-900 dark:text-gray-100\">Патчноуты — это не состояние игры: почему советы ИИ по играм устаревают после обновления\u003C\u002Fstrong>\u003Cp class=\"mt-2 text-sm text-gray-600 dark:text-gray-300\">Почему патч, платформа, ветка, регион и состояние live-сервиса образуют отдельный слой достоверности для игрового ИИ.\u003C\u002Fp>\u003Cspan class=\"mt-3 inline-flex text-sm font-medium text-primary-600 dark:text-primary-400\">Читать руководство по состоянию патча →\u003C\u002Fspan>\u003C\u002Fdiv>\u003C\u002Fa>\u003C\u002Faside>\n\u003Caside class=\"editorjs-referral my-6\">\u003Ca href=\"https:\u002F\u002Ffigure.rocks\u002Fde\u002Fblog\u002Fwhen-gaming-ai-sounds-right-but-isn-t-the-reasoning-problem-behind-game-assistants-and-agents\" class=\"flex flex-col sm:flex-row gap-4 rounded-xl border border-gray-200 dark:border-gray-700 p-4 transition hover:border-primary-500\">\u003Cdiv class=\"min-w-0 flex-1\">\u003Cstrong class=\"block text-lg text-gray-900 dark:text-gray-100\">Когда игровой ИИ звучит правильно, но это не так: проблема рассуждений за игровыми помощниками и агентами\u003C\u002Fstrong>\u003Cp class=\"mt-2 text-sm text-gray-600 dark:text-gray-300\">Более широкий взгляд на то, почему беглые ответы игровых помощников могут давать сбой, даже когда звучат технически убедительно.\u003C\u002Fp>\u003Cspan class=\"mt-3 inline-flex text-sm font-medium text-primary-600 dark:text-primary-400\">Читать статью о рассуждениях игрового ИИ →\u003C\u002Fspan>\u003C\u002Fdiv>\u003C\u002Fa>\u003C\u002Faside>\n\u003Ch2 id=\"section-53\">Проверка целостности игрового состояния\u003C\u002Fh2>\n\u003Csection class=\"editorjs-process my-6\">\u003Ch3 class=\"mb-3 text-lg font-semibold\">Прежде чем доверять персонализированной игровой рекомендации\u003C\u002Fh3>\u003Cdiv class=\"grid grid-cols-1 md:grid-cols-2 xl:grid-cols-3 gap-4\">\u003Cdiv class=\"editorjs-process__step min-w-0  rounded-xl border border-gray-200 dark:border-gray-700 p-4\">\u003Cdiv class=\"text-xs font-semibold text-gray-500 dark:text-gray-400\">1\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 font-semibold text-gray-900 dark:text-gray-100\">1. Определите, что помощник действительно наблюдал\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 text-sm text-gray-600 dark:text-gray-300\">Экран, сохранение, API, телеметрия, сообщение пользователя или ничего.\u003C\u002Fdiv>\u003C\u002Fdiv>\u003Cdiv class=\"editorjs-process__step min-w-0  rounded-xl border border-gray-200 dark:border-gray-700 p-4\">\u003Cdiv class=\"text-xs font-semibold text-gray-500 dark:text-gray-400\">2\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 font-semibold text-gray-900 dark:text-gray-100\">2. Отделите текущие факты от предположений\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 text-sm text-gray-600 dark:text-gray-300\">Не позволяйте предполагаемому состоянию выдавать себя за наблюдаемое.\u003C\u002Fdiv>\u003C\u002Fdiv>\u003Cdiv class=\"editorjs-process__step min-w-0  rounded-xl border border-gray-200 dark:border-gray-700 p-4\">\u003Cdiv class=\"text-xs font-semibold text-gray-500 dark:text-gray-400\">3\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 font-semibold text-gray-900 dark:text-gray-100\">3. Найдите переменные, критичные для решения\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 text-sm text-gray-600 dark:text-gray-300\">Какие недостающие значения могли бы перевернуть ответ?\u003C\u002Fdiv>\u003C\u002Fdiv>\u003Cdiv class=\"editorjs-process__step min-w-0  rounded-xl border border-gray-200 dark:border-gray-700 p-4\">\u003Cdiv class=\"text-xs font-semibold text-gray-500 dark:text-gray-400\">4\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 font-semibold text-gray-900 dark:text-gray-100\">4. Проверьте свежесть\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 text-sm text-gray-600 dark:text-gray-300\">Могло ли наблюдаемое состояние измениться с момента захвата?\u003C\u002Fdiv>\u003C\u002Fdiv>\u003Cdiv class=\"editorjs-process__step min-w-0  rounded-xl border border-gray-200 dark:border-gray-700 p-4\">\u003Cdiv class=\"text-xs font-semibold text-gray-500 dark:text-gray-400\">5\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 font-semibold text-gray-900 dark:text-gray-100\">5. Проверьте скрытое состояние\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 text-sm text-gray-600 dark:text-gray-300\">Могли ли флаги квестов, состояние сервера или внутренние таймеры иметь значение, но оставаться невидимыми?\u003C\u002Fdiv>\u003C\u002Fdiv>\u003Cdiv class=\"editorjs-process__step min-w-0  rounded-xl border border-gray-200 dark:border-gray-700 p-4\">\u003Cdiv class=\"text-xs font-semibold text-gray-500 dark:text-gray-400\">6\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 font-semibold text-gray-900 dark:text-gray-100\">6. Сделайте рекомендацию условной, когда это необходимо\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 text-sm text-gray-600 dark:text-gray-300\">Если состояние невозможно проверить, укажите ветвление явно.\u003C\u002Fdiv>\u003C\u002Fdiv>\u003C\u002Fdiv>\u003C\u002Fsection>\n\u003Ch2 id=\"section-55\">Что могло бы изменить этот ответ?\u003C\u002Fh2>\n\u003Cp>Проблема становится меньше, если игра предоставляет авторитетное, структурированное и актуальное состояние через API или нативный интерфейс ассистента. В этом случае ИИ может автоматически определить многие критически важные для решения переменные вместо того, чтобы спрашивать игрока.\u003C\u002Fp>\n\u003Cp>Она становится больше в играх со скрытой информацией, процедурными системами, серверными правилами, быстрым боем или намеренно непрозрачными механиками, где ассистент не может наблюдать переменные, определяющие результат.\u003C\u002Fp>\n\u003Ch2 id=\"section-58\">Ограничения\u003C\u002Fh2>\n\u003Cp>Разные игры моделируют состояние по-разному. Категории в этой статье — это диагностическая абстракция, а не утверждение, что каждый игровой движок хранит эти переменные в одной и той же архитектуре.\u003C\u002Fp>\n\u003Cp>Даже полное состояние не гарантирует правильного совета. Ассистент всё ещё может рассуждать плохо, неправильно понимать механики или оптимизировать не ту цель игрока. Полнота состояния устраняет один источник ошибок; она не доказывает вывод.\u003C\u002Fp>\n\u003Ch2 id=\"section-61\">Заключение\u003C\u002Fh2>\n\u003Cp>Игровой ИИ может знать всю вики и всё равно подвести игрока, стоящего перед ним, потому что общие знания — это не то же самое, что текущее состояние.\u003C\u002Fp>\n\u003Cp>Надёжный путь — определить решение, выяснить небольшой набор переменных состояния, которые могут изменить ответ, отделить наблюдаемые факты от предположений и соблюдать актуальность. Вопрос не в том, «сколько контекста у ассистента?». А в том, «есть ли у него состояние, необходимое для этого решения?»\u003C\u002Fp>\n\u003Ch2 id=\"section-64\">Часто задаваемые вопросы\u003C\u002Fh2>\n\u003Csection class=\"editorjs-faq my-6 rounded-xl border border-gray-200 p-5 dark:border-gray-700\">\u003Ch3 class=\"mb-3 text-lg font-semibold\">ИИ-ассистенты, учитывающие состояние игры\u003C\u002Fh3>\u003Cdiv id=\"faq1\" class=\"border-t border-gray-200 py-4 first:border-t-0 dark:border-gray-700\">\u003Ch4 class=\"font-semibold text-gray-900 dark:text-gray-100\">Почему ИИ может хорошо знать игру и всё равно давать плохие советы?\u003C\u002Fh4>\u003Cdiv class=\"mt-2 text-gray-600 dark:text-gray-300\">Потому что общие знания об игре не включают текущее состояние сессии игрока. Правильный выбор может зависеть от здоровья, инвентаря, флагов квестов, перезарядок, местоположения, активных эффектов или других текущих переменных.\u003C\u002Fdiv>\u003C\u002Fdiv>\u003Cdiv id=\"faq2\" class=\"border-t border-gray-200 py-4 first:border-t-0 dark:border-gray-700\">\u003Ch4 class=\"font-semibold text-gray-900 dark:text-gray-100\">Достаточно ли скриншота для персонализированного игрового совета?\u003C\u002Fh4>\u003Cdiv class=\"mt-2 text-gray-600 dark:text-gray-300\">Иногда да, но не всегда. Скриншот показывает только видимое состояние и может упускать скрытые флаги, недавние события, серверные условия или временные переменные за пределами кадра.\u003C\u002Fdiv>\u003C\u002Fdiv>\u003Cdiv id=\"faq3\" class=\"border-t border-gray-200 py-4 first:border-t-0 dark:border-gray-700\">\u003Ch4 class=\"font-semibold text-gray-900 dark:text-gray-100\">Нужен ли ИИ весь файл сохранения?\u003C\u002Fh4>\u003Cdiv class=\"mt-2 text-gray-600 dark:text-gray-300\">Обычно нет. Ему нужен минимальный набор критически важного для решения состояния, которое может изменить ответ.\u003C\u002Fdiv>\u003C\u002Fdiv>\u003Cdiv id=\"faq4\" class=\"border-t border-gray-200 py-4 first:border-t-0 dark:border-gray-700\">\u003Ch4 class=\"font-semibold text-gray-900 dark:text-gray-100\">Что такое критически важное для решения состояние?\u003C\u002Fh4>\u003Cdiv class=\"mt-2 text-gray-600 dark:text-gray-300\">Это набор текущих переменных, значения которых могут существенно изменить рекомендацию для конкретного вопроса.\u003C\u002Fdiv>\u003C\u002Fdiv>\u003Cdiv id=\"faq5\" class=\"border-t border-gray-200 py-4 first:border-t-0 dark:border-gray-700\">\u003Ch4 class=\"font-semibold text-gray-900 dark:text-gray-100\">Может ли идеальное состояние игры гарантировать правильный ответ?\u003C\u002Fh4>\u003Cdiv class=\"mt-2 text-gray-600 dark:text-gray-300\">Нет. Ассистент всё ещё может рассуждать неправильно, использовать устаревшие механики или оптимизировать не ту цель. Полное состояние лишь устраняет один крупный источник ошибок.\u003C\u002Fdiv>\u003C\u002Fdiv>\u003C\u002Fsection>\n\u003Ch2 id=\"section-66\">Глоссарий\u003C\u002Fh2>\n\u003Csection class=\"editorjs-glossary my-6 rounded-xl border border-gray-200 dark:border-gray-700 p-5\">\u003Ch3 class=\"mb-3 text-lg font-semibold\">Ключевые термины состояния игры\u003C\u002Fh3>\u003Cdl>\u003Cdiv id=\"game-state\" class=\"border-t border-gray-200 dark:border-gray-700 py-3 first:border-t-0\">\u003Cdt class=\"font-semibold text-gray-900 dark:text-gray-100\">Состояние игры\u003C\u002Fdt>\u003Cdd class=\"mt-1 text-gray-600 dark:text-gray-300\">Текущий набор переменных, описывающих, что истинно в активной игре или сессии.\u003C\u002Fdd>\u003C\u002Fdiv>\u003Cdiv id=\"decision-critical-state\" class=\"border-t border-gray-200 dark:border-gray-700 py-3 first:border-t-0\">\u003Cdt class=\"font-semibold text-gray-900 dark:text-gray-100\">Критически важное для решения состояние\u003C\u002Fdt>\u003Cdd class=\"mt-1 text-gray-600 dark:text-gray-300\">Минимальное текущее состояние, значения которого могут изменить ответ на конкретное решение игрока.\u003C\u002Fdd>\u003C\u002Fdiv>\u003Cdiv id=\"persistent-state\" class=\"border-t border-gray-200 dark:border-gray-700 py-3 first:border-t-0\">\u003Cdt class=\"font-semibold text-gray-900 dark:text-gray-100\">Постоянное состояние\u003C\u002Fdt>\u003Cdd class=\"mt-1 text-gray-600 dark:text-gray-300\">Состояние, такое как прогресс, инвентарь или сюжетные выборы, которое обычно сохраняется при сохранении\u002Fзагрузке.\u003C\u002Fdd>\u003C\u002Fdiv>\u003Cdiv id=\"transient-state\" class=\"border-t border-gray-200 dark:border-gray-700 py-3 first:border-t-0\">\u003Cdt class=\"font-semibold text-gray-900 dark:text-gray-100\">Временное состояние\u003C\u002Fdt>\u003Cdd class=\"mt-1 text-gray-600 dark:text-gray-300\">Кратковременные значения, такие как здоровье, перезарядки, позиция или активные эффекты, которые могут быстро меняться.\u003C\u002Fdd>\u003C\u002Fdiv>\u003Cdiv id=\"game-state-completeness-test\" class=\"border-t border-gray-200 dark:border-gray-700 py-3 first:border-t-0\">\u003Cdt class=\"font-semibold text-gray-900 dark:text-gray-100\">Тест полноты состояния игры\u003C\u002Fdt>\u003Cdd class=\"mt-1 text-gray-600 dark:text-gray-300\">Фреймворк Figure Rocks для проверки того, достаточно ли у ассистента релевантного, актуального состояния для выдачи обоснованной рекомендации.\u003C\u002Fdd>\u003C\u002Fdiv>\u003C\u002Fdl>\u003C\u002Fsection>\n\u003Ch2 id=\"section-68\">Первоисточники\u003C\u002Fh2>\n\u003Ca href=\"https:\u002F\u002Fdev.epicgames.com\u002Fdocumentation\u002Funreal-engine\u002Fgame-mode-and-game-state-in-unreal-engine\" target=\"_blank\" rel=\"noopener noreferrer\" class=\"editorjs-link-tool block border border-gray-200 dark:border-gray-700 rounded-lg p-4 transition text-gray-900 dark:text-gray-100 hover:border-primary-500 hover:bg-primary-50 dark:hover:bg-gray-900 hover:text-gray-900 dark:hover:text-gray-100\">\u003Cstrong class=\"block font-semibold\">Epic Games — Game Mode и Game State в Unreal Engine\u003C\u002Fstrong>\u003Cp class=\"text-sm text-gray-600 dark:text-gray-400\">Официальная документация Unreal Engine, описывающая Game Mode, Game State и информацию о сессии, связанную с игроком.\u003C\u002Fp>\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fdev.epicgames.com\u002Fdocumentation\u002Funreal-engine\u002Fgameplay-framework-quick-reference-in-unreal-engine\" target=\"_blank\" rel=\"noopener noreferrer\" class=\"editorjs-link-tool block border border-gray-200 dark:border-gray-700 rounded-lg p-4 transition text-gray-900 dark:text-gray-100 hover:border-primary-500 hover:bg-primary-50 dark:hover:bg-gray-900 hover:text-gray-900 dark:hover:text-gray-100\">\u003Cstrong class=\"block font-semibold\">Epic Games — Краткий справочник по Gameplay Framework\u003C\u002Fstrong>\u003Cp class=\"text-sm text-gray-600 dark:text-gray-400\">Официальный справочник, объясняющий, как GameState и PlayerState отслеживают текущую информацию об игре и игроке.\u003C\u002Fp>\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fdev.epicgames.com\u002Fdocumentation\u002Funreal-engine\u002Fusing-gameplay-tags-in-unreal-engine\" target=\"_blank\" rel=\"noopener noreferrer\" class=\"editorjs-link-tool block border border-gray-200 dark:border-gray-700 rounded-lg p-4 transition text-gray-900 dark:text-gray-100 hover:border-primary-500 hover:bg-primary-50 dark:hover:bg-gray-900 hover:text-gray-900 dark:hover:text-gray-100\">\u003Cstrong class=\"block font-semibold\">Epic Games — Использование Gameplay Tags\u003C\u002Fstrong>\u003Cp class=\"text-sm text-gray-600 dark:text-gray-400\">Официальная документация, показывающая, как текущие условия и флаги могут быть представлены и оценены в игровой логике.\u003C\u002Fp>\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fdev.epicgames.com\u002Fdocumentation\u002Funreal-engine\u002Fgameplay-attributes-and-gameplay-effects-for-the-gameplay-ability-system-in-unreal-engine\" target=\"_blank\" rel=\"noopener noreferrer\" class=\"editorjs-link-tool block border border-gray-200 dark:border-gray-700 rounded-lg p-4 transition text-gray-900 dark:text-gray-100 hover:border-primary-500 hover:bg-primary-50 dark:hover:bg-gray-900 hover:text-gray-900 dark:hover:text-gray-100\">\u003Cstrong class=\"block font-semibold\">Epic Games — Gameplay Attributes и Effects\u003C\u002Fstrong>\u003Cp class=\"text-sm text-gray-600 dark:text-gray-400\">Официальная документация, показывающая, как числовые свойства текущего состояния, такие как здоровье, сила и скорость передвижения, могут управлять игровым процессом.\u003C\u002Fp>\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Ffigure.rocks\u002Fde\u002Fblog\u002Fwhen-gaming-ai-sounds-right-but-isn-t-the-reasoning-problem-behind-game-assistants-and-agents\" class=\"editorjs-link-tool block border border-gray-200 dark:border-gray-700 rounded-lg p-4 transition text-gray-900 dark:text-gray-100 hover:border-primary-500 hover:bg-primary-50 dark:hover:bg-gray-900 hover:text-gray-900 dark:hover:text-gray-100\">\u003Cstrong class=\"block font-semibold\">Figure Rocks — Когда игровой ИИ звучит правильно, но это не так\u003C\u002Fstrong>\u003Cp class=\"text-sm text-gray-600 dark:text-gray-400\">Внутренняя статья о сбоях рассуждений в игровых ассистентах и агентах.\u003C\u002Fp>\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Ffigure.rocks\u002Fru\u002Fblog\u002Fpatch-notes-are-not-game-state-why-ai-game-advice-goes-stale-after-an-update\" class=\"editorjs-link-tool block border border-gray-200 dark:border-gray-700 rounded-lg p-4 transition text-gray-900 dark:text-gray-100 hover:border-primary-500 hover:bg-primary-50 dark:hover:bg-gray-900 hover:text-gray-900 dark:hover:text-gray-100\">\u003Cstrong class=\"block font-semibold\">Figure Rocks — Примечания к патчу — это не состояние игры\u003C\u002Fstrong>\u003Cp class=\"text-sm text-gray-600 dark:text-gray-400\">Внутренняя статья о достоверности версии, ветки, платформы и live-сервиса.\u003C\u002Fp>\u003C\u002Fa>",{"time":538,"blocks":539,"version":1156},1790374549422,[540,546,554,561,568,574,579,584,589,594,599,604,609,614,619,657,664,669,698,703,708,713,718,723,728,733,738,743,773,778,783,788,793,798,830,835,840,845,850,855,876,881,886,908,913,918,923,930,935,940,945,954,962,967,991,996,1001,1006,1011,1016,1021,1026,1031,1036,1041,1067,1072,1098,1103,1113,1122,1131,1140,1148],{"id":541,"data":542,"type":544,"tunes":545},"intro",{"text":543},"Игровой ассистент может знать механику, понимать патч и всё равно давать плохие советы, потому что он не знает состояние вашего текущего прохождения. Ваше здоровье, инвентарь, перезарядки, флаги квестов, позиция, состав группы, сложность, активные эффекты и прогресс миссии — всё это может изменить правильный следующий шаг.","paragraph",{},{"id":547,"data":548,"type":552,"tunes":553},"direct",{"body":549,"title":550,"variant":551},"\u003Cstrong>Правильный игровой совет требует достаточного состояния для принятия решения.\u003C\u002Fstrong> Знания игры и патча недостаточно, когда ответ зависит от того, что в данный момент верно в сессии игрока. Если ассистент не может наблюдать или надёжно восстановить эти переменные, он должен запросить их, указать допущения или снизить уверенность.","Прямой ответ","info","callout",{},{"id":555,"data":556,"type":552,"tunes":560},"model-note",{"body":557,"title":558,"variant":559},"Тест полноты игрового состояния и модель критичного для решения состояния ниже — это практические фреймворки Figure Rocks. Они не являются формальными стандартами игровых движков. Они предназначены для отделения общих игровых знаний от информации, специфичной для сессии, необходимой для обоснованной рекомендации.","Модель, используемая в этой статье","note",{},{"id":562,"data":563,"type":566,"tunes":567},"toc",{"title":564,"maxLevel":565,"minLevel":47},"Содержание",3,"tableOfContents",{},{"id":569,"data":570,"type":572,"tunes":573},"h-knowledge-state",{"text":571,"level":47},"Игровые знания и игровое состояние — это разные вещи","header",{},{"id":575,"data":576,"type":544,"tunes":578},"p-knowledge-1",{"text":577},"Общие игровые знания говорят вам, что может произойти: у способности есть перезарядка, враг сопротивляется определённому типу урона, квест требует флага, маршрут содержит опасность или предмет синергирует со сборкой.",{},{"id":580,"data":581,"type":544,"tunes":583},"p-knowledge-2",{"text":582},"Игровое состояние говорит вам, что верно сейчас: способность всё ещё на перезарядке, враг в ярости, флаг квеста уже установлен, короткий путь разблокирован, у игрока 12 процентов здоровья или нужный предмет был израсходован пять минут назад.",{},{"id":585,"data":586,"type":544,"tunes":588},"p-knowledge-3",{"text":587},"Рекомендация может быть правильной на уровне знаний и ошибочной на уровне состояния.",{},{"id":590,"data":591,"type":572,"tunes":593},"h-engine",{"text":592,"level":47},"Игровые движки уже рассматривают состояние как первостепенную информацию",{},{"id":595,"data":596,"type":544,"tunes":598},"p-engine-1",{"text":597},"Это различие не искусственное. Документация Unreal Engine от Epic разделяет Game Mode, Game State и Player State. Game State отслеживает информацию, которая меняется во время игры и должна быть доступна в течение сессии, а Player State отслеживает информацию, связанную с отдельными игроками.",{},{"id":600,"data":601,"type":544,"tunes":603},"p-engine-2",{"text":602},"Gameplay Tags в Unreal — ещё один пример. Теги могут представлять текущие условия, такие как состояние движения, возможности, события или другие флаги, и игровая логика может проверять наличие определённых тегов перед разрешением действия.",{},{"id":605,"data":606,"type":544,"tunes":608},"p-engine-3",{"text":607},"Важный урок для ИИ-ассистентов прост: сама игра часто принимает решения на основе явных переменных состояния. Ассистент, у которого нет этих переменных, пытается воспроизвести решение с неполными входными данными.",{},{"id":610,"data":611,"type":572,"tunes":613},"h-critical",{"text":612,"level":47},"Критичное для решения состояние",{},{"id":615,"data":616,"type":544,"tunes":618},"p-critical-1",{"text":617},"Не каждая игровая переменная важна для каждого вопроса. Полезная концепция — критичное для решения состояние: наименьший набор текущих переменных, которые могут изменить ответ на конкретный вопрос игрока.",{},{"id":620,"data":621,"type":655,"tunes":656},"critical-table",{"rows":622,"title":643,"layout":644,"columns":645},[623,627,631,635,639],{"id":624,"label":625,"values":626},"boss","Стратегия против босса",[13,13,13],{"id":628,"label":629,"values":630},"build","Решение по сборке",[13,13,13],{"id":632,"label":633,"values":634},"quest","Прогресс квеста",[13,13,13],{"id":636,"label":637,"values":638},"route","Навигация",[13,13,13],{"id":640,"label":641,"values":642},"economy","Решение потратить или сохранить",[13,13,13],"Примеры критичного для решения состояния","table",[646,649,652],{"id":647,"label":648},"question","Вопрос",{"id":650,"label":651},"critical","Вероятное критичное для решения состояние",{"id":653,"label":654},"irrelevant","Часто несущественно","comparison",{},{"id":658,"data":659,"type":552,"tunes":663},"key-rule",{"body":660,"title":661,"variant":662},"Ассистенту не нужно всё игровое состояние. Ему нужно \u003Cstrong>состояние, которое может изменить ответ\u003C\u002Fstrong>.","Ключевое правило","success",{},{"id":665,"data":666,"type":572,"tunes":668},"h-test",{"text":667,"level":47},"Тест полноты игрового состояния",{},{"id":670,"data":671,"type":696,"tunes":697},"state-test",{"steps":672,"title":694,"orientation":695},[673,676,679,682,685,688,691],{"label":674,"description":675},"1. Определите решение","Что именно игрок пытается выбрать, предсказать, диагностировать или оптимизировать?",{"label":677,"description":678},"2. Перечислите переменные, меняющие ответ","Определите текущие переменные, которые могут перевернуть или существенно изменить рекомендацию.",{"label":680,"description":681},"3. Отметьте наблюдаемое и предполагаемое состояние","Отделите переменные, которые ассистент действительно знает, от переменных, которые он вывел или угадал.",{"label":683,"description":684},"4. Проверьте актуальность","Значение состояния, которое было верным тридцать секунд назад, может уже устареть в текущем бою.",{"label":686,"description":687},"5. Проверьте скрытые зависимости","Флаги квестов, внутренние таймеры, состояние сервера или недокументированные переходы могут повлиять на результат.",{"label":689,"description":690},"6. Запрашивайте только недостающее критичное состояние","Не запрашивайте полный дамп сохранения, если достаточно двух недостающих переменных.",{"label":692,"description":693},"7. Указывайте допущения","Если критичную переменную невозможно наблюдать, раскройте допущение вместо того, чтобы молча его выдумывать.","Проверьте, достаточно ли у ассистента состояния для ответа","auto","processFlow",{},{"id":699,"data":700,"type":572,"tunes":702},"h-screenshot",{"text":701,"level":47},"Почему скриншоты помогают — и почему их недостаточно",{},{"id":704,"data":705,"type":544,"tunes":707},"p-screen-1",{"text":706},"Скриншот может показать здоровье, инвентарь, местоположение, элементы интерфейса и видимые эффекты состояния. Это ценно, потому что превращает скрытый контекст пользователя в наблюдаемые доказательства.",{},{"id":709,"data":710,"type":544,"tunes":712},"p-screen-2",{"text":711},"Но скриншот — это лишь проекция состояния. Он может не показывать перезарядки, скрытые флаги заданий, серверные переменные, текущие модификаторы сложности, недавно использованные ресурсы, настройки навыков игрока или то, что произошло непосредственно перед снимком экрана.",{},{"id":714,"data":715,"type":544,"tunes":717},"p-screen-3",{"text":716},"Поэтому правильный вопрос не «Может ли ИИ видеть экран?», а «Содержит ли видимый экран состояние, необходимое для этого решения?»",{},{"id":719,"data":720,"type":572,"tunes":722},"h-save",{"text":721,"level":47},"Файл сохранения полнее — но всё ещё не обязательно достаточен",{},{"id":724,"data":725,"type":544,"tunes":727},"p-save-1",{"text":726},"Структурированное сохранение может показать гораздо больше, чем скриншот: инвентарь, прогресс, флаги, открытые локации, характеристики персонажа и постоянные выборы.",{},{"id":729,"data":730,"type":544,"tunes":732},"p-save-2",{"text":731},"Даже тогда сохранение может не содержать временное боевое состояние, живую конфигурацию сервера, условия подбора игроков или информацию, которая существует только в памяти во время текущей сессии.",{},{"id":734,"data":735,"type":544,"tunes":737},"p-save-3",{"text":736},"Для живых советов ассистенту может понадобиться сочетание постоянного и временного состояния.",{},{"id":739,"data":740,"type":572,"tunes":742},"h-persistent",{"text":741,"level":47},"Постоянное состояние против временного состояния",{},{"id":744,"data":745,"type":644,"tunes":772},"state-types",{"content":746,"stretched":771,"withHeadings":15},[747,751,755,759,763,767],[748,749,750],"Тип состояния","Примеры","Типичное время жизни",[752,753,754],"Постоянное","Прогресс заданий, открытые области, инвентарь, дерево навыков, сюжетные выборы","Сохраняется при сохранении\u002Fзагрузке",[756,757,758],"Сессионное","Текущее лобби, сид запуска, активная миссия, временное состояние мира","Текущая игровая сессия или запуск",[760,761,762],"Боевое","Здоровье, фаза врага, перезарядки, баффы, позиция","От секунд до минут",[764,765,766],"Внешнее\u002Fживое","Серверное событие, ротация, хотфикс, пул подбора, серверное правило","Управляется вне локального сохранения",[768,769,770],"Производное","Оценка DPS, эффективность маршрута, уровень риска, ожидаемая ценность ресурса","Вычисляется из другого состояния",false,{},{"id":774,"data":775,"type":572,"tunes":777},"h-danger",{"text":776,"level":47},"Самое опасное отсутствующее состояние — то, которое меняет рекомендацию",{},{"id":779,"data":780,"type":544,"tunes":782},"p-danger-1",{"text":781},"Отсутствие косметической переменной редко имеет значение. Отсутствие одного флага фазы босса может сделать всю стратегию недействительной.",{},{"id":784,"data":785,"type":544,"tunes":787},"p-danger-2",{"text":786},"Вот почему полноту не следует измерять тем, сколько переменных есть у ассистента. Десять тысяч нерелевантных значений не компенсируют один отсутствующий критически важный для решения флаг.",{},{"id":789,"data":790,"type":544,"tunes":792},"p-danger-3",{"text":791},"Таким образом, качество состояния — это скорее релевантность, корректность и свежесть, а не объём.",{},{"id":794,"data":795,"type":572,"tunes":797},"h-matrix",{"text":796,"level":47},"Матрица достаточности состояния",{},{"id":799,"data":800,"type":655,"tunes":829},"sufficiency-matrix",{"rows":801,"title":818,"layout":644,"columns":819},[802,806,810,814],{"id":803,"label":804,"values":805},"complete","Достаточно полное",[13,13,13],{"id":807,"label":808,"values":809},"partial","Частично полное",[13,13,13],{"id":811,"label":812,"values":813},"weak","Слабое состояние",[13,13,13],{"id":815,"label":816,"values":817},"unknown","Неизвестно",[13,13,13],"Насколько уверенным должен быть ассистент?",[820,823,826],{"id":821,"label":822},"observed","Наблюдаемое критическое состояние",{"id":824,"label":825},"missing","Отсутствующее критическое состояние",{"id":827,"label":828},"response","Лучшее поведение в ответе",{},{"id":831,"data":832,"type":572,"tunes":834},"h-hallucinate",{"text":833,"level":47},"Почему игровые ассистенты галлюцинируют состояние, даже когда знают игру",{},{"id":836,"data":837,"type":544,"tunes":839},"p-hallucinate-1",{"text":838},"Языковые модели хорошо дополняют правдоподобные шаблоны. Если игрок говорит «Я на втором боссе и у меня мало лечения», модель может молча заполнить недостающие детали из типичных сценариев прохождения.",{},{"id":841,"data":842,"type":544,"tunes":844},"p-hallucinate-2",{"text":843},"Это может привести к ответу, который звучит персонализированно, но на самом деле не основан на состоянии игрока.",{},{"id":846,"data":847,"type":544,"tunes":849},"p-hallucinate-3",{"text":848},"Надёжный помощник должен различать три категории: наблюдаемое состояние, состояние, сообщённое пользователем, и предполагаемое состояние. Предполагаемое состояние никогда не должно молча превращаться в факт.",{},{"id":851,"data":852,"type":572,"tunes":854},"h-three-state",{"text":853,"level":47},"Наблюдаемое, сообщённое и предполагаемое состояние",{},{"id":856,"data":857,"type":644,"tunes":875},"source-table",{"content":858,"stretched":771,"withHeadings":15},[859,863,867,871],[860,861,862],"Источник состояния","Пример","Проблема надёжности",[864,865,866],"Наблюдаемое","Экран\u002FAPI\u002Fсохранение показывает 18 HP","Всё ещё может быть устаревшим или неверно прочитанным",[868,869,870],"Сообщённое пользователем","Игрок говорит, что ярлык разблокирован","Обычно полезно, но может быть ошибочным или устаревшим",[872,873,874],"Предполагаемое","Помощник предполагает, что у игрока есть обычный предмет на этом этапе","Должно оставаться предположением, пока не подтверждено",{},{"id":877,"data":878,"type":572,"tunes":880},"h-questions",{"text":879,"level":47},"Помощник, осведомлённый о состоянии, должен задавать меньше, но лучших вопросов",{},{"id":882,"data":883,"type":544,"tunes":885},"p-questions-1",{"text":884},"Решение не в том, чтобы допрашивать игрока обо всём. Оно в том, чтобы определить наименьшее недостающее состояние, которое может изменить решение.",{},{"id":887,"data":888,"type":655,"tunes":907},"questions-table",{"rows":889,"title":899,"layout":644,"columns":900},[890,893,896],{"id":624,"label":891,"values":892},"Босс",[13,13],{"id":632,"label":894,"values":895},"Квест",[13,13],{"id":636,"label":897,"values":898},"Маршрут",[13,13],"Плохое уточнение против полезного уточнения",[901,904],{"id":902,"label":903},"bad","Слабый вопрос",{"id":905,"label":906},"good","Вопрос с учётом состояния",{},{"id":909,"data":910,"type":572,"tunes":912},"h-freshness",{"text":911,"level":47},"Свежесть состояния имеет значение",{},{"id":914,"data":915,"type":544,"tunes":917},"p-fresh-1",{"text":916},"Корректный снимок состояния может стать неверным почти мгновенно. Позиция в бою, здоровье, перезарядки и фаза врага — это высокочастотные переменные. Завершение квеста или разблокированные локации относительно стабильны.",{},{"id":919,"data":920,"type":544,"tunes":922},"p-fresh-2",{"text":921},"Поэтому помощник должен приписывать разные ожидания свежести разным классам состояния, а не считать весь извлечённый контекст одинаково актуальным.",{},{"id":924,"data":925,"type":552,"tunes":929},"fresh-warning",{"body":926,"title":927,"variant":928},"Значение может быть подлинным и всё равно непригодным, потому что оно описывает игрока \u003Cstrong>до того, как ситуация изменилась\u003C\u002Fstrong>.","Свежесть — часть достоверности","warning",{},{"id":931,"data":932,"type":572,"tunes":934},"h-patch-player",{"text":933,"level":47},"Состояние патча и состояние игрока решают разные проблемы",{},{"id":936,"data":937,"type":544,"tunes":939},"p-patch-player-1",{"text":938},"Осведомлённость о версии отвечает: «Какие правила сейчас действуют?» Осведомлённость о состоянии игрока отвечает: «Какие из этих правил важны в данной конкретной ситуации?»",{},{"id":941,"data":942,"type":544,"tunes":944},"p-patch-player-2",{"text":943},"И то, и другое необходимо для сильного совета. Идеально актуальная модель патча всё равно может дать сбой, если она предполагает неверный инвентарь или состояние квеста. Идеальная модель состояния сохранения всё равно может дать сбой, если её значения механик относятся к предыдущему патчу.",{},{"id":946,"data":947,"type":952,"tunes":953},"ref-patch",{"url":948,"title":949,"excerpt":950,"ctaLabel":951},"https:\u002F\u002Ffigure.rocks\u002Fru\u002Fblog\u002Fpatch-notes-are-not-game-state-why-ai-game-advice-goes-stale-after-an-update","Патчноуты — это не состояние игры: почему советы ИИ по играм устаревают после обновления","Почему патч, платформа, ветка, регион и состояние live-сервиса образуют отдельный слой достоверности для игрового ИИ.","Читать руководство по состоянию патча","referralArticle",{},{"id":955,"data":956,"type":952,"tunes":961},"ref-reasoning",{"url":957,"title":958,"excerpt":959,"ctaLabel":960},"https:\u002F\u002Ffigure.rocks\u002Fde\u002Fblog\u002Fwhen-gaming-ai-sounds-right-but-isn-t-the-reasoning-problem-behind-game-assistants-and-agents","Когда игровой ИИ звучит правильно, но это не так: проблема рассуждений за игровыми помощниками и агентами","Более широкий взгляд на то, почему беглые ответы игровых помощников могут давать сбой, даже когда звучат технически убедительно.","Читать статью о рассуждениях игрового ИИ",{},{"id":963,"data":964,"type":572,"tunes":966},"h-integrity",{"text":965,"level":47},"Проверка целостности игрового состояния",{},{"id":968,"data":969,"type":696,"tunes":990},"integrity-flow",{"steps":970,"title":989,"orientation":695},[971,974,977,980,983,986],{"label":972,"description":973},"1. Определите, что помощник действительно наблюдал","Экран, сохранение, API, телеметрия, сообщение пользователя или ничего.",{"label":975,"description":976},"2. Отделите текущие факты от предположений","Не позволяйте предполагаемому состоянию выдавать себя за наблюдаемое.",{"label":978,"description":979},"3. Найдите переменные, критичные для решения","Какие недостающие значения могли бы перевернуть ответ?",{"label":981,"description":982},"4. Проверьте свежесть","Могло ли наблюдаемое состояние измениться с момента захвата?",{"label":984,"description":985},"5. Проверьте скрытое состояние","Могли ли флаги квестов, состояние сервера или внутренние таймеры иметь значение, но оставаться невидимыми?",{"label":987,"description":988},"6. Сделайте рекомендацию условной, когда это необходимо","Если состояние невозможно проверить, укажите ветвление явно.","Прежде чем доверять персонализированной игровой рекомендации",{},{"id":992,"data":993,"type":572,"tunes":995},"h-change",{"text":994,"level":47},"Что могло бы изменить этот ответ?",{},{"id":997,"data":998,"type":544,"tunes":1000},"p-change-1",{"text":999},"Проблема становится меньше, если игра предоставляет авторитетное, структурированное и актуальное состояние через API или нативный интерфейс ассистента. В этом случае ИИ может автоматически определить многие критически важные для решения переменные вместо того, чтобы спрашивать игрока.",{},{"id":1002,"data":1003,"type":544,"tunes":1005},"p-change-2",{"text":1004},"Она становится больше в играх со скрытой информацией, процедурными системами, серверными правилами, быстрым боем или намеренно непрозрачными механиками, где ассистент не может наблюдать переменные, определяющие результат.",{},{"id":1007,"data":1008,"type":572,"tunes":1010},"h-limitations",{"text":1009,"level":47},"Ограничения",{},{"id":1012,"data":1013,"type":544,"tunes":1015},"p-limit-1",{"text":1014},"Разные игры моделируют состояние по-разному. Категории в этой статье — это диагностическая абстракция, а не утверждение, что каждый игровой движок хранит эти переменные в одной и той же архитектуре.",{},{"id":1017,"data":1018,"type":544,"tunes":1020},"p-limit-2",{"text":1019},"Даже полное состояние не гарантирует правильного совета. Ассистент всё ещё может рассуждать плохо, неправильно понимать механики или оптимизировать не ту цель игрока. Полнота состояния устраняет один источник ошибок; она не доказывает вывод.",{},{"id":1022,"data":1023,"type":572,"tunes":1025},"h-conclusion",{"text":1024,"level":47},"Заключение",{},{"id":1027,"data":1028,"type":544,"tunes":1030},"p-conclusion-1",{"text":1029},"Игровой ИИ может знать всю вики и всё равно подвести игрока, стоящего перед ним, потому что общие знания — это не то же самое, что текущее состояние.",{},{"id":1032,"data":1033,"type":544,"tunes":1035},"p-conclusion-2",{"text":1034},"Надёжный путь — определить решение, выяснить небольшой набор переменных состояния, которые могут изменить ответ, отделить наблюдаемые факты от предположений и соблюдать актуальность. Вопрос не в том, «сколько контекста у ассистента?». А в том, «есть ли у него состояние, необходимое для этого решения?»",{},{"id":1037,"data":1038,"type":572,"tunes":1040},"h-faq",{"text":1039,"level":47},"Часто задаваемые вопросы",{},{"id":1042,"data":1043,"type":1042,"tunes":1066},"faq",{"items":1044,"title":1065},[1045,1049,1053,1057,1061],{"id":1046,"answer":1047,"question":1048},"faq1","Потому что общие знания об игре не включают текущее состояние сессии игрока. Правильный выбор может зависеть от здоровья, инвентаря, флагов квестов, перезарядок, местоположения, активных эффектов или других текущих переменных.","Почему ИИ может хорошо знать игру и всё равно давать плохие советы?",{"id":1050,"answer":1051,"question":1052},"faq2","Иногда да, но не всегда. Скриншот показывает только видимое состояние и может упускать скрытые флаги, недавние события, серверные условия или временные переменные за пределами кадра.","Достаточно ли скриншота для персонализированного игрового совета?",{"id":1054,"answer":1055,"question":1056},"faq3","Обычно нет. Ему нужен минимальный набор критически важного для решения состояния, которое может изменить ответ.","Нужен ли ИИ весь файл сохранения?",{"id":1058,"answer":1059,"question":1060},"faq4","Это набор текущих переменных, значения которых могут существенно изменить рекомендацию для конкретного вопроса.","Что такое критически важное для решения состояние?",{"id":1062,"answer":1063,"question":1064},"faq5","Нет. Ассистент всё ещё может рассуждать неправильно, использовать устаревшие механики или оптимизировать не ту цель. Полное состояние лишь устраняет один крупный источник ошибок.","Может ли идеальное состояние игры гарантировать правильный ответ?","ИИ-ассистенты, учитывающие состояние игры",{},{"id":1068,"data":1069,"type":572,"tunes":1071},"h-glossary",{"text":1070,"level":47},"Глоссарий",{},{"id":1073,"data":1074,"type":1073,"tunes":1097},"glossary",{"title":1075,"entries":1076},"Ключевые термины состояния игры",[1077,1081,1085,1089,1093],{"term":1078,"anchor":1079,"definition":1080},"Состояние игры","game-state","Текущий набор переменных, описывающих, что истинно в активной игре или сессии.",{"term":1082,"anchor":1083,"definition":1084},"Критически важное для решения состояние","decision-critical-state","Минимальное текущее состояние, значения которого могут изменить ответ на конкретное решение игрока.",{"term":1086,"anchor":1087,"definition":1088},"Постоянное состояние","persistent-state","Состояние, такое как прогресс, инвентарь или сюжетные выборы, которое обычно сохраняется при сохранении\u002Fзагрузке.",{"term":1090,"anchor":1091,"definition":1092},"Временное состояние","transient-state","Кратковременные значения, такие как здоровье, перезарядки, позиция или активные эффекты, которые могут быстро меняться.",{"term":1094,"anchor":1095,"definition":1096},"Тест полноты состояния игры","game-state-completeness-test","Фреймворк Figure Rocks для проверки того, достаточно ли у ассистента релевантного, актуального состояния для выдачи обоснованной рекомендации.",{},{"id":1099,"data":1100,"type":572,"tunes":1102},"h-sources",{"text":1101,"level":47},"Первоисточники",{},{"id":1104,"data":1105,"type":1111,"tunes":1112},"src-epic-state",{"link":1106,"meta":1107},"https:\u002F\u002Fdev.epicgames.com\u002Fdocumentation\u002Funreal-engine\u002Fgame-mode-and-game-state-in-unreal-engine",{"image":1108,"title":1109,"description":1110},{"url":13},"Epic Games — Game Mode и Game State в Unreal Engine","Официальная документация Unreal Engine, описывающая Game Mode, Game State и информацию о сессии, связанную с игроком.","linkTool",{},{"id":1114,"data":1115,"type":1111,"tunes":1121},"src-epic-framework",{"link":1116,"meta":1117},"https:\u002F\u002Fdev.epicgames.com\u002Fdocumentation\u002Funreal-engine\u002Fgameplay-framework-quick-reference-in-unreal-engine",{"image":1118,"title":1119,"description":1120},{"url":13},"Epic Games — Краткий справочник по Gameplay Framework","Официальный справочник, объясняющий, как GameState и PlayerState отслеживают текущую информацию об игре и игроке.",{},{"id":1123,"data":1124,"type":1111,"tunes":1130},"src-epic-tags",{"link":1125,"meta":1126},"https:\u002F\u002Fdev.epicgames.com\u002Fdocumentation\u002Funreal-engine\u002Fusing-gameplay-tags-in-unreal-engine",{"image":1127,"title":1128,"description":1129},{"url":13},"Epic Games — Использование Gameplay Tags","Официальная документация, показывающая, как текущие условия и флаги могут быть представлены и оценены в игровой логике.",{},{"id":1132,"data":1133,"type":1111,"tunes":1139},"src-epic-attributes",{"link":1134,"meta":1135},"https:\u002F\u002Fdev.epicgames.com\u002Fdocumentation\u002Funreal-engine\u002Fgameplay-attributes-and-gameplay-effects-for-the-gameplay-ability-system-in-unreal-engine",{"image":1136,"title":1137,"description":1138},{"url":13},"Epic Games — Gameplay Attributes и Effects","Официальная документация, показывающая, как числовые свойства текущего состояния, такие как здоровье, сила и скорость передвижения, могут управлять игровым процессом.",{},{"id":1141,"data":1142,"type":1111,"tunes":1147},"src-figure-reasoning",{"link":957,"meta":1143},{"image":1144,"title":1145,"description":1146},{"url":13},"Figure Rocks — Когда игровой ИИ звучит правильно, но это не так","Внутренняя статья о сбоях рассуждений в игровых ассистентах и агентах.",{},{"id":1149,"data":1150,"type":1111,"tunes":1155},"src-figure-patch",{"link":948,"meta":1151},{"image":1152,"title":1153,"description":1154},{"url":13},"Figure Rocks — Примечания к патчу — это не состояние игры","Внутренняя статья о достоверности версии, ветки, платформы и live-сервиса.",{},"2.31","Игровой ИИ может понимать механику, знать текущий патч и всё равно давать плохие советы, потому что он не знает, что истинно в вашем конкретном прохождении. Это руководство объясняет критически важное для решений состояние игры, скрытые переменные, актуальность и то, как определить, достаточно ли у ассистента контекста, чтобы дать обоснованную рекомендацию.","\u002Fuploads\u002F2026\u002F09\u002Fyour-game-assistant-knows-the-game-but-does-it-know-your-game-state-1790374353002-ue4vxo.webp","your-game-assistant-knows-the-game-but-does-it-know-your-game-state-1790374353002-ue4vxo","PUBLISHED","2026-09-25T18:11:00.000Z","2026-09-25T22:11:01.197Z","2026-09-25T22:16:24.139Z",{"en":1165,"de":1166,"sr":1167,"es":1168,"fr":1169,"it":1170,"ru":1171,"zh":1172},"\u002Fblog\u002Fyour-game-assistant-knows-the-game-but-does-it-know-your-game-state","\u002Fde\u002Fblog\u002Fyour-game-assistant-knows-the-game-but-does-it-know-your-game-state","\u002Fsr\u002Fblog\u002Fyour-game-assistant-knows-the-game-but-does-it-know-your-game-state","\u002Fes\u002Fblog\u002Fyour-game-assistant-knows-the-game-but-does-it-know-your-game-state","\u002Ffr\u002Fblog\u002Fyour-game-assistant-knows-the-game-but-does-it-know-your-game-state","\u002Fit\u002Fblog\u002Fyour-game-assistant-knows-the-game-but-does-it-know-your-game-state","\u002Fru\u002Fblog\u002Fyour-game-assistant-knows-the-game-but-does-it-know-your-game-state","\u002Fzh\u002Fblog\u002Fyour-game-assistant-knows-the-game-but-does-it-know-your-game-state",[1174],{"id":1175,"name":1176,"slug":1177},326,"Руководства по исправлению","fix-playbooks",{"id":392,"login":1179,"email":1180,"displayName":1181},"aleksandar","aleksandar@stajic.de","Aleksandar Stajic",[1183,1683],{"lang":8,"title":1184,"content":1185,"contentJson":1186,"excerpt":1682},"Your Game Assistant Knows the Game — But Does It Know Your Game State?","{\"time\":1790374353986,\"blocks\":[{\"id\":\"intro\",\"type\":\"paragraph\",\"data\":{\"text\":\"A game assistant can know the mechanics, understand the patch and still give bad advice because it does not know the state of your actual run. Your health, inventory, cooldowns, quest flags, position, party composition, difficulty, active effects and mission progress can all change what the correct next move is.\"},\"tunes\":{}},{\"id\":\"direct\",\"type\":\"callout\",\"data\":{\"variant\":\"info\",\"title\":\"Direct answer\",\"body\":\"\u003Cstrong>Correct game advice requires enough state to make the decision.\u003C\u002Fstrong> Knowing the game and patch is not sufficient when the answer depends on what is currently true in the player's session. If the assistant cannot observe or reliably reconstruct those variables, it should ask for them, state assumptions, or lower confidence.\"},\"tunes\":{}},{\"id\":\"model-note\",\"type\":\"callout\",\"data\":{\"variant\":\"note\",\"title\":\"The model used in this article\",\"body\":\"The Game-State Completeness Test and Decision-Critical State model below are practical Figure Rocks frameworks. They are not formal game-engine standards. They are designed to separate general game knowledge from the session-specific information required for a valid recommendation.\"},\"tunes\":{}},{\"id\":\"toc\",\"type\":\"tableOfContents\",\"data\":{\"title\":\"Contents\",\"minLevel\":2,\"maxLevel\":3},\"tunes\":{}},{\"id\":\"h-knowledge-state\",\"type\":\"header\",\"data\":{\"text\":\"Game knowledge and game state are different things\",\"level\":2},\"tunes\":{}},{\"id\":\"p-knowledge-1\",\"type\":\"paragraph\",\"data\":{\"text\":\"General game knowledge tells you what can happen: an ability has a cooldown, an enemy resists a damage type, a quest requires a flag, a route contains a hazard, or an item synergizes with a build.\"},\"tunes\":{}},{\"id\":\"p-knowledge-2\",\"type\":\"paragraph\",\"data\":{\"text\":\"Game state tells you what is true now: the ability is still on cooldown, the enemy is enraged, the quest flag is already set, the shortcut is unlocked, the player has 12 percent health, or the required item was consumed five minutes ago.\"},\"tunes\":{}},{\"id\":\"p-knowledge-3\",\"type\":\"paragraph\",\"data\":{\"text\":\"A recommendation can be correct at the knowledge layer and wrong at the state layer.\"},\"tunes\":{}},{\"id\":\"h-engine\",\"type\":\"header\",\"data\":{\"text\":\"Game engines already treat state as first-class information\",\"level\":2},\"tunes\":{}},{\"id\":\"p-engine-1\",\"type\":\"paragraph\",\"data\":{\"text\":\"This distinction is not artificial. Epic's Unreal Engine documentation separates Game Mode from Game State and Player State. Game State tracks information that changes during play and must be available across the session, while Player State tracks information associated with individual players.\"},\"tunes\":{}},{\"id\":\"p-engine-2\",\"type\":\"paragraph\",\"data\":{\"text\":\"Unreal's Gameplay Tags provide another example. Tags can represent current conditions such as movement state, capabilities, events or other flags, and gameplay logic can evaluate whether particular tags are present before allowing an action.\"},\"tunes\":{}},{\"id\":\"p-engine-3\",\"type\":\"paragraph\",\"data\":{\"text\":\"The important lesson for AI assistants is simple: the game itself often makes decisions from explicit state variables. An assistant that lacks those variables is trying to reproduce a decision with an incomplete input.\"},\"tunes\":{}},{\"id\":\"h-critical\",\"type\":\"header\",\"data\":{\"text\":\"Decision-Critical State\",\"level\":2},\"tunes\":{}},{\"id\":\"p-critical-1\",\"type\":\"paragraph\",\"data\":{\"text\":\"Not every game variable matters to every question. The useful concept is Decision-Critical State: the smallest set of current variables that can change the answer to the player's specific question.\"},\"tunes\":{}},{\"id\":\"critical-table\",\"type\":\"comparison\",\"data\":{\"title\":\"Examples of decision-critical state\",\"layout\":\"table\",\"columns\":[{\"id\":\"question\",\"label\":\"Question\"},{\"id\":\"critical\",\"label\":\"Likely decision-critical state\"},{\"id\":\"irrelevant\",\"label\":\"Often irrelevant\"}],\"rows\":[{\"id\":\"boss\",\"label\":\"Boss strategy\",\"values\":[\"\",\"\",\"\"]},{\"id\":\"build\",\"label\":\"Build decision\",\"values\":[\"\",\"\",\"\"]},{\"id\":\"quest\",\"label\":\"Quest progression\",\"values\":[\"\",\"\",\"\"]},{\"id\":\"route\",\"label\":\"Navigation\",\"values\":[\"\",\"\",\"\"]},{\"id\":\"economy\",\"label\":\"Spend-or-save decision\",\"values\":[\"\",\"\",\"\"]}]},\"tunes\":{}},{\"id\":\"key-rule\",\"type\":\"callout\",\"data\":{\"variant\":\"success\",\"title\":\"The key rule\",\"body\":\"An assistant does not need the entire game state. It needs the \u003Cstrong>state that can change the answer\u003C\u002Fstrong>.\"},\"tunes\":{}},{\"id\":\"h-test\",\"type\":\"header\",\"data\":{\"text\":\"The Game-State Completeness Test\",\"level\":2},\"tunes\":{}},{\"id\":\"state-test\",\"type\":\"processFlow\",\"data\":{\"title\":\"Check whether the assistant has enough state to answer\",\"orientation\":\"auto\",\"steps\":[{\"label\":\"1. Define the decision\",\"description\":\"What exactly is the player trying to choose, predict, diagnose or optimize?\"},{\"label\":\"2. List answer-changing variables\",\"description\":\"Identify the current variables that could reverse or materially alter the recommendation.\"},{\"label\":\"3. Mark observed vs assumed state\",\"description\":\"Separate variables the assistant actually knows from variables it inferred or guessed.\"},{\"label\":\"4. Check freshness\",\"description\":\"A state value that was true thirty seconds ago may already be stale in a live encounter.\"},{\"label\":\"5. Check hidden dependencies\",\"description\":\"Quest flags, internal timers, server state or undocumented transitions may affect the result.\"},{\"label\":\"6. Ask only for missing critical state\",\"description\":\"Do not request a full save dump if two missing variables are enough.\"},{\"label\":\"7. State assumptions\",\"description\":\"If a critical variable cannot be observed, expose the assumption instead of silently inventing it.\"}]},\"tunes\":{}},{\"id\":\"h-screenshot\",\"type\":\"header\",\"data\":{\"text\":\"Why screenshots help — and why they are not enough\",\"level\":2},\"tunes\":{}},{\"id\":\"p-screen-1\",\"type\":\"paragraph\",\"data\":{\"text\":\"A screenshot can expose health, inventory, location, UI markers and visible status effects. That is valuable because it converts hidden user context into observable evidence.\"},\"tunes\":{}},{\"id\":\"p-screen-2\",\"type\":\"paragraph\",\"data\":{\"text\":\"But a screenshot is only a projection of state. It may not show cooldowns, hidden quest flags, server variables, current difficulty modifiers, recently consumed resources, player skill settings or what happened immediately before the image was captured.\"},\"tunes\":{}},{\"id\":\"p-screen-3\",\"type\":\"paragraph\",\"data\":{\"text\":\"The right question is therefore not “Can the AI see the screen?” but “Does the visible screen contain the state required for this decision?”\"},\"tunes\":{}},{\"id\":\"h-save\",\"type\":\"header\",\"data\":{\"text\":\"A save file is more complete — but still not automatically sufficient\",\"level\":2},\"tunes\":{}},{\"id\":\"p-save-1\",\"type\":\"paragraph\",\"data\":{\"text\":\"A structured save can expose far more than a screenshot: inventory, progression, flags, unlocked locations, character stats and persistent choices.\"},\"tunes\":{}},{\"id\":\"p-save-2\",\"type\":\"paragraph\",\"data\":{\"text\":\"Even then, the save may not contain transient combat state, live server configuration, matchmaking conditions or information that exists only in memory during the current session.\"},\"tunes\":{}},{\"id\":\"p-save-3\",\"type\":\"paragraph\",\"data\":{\"text\":\"For live advice, the assistant may need a combination of persistent state and transient state.\"},\"tunes\":{}},{\"id\":\"h-persistent\",\"type\":\"header\",\"data\":{\"text\":\"Persistent state vs transient state\",\"level\":2},\"tunes\":{}},{\"id\":\"state-types\",\"type\":\"table\",\"data\":{\"withHeadings\":true,\"stretched\":false,\"content\":[[\"State type\",\"Examples\",\"Typical lifetime\"],[\"Persistent\",\"Quest progress, unlocked areas, inventory, skill tree, story choices\",\"Survives save\u002Fload\"],[\"Session\",\"Current lobby, run seed, active mission, temporary world state\",\"Current play session or run\"],[\"Encounter\",\"Health, enemy phase, cooldowns, buffs, position\",\"Seconds to minutes\"],[\"External\u002Flive\",\"Server event, rotation, hotfix, matchmaking pool, backend rule\",\"Controlled outside the local save\"],[\"Derived\",\"Estimated DPS, route efficiency, risk level, expected resource value\",\"Computed from other state\"]]},\"tunes\":{}},{\"id\":\"h-danger\",\"type\":\"header\",\"data\":{\"text\":\"The most dangerous missing state is the one that changes the recommendation\",\"level\":2},\"tunes\":{}},{\"id\":\"p-danger-1\",\"type\":\"paragraph\",\"data\":{\"text\":\"Missing a cosmetic variable rarely matters. Missing one boss-phase flag can invalidate the whole strategy.\"},\"tunes\":{}},{\"id\":\"p-danger-2\",\"type\":\"paragraph\",\"data\":{\"text\":\"This is why completeness should not be measured by how many variables the assistant has. Ten thousand irrelevant values do not compensate for one absent decision-critical flag.\"},\"tunes\":{}},{\"id\":\"p-danger-3\",\"type\":\"paragraph\",\"data\":{\"text\":\"State quality is therefore about relevance, correctness and freshness rather than volume.\"},\"tunes\":{}},{\"id\":\"h-matrix\",\"type\":\"header\",\"data\":{\"text\":\"The State Sufficiency Matrix\",\"level\":2},\"tunes\":{}},{\"id\":\"sufficiency-matrix\",\"type\":\"comparison\",\"data\":{\"title\":\"How confident should the assistant be?\",\"layout\":\"table\",\"columns\":[{\"id\":\"observed\",\"label\":\"Observed critical state\"},{\"id\":\"missing\",\"label\":\"Missing critical state\"},{\"id\":\"response\",\"label\":\"Best response behavior\"}],\"rows\":[{\"id\":\"complete\",\"label\":\"Complete enough\",\"values\":[\"\",\"\",\"\"]},{\"id\":\"partial\",\"label\":\"Partially complete\",\"values\":[\"\",\"\",\"\"]},{\"id\":\"weak\",\"label\":\"Weak state\",\"values\":[\"\",\"\",\"\"]},{\"id\":\"unknown\",\"label\":\"Unknown\",\"values\":[\"\",\"\",\"\"]}]},\"tunes\":{}},{\"id\":\"h-hallucinate\",\"type\":\"header\",\"data\":{\"text\":\"Why game assistants hallucinate state even when they know the game\",\"level\":2},\"tunes\":{}},{\"id\":\"p-hallucinate-1\",\"type\":\"paragraph\",\"data\":{\"text\":\"Language models are good at completing plausible patterns. If a player says “I am at the second boss and low on healing,” the model may silently fill missing details from common playthrough patterns.\"},\"tunes\":{}},{\"id\":\"p-hallucinate-2\",\"type\":\"paragraph\",\"data\":{\"text\":\"That can produce an answer that sounds personalized without actually being grounded in the player's state.\"},\"tunes\":{}},{\"id\":\"p-hallucinate-3\",\"type\":\"paragraph\",\"data\":{\"text\":\"A reliable assistant should distinguish three categories: observed state, user-reported state and inferred state. Inferred state should never be silently upgraded into fact.\"},\"tunes\":{}},{\"id\":\"h-three-state\",\"type\":\"header\",\"data\":{\"text\":\"Observed, reported and inferred state\",\"level\":2},\"tunes\":{}},{\"id\":\"source-table\",\"type\":\"table\",\"data\":{\"withHeadings\":true,\"stretched\":false,\"content\":[[\"State source\",\"Example\",\"Reliability issue\"],[\"Observed\",\"Screen\u002FAPI\u002Fsave shows 18 HP\",\"Can still be stale or misread\"],[\"User-reported\",\"Player says the shortcut is unlocked\",\"Usually useful but may be mistaken or outdated\"],[\"Inferred\",\"Assistant assumes the player has a common item at this point\",\"Must remain an assumption unless verified\"]]},\"tunes\":{}},{\"id\":\"h-questions\",\"type\":\"header\",\"data\":{\"text\":\"A state-aware assistant should ask fewer, better questions\",\"level\":2},\"tunes\":{}},{\"id\":\"p-questions-1\",\"type\":\"paragraph\",\"data\":{\"text\":\"The solution is not to interrogate the player about everything. It is to identify the smallest missing state that can change the decision.\"},\"tunes\":{}},{\"id\":\"questions-table\",\"type\":\"comparison\",\"data\":{\"title\":\"Bad clarification vs useful clarification\",\"layout\":\"table\",\"columns\":[{\"id\":\"bad\",\"label\":\"Weak question\"},{\"id\":\"good\",\"label\":\"State-aware question\"}],\"rows\":[{\"id\":\"boss\",\"label\":\"Boss\",\"values\":[\"\",\"\"]},{\"id\":\"quest\",\"label\":\"Quest\",\"values\":[\"\",\"\"]},{\"id\":\"route\",\"label\":\"Route\",\"values\":[\"\",\"\"]}]},\"tunes\":{}},{\"id\":\"h-freshness\",\"type\":\"header\",\"data\":{\"text\":\"State freshness matters\",\"level\":2},\"tunes\":{}},{\"id\":\"p-fresh-1\",\"type\":\"paragraph\",\"data\":{\"text\":\"A correct state snapshot can become wrong almost immediately. Combat position, health, cooldowns and enemy phase are high-frequency variables. Quest completion or unlocked locations are comparatively stable.\"},\"tunes\":{}},{\"id\":\"p-fresh-2\",\"type\":\"paragraph\",\"data\":{\"text\":\"The assistant should therefore attach different freshness expectations to different state classes rather than treating all retrieved context as equally current.\"},\"tunes\":{}},{\"id\":\"fresh-warning\",\"type\":\"callout\",\"data\":{\"variant\":\"warning\",\"title\":\"Freshness is part of validity\",\"body\":\"A value can be authentic and still be unusable because it describes the player \u003Cstrong>before the situation changed\u003C\u002Fstrong>.\"},\"tunes\":{}},{\"id\":\"h-patch-player\",\"type\":\"header\",\"data\":{\"text\":\"Patch state and player state solve different problems\",\"level\":2},\"tunes\":{}},{\"id\":\"p-patch-player-1\",\"type\":\"paragraph\",\"data\":{\"text\":\"Version awareness answers: “Which rules are currently active?” Player-state awareness answers: “Which of those rules matter in this exact situation?”\"},\"tunes\":{}},{\"id\":\"p-patch-player-2\",\"type\":\"paragraph\",\"data\":{\"text\":\"Both are necessary for strong advice. A perfectly current patch model can still fail if it assumes the wrong inventory or quest state. A perfect save-state model can still fail if its mechanic values belong to the previous patch.\"},\"tunes\":{}},{\"id\":\"ref-patch\",\"type\":\"referralArticle\",\"data\":{\"url\":\"https:\u002F\u002Ffigure.rocks\u002Fblog\u002Fpatch-notes-are-not-game-state-why-ai-game-advice-goes-stale-after-an-update\",\"title\":\"Patch Notes Are Not Game State: Why AI Game Advice Goes Stale After an Update\",\"excerpt\":\"Why patch, platform, branch, region and live-service state form a separate validity layer for gaming AI.\",\"ctaLabel\":\"Read the patch-state guide\"},\"tunes\":{}},{\"id\":\"ref-reasoning\",\"type\":\"referralArticle\",\"data\":{\"url\":\"https:\u002F\u002Ffigure.rocks\u002Fde\u002Fblog\u002Fwhen-gaming-ai-sounds-right-but-isn-t-the-reasoning-problem-behind-game-assistants-and-agents\",\"title\":\"When Gaming AI Sounds Right but Isn't: The Reasoning Problem Behind Game Assistants and Agents\",\"excerpt\":\"A broader look at why fluent game-assistant answers can fail even when they sound technically convincing.\",\"ctaLabel\":\"Read the gaming AI reasoning article\"},\"tunes\":{}},{\"id\":\"h-integrity\",\"type\":\"header\",\"data\":{\"text\":\"The Game-State Integrity Check\",\"level\":2},\"tunes\":{}},{\"id\":\"integrity-flow\",\"type\":\"processFlow\",\"data\":{\"title\":\"Before trusting a personalized game recommendation\",\"orientation\":\"auto\",\"steps\":[{\"label\":\"1. Identify what the assistant actually observed\",\"description\":\"Screen, save, API, telemetry, user message or nothing.\"},{\"label\":\"2. Separate current facts from assumptions\",\"description\":\"Do not let inferred state masquerade as observed state.\"},{\"label\":\"3. Find the decision-critical variables\",\"description\":\"Which missing values could reverse the answer?\"},{\"label\":\"4. Check freshness\",\"description\":\"Could the observed state have changed since capture?\"},{\"label\":\"5. Check hidden state\",\"description\":\"Could quest flags, server state or internal timers matter but remain invisible?\"},{\"label\":\"6. Make the recommendation conditional when needed\",\"description\":\"If state cannot be verified, state the branch explicitly.\"}]},\"tunes\":{}},{\"id\":\"h-change\",\"type\":\"header\",\"data\":{\"text\":\"What would change this answer?\",\"level\":2},\"tunes\":{}},{\"id\":\"p-change-1\",\"type\":\"paragraph\",\"data\":{\"text\":\"The problem becomes smaller if a game exposes authoritative, structured and current state through an API or native assistant interface. In that case the AI can resolve many decision-critical variables automatically instead of asking the player.\"},\"tunes\":{}},{\"id\":\"p-change-2\",\"type\":\"paragraph\",\"data\":{\"text\":\"It becomes larger in games with hidden information, procedural systems, server-side rules, rapid combat or intentionally opaque mechanics where the assistant cannot observe the variables that drive the outcome.\"},\"tunes\":{}},{\"id\":\"h-limitations\",\"type\":\"header\",\"data\":{\"text\":\"Limitations\",\"level\":2},\"tunes\":{}},{\"id\":\"p-limit-1\",\"type\":\"paragraph\",\"data\":{\"text\":\"Different games model state differently. The categories in this article are a diagnostic abstraction, not a claim that every game engine stores these variables in the same architecture.\"},\"tunes\":{}},{\"id\":\"p-limit-2\",\"type\":\"paragraph\",\"data\":{\"text\":\"Even complete state does not guarantee correct advice. The assistant can still reason badly, misunderstand mechanics or optimize for the wrong player objective. State completeness removes one failure source; it does not prove the conclusion.\"},\"tunes\":{}},{\"id\":\"h-conclusion\",\"type\":\"header\",\"data\":{\"text\":\"Conclusion\",\"level\":2},\"tunes\":{}},{\"id\":\"p-conclusion-1\",\"type\":\"paragraph\",\"data\":{\"text\":\"A gaming AI can know the entire wiki and still fail the player standing in front of it because general knowledge is not the same thing as current state.\"},\"tunes\":{}},{\"id\":\"p-conclusion-2\",\"type\":\"paragraph\",\"data\":{\"text\":\"The reliable path is to identify the decision, resolve the small set of state variables that can change the answer, separate observed facts from assumptions, and respect freshness. The question is not “How much context does the assistant have?” It is “Does it have the state required for this decision?”\"},\"tunes\":{}},{\"id\":\"h-faq\",\"type\":\"header\",\"data\":{\"text\":\"FAQ\",\"level\":2},\"tunes\":{}},{\"id\":\"faq\",\"type\":\"faq\",\"data\":{\"title\":\"Game-state-aware AI assistants\",\"items\":[{\"id\":\"faq1\",\"question\":\"Why can AI know a game well and still give bad advice?\",\"answer\":\"Because general game knowledge does not include the current state of the player's session. The correct choice can depend on health, inventory, quest flags, cooldowns, location, active effects or other current variables.\"},{\"id\":\"faq2\",\"question\":\"Is a screenshot enough for personalized game advice?\",\"answer\":\"Sometimes, but not always. A screenshot only exposes visible state and may omit hidden flags, recent events, server-side conditions or transient variables outside the frame.\"},{\"id\":\"faq3\",\"question\":\"Does an AI need the entire save file?\",\"answer\":\"Usually no. It needs the smallest set of decision-critical state that can change the answer.\"},{\"id\":\"faq4\",\"question\":\"What is decision-critical state?\",\"answer\":\"It is the set of current variables whose values can materially change the recommendation for a specific question.\"},{\"id\":\"faq5\",\"question\":\"Can perfect game state guarantee a correct answer?\",\"answer\":\"No. The assistant can still reason incorrectly, use stale mechanics or optimize for the wrong objective. Complete state only removes one major source of error.\"}]},\"tunes\":{}},{\"id\":\"h-glossary\",\"type\":\"header\",\"data\":{\"text\":\"Glossary\",\"level\":2},\"tunes\":{}},{\"id\":\"glossary\",\"type\":\"glossary\",\"data\":{\"title\":\"Key game-state terms\",\"entries\":[{\"term\":\"Game state\",\"definition\":\"The current set of variables that describe what is true in the active game or session.\",\"anchor\":\"game-state\"},{\"term\":\"Decision-Critical State\",\"definition\":\"The minimum current state whose values can change the answer to a specific player decision.\",\"anchor\":\"decision-critical-state\"},{\"term\":\"Persistent state\",\"definition\":\"State such as progression, inventory or story choices that normally survives save\u002Fload boundaries.\",\"anchor\":\"persistent-state\"},{\"term\":\"Transient state\",\"definition\":\"Short-lived values such as health, cooldowns, position or active effects that can change rapidly.\",\"anchor\":\"transient-state\"},{\"term\":\"Game-State Completeness Test\",\"definition\":\"A Figure Rocks framework for checking whether an assistant has enough relevant, current state to make a valid recommendation.\",\"anchor\":\"game-state-completeness-test\"}]},\"tunes\":{}},{\"id\":\"h-sources\",\"type\":\"header\",\"data\":{\"text\":\"Primary sources\",\"level\":2},\"tunes\":{}},{\"id\":\"src-epic-state\",\"type\":\"linkTool\",\"data\":{\"link\":\"https:\u002F\u002Fdev.epicgames.com\u002Fdocumentation\u002Funreal-engine\u002Fgame-mode-and-game-state-in-unreal-engine\",\"meta\":{\"image\":{\"url\":\"\"},\"title\":\"Epic Games — Game Mode and Game State in Unreal Engine\",\"description\":\"Official Unreal Engine documentation describing Game Mode, Game State and player-related session information.\"}},\"tunes\":{}},{\"id\":\"src-epic-framework\",\"type\":\"linkTool\",\"data\":{\"link\":\"https:\u002F\u002Fdev.epicgames.com\u002Fdocumentation\u002Funreal-engine\u002Fgameplay-framework-quick-reference-in-unreal-engine\",\"meta\":{\"image\":{\"url\":\"\"},\"title\":\"Epic Games — Gameplay Framework Quick Reference\",\"description\":\"Official reference explaining how GameState and PlayerState track current game and player information.\"}},\"tunes\":{}},{\"id\":\"src-epic-tags\",\"type\":\"linkTool\",\"data\":{\"link\":\"https:\u002F\u002Fdev.epicgames.com\u002Fdocumentation\u002Funreal-engine\u002Fusing-gameplay-tags-in-unreal-engine\",\"meta\":{\"image\":{\"url\":\"\"},\"title\":\"Epic Games — Using Gameplay Tags\",\"description\":\"Official documentation showing how current conditions and flags can be represented and evaluated in gameplay logic.\"}},\"tunes\":{}},{\"id\":\"src-epic-attributes\",\"type\":\"linkTool\",\"data\":{\"link\":\"https:\u002F\u002Fdev.epicgames.com\u002Fdocumentation\u002Funreal-engine\u002Fgameplay-attributes-and-gameplay-effects-for-the-gameplay-ability-system-in-unreal-engine\",\"meta\":{\"image\":{\"url\":\"\"},\"title\":\"Epic Games — Gameplay Attributes and Effects\",\"description\":\"Official documentation showing how numerical current-state properties such as health, strength and movement speed can drive gameplay.\"}},\"tunes\":{}},{\"id\":\"src-figure-reasoning\",\"type\":\"linkTool\",\"data\":{\"link\":\"https:\u002F\u002Ffigure.rocks\u002Fde\u002Fblog\u002Fwhen-gaming-ai-sounds-right-but-isn-t-the-reasoning-problem-behind-game-assistants-and-agents\",\"meta\":{\"image\":{\"url\":\"\"},\"title\":\"Figure Rocks — When Gaming AI Sounds Right but Isn't\",\"description\":\"Internal article on reasoning failures in game assistants and agents.\"}},\"tunes\":{}},{\"id\":\"src-figure-patch\",\"type\":\"linkTool\",\"data\":{\"link\":\"https:\u002F\u002Ffigure.rocks\u002Fblog\u002Fpatch-notes-are-not-game-state-why-ai-game-advice-goes-stale-after-an-update\",\"meta\":{\"image\":{\"url\":\"\"},\"title\":\"Figure Rocks — Patch Notes Are Not Game State\",\"description\":\"Internal article on version, branch, platform and live-service validity.\"}},\"tunes\":{}}],\"version\":\"2.31.6\"}",{"time":1187,"blocks":1188,"version":1681},1790374353986,[1189,1193,1198,1203,1207,1211,1215,1219,1223,1227,1231,1235,1239,1243,1247,1274,1279,1283,1309,1313,1317,1321,1325,1329,1333,1337,1341,1345,1373,1377,1381,1385,1389,1393,1417,1421,1425,1429,1433,1437,1457,1461,1465,1484,1488,1492,1496,1501,1505,1509,1513,1520,1526,1530,1552,1556,1560,1564,1568,1572,1576,1580,1584,1588,1592,1612,1616,1635,1639,1646,1653,1660,1667,1674],{"id":541,"data":1190,"type":544,"tunes":1192},{"text":1191},"A game assistant can know the mechanics, understand the patch and still give bad advice because it does not know the state of your actual run. Your health, inventory, cooldowns, quest flags, position, party composition, difficulty, active effects and mission progress can all change what the correct next move is.",{},{"id":547,"data":1194,"type":552,"tunes":1197},{"body":1195,"title":1196,"variant":551},"\u003Cstrong>Correct game advice requires enough state to make the decision.\u003C\u002Fstrong> Knowing the game and patch is not sufficient when the answer depends on what is currently true in the player's session. If the assistant cannot observe or reliably reconstruct those variables, it should ask for them, state assumptions, or lower confidence.","Direct answer",{},{"id":555,"data":1199,"type":552,"tunes":1202},{"body":1200,"title":1201,"variant":559},"The Game-State Completeness Test and Decision-Critical State model below are practical Figure Rocks frameworks. They are not formal game-engine standards. They are designed to separate general game knowledge from the session-specific information required for a valid recommendation.","The model used in this article",{},{"id":562,"data":1204,"type":566,"tunes":1206},{"title":1205,"maxLevel":565,"minLevel":47},"Contents",{},{"id":569,"data":1208,"type":572,"tunes":1210},{"text":1209,"level":47},"Game knowledge and game state are different things",{},{"id":575,"data":1212,"type":544,"tunes":1214},{"text":1213},"General game knowledge tells you what can happen: an ability has a cooldown, an enemy resists a damage type, a quest requires a flag, a route contains a hazard, or an item synergizes with a build.",{},{"id":580,"data":1216,"type":544,"tunes":1218},{"text":1217},"Game state tells you what is true now: the ability is still on cooldown, the enemy is enraged, the quest flag is already set, the shortcut is unlocked, the player has 12 percent health, or the required item was consumed five minutes ago.",{},{"id":585,"data":1220,"type":544,"tunes":1222},{"text":1221},"A recommendation can be correct at the knowledge layer and wrong at the state layer.",{},{"id":590,"data":1224,"type":572,"tunes":1226},{"text":1225,"level":47},"Game engines already treat state as first-class information",{},{"id":595,"data":1228,"type":544,"tunes":1230},{"text":1229},"This distinction is not artificial. Epic's Unreal Engine documentation separates Game Mode from Game State and Player State. Game State tracks information that changes during play and must be available across the session, while Player State tracks information associated with individual players.",{},{"id":600,"data":1232,"type":544,"tunes":1234},{"text":1233},"Unreal's Gameplay Tags provide another example. Tags can represent current conditions such as movement state, capabilities, events or other flags, and gameplay logic can evaluate whether particular tags are present before allowing an action.",{},{"id":605,"data":1236,"type":544,"tunes":1238},{"text":1237},"The important lesson for AI assistants is simple: the game itself often makes decisions from explicit state variables. An assistant that lacks those variables is trying to reproduce a decision with an incomplete input.",{},{"id":610,"data":1240,"type":572,"tunes":1242},{"text":1241,"level":47},"Decision-Critical State",{},{"id":615,"data":1244,"type":544,"tunes":1246},{"text":1245},"Not every game variable matters to every question. The useful concept is Decision-Critical State: the smallest set of current variables that can change the answer to the player's specific question.",{},{"id":620,"data":1248,"type":655,"tunes":1273},{"rows":1249,"title":1265,"layout":644,"columns":1266},[1250,1253,1256,1259,1262],{"id":624,"label":1251,"values":1252},"Boss strategy",[13,13,13],{"id":628,"label":1254,"values":1255},"Build decision",[13,13,13],{"id":632,"label":1257,"values":1258},"Quest progression",[13,13,13],{"id":636,"label":1260,"values":1261},"Navigation",[13,13,13],{"id":640,"label":1263,"values":1264},"Spend-or-save decision",[13,13,13],"Examples of decision-critical state",[1267,1269,1271],{"id":647,"label":1268},"Question",{"id":650,"label":1270},"Likely decision-critical state",{"id":653,"label":1272},"Often irrelevant",{},{"id":658,"data":1275,"type":552,"tunes":1278},{"body":1276,"title":1277,"variant":662},"An assistant does not need the entire game state. It needs the \u003Cstrong>state that can change the answer\u003C\u002Fstrong>.","The key rule",{},{"id":665,"data":1280,"type":572,"tunes":1282},{"text":1281,"level":47},"The Game-State Completeness Test",{},{"id":670,"data":1284,"type":696,"tunes":1308},{"steps":1285,"title":1307,"orientation":695},[1286,1289,1292,1295,1298,1301,1304],{"label":1287,"description":1288},"1. Define the decision","What exactly is the player trying to choose, predict, diagnose or optimize?",{"label":1290,"description":1291},"2. List answer-changing variables","Identify the current variables that could reverse or materially alter the recommendation.",{"label":1293,"description":1294},"3. Mark observed vs assumed state","Separate variables the assistant actually knows from variables it inferred or guessed.",{"label":1296,"description":1297},"4. Check freshness","A state value that was true thirty seconds ago may already be stale in a live encounter.",{"label":1299,"description":1300},"5. Check hidden dependencies","Quest flags, internal timers, server state or undocumented transitions may affect the result.",{"label":1302,"description":1303},"6. Ask only for missing critical state","Do not request a full save dump if two missing variables are enough.",{"label":1305,"description":1306},"7. State assumptions","If a critical variable cannot be observed, expose the assumption instead of silently inventing it.","Check whether the assistant has enough state to answer",{},{"id":699,"data":1310,"type":572,"tunes":1312},{"text":1311,"level":47},"Why screenshots help — and why they are not enough",{},{"id":704,"data":1314,"type":544,"tunes":1316},{"text":1315},"A screenshot can expose health, inventory, location, UI markers and visible status effects. That is valuable because it converts hidden user context into observable evidence.",{},{"id":709,"data":1318,"type":544,"tunes":1320},{"text":1319},"But a screenshot is only a projection of state. It may not show cooldowns, hidden quest flags, server variables, current difficulty modifiers, recently consumed resources, player skill settings or what happened immediately before the image was captured.",{},{"id":714,"data":1322,"type":544,"tunes":1324},{"text":1323},"The right question is therefore not “Can the AI see the screen?” but “Does the visible screen contain the state required for this decision?”",{},{"id":719,"data":1326,"type":572,"tunes":1328},{"text":1327,"level":47},"A save file is more complete — but still not automatically sufficient",{},{"id":724,"data":1330,"type":544,"tunes":1332},{"text":1331},"A structured save can expose far more than a screenshot: inventory, progression, flags, unlocked locations, character stats and persistent choices.",{},{"id":729,"data":1334,"type":544,"tunes":1336},{"text":1335},"Even then, the save may not contain transient combat state, live server configuration, matchmaking conditions or information that exists only in memory during the current session.",{},{"id":734,"data":1338,"type":544,"tunes":1340},{"text":1339},"For live advice, the assistant may need a combination of persistent state and transient state.",{},{"id":739,"data":1342,"type":572,"tunes":1344},{"text":1343,"level":47},"Persistent state vs transient state",{},{"id":744,"data":1346,"type":644,"tunes":1372},{"content":1347,"stretched":771,"withHeadings":15},[1348,1352,1356,1360,1364,1368],[1349,1350,1351],"State type","Examples","Typical lifetime",[1353,1354,1355],"Persistent","Quest progress, unlocked areas, inventory, skill tree, story choices","Survives save\u002Fload",[1357,1358,1359],"Session","Current lobby, run seed, active mission, temporary world state","Current play session or run",[1361,1362,1363],"Encounter","Health, enemy phase, cooldowns, buffs, position","Seconds to minutes",[1365,1366,1367],"External\u002Flive","Server event, rotation, hotfix, matchmaking pool, backend rule","Controlled outside the local save",[1369,1370,1371],"Derived","Estimated DPS, route efficiency, risk level, expected resource value","Computed from other state",{},{"id":774,"data":1374,"type":572,"tunes":1376},{"text":1375,"level":47},"The most dangerous missing state is the one that changes the recommendation",{},{"id":779,"data":1378,"type":544,"tunes":1380},{"text":1379},"Missing a cosmetic variable rarely matters. Missing one boss-phase flag can invalidate the whole strategy.",{},{"id":784,"data":1382,"type":544,"tunes":1384},{"text":1383},"This is why completeness should not be measured by how many variables the assistant has. Ten thousand irrelevant values do not compensate for one absent decision-critical flag.",{},{"id":789,"data":1386,"type":544,"tunes":1388},{"text":1387},"State quality is therefore about relevance, correctness and freshness rather than volume.",{},{"id":794,"data":1390,"type":572,"tunes":1392},{"text":1391,"level":47},"The State Sufficiency Matrix",{},{"id":799,"data":1394,"type":655,"tunes":1416},{"rows":1395,"title":1408,"layout":644,"columns":1409},[1396,1399,1402,1405],{"id":803,"label":1397,"values":1398},"Complete enough",[13,13,13],{"id":807,"label":1400,"values":1401},"Partially complete",[13,13,13],{"id":811,"label":1403,"values":1404},"Weak state",[13,13,13],{"id":815,"label":1406,"values":1407},"Unknown",[13,13,13],"How confident should the assistant be?",[1410,1412,1414],{"id":821,"label":1411},"Observed critical state",{"id":824,"label":1413},"Missing critical state",{"id":827,"label":1415},"Best response behavior",{},{"id":831,"data":1418,"type":572,"tunes":1420},{"text":1419,"level":47},"Why game assistants hallucinate state even when they know the game",{},{"id":836,"data":1422,"type":544,"tunes":1424},{"text":1423},"Language models are good at completing plausible patterns. If a player says “I am at the second boss and low on healing,” the model may silently fill missing details from common playthrough patterns.",{},{"id":841,"data":1426,"type":544,"tunes":1428},{"text":1427},"That can produce an answer that sounds personalized without actually being grounded in the player's state.",{},{"id":846,"data":1430,"type":544,"tunes":1432},{"text":1431},"A reliable assistant should distinguish three categories: observed state, user-reported state and inferred state. Inferred state should never be silently upgraded into fact.",{},{"id":851,"data":1434,"type":572,"tunes":1436},{"text":1435,"level":47},"Observed, reported and inferred state",{},{"id":856,"data":1438,"type":644,"tunes":1456},{"content":1439,"stretched":771,"withHeadings":15},[1440,1444,1448,1452],[1441,1442,1443],"State source","Example","Reliability issue",[1445,1446,1447],"Observed","Screen\u002FAPI\u002Fsave shows 18 HP","Can still be stale or misread",[1449,1450,1451],"User-reported","Player says the shortcut is unlocked","Usually useful but may be mistaken or outdated",[1453,1454,1455],"Inferred","Assistant assumes the player has a common item at this point","Must remain an assumption unless verified",{},{"id":877,"data":1458,"type":572,"tunes":1460},{"text":1459,"level":47},"A state-aware assistant should ask fewer, better questions",{},{"id":882,"data":1462,"type":544,"tunes":1464},{"text":1463},"The solution is not to interrogate the player about everything. It is to identify the smallest missing state that can change the decision.",{},{"id":887,"data":1466,"type":655,"tunes":1483},{"rows":1467,"title":1477,"layout":644,"columns":1478},[1468,1471,1474],{"id":624,"label":1469,"values":1470},"Boss",[13,13],{"id":632,"label":1472,"values":1473},"Quest",[13,13],{"id":636,"label":1475,"values":1476},"Route",[13,13],"Bad clarification vs useful clarification",[1479,1481],{"id":902,"label":1480},"Weak question",{"id":905,"label":1482},"State-aware question",{},{"id":909,"data":1485,"type":572,"tunes":1487},{"text":1486,"level":47},"State freshness matters",{},{"id":914,"data":1489,"type":544,"tunes":1491},{"text":1490},"A correct state snapshot can become wrong almost immediately. Combat position, health, cooldowns and enemy phase are high-frequency variables. Quest completion or unlocked locations are comparatively stable.",{},{"id":919,"data":1493,"type":544,"tunes":1495},{"text":1494},"The assistant should therefore attach different freshness expectations to different state classes rather than treating all retrieved context as equally current.",{},{"id":924,"data":1497,"type":552,"tunes":1500},{"body":1498,"title":1499,"variant":928},"A value can be authentic and still be unusable because it describes the player \u003Cstrong>before the situation changed\u003C\u002Fstrong>.","Freshness is part of validity",{},{"id":931,"data":1502,"type":572,"tunes":1504},{"text":1503,"level":47},"Patch state and player state solve different problems",{},{"id":936,"data":1506,"type":544,"tunes":1508},{"text":1507},"Version awareness answers: “Which rules are currently active?” Player-state awareness answers: “Which of those rules matter in this exact situation?”",{},{"id":941,"data":1510,"type":544,"tunes":1512},{"text":1511},"Both are necessary for strong advice. A perfectly current patch model can still fail if it assumes the wrong inventory or quest state. A perfect save-state model can still fail if its mechanic values belong to the previous patch.",{},{"id":946,"data":1514,"type":952,"tunes":1519},{"url":1515,"title":1516,"excerpt":1517,"ctaLabel":1518},"https:\u002F\u002Ffigure.rocks\u002Fblog\u002Fpatch-notes-are-not-game-state-why-ai-game-advice-goes-stale-after-an-update","Patch Notes Are Not Game State: Why AI Game Advice Goes Stale After an Update","Why patch, platform, branch, region and live-service state form a separate validity layer for gaming AI.","Read the patch-state guide",{},{"id":955,"data":1521,"type":952,"tunes":1525},{"url":957,"title":1522,"excerpt":1523,"ctaLabel":1524},"When Gaming AI Sounds Right but Isn't: The Reasoning Problem Behind Game Assistants and Agents","A broader look at why fluent game-assistant answers can fail even when they sound technically convincing.","Read the gaming AI reasoning article",{},{"id":963,"data":1527,"type":572,"tunes":1529},{"text":1528,"level":47},"The Game-State Integrity Check",{},{"id":968,"data":1531,"type":696,"tunes":1551},{"steps":1532,"title":1550,"orientation":695},[1533,1536,1539,1542,1544,1547],{"label":1534,"description":1535},"1. Identify what the assistant actually observed","Screen, save, API, telemetry, user message or nothing.",{"label":1537,"description":1538},"2. Separate current facts from assumptions","Do not let inferred state masquerade as observed state.",{"label":1540,"description":1541},"3. Find the decision-critical variables","Which missing values could reverse the answer?",{"label":1296,"description":1543},"Could the observed state have changed since capture?",{"label":1545,"description":1546},"5. Check hidden state","Could quest flags, server state or internal timers matter but remain invisible?",{"label":1548,"description":1549},"6. Make the recommendation conditional when needed","If state cannot be verified, state the branch explicitly.","Before trusting a personalized game recommendation",{},{"id":992,"data":1553,"type":572,"tunes":1555},{"text":1554,"level":47},"What would change this answer?",{},{"id":997,"data":1557,"type":544,"tunes":1559},{"text":1558},"The problem becomes smaller if a game exposes authoritative, structured and current state through an API or native assistant interface. In that case the AI can resolve many decision-critical variables automatically instead of asking the player.",{},{"id":1002,"data":1561,"type":544,"tunes":1563},{"text":1562},"It becomes larger in games with hidden information, procedural systems, server-side rules, rapid combat or intentionally opaque mechanics where the assistant cannot observe the variables that drive the outcome.",{},{"id":1007,"data":1565,"type":572,"tunes":1567},{"text":1566,"level":47},"Limitations",{},{"id":1012,"data":1569,"type":544,"tunes":1571},{"text":1570},"Different games model state differently. The categories in this article are a diagnostic abstraction, not a claim that every game engine stores these variables in the same architecture.",{},{"id":1017,"data":1573,"type":544,"tunes":1575},{"text":1574},"Even complete state does not guarantee correct advice. The assistant can still reason badly, misunderstand mechanics or optimize for the wrong player objective. State completeness removes one failure source; it does not prove the conclusion.",{},{"id":1022,"data":1577,"type":572,"tunes":1579},{"text":1578,"level":47},"Conclusion",{},{"id":1027,"data":1581,"type":544,"tunes":1583},{"text":1582},"A gaming AI can know the entire wiki and still fail the player standing in front of it because general knowledge is not the same thing as current state.",{},{"id":1032,"data":1585,"type":544,"tunes":1587},{"text":1586},"The reliable path is to identify the decision, resolve the small set of state variables that can change the answer, separate observed facts from assumptions, and respect freshness. The question is not “How much context does the assistant have?” It is “Does it have the state required for this decision?”",{},{"id":1037,"data":1589,"type":572,"tunes":1591},{"text":1590,"level":47},"FAQ",{},{"id":1042,"data":1593,"type":1042,"tunes":1611},{"items":1594,"title":1610},[1595,1598,1601,1604,1607],{"id":1046,"answer":1596,"question":1597},"Because general game knowledge does not include the current state of the player's session. The correct choice can depend on health, inventory, quest flags, cooldowns, location, active effects or other current variables.","Why can AI know a game well and still give bad advice?",{"id":1050,"answer":1599,"question":1600},"Sometimes, but not always. A screenshot only exposes visible state and may omit hidden flags, recent events, server-side conditions or transient variables outside the frame.","Is a screenshot enough for personalized game advice?",{"id":1054,"answer":1602,"question":1603},"Usually no. It needs the smallest set of decision-critical state that can change the answer.","Does an AI need the entire save file?",{"id":1058,"answer":1605,"question":1606},"It is the set of current variables whose values can materially change the recommendation for a specific question.","What is decision-critical state?",{"id":1062,"answer":1608,"question":1609},"No. The assistant can still reason incorrectly, use stale mechanics or optimize for the wrong objective. Complete state only removes one major source of error.","Can perfect game state guarantee a correct answer?","Game-state-aware AI assistants",{},{"id":1068,"data":1613,"type":572,"tunes":1615},{"text":1614,"level":47},"Glossary",{},{"id":1073,"data":1617,"type":1073,"tunes":1634},{"title":1618,"entries":1619},"Key game-state terms",[1620,1623,1625,1628,1631],{"term":1621,"anchor":1079,"definition":1622},"Game state","The current set of variables that describe what is true in the active game or session.",{"term":1241,"anchor":1083,"definition":1624},"The minimum current state whose values can change the answer to a specific player decision.",{"term":1626,"anchor":1087,"definition":1627},"Persistent state","State such as progression, inventory or story choices that normally survives save\u002Fload boundaries.",{"term":1629,"anchor":1091,"definition":1630},"Transient state","Short-lived values such as health, cooldowns, position or active effects that can change rapidly.",{"term":1632,"anchor":1095,"definition":1633},"Game-State Completeness Test","A Figure Rocks framework for checking whether an assistant has enough relevant, current state to make a valid recommendation.",{},{"id":1099,"data":1636,"type":572,"tunes":1638},{"text":1637,"level":47},"Primary sources",{},{"id":1104,"data":1640,"type":1111,"tunes":1645},{"link":1106,"meta":1641},{"image":1642,"title":1643,"description":1644},{"url":13},"Epic Games — Game Mode and Game State in Unreal Engine","Official Unreal Engine documentation describing Game Mode, Game State and player-related session information.",{},{"id":1114,"data":1647,"type":1111,"tunes":1652},{"link":1116,"meta":1648},{"image":1649,"title":1650,"description":1651},{"url":13},"Epic Games — Gameplay Framework Quick Reference","Official reference explaining how GameState and PlayerState track current game and player information.",{},{"id":1123,"data":1654,"type":1111,"tunes":1659},{"link":1125,"meta":1655},{"image":1656,"title":1657,"description":1658},{"url":13},"Epic Games — Using Gameplay Tags","Official documentation showing how current conditions and flags can be represented and evaluated in gameplay logic.",{},{"id":1132,"data":1661,"type":1111,"tunes":1666},{"link":1134,"meta":1662},{"image":1663,"title":1664,"description":1665},{"url":13},"Epic Games — Gameplay Attributes and Effects","Official documentation showing how numerical current-state properties such as health, strength and movement speed can drive gameplay.",{},{"id":1141,"data":1668,"type":1111,"tunes":1673},{"link":957,"meta":1669},{"image":1670,"title":1671,"description":1672},{"url":13},"Figure Rocks — When Gaming AI Sounds Right but Isn't","Internal article on reasoning failures in game assistants and agents.",{},{"id":1149,"data":1675,"type":1111,"tunes":1680},{"link":1515,"meta":1676},{"image":1677,"title":1678,"description":1679},{"url":13},"Figure Rocks — Patch Notes Are Not Game State","Internal article on version, branch, platform and live-service validity.",{},"2.31.6","A gaming AI can understand the mechanics, know the current patch and still give bad advice because it does not know what is true in your actual run. This guide explains decision-critical game state, hidden variables, freshness and how to tell whether an assistant has enough context to make a valid recommendation.",{"lang":7,"title":534,"content":536,"contentJson":1684,"excerpt":1157},{"time":538,"blocks":1685,"version":1156},[1686,1689,1692,1695,1698,1701,1704,1707,1710,1713,1716,1719,1722,1725,1728,1746,1749,1752,1763,1766,1769,1772,1775,1778,1781,1784,1787,1790,1800,1803,1806,1809,1812,1815,1831,1834,1837,1840,1843,1846,1854,1857,1860,1873,1876,1879,1882,1885,1888,1891,1894,1897,1900,1903,1913,1916,1919,1922,1925,1928,1931,1934,1937,1940,1943,1952,1955,1964,1967,1972,1977,1982,1987,1992],{"id":541,"data":1687,"type":544,"tunes":1688},{"text":543},{},{"id":547,"data":1690,"type":552,"tunes":1691},{"body":549,"title":550,"variant":551},{},{"id":555,"data":1693,"type":552,"tunes":1694},{"body":557,"title":558,"variant":559},{},{"id":562,"data":1696,"type":566,"tunes":1697},{"title":564,"maxLevel":565,"minLevel":47},{},{"id":569,"data":1699,"type":572,"tunes":1700},{"text":571,"level":47},{},{"id":575,"data":1702,"type":544,"tunes":1703},{"text":577},{},{"id":580,"data":1705,"type":544,"tunes":1706},{"text":582},{},{"id":585,"data":1708,"type":544,"tunes":1709},{"text":587},{},{"id":590,"data":1711,"type":572,"tunes":1712},{"text":592,"level":47},{},{"id":595,"data":1714,"type":544,"tunes":1715},{"text":597},{},{"id":600,"data":1717,"type":544,"tunes":1718},{"text":602},{},{"id":605,"data":1720,"type":544,"tunes":1721},{"text":607},{},{"id":610,"data":1723,"type":572,"tunes":1724},{"text":612,"level":47},{},{"id":615,"data":1726,"type":544,"tunes":1727},{"text":617},{},{"id":620,"data":1729,"type":655,"tunes":1745},{"rows":1730,"title":643,"layout":644,"columns":1741},[1731,1733,1735,1737,1739],{"id":624,"label":625,"values":1732},[13,13,13],{"id":628,"label":629,"values":1734},[13,13,13],{"id":632,"label":633,"values":1736},[13,13,13],{"id":636,"label":637,"values":1738},[13,13,13],{"id":640,"label":641,"values":1740},[13,13,13],[1742,1743,1744],{"id":647,"label":648},{"id":650,"label":651},{"id":653,"label":654},{},{"id":658,"data":1747,"type":552,"tunes":1748},{"body":660,"title":661,"variant":662},{},{"id":665,"data":1750,"type":572,"tunes":1751},{"text":667,"level":47},{},{"id":670,"data":1753,"type":696,"tunes":1762},{"steps":1754,"title":694,"orientation":695},[1755,1756,1757,1758,1759,1760,1761],{"label":674,"description":675},{"label":677,"description":678},{"label":680,"description":681},{"label":683,"description":684},{"label":686,"description":687},{"label":689,"description":690},{"label":692,"description":693},{},{"id":699,"data":1764,"type":572,"tunes":1765},{"text":701,"level":47},{},{"id":704,"data":1767,"type":544,"tunes":1768},{"text":706},{},{"id":709,"data":1770,"type":544,"tunes":1771},{"text":711},{},{"id":714,"data":1773,"type":544,"tunes":1774},{"text":716},{},{"id":719,"data":1776,"type":572,"tunes":1777},{"text":721,"level":47},{},{"id":724,"data":1779,"type":544,"tunes":1780},{"text":726},{},{"id":729,"data":1782,"type":544,"tunes":1783},{"text":731},{},{"id":734,"data":1785,"type":544,"tunes":1786},{"text":736},{},{"id":739,"data":1788,"type":572,"tunes":1789},{"text":741,"level":47},{},{"id":744,"data":1791,"type":644,"tunes":1799},{"content":1792,"stretched":771,"withHeadings":15},[1793,1794,1795,1796,1797,1798],[748,749,750],[752,753,754],[756,757,758],[760,761,762],[764,765,766],[768,769,770],{},{"id":774,"data":1801,"type":572,"tunes":1802},{"text":776,"level":47},{},{"id":779,"data":1804,"type":544,"tunes":1805},{"text":781},{},{"id":784,"data":1807,"type":544,"tunes":1808},{"text":786},{},{"id":789,"data":1810,"type":544,"tunes":1811},{"text":791},{},{"id":794,"data":1813,"type":572,"tunes":1814},{"text":796,"level":47},{},{"id":799,"data":1816,"type":655,"tunes":1830},{"rows":1817,"title":818,"layout":644,"columns":1826},[1818,1820,1822,1824],{"id":803,"label":804,"values":1819},[13,13,13],{"id":807,"label":808,"values":1821},[13,13,13],{"id":811,"label":812,"values":1823},[13,13,13],{"id":815,"label":816,"values":1825},[13,13,13],[1827,1828,1829],{"id":821,"label":822},{"id":824,"label":825},{"id":827,"label":828},{},{"id":831,"data":1832,"type":572,"tunes":1833},{"text":833,"level":47},{},{"id":836,"data":1835,"type":544,"tunes":1836},{"text":838},{},{"id":841,"data":1838,"type":544,"tunes":1839},{"text":843},{},{"id":846,"data":1841,"type":544,"tunes":1842},{"text":848},{},{"id":851,"data":1844,"type":572,"tunes":1845},{"text":853,"level":47},{},{"id":856,"data":1847,"type":644,"tunes":1853},{"content":1848,"stretched":771,"withHeadings":15},[1849,1850,1851,1852],[860,861,862],[864,865,866],[868,869,870],[872,873,874],{},{"id":877,"data":1855,"type":572,"tunes":1856},{"text":879,"level":47},{},{"id":882,"data":1858,"type":544,"tunes":1859},{"text":884},{},{"id":887,"data":1861,"type":655,"tunes":1872},{"rows":1862,"title":899,"layout":644,"columns":1869},[1863,1865,1867],{"id":624,"label":891,"values":1864},[13,13],{"id":632,"label":894,"values":1866},[13,13],{"id":636,"label":897,"values":1868},[13,13],[1870,1871],{"id":902,"label":903},{"id":905,"label":906},{},{"id":909,"data":1874,"type":572,"tunes":1875},{"text":911,"level":47},{},{"id":914,"data":1877,"type":544,"tunes":1878},{"text":916},{},{"id":919,"data":1880,"type":544,"tunes":1881},{"text":921},{},{"id":924,"data":1883,"type":552,"tunes":1884},{"body":926,"title":927,"variant":928},{},{"id":931,"data":1886,"type":572,"tunes":1887},{"text":933,"level":47},{},{"id":936,"data":1889,"type":544,"tunes":1890},{"text":938},{},{"id":941,"data":1892,"type":544,"tunes":1893},{"text":943},{},{"id":946,"data":1895,"type":952,"tunes":1896},{"url":948,"title":949,"excerpt":950,"ctaLabel":951},{},{"id":955,"data":1898,"type":952,"tunes":1899},{"url":957,"title":958,"excerpt":959,"ctaLabel":960},{},{"id":963,"data":1901,"type":572,"tunes":1902},{"text":965,"level":47},{},{"id":968,"data":1904,"type":696,"tunes":1912},{"steps":1905,"title":989,"orientation":695},[1906,1907,1908,1909,1910,1911],{"label":972,"description":973},{"label":975,"description":976},{"label":978,"description":979},{"label":981,"description":982},{"label":984,"description":985},{"label":987,"description":988},{},{"id":992,"data":1914,"type":572,"tunes":1915},{"text":994,"level":47},{},{"id":997,"data":1917,"type":544,"tunes":1918},{"text":999},{},{"id":1002,"data":1920,"type":544,"tunes":1921},{"text":1004},{},{"id":1007,"data":1923,"type":572,"tunes":1924},{"text":1009,"level":47},{},{"id":1012,"data":1926,"type":544,"tunes":1927},{"text":1014},{},{"id":1017,"data":1929,"type":544,"tunes":1930},{"text":1019},{},{"id":1022,"data":1932,"type":572,"tunes":1933},{"text":1024,"level":47},{},{"id":1027,"data":1935,"type":544,"tunes":1936},{"text":1029},{},{"id":1032,"data":1938,"type":544,"tunes":1939},{"text":1034},{},{"id":1037,"data":1941,"type":572,"tunes":1942},{"text":1039,"level":47},{},{"id":1042,"data":1944,"type":1042,"tunes":1951},{"items":1945,"title":1065},[1946,1947,1948,1949,1950],{"id":1046,"answer":1047,"question":1048},{"id":1050,"answer":1051,"question":1052},{"id":1054,"answer":1055,"question":1056},{"id":1058,"answer":1059,"question":1060},{"id":1062,"answer":1063,"question":1064},{},{"id":1068,"data":1953,"type":572,"tunes":1954},{"text":1070,"level":47},{},{"id":1073,"data":1956,"type":1073,"tunes":1963},{"title":1075,"entries":1957},[1958,1959,1960,1961,1962],{"term":1078,"anchor":1079,"definition":1080},{"term":1082,"anchor":1083,"definition":1084},{"term":1086,"anchor":1087,"definition":1088},{"term":1090,"anchor":1091,"definition":1092},{"term":1094,"anchor":1095,"definition":1096},{},{"id":1099,"data":1965,"type":572,"tunes":1966},{"text":1101,"level":47},{},{"id":1104,"data":1968,"type":1111,"tunes":1971},{"link":1106,"meta":1969},{"image":1970,"title":1109,"description":1110},{"url":13},{},{"id":1114,"data":1973,"type":1111,"tunes":1976},{"link":1116,"meta":1974},{"image":1975,"title":1119,"description":1120},{"url":13},{},{"id":1123,"data":1978,"type":1111,"tunes":1981},{"link":1125,"meta":1979},{"image":1980,"title":1128,"description":1129},{"url":13},{},{"id":1132,"data":1983,"type":1111,"tunes":1986},{"link":1134,"meta":1984},{"image":1985,"title":1137,"description":1138},{"url":13},{},{"id":1141,"data":1988,"type":1111,"tunes":1991},{"link":957,"meta":1989},{"image":1990,"title":1145,"description":1146},{"url":13},{},{"id":1149,"data":1993,"type":1111,"tunes":1996},{"link":948,"meta":1994},{"image":1995,"title":1153,"description":1154},{"url":13},{},"Post erfolgreich abgerufen",{"items":1999,"source":2039,"manualIds":2040,"manualMatchedIds":2041},[2000,2007,2013,2020,2027,2033],{"id":2001,"slug":2002,"title":2003,"excerpt":2004,"featuredImage":2005,"publishedAt":2006},"430","input-lag","Исправляем инпут-лаг: что на самом деле улучшает отклик в играх","Инпут-лаг редко сводится к одной настройке и почти никогда не имеет одной простой причины. Это руководство объясняет, где на самом деле накапливается задержка, как она влияет на ощущения и в каком порядке применять исправления, чтобы реально улучшить отзывчивость без эффекта плацебо.","\u002Fuploads\u002F2026\u002F04\u002Finput-lag-1776090707073-0ecj5l.webp","2026-04-13T10:28:00.000Z",{"id":2008,"slug":2009,"title":2010,"excerpt":2011,"featuredImage":14,"publishedAt":2012},"132","stutter-fixes-the-order-that-actually-reduces-frametime-spikes","Исправление статтеров: порядок, который действительно уменьшает скачки времени кадра","Исправления статтеров работают, когда вы подбираете их под тип статтера. Используйте правильный порядок: идентификация, стабилизация, затем оптимизация — а не наоборот.","2026-02-20T11:00:00.000Z",{"id":2014,"slug":2015,"title":2016,"excerpt":2017,"featuredImage":2018,"publishedAt":2019},"431","network","Исправление сети: как восстановить стабильную сетевую игру в играх","Сетевые проблемы в играх часто ошибочно принимают за обычные лаги. В этом руководстве объясняется, как отличить реальную нестабильность онлайн-соединения от локальных проблем с таймингом, диагностировать, что именно не так, и исправить работу сети в правильном порядке.","\u002Fuploads\u002F2026\u002F04\u002Fnetwork-1776094139213-kvggr6.webp","2026-04-13T09:27:00.000Z",{"id":2021,"slug":2022,"title":2023,"excerpt":2024,"featuredImage":2025,"publishedAt":2026},"432","fix-stutter-how-to-restore-stable-frame-delivery-in-games","Устранение статтеров: как восстановить стабильную подачу кадров в играх","Статтеры — это не одна проблема, и у них нет одного решения. Это руководство объясняет, как выявить закономерность, разграничить распространенные причины и восстановить стабильную подачу кадров, не тратя время на случайные настройки.","\u002Fuploads\u002F2026\u002F04\u002Fstutter-1776095701157-lbgpvq.webp","2026-04-13T09:52:00.000Z",{"id":2028,"slug":2029,"title":2030,"excerpt":2031,"featuredImage":14,"publishedAt":2032},"107","fix-input-lag-fast-the-no-placebo-checklist-display-timing-background-load","Быстрое устранение инпут-лага: чек-лист без плацебо (дисплей, тайминги, фоновая нагрузка)","Хватит гадать. Этот чек-лист выделяет реальные причины задержки ввода: обработку изображения, нестабильные тайминги и фоновую нагрузку — в правильном порядке.","2026-02-21T08:00:00.000Z",{"id":2034,"slug":2035,"title":2036,"excerpt":2037,"featuredImage":14,"publishedAt":2038},"157","stutter-fix-order-what-to-change-first-so-you-dont-waste-time","Порядок исправления статтеров: что менять в первую очередь (чтобы не тратить время зря)","Статтеры — это симптом. Порядок исправления имеет значение: сортировка, стабилизация темпа, затем настройка VRR и графики. Вот практическая последовательность, которая работает.","2026-02-20T13:00:00.000Z","fallback",[],[]]