v43.00 brings Procedural Content Generation (PCG) to UEFN, so you can build bigger worlds without placing every asset by hand. This release also adds more MCP workflows for profiling, cinematics, audio, and animation, and takes the Progression API out of Experimental so you can publish islands with custom quests. You can now monitor your island’s performance in Creator Portal to spot issues earlier, then use new profiling tools to track down and address them. You’ll also find new Frenzy Fields prefabs and galleries, and much more.
Gameplay
Publish Islands Built with the Progression API
The Progression API is out of Experimental, so you can now publish islands built with it. Use it to create a quest system of your own design, from a single short quest to an in-depth, layered quest line. With the API, you can:
Define quests and their objectives
Track progress for each player or for a whole group
Grant rewards automatically when a quest succeeds
Show your quests in the Fortnite quest UI
In addition to the Verse API Reference, new documentation shows you how to build your own quest system:
Questing System Overview: How quests, objectives, and rewards work together.
Short Coin Quest: A complete example quest you can build and play.
Health and Damage Pipeline (Experimental)
A new health and damage pipeline is now available as an experimental feature in Verse. You can use it to control how damage and healing work in your experience. Define your own health pools instead of working around Overshield, Shield, and Health. Layer your own rules onto every hit, and deal damage or apply healing to anything in the scene, not only players.
Fortnite characters use the same pipeline, so damage from most Fortnite weapons, abilities, and explosions follows your rules. Damage you deal from Verse behaves the same way as built-in damage. Built-in damage now works against Scene Graph entities.
Use it to build:
Armor, barriers, and stacking shields with their own rules
Damage types with per-pool resistances and immunities
Destructible props and objects that take weapon damage
Damage over time, lifesteal, and damage amplification
To use the pipeline with entities you create, add using { /UnrealEngine.com/HealthPipeline } to your Verse file. To work with existing Fortnite health pools, also add using { /Fortnite.com/FortHealthPipeline }.
For more information, see the Health Pipeline and Fort Health Pipeline modules in the Verse API reference. For a list of known issues, see the Health and Damage Pipeline Known Issues section below.
You can publish islands that use this feature after it exits Experimental.
Set Character Poses for Held Items
The new fort_item_owner_pose_modifier_component sets the animation stance a character uses while the item is equipped, so a character holds a torch like a torch and reads a map like a map.
The pose modifier component comes attached to held_item_template, the Scene Graph entity prefab for customizable held items. The default is the fire torch pose. Change the pose in the component in the editor, or at runtime with Verse.
Five poses are available to use:
Fire torch
Flashlight
Map
Small consumable
Large consumable
For more information, see Fort Item Owner Pose Modifier Component.
Teleport Props with the Teleporter Device in Verse
The Teleporter device Verse API now supports props. Call Teleport or Activate with a creative_prop, and use TeleportPropEvent to react when a prop teleports. The device also implements the enableable interface, supports physics props teleported with Verse, and has new On Teleported Prop and On Enter Prop events.
To learn more, see teleporter_device class.
Control Vehicle Fuel with Verse
The fort_vehicle Verse API has new methods that get and set the fuel remaining in a vehicle's tank, and control how much fuel the vehicle uses in different states.
This update comes from community feedback on the forums. To share your own ideas, see the New Feedback Form on the Developer Forums section below.
To learn more, see fort_vehicle interface.
Update Hold Logic in the Basic Interactable Component
We fixed an issue where custom OnStarted logic was rolled back on long-press interactions. On interactables with a hold duration, OnStarted was called when the hold finished instead of when it began. By then, the agent already counted as interacting, so the base OnStarted rejected the call and rolled back any custom logic in your override. SucceededEvent still fired, so the interaction looked successful but your code never ran. OnStarted is now called when the hold starts, and StartedEvent fires once per hold.
What you need to do: If you worked around this by putting on-completion logic in OnStarted, or by forcing the interaction to succeed from there, that logic now runs as soon as the player starts holding. Move it to SucceededEvent and remove the workaround.
Worldbuilding
Build Bigger Worlds with Procedural Content Generation (PCG)
PCG is now available in Unreal Editor for Fortnite (UEFN), so you can generate environments procedurally instead of placing every asset by hand. Use graph-based tools to automate asset placement and build detailed worlds, like forests, cities, and custom points of interest, across your islands.
Get started with ready-to-use content from the PCG Library, or create and save your own reusable PCG tools and assets for future projects. Reusable building blocks mean less time on repetitive placement and more time shaping the experience.
For more information, see Procedural Content Generation Framework.
UEFN MCP also includes a PCG toolset, so you can use natural language prompts in agentic AI coding tools like Claude Code or Cursor to create and edit PCG graphs.
For more information, see Working with PCG and LLMs Using UEFN MCP and UEFN MCP.
Import Real-World Scenes as Gaussian Splats (Experimental)
UEFN 43.00 adds experimental support for Gaussian splats, a technique for capturing real-world scenes in photoreal detail. Bring a captured location, like a room, building, or landscape, into your as a photoreal environment or backdrop. You can import a Gaussian splat asset as a PLY or SPZ file, then place it in your island from the Content Browser. Gaussian splats appear on all supported UEFN platforms, including mobile. Rendering uses a native path optimized for performance, and you can creatively manipulate your splats through Niagara integration.
Model Context Protocol (MCP)
Profile and Optimize Your Island
Find performance issues faster with UEFN MCP. Use natural language prompts to capture and analyze data from Timing Insights, Verse Insights, Memory Snapshot, and the Spatial Profiler, so you can identify bottlenecks and apply fixes to optimize your island.
To learn more, see Profiling Your Island with the UEFN MCP. Also check out the overview video on YouTube.
Create Cinematics in Sequencer
Create and refine cinematics in UEFN with natural language prompts. With MCP, you can streamline camera setup, character animation, and sequence editing for cutscenes, storytelling, and gameplay moments.
Streamline Audio Creation with MetaSound
Spend less time on setup and more time on sound design. Use MCP to import audio files as sound waves, create MetaSound assets from them, and configure music, ambience, loops, and one-shot sounds with natural language prompts.
Reuse Animations with IK Retargeter
MCP now supports the IK Retargeter so you can retarget animations to your own custom characters without the manual rework. Reuse animations across your experiences, and set up custom non-player characters (NPCs) in minutes instead of hours.
Python Scripting with UEFN MCP
AI agents connected through UEFN MCP can now run Python scripts in the editor. Learn how exec python and the programmatic toolset differ, and how to choose between them for your task.
To learn more, see Python Scripting with UEFN MCP.
Verse and Scene Graph
Explore the Updated Scene Graph Feature Example
The Scene Graph feature example has a new camera section and updated prefab examples, both with commented Verse source code that you can read and reuse.
Camera Examples
The camera section shows the Scene Graph camera components in use. Three camera entities cover the perspective, orthographic, and physical cameras. The physical camera includes body and lens presets that match the Unreal Engine Cine Camera, so you can choose a sensor and a lens in the Details panel.
New example components show what you can build:
Show a camera to players while they're inside a Volume device, and return them to their previous camera when they leave.
Swap a physical camera's body and lens during play.
Cycle a camera director through a list of cameras, with control over the blend used for each switch.
Choose the blend style and duration a camera uses instead of the fixed default.
Known Issue: Scene Graph cameras do not activate on play servers. Player.GetComponent[camera_director_component] fails. UEFN edit sessions are not affected. Workaround for private versions only: add using { /Fortnite.com/SceneGraphCameras } to any Verse file. This will be fixed in 43.10.
UFO Example Prefab
The UFO example prefab now keeps all of its abduction beam logic in one component instead of spreading it across the UFO. The beam is also its own prefab, nested under the UFO prefab, so you can reuse it separately. We updated the Overlap and SweepHits components to match.
The prefab spawn example now uses features that weren't available when the sample first shipped. For example, the Verse device now has an @editable entity reference that determines where the prefab spawns.
Every editable property in the sample also has a tooltip and a category, so you can use the project as a best-practice example when authoring your own Verse components and properties.
To learn more about the available feature examples, see UEFN Starter Templates.
Prefabs Now Inherit from Their Parent Class in Verse
For a prefab whose parent is a class other than entity, such as a prefab made from assault_rifle_template, it now appears in Verse as subclasses of that parent. Casts and field access to the parent's members now work as expected.
To support this, built-in entity classes are no longer <final>, so you can now subclass them. This includes the item entity classes and the weapon templates: pistol_template, assault_rifle_template, sub_machine_gun_template, shotgun_template, and held_item_template.
Performance and Profiling
Trace Server Hitches with Verse Insights
Verse Insights is now part of Timing Insights. When you capture with Server as the profiling target, your Verse functions appear as timing events in the Timing View panel. Use them to trace a hitch to the Verse function responsible, then confirm that your fix worked. To use Verse Insights, turn on Use Verse VM in Launch Options before you launch a session.
To learn more, see Verse Insights in UEFN and watch our tutorial on YouTube to check the performance of Verse code running in your islands.
Check Memory Usage on Every Cook
Memory reporting now runs on every cook so you can track memory usage against your project’s limit as you work, not only when you publish.
Run the publish memory check on demand from the profiling tools. Each session launch or pushed change produces a new value.
The Game Performance report at the bottom of the editor flags projects that are over the limit. The memory thermometer no longer appears in running sessions.
A per-asset breakdown shows which assets use the most memory.
Memory now displays in real units, like 300 MB instead of 100,000 units. The budget itself hasn’t changed.
Filter Memory Snapshot by Object
Memory Snapshot has two new filters:
Filter by Persistent Level Objects
Filter by Scene Graph Objects
Use the filters separately or together to find which objects take the most memory. The Scene Graph filter sorts objects into entities and components. It doesn't show how entities and components relate, but it can help you find out where memory is going.
Monitor Island Performance in Creator Portal
Creator Portal now shows how your island performs across client platforms and on Fortnite’s servers, so you can catch stability and performance issues earlier and address them with the help of UEFN’s profiling tools. You’ll find the new metrics in Projects > Technical, which now has two subtabs: Client and Server.
Client Tab
The Client tab has one new chart. Two existing client metrics now live here too:
Client Crashes (new): The percentage of player sessions that ended because the game failed, compared against top islands across genres. Filter by platform or failure type, including memory failures.
Hitch Rate: How often players experience noticeable stutters while playing your island.
Missed Frames: How often the game fails to draw frames on time, which shows up as choppy gameplay.
Server Tab
Three new charts show how your island runs on the Fortnite server:
Frame Time: How long the server takes to process each frame, shown as P95 and median against a 33.3 ms target (30 FPS).
CPU Usage: The share of one CPU core your island uses, shown as P95 and median against a 75% target.
Memory Usage: The memory your island uses in GB, shown as P95 and median against a benchmark of top islands.
High server frame time, CPU, or memory usage can cause lag and performance issues for every player in a session. Every time series chart includes version markers that show when you published an update, so you can see whether a change affected performance.
For more information, see Technical Performance.
Profile on Mobile Devices
You can now profile on iOS and Android mobile devices to measure island performance on the hardware most players use instead of estimating it from a PC session.
A session that you launch on a connected mobile device reports into Spatial Profiler, Memory Snapshot, Timing Insights, and Verse Insights. These are the same tools used to profile a PC session. Profiling runs against a locally connected device. It doesn't collect performance data from players' devices. For more information, see Playtesting on Mobile Devices.
Scene Graph Performance Improvements
We’ve made significant effort to improve the performance of Scene Graph in this release — on clients, on the server, and in the UEFN editor. This is a high-level overview of the areas that we’ve targeted. We’re continuing to put time and effort into further optimizations.
Some improvements might require a new island cook before you can see their impact.
Provide feedback on how these changes are impacting your islands via the forums.
Scene Graph should now run faster and use less memory:
Spawning many entities at once is cheaper and causes fewer hitches.
Moving entities cost less per frame.
Servers no longer spend time on entities that haven't moved.
In the editor, Verse compiles and Push Changes spend less time reinstancing.
Deleting large numbers of entities in the editor is faster.
Islands that use many material properties from Verse, or many Verse objects, use less client memory once you upload them from 43.00.
Scene Graph memory is now tracked better across UEFN, helping you better profile the impact of Scene Graph on your project.
Mobile, UI, and Input
Mobile Gestures: PointerZoom Out of Experimental
You can now publish experiences that use the PointerZoom (pinch-to-zoom) input action, which reports pinch gestures on the virtual pointer. Use it to integrate pinch-to-zoom gestures on mobile, drive camera zoom, map scaling, scaling objects based on pinch input, or any custom response. The same binding picks up mouse scroll wheel and gamepad right stick input.
Breaking change: Pinch values from PointerZoom on touch devices are now 50x larger, to better match gamepad and mouse behavior. If your Verse code scales or applies thresholds to PointerZoom values on mobile, return it for the new range.
HUD Controller Device: Apply Canvas Transform and Override Controls Improvements
With touch button overrides now on the HUD Controller device, you can customize more of your island's UI while keeping your players’ own layouts intact. Use them to build and fine-tune touch controls for mobile players:
Apply Canvas Transform works per button. Enable it to place a button at your position, which takes priority over the player’s layout. Clear it to keep the player’s layout and still apply your icon. Using it on one button no longer resets your players’ custom layout for the rest of the HUD.
Apply Canvas Transform is separate from Override Icon. Use either one on its own.
Safe Zone Widget Now Available in UMG
The Safe Zone widget is now available in Unreal Motion Graphics (UMG) for UEFN. Use it to keep your custom UI inside the safe area of the screen on console and mobile.
Editor and Workflow
Create Chaos Outfit and Cloth Assets
You can now create and edit Chaos outfit and cloth assets in UEFN with Dataflow editor, including clothing for MetaHuman characters. You no longer need to build them in Unreal Engine and migrate them to your project.
You can assign either an outfit asset or a cloth asset to a Chaos Cloth component.
Compact Connectivity HUD
The connectivity heads-up display (HUD), located in the top-left corner of sessions launched for iteration, now takes up less space while continuing to display the game’s status.
In Edit Mode and Game Mode, the HUD minimizes to a compact tile with a semi-transparent background, so it overlaps less with in-game UI.
The HUD expands when an issue requires your attention, such as a disconnection from the UEFN editor or a performance warning. After the issues are resolved, the HUD returns to its minimized state.
Import USD Files with Interchange
You can now import Universal Scene Description (USD) files (.usd, .usda, .usdc, and .usdz) into UEFN through Interchange, the same way as FBX files. USD import creates the same asset types as FBX and glTF: static and skeletal meshes, materials, textures, and skeletal animations. The default import settings work for most files, so you can click Import in the import dialog. USD-specific options, like subdivision level, material purpose, and prim collapsing, are in the Advanced settings.
Note: USD export isn’t supported in UEFN. The import dialog lists some asset types that UEFN doesn't import: Audio, Chaos Cloth, Geometry Cache, Groom, MaterialX, and Sparse Volume Texture.
To learn more, see Importing Assets.
Improved Asset Redirector Support for Verse
Asset redirectors now work with Verse. A redirector points references from an asset's old location to its new one. When you rename, move, or delete an asset, or run Fix Up Redirectors, UEFN checks whether Verse code or prefabs use the asset and keeps those references working.
Rename or move: If Verse code or prefabs use the asset, UEFN leaves a redirector that generates Verse aliases under the old name, so existing references stay valid. Your code still compiles, and a deprecation warning reminds you to update each reference.
Delete: If Verse code or prefabs use the asset, the delete dialog offers Replace References and Force Delete. Replace References leaves a redirector so that existing references stay valid.
Fix Up Redirectors: If Verse code or prefabs still use a redirector, UEFN keeps it instead of deleting it.
To use these improvements, enable Reflect UE Redirectors into Verse Manifest in Project Settings.
Recover Objects When a Verse Class Is Missing
Data recovery now protects objects whose Verse class can’t be found. This happens when the class is renamed, moved or deleted, or when your Verse code doesn’t compile. Instead of dropping these objects, UEFN keeps them as placeholders with their saved values and blocks saving until you fix them.
The new Data Recovery tool opens automatically when placeholders appear, or you can open it from Tools > Data Recovery. Use it to replace or delete the missing class.
To learn more, see Data Recovery System.
New Prefabs and Galleries
Frenzy Fields prefabs and galleries are available in 43.00:
Frenzy Fields Floor Gallery
Frenzy Fields Wall Gallery
Frenzy Fields Roof Gallery
Frenzy Fields Props Gallery
Frenzy Fields Fields Prefab
Frenzy Fields Barn Prefab
New Assets for Rejection Explanations in Creator Portal
Explanations about rejected submissions in Creator Portal now give you more context by including new supporting visual assets, so you can quickly understand what the issue is and how to fix it. Explanations may now include:
A gameplay video capturing the reason for rejection for the most common ratings issues.
A preview of the image asset that triggered the rejection.
The thumbnail that was reviewed by Epic.
Playable audio files that were rejected in your submission.
For more details on island moderation, see Island Moderation Tips and FAQs.
New Feedback Form on the Developer Forums
A dedicated feedback form now lives on the Epic Developer Community (EDC) forums, separate from the General Issues and Bug Reporting form. We built it for greater convenience and visibility, so it's now easier to share feedback and track updates. The old feedback forum will be archived for a short period, and new posts will be disabled.
Here's how the new form works:
Pick a topic: Choose from topics like Verse, UEFN, or Creator Portal so your feedback reaches the right team.
Write your summary: Tell us what's working, what isn't, and any suggested updates to address it.
Add images or a video (optional): Support your written feedback with examples.
Community voting: Other community members can upvote your feedback. Once feedback receives enough support from the community, we log it for the team.
Follow along: We post updates in your thread as it moves forward — assigned, scheduled for release, or live — and if we decide not to move forward. Each update includes a ticket ID.
For bugs, use Issues and Bug Reporting.
Roadmap Updates
For the latest on what's in development for Unreal Editor for Fortnite, see the UEFN public roadmap.
Roadmap items are subject to change.
Community Bug Fixes
The following fixes are from issues that you submitted to us on the forums. Thank you for your patience and for reporting these issues!
Fixed an issue that allowed players to equip Pickaxes with built-in emotes while Pickaxes were disabled, letting them damage other players.
Fixed an issue that prevented
basic_interactable_component.Cooldownfrom running when an Interactable Duration was also set.Fixed an issue that prevented migrated assets from appearing in the destination project until UEFN was restarted.
Fixed an issue that prevented the Virtual Pointer from being moved or used with a controller on PS5.
Fixed an issue that prevented VFX from playing when activated through Sequencer.
Fixed an issue that caused Material Editor error hyperlinks to open the Content Drawer instead of jumping to the error’s location in the graph.
Fixed an issue that caused an interaction prompt to appear on screen when
Disable()was called on aninteraction_componentin Verse.Fixed an issue that caused UEFN to crash when assigning a device to an optional
@editableproperty on a Verse component.Fixed an issue where the Social Synergy API only detected party members in edit sessions and not in playtest, private or live sessions.
Fixed an issue where
SetPresentableToPlayerswould exhibit inconsistent behavior across multiple entities with the same component.Fixed an issue where editable properties of Verse class objects would not always remain independent across prefab instances, meaning that a change on one could unintentionally affect another.
For a full list of all scheduled fixes for v43.00, see this search on the Epic Developer Community Forums.
Fortnite Ecosystem Updates and Fixes
New:
Added Interact and Pickup to the actions you can override on the HUD Controller device. Interact and Pickup share one contextual action, so an override applies to both and is static.
Updated the HUD Controller device so layout data in a custom HUD layout affects button scale.
Fixes:
Fixed an issue where
SprintedEventfired when movement started or stopped instead of when sprint input changed.Fixed an issue that could cause item duplication when multiple players disconnected from a session that used persistence.
Fixed issue where JSON parser would incorrectly parse a range of integers around the 32-bit signed and unsigned integer maximums.
Fixed an issue where players could be permanently unable to join an island with an InvalidIslandVersionOnServer error after the island's version history changed.
UEFN Updates and Fixes
New:
Added live edit support for entity prefab assets. Changes you make to a prefab asset now update every instance of it in the session.
Added live edit support for Snap Object to View, Snap Origin to Grid, Snap Origin to Element, Snap Selection to 2D Layer, and Snap Elements to Element. These actions now update the session instead of requiring you to push changes.
Added live edit support for brush volumes, such as Blocking Volume and Post Process Volume. Placing, resizing, and rescaling a volume now updates the session without Push Changes or Refresh Session.
Updated live edit to prompt you to push changes when it can't apply a volume change, instead of doing nothing. Water Body Exclusion Volumes still require you to push changes.
Added Quick Find to the Timing Profiler in UEFN.
Added the command line argument
ValkyrieMap=to override startup map.
Fixes:
Fixed an issue where undoing a change that required a push still showed that a push was needed in the editor and client.
Fixed a crash that could occur when muting a player in voice chat.
Fixed a crash when restoring the Filter Configurator from a saved layout in the Timing Profiler.
Fixed an issue where launching a session from UEFN could get stuck because an idle client didn't join the session.
Fixed an issue where a party could get stuck waiting for players after everyone readied up if party members returned to the lobby before a slower party member finished loading into the previous match.
Fixed an issue where an invalid matchmaking request could go through instead of being blocked when certain playlists failed to convert.
Fixed an error that occurred each time an entity was placed in a live edit session.
Fixed an issue where edits made from a game client weren't represented correctly in UEFN for projects that use World Partition.
Animation and Cinematics
New:
Added a preview panel with an animation picker and an input curve selector to the RigMapper Definition graph editor in the experimental RigMapperOp plugin.
Added support for convex collider and confiner shapes in Control Rig Dynamics.
Added GetSequenceLength function to the Verse API for the Cinematic Sequence Device
Audio
New:
Updated subtitles for streaming sounds to wait until the sound starts playing instead of queuing as soon as the sound is told to play.
Fixes:
Fixed an issue on Windows where you couldn’t connect to your microphone because microphone inputs were listed incorrectly.
Editor
New:
Added the ability to align the grid to a custom transform or to a picked actor or entity. Placement tools, such as draw and snapping, follow the grid transform.
Updated the default grid to use the level instance's transform while you edit a level instance.
Added row grouping to the Proxy Table editor so you can organize entries without placeholder rows.
Added support for picking Scene Graph entities with the actor picker, including when aligning the grid to an actor.
Added an Editor Preferences option that updates an actor's label when you replace the actor. This option is off by default.
Added Nudge Left, Right, Up, Down, Forward, and Backward commands so you can remap the nudge keys in Editor Preferences > Keyboard Shortcuts.
Added a comment column to the Proxy Table editor so you can leave a comment on any row.
Added search to the Proxy Table editor for filtering rows.
Added multi-select for rows in the Proxy Table editor. You can delete, edit properties for, and right-click multiple rows at once.
Added drag and drop for Proxy Table rows, including multiple selected rows, and between two open Proxy Table windows.
Added cut, copy, paste, and duplicate for Proxy Table rows, including multiple selected rows, and between two open Proxy Table windows.
Added a Move to Cursor command that you can bind to a hotkey.
Added support for creating spring constraints between pieces in Chaos outfit assets with the
SimulationOutfitVertexSpringConfigandSimulationOutfitVertexFaceSpringConfigDataflow nodes.Updated object placement to fall back to the depth buffer when there's nothing with collision to hit. This makes it easier to drag objects into levels without physics.
Added Has Performance Validation Warnings and Has Performance Validation Errors filters to the Content Browser.
Added severity levels to asset validation. Validation issues are now reported as either warnings or errors.
Added an option in DNA Import Settings to turn off normal recalculation when importing DNA files through Interchange. See Upgrade Notes.
Updated copy and paste for vectors, rotations, and transforms to work the same in every display mode. Verse types now copy as Verse literals that you can paste into code, and paste accepts either Verse literals or engine (X=, Y=, Z=) values, converting between Left-Up-Forward (LUF) and engine coordinates as needed.
Added glTF (.glb and .gltf) imports to the static mesh tools, including embedded materials and textures.
Added a confirmation dialog when you archive or unarchive a team-owned project.
Improved the accuracy of iterative validation in UEFN.
Fixed an issue where deleting an asset didn’t detect Verse code references or references to Verse types generated from that asset.
Added Lumen support to the Prefab Editor. Options for Lumen Global Illumination and Lumen Reflections are available in the Prefab Editor viewport's Show menu and now function as intended. You can set the defaults in Editor Preferences.
Fixes:
Fixed an issue where uploading didn't restage files after redirects were fixed.
Fixed an issue where glTF export changed material names, which prevented round-tripping.
Fixed a crash that was caused when UEFN tried to load a corrupted file on launch.
Fixed a crash that could occur when pasting actors.
Fixed an issue where renaming an asset or fixing a redirector didn't detect Verse types generated from that asset when other packages referenced them.
Fixed an issue where changing an experimental setting didn't revalidate affected assets.
Fixed a non-invertible matrix to ensure rendering for entity prefab thumbnails.
Fixed an issue where asset validation warning icons in the Content Browser didn't update after assets were saved.
Fixed an issue where reimporting through Interchange removed static mesh assignments from instanced static mesh components.
Fixed an error that occurred when copying files with Perforce set to Branch if auto-adding new files to source control was turned off.
Fixed an issue where pasting Scene Graph subobjects between prefabs left a cross-package reference that failed to cook.
Fixed an issue where saving Live Link Hub configuration files triggered Auto Reimport.
Fixed a crash that could occur when the editor shut down.
Fixed an issue where pasting a device with an
@editabledevice reference shared that reference with the original device so editing either device changed both.Fixed an issue where Browse to Asset didn't work on static mesh actors.
Fixed a crash that could occur on editor exit in projects using World Partition Hierarchical Level of Detail (HLOD).
Fixed an issue where Ctrl + Click input was ignored because other tool behaviors took priority in the Interactive Tools Framework.
Fixed an issue where Substrate materials didn't export correctly to glTF.
Editor UI
New:
Added the ability to change the height of horizontal filter bars, and turned it on in the Prefab Editor.
Added support for using the arrow keys to increase or decrease numeric values, with modifier keys for larger steps. Now you can press Enter or Tab to commit a value, or Esc to cancel. Changes also support undo.
Improved value stepping: dragging with the mouse now changes values continuously, while the mouse wheel and keyboard change values in fixed steps.
Added a detach action to the Outliner. Hold Alt while dragging an object onto its parent to detach it.
Updated prefabs now appear collapsed in the Outliner by default.
Updated editor axis colors to match the Left-Up-Forward (LUF) coordinate system when it's the active display system.
Added automatic scrolling when you drag an object near the edge of a view. This is on by default in the Outliner and Prefab Editor.
Fixes:
Fixed an issue where the Find in Materials menu appeared in every window.
Fixed an issue where the asset property on Chaos Cloth components didn't appear in UEFN.
Fixed an issue where changes from multiple game clients at the same time weren't shown correctly in the Edit List.
Fixed an issue where the color picker closed on click when you edited a color property on a Blueprint actor in the level.
Fixed an issue on macOS where opening Preferences from the app menu bar opened General > Appearance instead of All Settings.
Environments and Landscapes
New:
Added the ability to change terrain properties on Water Body Island.
Improved feedback when using the Layer Allow List in Landscape Paint mode. The cursor and target layer indicator now change when you add to or remove from the allow list.
Updated the landscape component Layer Allow List to be read-only in the Details panel. Edit it in Landscape mode instead: press = to add a component and - to remove it.
Fixes:
Fixed a crash that could occur when loading an older landscape without edit layers.
Fixed a crash that could occur when a landscape grass type name conflicted with an existing name.
Fixed an issue where landscape shortcut keys (comma, period, and Esc) triggered while typing in a text box.
Fixed an issue where entering Landscape Paint mode caused shader warnings.
Fixed a crash in the Landscape Layer Blend material expression when the Height input was connected to an invalid node, such as a missing material function.
Fixed a crash that could occur when loading a landscape with duplicate grass types.
Fixed a crash that could occur when closing the editor through Python while in Landscape Mode.
Fixed an issue where you couldn't manipulate landscape spline tangents.
In-Game UI
Fixes:
Fixed an issue where the in-island transactions UI didn't work for the second player in split screen.
Fixed an issue where UI input actions bound to a custom button fired while the button was disabled.
Fixed an issue where overlapping opaque in-world UI rendered in the wrong order.
Materials
New:
Enabled Verse material inheritance in UEFN. Material instances can now inherit from a common base material class, which reduces runtime memory and lets utility functions work across multiple material instances. See Upgrade Notes.
Updated the runtime virtual texture clear color for displacement to 0.5 (no displacement) instead of 0.
Added Substrate support for the Single Layer Water BSDF node in ray-tracing hit shaders.
Fixes:
Fixed an issue where float branches in materials blended between values for non-Boolean conditions instead of selecting one.
Modeling
New:
Improved degenerate triangle handling in some modeling tools, including vertex paint, displace mesh, and baking.
Python
New:
Moved Python settings to Editor Preferences and added support for enabling Python scripting per project.
Updated the wording for enabling Python in project settings.
Fixes:
Fixed an issue where multicast delegates couldn't distinguish between different Python callables of the same type.
Fixed an issue where
unreal.Text.is_culture_invariant()was bound to the wrong function.Fixed an issue where in-place operators on
unreal.Arrayandunreal.Setreturned None. For example,a += bleftaas None.Fixed an issue where the
>=operator behaved like>for some types.Fixed a crash that could occur during Python garbage collection.
Scene Graph
New:
Updated the editor to work with Scene Graph entities directly instead of through entity proxy actors, which improves performance. Some context menu options for entities changed, but the same features are still available.
Increased the maximum number of
weak_mapvariables per UEFN project module from 4 to 6.Updated Scene Graph cameras to use radians instead of degrees for all angles, to match Verse standards. FieldOfViewDegrees on perspective_camera_component has also been renamed to FieldOfView.
Improved performance with very large prefabs. Preview entities no longer reinitialize while you drag them in, drag Details panel sliders, or drag the gizmo. They fully reinitialize when you release.
Added camera modifier layers. Add camera modifiers to one of these layers (see Upgrade Notes):
PreCameraModifiers: Runs before the active camera component updates. Use it to set shared defaults.PostCameraModifiers: Runs after the active camera component updates, on the blended camera state. Use it for logic that shouldn't run more than once during a blend, such as collision or weapon recoil.PresentationCameraModifiers: Runs at the end of the camera update. Use it for cosmetic effects such as camera shake.
Added support for user-written camera modifiers. Because Verse doesn't run on the client yet, a camera with a user-written modifier runs on the server and replicates its state to the client.
Fixes:
Entity moves are now visible to overlap and sweep queries in the same frame. You should no longer need a sleep between moving an entity and querying.
Fixed weapons and other socket-attached objects twitching on clients.
Fixed an issue where audio was spatialized around the player character instead of the active camera when Scene Graph cameras were active.
Fixed a crash related to creative object and entity tag queries.
Fixed an issue where component queries (
FindEntitiesWithComponent,FindDescendantComponents, andFindComponents) sometimes didn't return components that were added or removed during entity lifetime functions.Fixed description_component sometimes ignoring text data received from the server.
Fixed Live Edit failures when undoing a deleted component.
Fixed
Enable()starting playback on sound and particle system components when AutoPlay was off.
Verse Updates and Fixes
New:
Updated Verse modules that contain reflected assets to default to project-wide accessibility. See Upgrade Notes.
Fixes:
Fixed an issue where asset redirectors to materials didn't generate Verse aliases.
Fixed an issue where asset redirectors didn't generate an alias for the *_asset entry in the Verse manifest and digest.
Fixed an issue where Verse type aliases generated by asset redirectors didn't use the data access specifier of their target.
Known Issues:
Interactive objects can be harder to interact with while you use Scene Graph cameras. As a workaround, add a Third Person Controls device alongside your camera.
API
New:
Added the
clockinterface, and a globally accessibleSecondsSinceEpochClockobject.Added the experimental
playableinterface, to be used for representing playable classes such as timelines, timers, sounds, and VFX.Added the experimental timer class, which you can use for countdowns, round timers, and cooldown timers.
Count-up timers can be expressed as
TenSecondTimer := timer{ ReferenceClock := SecondsSinceEpochClock,StartSeconds := 0.0,EndSeconds := 10.0}Count-down timers can be expressed as
TenSecondCountdownTimer := timer{ ReferenceClock := SecondsSinceEpochClock,StartSeconds := 10.0,EndSeconds := 0.0 }PlayRatedefines how fast the timer progresses towards itsEndSeconds
Updated Verse events to be subscribable, so you can listen to them.
Added
Last[]extension functions to arrays, so you can access the nth element from the end of an array.Updated template projects to use the non-deprecated version of FindCreativeObjectsWithTag.
Updated Creative objects to inherit has_tags.
Deprecated:
Deprecated
tag_view.
Language
New:
Added the ability to reference a preceding member field in another field's initialization expression, with these restrictions:
Referenced fields must be marked
<final>.Referenced fields can't be marked
@editable.You can't reference fields declared later in the class.
You can't reference fields on supertypes.
Only classes and interfaces are supported.
Fields with accessor functions aren't supported.
<localizes>fields aren't supported.Self-referential initialization isn't supported.
Fixes:
Abilities that use a wedge target query don't find Scene Graph entities without an actor, so wedge abilities don't damage them. This will be fixed in 43.10.
Fixed an issue where Verse build diagnostics weren't shown for packages that incremental compilation skipped.
Health and Damage Pipeline Known Issues
Rockets ricochet off entities without dealing direct-hit damage.
Weapons that fire lightweight projectiles, such as Ares' Modular Warforged AR, don't damage entities.
Several non-ballistic weapons don't damage entities: the Arc-lightning Gun, Flare Gun, Primal Flame Bow, Primal Stink Bow, Pumpkin Launcher, and Ripsaw Launcher.
Lingering area-of-effect damage, such as fire and gas, applies once when an entity enters, but doesn't keep applying while the entity stays inside.
Physics object collisions don't apply damage to entities.
Fortnite healing items, such as the Slurp Bazooka and Chill Bronco, can't heal entities.
Hit impact effects are inconsistent on entities.
Team, friendly fire, and self filtering don't apply to entities.
A health adjustment entry with a zero delta produces no result entry.
Upgrade Notes
Normals are no longer recalculated automatically when you assemble a character from MetaHuman Creator. If the existing normals are incorrect, assemble the character again.
Material inheritance, now on in UEFN, can cause compile errors in rare cases when you re-upload a project. To fix them:
Qualified member access
(Value.(Class)Member)fails with an "unknown member" error ifMembermoves to a parent class. Remove the qualification, or update it to name the parent class that now declares the member.Extension methods with the same name on material classes that now inherit from each other conflict. If the methods are identical, remove the one on the child material instance. If they differ, rename them. Tip: Rename all of them to surface every call site as a compile error, then fix child classes before their parents.
Removed the
GlobalModifierPositionandVisualModifierPositionScene Graph camera constants. If your code uses them, add your camera modifiers toPreCameraModifiers,PostCameraModifiers, orPresentationCameraModifiersinstead.Renamed FieldOfViewDegrees on perspective_camera_component in Scene Graph to FieldOfView and changed units to radians. If your code uses perspective_camera_component and references FieldOfViewDegrees, then use FieldOfView instead.
You no longer need to specify accessibility for Verse modules that contain reflected assets. Because more identifiers are now visible across your project, some names might conflict. If they do, add qualifiers or adjust your
usingpaths.Adding a component that already belongs to another entity now logs a warning. A future release will make it an error. Remove the component from its entity first, or create a new one.
MCP Updates and Fixes
New:
Added the Scene Capture toolset.
Added the Curve Atlas toolset.
Added the Player State toolset.
Added the Prefab toolset.
Added an Exec Python tool for scripting directly with Python, along with the programmatic tool-calling toolset speed improvements.
Added Start and Stop MCP controls to Editor Settings.
Added a config setup button to Editor Settings for supported models.
Added support for MCP server instructions, so agents can use shared guidance from the server across tools.
Added support for image content returned by MCP tools.
Moved MCP settings from project settings to Editor Settings, so you no longer need to turn on MCP for each project.
Added support for classic devices to the DeviceToolset. You can list and set classic device options, which are filtered and validated the same way as in the Details panel.
Fixes:
Fixed an issue where MCP didn't start by default when the editor launched.
Lore Updates and Fixes
New:
You can now diff .uefnproject, .verse, and .uplugin files in VS Code.
Removed the 24-hour check-in reminder since your work is now backed up automatically.
Renamed the VS Code extension from URC.vsix to Lore.vsix.
Fixes:
Fixed an issue where revision control couldn’t connect on any project after an editor crash, caused by corrupted data on the server.
Fixed an issue where corrupted staged data could break a single repository with a “NotFound” error.
Fixed the Restore As Latest option not appearing after you sync to an older revision.
Fixed an issue where the Project Browser deleted a fully downloaded project if opening it after sync failed.
Fixed an issue where saving a Blueprint could freeze the editor for up to 40 minutes while it refreshed file status in very large projects.
Fixed “Revert All” staying disabled when files were checked out but not modified.
Fixed revision control options being ignored after deleting assets.
Fixed branch names being allowed to contain invalid characters.
Branch Explorer
New:
Added a time axis above the revision graph so you can see when revisions were made. It updates live as new revisions arrive.
The branch graph now shows when your project is in a rewound state.
Your revealed archived branches now stay in sync each time the editor starts.
The branch graph and the branch list now offer the same branch actions.
The branch graph now loads faster when you first open it.
Tooltips now match the styling used across the rest of UEFN.
Fixes:
Fixed cases where merges, or the lines connecting them, didn’t appear on the branch graph.
Fixed an issue where empty child branches appeared under main after you merged changes into them.
Fixed an issue where merging a restored branch incorrectly marked the target branch’s revisions as superseded.
Fixed an issue where revisions created while rewound were shown as merges.
Fixed an issue where refreshing the graph hid a revealed archived branch, even though it still appeared in the tree view.
Fixed an issue where branches with pending changes could be archived.
Fixed an issue where “Merge From” stayed active after every branch except main was archived.
Fixed the personal branch label displaying incorrectly.
Fixed the revision details popover getting cut off near the right edge of the graph.
Fixed the archive icon tooltip flickering at certain positions in the window.
Fixed the zoom controls becoming disabled after creating a new branch.
Fixed Ctrl + mouse wheel zooming the graph’s controls instead of the graph.
Fixed an issue where Branch Explorer couldn’t be opened from asset editors.
Branch History
New:
Added Diff against workspace and Diff against previous revision to the right-click menu.
Fixes:
Fixed the Changes Made While Rewound dialog not appearing when Sync Latest was pressed right after saving.
Fixed “Focus on this actor” not working for modified Blueprints.