Summary
Noticed an odd and potentially heavily performance taxing bug while I was bulk editing to add Verse Tag Markup + Tags onto actors. While using the bulk editor as shown in the first screenshots to mass add a tag to actors it seems to result in multiple tags being assigned somehow in the backend/world. Each actor shows only one instance of the verse tag markup and tag within the list, however upon using FindCreativeObjectsWithTag()
these tags are read multiple times, resulting in absurdly large amounts of items within the generator returned (which are not linked to any actors ingame, but do pass/fail attempted casts).
Within the project, I noticed infrequent disconnections upon startup, or longer load times. While debugging I added some code to see if tags were causing any impact, it turned out that from my list of 78 collectible_item_devices, the generator was somehow iterating over 2000 times. Clearing the bulk edited verse tags and manually assigning tags via the editor fixed this and returned the generated length to 78.
As only one instance of the verse tag is shown within the actors details, this can be very confusing for the end user to actually debug/see that it’s an issue in existing maps but if users have added verse tags using the bulk editing tool then I assume this would also be bloating their server performance upon startup/query (maybe just not enough for devs/testers to notice?)
Intended functionality I guess would be to either show these multiple/duplicated tags within the actors in the editor, or ideally scan for duplicated tags on actors and forcefully fix (I cannot see why a user would have duplicated tags), maybe prompt the user to “remove duplicated tags within assets?”.
Images - Also tried uploading here but upload seemed to never stop. UEFN/VERSE ISSUE [BULK EDITING] - Album on Imgur
Please select what you are reporting on:
Unreal Editor for Fortnite
What Type of Bug are you experiencing?
Verse
Steps to Reproduce
Select multiple assets with a valid VerseTagMarkup
component
Right click → Edit Components in Property Matrix → VerseTagMarkupComponent
Within the new window, select all of the Verse Tag components, then add a verse tag that you have defined
Save all
Within verse, call FindCreativeObjectsWithTag(MYTAG{})
and it’ll return an inflated list of objects, which will past casting checks such as Collectible := collectible_object_device[Obj]
This can be casted to an array, or a quick index debug can be added to show the amount of times the loop runs
Expected Result
Either;
Bulk edit tool should correctly only apply one tag per asset
Sanity/safety check prior to map launch that informs the user of multiple duplicated verse tags on an object(s)
Observed Result
With 62 collectible object devices, a verse tag added via bulk-edit returned over 2000 results
Platform(s)
windows
Additional Notes
Images - Also tried uploading here but upload seemed to never stop. UEFN/VERSE ISSUE [BULK EDITING] - Album on Imgur