Reference · 59 codes
Diagnostic codes
Every diagnostic has a stable code, a severity, and usually a line and column in the source HTML. Errors abort the import. Warnings are reported and the import continues. Info entries explain a decision the importer made. Agents and CI should key on the code, never on the message text.
HTML001WARNINGElement never closed; auto-closed at end of inputFIX ▸Close the tag
HTML002WARNINGEnd tag with no matching open element; ignoredFIX ▸Remove the stray end tag
HTML003INFOElement implicitly closed by an outer end tagFIX ▸Usually fine
HTML004WARNINGMalformed attributeFIX ▸Quote the value
HTML005WARNINGUnterminated commentFIX ▸Add
-->HTML006WARNINGUnterminated tag or declarationFIX ▸Fix the markup
HTML010WARNING / INFO
script ignored (info for the Tailwind CDN script and for scripts marked data-webumg-ignore, such as the preview fit-to-window scaler)FIX ▸Nothing; JavaScript is never convertedHTML011WARNINGExternal stylesheet not loaded: remote URL, file not found, or no source directory (in-memory lint)FIX ▸Ship the
.css next to the HTML with a relative href, or move the rules into a <style> blockHTML013INFOExternal stylesheet loaded (its
@imports spliced in)FIX ▸NothingHTML012WARNINGDuplicate idFIX ▸Make ids unique; only the first can be bound
HTML020ERRORNesting deeper than 256FIX ▸Flatten the design
CSS001WARNING / INFORule or at-rule could not be parsed and was skippedFIX ▸Check the syntax
CSS002WARNING
@media block ignoredFIX ▸Use --viewport, or unconditional rulesCSS003WARNINGUnsupported selector (sibling combinators, pseudo-elements,
:not(), :nth-*, nesting)FIX ▸Use class, id, descendant or child selectorsCSS004WARNING
@import not loaded: remote URL, file not found, cyclic, or no source directoryFIX ▸Use a relative path to a file next to the stylesheet, or inline the rulesCSS005INFO
@keyframes ignoredFIX ▸Animate in UMGCSS006INFO
@font-face with a local file registered for import, or without one ignoredFIX ▸Ship the font file next to the HTML, or install the familyCSS007WARNINGProperty not supportedFIX ▸See the support matrix
CSS008WARNINGValue could not be parsedFIX ▸Fix the value
CSS009INFONon-visual property ignored (
transition, cursor, ...)FIX ▸NothingCSS010WARNING
var() had no value and no fallback; declaration droppedFIX ▸Define it on :root or add a fallbackTW001WARNINGUnknown class: not a Tailwind utility and no stylesheet rule uses itFIX ▸Typo, custom color, or plugin class; define a rule or remove it
TW002INFOVariant not applicable at the design viewport/mode (
max-*, print:, dark: when off)FIX ▸Nothing, or pass --dark / --viewportTW003INFOUtility has no visual effect in UMG (
transition-*, cursor-*, ring-*, ...)FIX ▸NothingMAP001INFOElement has no dedicated mapping; treated as a containerFIX ▸Usually fine
MAP002WARNING
data-widget names an unknown classFIX ▸Use a class from the authoring guideMAP003INFOImage recorded for importFIX ▸Nothing
MAP004INFOPercentage size approximated by a fill weightFIX ▸Use px or
flex-1 for exact controlMAP005INFOGradient has more than three stops; rendered from its first, middle and last stopFIX ▸Split into two overlays if the other stops matter
MAP006INFO
box-shadow ignoredFIX ▸NothingMAP007WARNINGWidget name collision resolved with a suffixFIX ▸Make ids unique
MAP008WARNINGId contained invalid characters and was sanitizedFIX ▸Use
[A-Za-z0-9_]MAP009WARNINGDuplicate
data-bind or data-event nameFIX ▸Make names uniqueMAP010INFOAbsolute children anchored to a non-positioned parentFIX ▸Add
relative to the intended parentMAP011INFOProgress bar produced from elementFIX ▸Nothing
MAP012INFOInline formatting flattened into one text blockFIX ▸Split into separate elements
MAP013INFO
aspect-ratio with no px side to derive the other from; ignoredFIX ▸Give one side in px (the other follows), or bothMAP014INFOInline
svg rasterized to a UI texture at 2x (T_<Name>_svg)FIX ▸Nothing; img src="x.svg" files are rasterized the same way (MAP023 lists what the rasterizer skips)MAP015INFO
justify-content reproduced with spacer widgetsFIX ▸NothingMAP016INFOElement marked
data-webumg-ignore skipped (preview-only)FIX ▸Nothing; intended for screenshots behind a HUDMAP019INFOAbsolute element stretched between two edges with an auto size on the other axis, and no parent with a px box to resolve itFIX ▸Give it a px width or height, or give the parent a px box; otherwise UMG has no desired extent for it
MAP020INFOBorder on some sides only (
border-b, border-l) drawn as thin edge lines in an _Edged overlayFIX ▸Nothing; a Slate outline is four-sided, the lines reproduce the CSSMAP021INFOCSS
transform (rotate, scale, px translate) mapped to the widget render transform; transform-origin (keywords, %, px, Tailwind origin-*) sets the pivotFIX ▸NothingMAP022INFO
transform-origin in px on an element without a px size on that axis; the centre is usedFIX ▸Give the element w-[px] h-[px], or use a keyword or percentage originMAP023INFOAn SVG feature the rasterizer does not draw:
text, image, filter, mask, clipPath, pattern, marker, stroke-dasharray (drawn solid), or an unresolved url(#id) paintFIX ▸Convert text to paths in the design tool; bake filters and masks into the artworkMAP018INFOAbsolute children that precede positioned (
relative) flow content in the same parent are layered underneath it, in an _Underlay canvasFIX ▸Nothing; this is CSS paint order (frame image first, content after). Absolute children after the content, or above static content, stay in the _Canvas aboveMAP017INFOCorner gradient direction (
to bottom right, bg-gradient-to-br) on an element without fixed px width and height; a 45-degree diagonal is usedFIX ▸Give the element w-[px] h-[px], or use an explicit angleEMIT001WARNING / ERRORA property could not be applied, or a widget class is unavailableFIX ▸Report it; the rest of the widget is still built
EMIT002WARNINGImage not found or texture import failedFIX ▸Check the path relative to the HTML
EMIT003ERRORAsset exists and was not created by this importerFIX ▸Rename the design, or pass
--forceEMIT004WARNINGParent class not foundFIX ▸Check
--parentEMIT005INFOTypeface not on the font asset; Regular usedFIX ▸Use a font with Bold/Italic faces
EMIT006ERRORBlueprint compiled with errorsFIX ▸Open the asset; report the compiler message
EMIT007ERRORSave failedFIX ▸Check permissions and source control
EMIT008ERRORDestination is not a valid content pathFIX ▸Use
/Game/...EMIT009INFOFont family imported from
@font-face or the installed fonts as <dest>/Fonts/F_<Family>FIX ▸Check that the font licence permits embedding in a gameEMIT010INFO / WARNINGFont family not found (default font used, metrics differ from the browser), or a declared font file could not be readFIX ▸Install the family, ship it with
@font-face, or pass --fontIO001ERRORSource file could not be read
IO002WARNINGManifest or header could not be written
No code matches. Every diagnostic has a stable code; search by the code in your report.