Summary
There’s a new validation error for project that use GameFeatureData
and Base Maps
to compose the final scene from multiple level assets:
UEFNValidation: Error: [AssetLog] /vz_anomaly_1/after_3430/level_b_after_3430 : /vz_anomaly_1/after_3430/level_b_after_3430 Level has 0 Island Settings Devices. Levels should have exactly 1. Unique actors: (ValkyrieValidator_WorldLimits). (FortValidator_WorldPartitionActors)
UEFNValidation: Error: /vz_anomaly_1/after_3430/level_b_after_3430 Level has 0 Island Settings Devices. Levels should have exactly 1. Unique actors: (ValkyrieValidator_WorldLimits)
UEFNValidation: Error: [AssetLog] /vz_anomaly_1/after_3430/level_a_after_3430 : /vz_anomaly_1/after_3430/level_a_after_3430 Level has 0 Island Settings Devices. Levels should have exactly 1. Unique actors: (ValkyrieValidator_WorldLimits). (FortValidator_WorldPartitionActors)
UEFNValidation: Error: /vz_anomaly_1/after_3430/level_a_after_3430 Level has 0 Island Settings Devices. Levels should have exactly 1. Unique actors: (ValkyrieValidator_WorldLimits)
The example project is called vz_anomaly_1
. Here are screenshots of the pre-34.30 project setup.
As you can see, the main scene is the composition of vz_anomaly_1
, level_a_before_3430
and level_b_before_3430
. Additionally you can see that all levels have an IslandSettings0
actor.
After 34.30 update the editor complains about those additional levels containing the mentioned actor and requires the project to have only a single IslandSettings
actor.
The project has been then update into such state as shown in the following screenshots:
In the update version the main scene is now composed of vz_anomaly_1
, level_a_after_3430
and level_b_after_3430
and only vz_anomaly_1
level contains the IslandSettings0
actor.
After initial project setup, the editor had a hiccup and complained that level_a_after_3430
still required an IslandSettings
actor in order to validate:
UEFNValidation: Error: [AssetLog] /vz_anomaly_1/after_3430/level_a_after_3430 : /vz_anomaly_1/after_3430/level_a_after_3430 Level has 0 Island Settings Devices. Levels should have exactly 1. Unique actors: (ValkyrieValidator_WorldLimits). (FortValidator_WorldPartitionActors)
UEFNValidation: Error: /vz_anomaly_1/after_3430/level_a_after_3430 Level has 0 Island Settings Devices. Levels should have exactly 1. Unique actors: (ValkyrieValidator_WorldLimits)
The validation passed in this strange state and I could try launching the session where we would be greeted with a cook validation error message:
PlatformCook: Error: We hit an error while cooking this content
PlatformCook: Error: errors.com.epicgames.content-service.cook_failure
PlatformCook: Error: CookJobId:b754864d-3e18-4e9f-8746-fe5760a5e930
PlatformCook: Error: An error occurred while communicating with the game servers (failed to cook module 56e358d6-4e5d-414c-e43a-70ae96da7530 (artifact 41b07854-84da-470e-bd81-741fa0824971:pc) (cookJobId b754864d-3e18-4e9f-8746-fe5760a5e930) with error code errors.com.epicgames.cookplugin.assetvalidationerror).
PlatformCook: Error: AssetCheck: Error: /56e358d6-4e5d-414c-e43a-70ae96da7530/after_3430/level_b_after_3430.level_b_after_3430 Level has 0 Island Settings Devices. Levels should have exactly 1. Unique actors: (ValkyrieValidator_WorldLimits)
PlatformCook: Error: LogCook: Error: /56e358d6-4e5d-414c-e43a-70ae96da7530/after_3430/level_b_after_3430 failed validation
PlatformCook: Error: AssetCheck: Error: /56e358d6-4e5d-414c-e43a-70ae96da7530/after_3430/level_b_after_3430.level_b_after_3430 Level has 0 Island Settings Devices. Levels should have exactly 1. Unique actors: (ValkyrieValidator_WorldLimits)
PlatformCook: Error: LogCook: Error: /56e358d6-4e5d-414c-e43a-70ae96da7530/after_3430/level_b_after_3430 failed validation
Since at this point of time level_b_after_3430
was the only level that didn’t contain the IslandSettings
actor, the cook validation error did only mentioned that particular level.
I deleted the entries in the GameFeatureData
and re-created them again, which resolved the validation issue on the editor’s side and I could finally remove the IslandSettings0
actor from level_a_after_3430
as well (see the previous outliner image).
When launching the session we will now hit the cook validation issue for both levels.
PlatformCook: Error: We hit an error while cooking this content
PlatformCook: Error: errors.com.epicgames.content-service.cook_failure
PlatformCook: Error: CookJobId:375610d6-dc99-46b9-8cc6-f310b9bee6de
PlatformCook: Error: An error occurred while communicating with the game servers (failed to cook module 56e358d6-4e5d-414c-e43a-70ae96da7530 (artifact a4bbb055-55d1-47c2-a0c3-09dd0432c24c:pc) (cookJobId 375610d6-dc99-46b9-8cc6-f310b9bee6de) with error code errors.com.epicgames.cookplugin.assetvalidationerror).
PlatformCook: Error: AssetCheck: Error: /56e358d6-4e5d-414c-e43a-70ae96da7530/after_3430/level_a_after_3430.level_a_after_3430 Level has 0 Island Settings Devices. Levels should have exactly 1. Unique actors: (ValkyrieValidator_WorldLimits)
PlatformCook: Error: LogCook: Error: /56e358d6-4e5d-414c-e43a-70ae96da7530/after_3430/level_a_after_3430 failed validation
PlatformCook: Error: AssetCheck: Error: /56e358d6-4e5d-414c-e43a-70ae96da7530/after_3430/level_b_after_3430.level_b_after_3430 Level has 0 Island Settings Devices. Levels should have exactly 1. Unique actors: (ValkyrieValidator_WorldLimits)
PlatformCook: Error: LogCook: Error: /56e358d6-4e5d-414c-e43a-70ae96da7530/after_3430/level_b_after_3430 failed validation
PlatformCook: Error: AssetCheck: Error: /56e358d6-4e5d-414c-e43a-70ae96da7530/after_3430/level_a_after_3430.level_a_after_3430 Level has 0 Island Settings Devices. Levels should have exactly 1. Unique actors: (ValkyrieValidator_WorldLimits)
PlatformCook: Error: LogCook: Error: /56e358d6-4e5d-414c-e43a-70ae96da7530/after_3430/level_a_after_3430 failed validation
PlatformCook: Error: AssetCheck: Error: /56e358d6-4e5d-414c-e43a-70ae96da7530/after_3430/level_b_after_3430.level_b_after_3430 Level has 0 Island Settings Devices. Levels should have exactly 1. Unique actors: (ValkyrieValidator_WorldLimits)
PlatformCook: Error: LogCook: Error: /56e358d6-4e5d-414c-e43a-70ae96da7530/after_3430/level_b_after_3430 failed validation
With this, the issue which I now have in my main project, was fully reproduced in an isolated project. I worked on my main project for many month and cannot launch it anymore after fixing the in-editor validation issue, due to an additional cook validation issue.
If I try to upload a private version of this project, we will instantly hit similar validation problem like on the cook’s end.
UEFNValidation: /vz_anomaly_1/after_3430/level_a_after_3430 Validating asset
UEFNValidation: Error: [AssetLog] /vz_anomaly_1/after_3430/level_a_after_3430 : /vz_anomaly_1/after_3430/level_a_after_3430 Level has 0 Island Settings Devices. Levels should have exactly 1. Unique actors: (ValkyrieValidator_WorldLimits). (FortValidator_WorldPartitionActors)
UEFNValidation: Error: /vz_anomaly_1/after_3430/level_a_after_3430 Level has 0 Island Settings Devices. Levels should have exactly 1. Unique actors: (ValkyrieValidator_WorldLimits)
UEFNValidation: /vz_anomaly_1/after_3430/level_b_after_3430 Validating asset
UEFNValidation: Error: [AssetLog] /vz_anomaly_1/after_3430/level_b_after_3430 : /vz_anomaly_1/after_3430/level_b_after_3430 Level has 0 Island Settings Devices. Levels should have exactly 1. Unique actors: (ValkyrieValidator_WorldLimits). (FortValidator_WorldPartitionActors)
UEFNValidation: Error: /vz_anomaly_1/after_3430/level_b_after_3430 Level has 0 Island Settings Devices. Levels should have exactly 1. Unique actors: (ValkyrieValidator_WorldLimits)
Don’t get me wrong, the new / first error message is actually correct and it seems like it does addresses my previous issue report FORT-871013. The problem is that the cook (server-side) seems not to have an updated validation rule set. The cook seems to behave as it was validating on PRE-34.30 rules which force each level to have an IslandSettings
actor.
Either way, the two errors bite each other. If you fix one, it will raise the other issue and vice versa. To further clarify, I am personally fine with having a single IslandSettings
actor in my project, but I still need the ability to compose multiple levels via GameFeatureData
in order to work on things like environment or the landscape individually. This is a very critical workflow.
Please select what you are reporting on:
Unreal Editor for Fortnite
What Type of Bug are you experiencing?
Other
Steps to Reproduce
Shown in the previous images as well as described in the summery.
Additionally you can try the isolated project verse:/velocity_zero@fortnite.com/vz_anomaly_1/
(module: 56e358d6-4e5d-414c-e43a-70ae96da7530
).
Expected Result
-
when composed sub-levels contain an additional
IslandSettings
actor, there should be an error (already the case) -
the
Default Map
should contain only a singleIslandSettings
actor in all composed levels (already the case) -
the cook should not require each level to have an additional
IslandSettings
actor (this is like PRE-34.30 validation state)
Observed Result
Either we run into a validation error on the editor’s side or when fixed we run into cook validation failure (server side). The cook should permit the project that contains multiple levels using Base Maps
array in FortGameFeatureData
and which has exactly 1 IslandSettings
actor!
Platform(s)
UEFN
Additional Notes
As noted before, this issue persists in my main project and prevents me from launching a session.