Possibiility to copy/paste variables, functions, etc between Blueprints

First of all, as with all my recent Feature Requests, I would like to say “thank you” to Epic Games and the Unreal Engine team for providing me and others with such a great tool, as well as its source. I hope my feedback can help improve it.

One of the downsides in using BP currently, as opposed to code, is that copy/pasting variables, functions, event dispatchers between BPs isn’t possible.

In code, you just select some text, copy, paste into a different .cpp file, done. Maybe for some functions also change the namespace by copy-pasting the class name. That’s it, takes ~2 seconds, even for very complex and long functions.

For migrating a variable to a different blueprint, it’s necessary to:

  • Create every variable manually

  • Name it

  • Set the type from a drop-down list

  • Set single/array/set/map

  • Set default value

For functions it’s even worse, as you need to:

  • create the function

  • manually add each input pin, same as vars you have to:

    • name them

    • manually set type from drop down

    • set array/set/map/by-ref

    • set default value

  • manually create each local variable

    • name them

    • manually set type from drop down

    • set array/set/map

    • set default value

  • copy-paste nodes

  • manually reconnect each input pin, checking that you haven’t missed any connections

  • done? oh no, compile errors. why? ah yes…

  • you need to *manually replace all the get/set nodes for all local variables, *as BP doesn’t recognize them from copy-pasted nodes even if they’re the same name and type

Surely this process is way too obtuse, prone to user error, and can easily by optimised. A simple right click -> copy variable/function/dispatcher, right click -> paste would save so much time.

Moreso, there is literally a free open source plugin with its that does this: https://www.unrealengine.com/marketp…-transfer-tool. That means most of the work on the functionality is already there. It’s left just to tie it to a simple UI element in the right-click menu within the editor. The batch migrate window can also be made a part of the editor.

The plugin works very well, and supports all latest engine versions. The feedback is all positive, and there’s a lot of reviews, meaning a lot of people needed this enough to search for it. There are probably way more that needed this, didn’t know a plugin like that existed, and just wasted their time re-creating variables and functions manually. For example, me, until today.

Why not merge the functionality from it into the main editor? I don’t see why this base level ease-of-use stuff isn’t considered essential.

It doesn’t seem like a humongous task, and will make a big part of the user base happy. Please make this a part of the editor by default.

^ This ^ would obviously be useful and should have been fully built-in and expanded long ago. So why didn’t it happen already? The only conclusion I can reach is that license payers haven’t screamed enuff for it. Whereas we: the great unwashed joe-the-fortnite-streamers aren’t worth listening to. So it isn’t a priority for Epic.

Despite all the new hires and all the fortnite billions, plus all the past R&D work on text file formats (search past threads). There’s just no political will to make Blueprints be all they can be. It goes much deeper than that though. Epic have been overly reliant on 3rd-Party developers to fill in gaps in Blueprints for years.

The problem with that is many devs have lost interest and have left the forums / marketplace… BTW: BP-Text File Formats would solve many things including 1. Diff’ing (which is so badly needed)… 2. Adv Find & Replace… 3. Fixing outstanding BP corruption issues etc… 4. Smaller project file sizes (when compressed).

We can probably expect to see BP Text File Formats in UE5. But Epic should have trialed it already in UE4. If 4.19-4.26 was a clusterfck of release builds looking more like previews, then what’s 2021 going to look like: anyone for beta hell??? :stuck_out_tongue: If UE5 is like the first 10 iterations of UE4 then I’ll happily hibernate till 2022!

I would gladly give away ownership of the plug-in to be permanently added built-in to the Editor if Epic would say they want it.

That is very generous of you! Thank you. I really hope this can happen.

4.26 comes with “blueprint refactoring tools”.

Trello card doesn’t explain anything, but dev-framework branch got changelists for Cut/Copy/Paste for variables, functions and macros. AFAIK also a method to move variables to parent blueprint :slight_smile:

Great news if that’s going to be the case. High hopes then, will be waiting for 4.26 release.