You can make tools & stuff, using editor code & assets. That is after all the purpose of the UE Marketplace
But, say you wanted to make a 3D editor inside your game for instance. Or just let people use a transform gizmo to place items inside their game-home. Well you couldn’t re-use the editor for that purpose I believe.
d. Restrictions on Engine Tools
If your Product includes Engine Tools, you may only Distribute it through either the Fab Marketplace, the Unreal Engine Marketplace or through a fork of Epic’s GitHub UnrealEngine Network. “Engine Tools” means the (i) editors and other tools included in the Engine Code; (ii) any code and modules in either the Developer or Editor folders, including in object code format, whether statically or dynamically linked; and (iii) other software that may be used to develop standalone products based on the Licensed Technology.
I know you meant from a technical point of view, but since it’s outside the license agreement, it felt like a good argument to encourage you to discontinue this direction
The way I do it myself is, in build.cs, I use: if (Target.bBuildEditor == true)
before adding my custom editor dependencies.
And in my .uplugin I use the module type “Editor”. I do not actually use “EditorSubsystem” as an AdditionalDependency in the .uproject.
But to be extra clear: Yes, there was a lot of trial and error involved as well! It’s far from intuitive.