Hello there, I think it’s time I post about this topic in this (the apropriate) place.
The FAQ states the following in relation to releasing tools:
What kinds of products can I release
under the Unreal Engine 4 subscription
The only parts of the Unreal
Engine you can’t release to the
general public are the source code and
tools or modifications to them; these
components may only be distributed to
other licensees with access to the
same version of the Unreal Engine.
Can I share the Unreal Engine source
code or tools with others?
share the source code or tools, along
with any modifications you’ve made,
with anyone who is an Unreal Engine
licensee who is authorized to access
the same version of the engine as
yours, e.g. the 4.x.x version number
of your installed build.
this means that if we make a game and want to add mod/editor support, we have two options:
- Tell the public they need to pay $19 for the editor. then either make our code open-source, or code everything as UE4 editor plugins and releasing only the plugins.
- Create a custom editor completely outside of UE4
both solutions come with huge caveats: the first one creates a very high entry barrier by requiring payment and learning of a very complete and complex toolset (for a game that would need more simple modding tools like map editing). the second one implies a huge time investment in the creation of [end-user exclusive] tools, something completely unnatural because the developers already have their tools.
we can already see some division of opinions regarding this topic in the new UT sub-forums, and the potential availability of a free UnrealEd for the new UT isn’t even decided yet.
Still, not everyone can afford to create/market a free game like UT. Some (like myself) might want a community-driven game and can’t afford to lose potential customers/fans because of this entry barrier. Others (like the company I work in, where we use UE3) might be required by their publisher to ship a free editor for their game.
there’s other potential problems as described in this forum topic (which as you know, includes Tim Sweeney’s view on the topic), but I want to focus on a solution here.
now, I remember some topic/post (which I cannot find anymore) where an UnrealEngine employee mentioned something along the lines of “but feel free to use portions of the UnrealEngine code if you wish to create your own editor”
it’s along this lines that I’d want to propose a solution. my idea is a stripped-down version of the engine that we can distribute freely with our games. This version would be locked to the project it ships with (i.e. shouldn’t be compatible with UE4, probably also not with other UE4 titles’ free UEd), and would (IMO) only need to include the following features:
- Landscape editor
- Object placement, movement, etc
- FBX import
- StaticMesh viewer, SkeletalMesh and animation viewer/editor (i.e. apply materials to meshes and such)
- Material Instance editor, no creation of new Materials at all
- Blueprint sub-class editor. Fine with me if it can only edit defaultproperties
- Trigger editor (the equivalent of Kismet). This is the Level blueprint but it has too much features, would need to be stripped
- Particle editor (maybe). Since only MaterialInstances would be supported, the whole usage of Cascade would become severely limited. Perhaps removing some of the cool modules like VectorFields and such, if needed
- Matinee (maybe). RTS games would do without it, while Adventure or Action games might need it but it’s far from being a deal breaker
- No UE4 marketplace, no UE4 plugin support, etc.
- Did I miss something important?
how to do this? by adding a “#if WITH_EDITORFREE” feature flag in a number of places in the code, and then enabling it on compilation. I know I’m oversimplifying it and it would probably come with inter-dependency problems, but that’s the rough idea. Limiting compatibility with UE4 could work via headers in the file system or something similar.
who would do this? it can be done either by:
- Epic (they would have absolute control over what’s included, all the time)
- by the developers on their own (time consuming but probably not as much as writing an editor from scratch, would need validation from Epic all the time)
- As a group/community effort (would produce a ‘general’ version of the FreeUEd that Epic could have control of, and
as a group effort means it could be done faster)
benefits for all developers:
- can ship their game with a free editor.
benefits for Epic:
- UE4 becomes more appealing for game projects that need a free editor
- You can slap “this is a basic version of UE4” all over the place
- Once the mappers learn how to use the editor of SomeGame, they are already past the skillset entry barrier and so they become potential UE4 customers
I hope you give this some thought