Becoming a Unity Asset Store Publisher

You’re now in process of creating your game. Did you make something that could be used again? Is it something that is not easy to build and can be useful for others? That’s great! Sell it on the Unity Asset Store!

Before we start

There are at least two kinds of publishers on the Asset Store. The ones that belong to the first type are people who are creating their content solely for the purpose of selling it. Those people are mostly focused on quality, documentation and support. The second group are game companies that are building assets for internal use but then eventually they are publishing them to the wider audience. Their assets are made for specific games but sometimes they can be reused if the quality is good enough.

It’s more difficult to make money out of artistic assets (models, music, textures) than of script and editor extensions. I don’t know the exact numbers but this topic was frequently discussed on the publishers’ groups. The reason why is that artistic assets, no matter how good they are, are difficult to re-use. Sure, there are environment packs and character packs, but most of the times there will be something missing, something that you’d like to see in your game as a game creator. Mixing multiple models and textures together rarely looks good enough, so many developers decides to hire 3D modelers and graphics designers on their own.

This issue does not affect scripts and editor extensions that much. Scripts can be very flexible and it only depends on good design and amount of time spent on working on it.

How to create a successful script

Many people were asking me if working solely as Asset Store publisher is profitable. It really depends on the products that you’ll be releasing. Some products will be more successful than others. Success is something that may be difficult to measure. For me a successful product is something that I did in relatively small amount of time, it does what it is meant to do, it sells and does not require too much maintenance or support. Some of the best unity assets are those that act as features that the Unity editor itself should include natively.

One example of a successful product is Energy Bar Toolkit – a script for health bars set up of different kind. It does what it is meant to do and it does it well. The good thing about EBT is that for most of my clients this asset offers more than enough. An example of an asset that is not very successful is Mad Mesh Combiner. The idea was quite good, because many Unity developers were struggling with the frame rates on mobile devices due to the big number of draw calls. Unfortunately, I did not predict how much time it would require to make it work properly in most cases. Also, my clients didn’t understand the limitations and many of them were blaming me after purchasing the asset instead of reading through the instructions first.

Generally speaking, think of creating assets that have a clear definition of finished. At least for starters, because it’s easier to become a publisher if you can release more than one product in a short period of time.

Uploading your first asset

So you’ve decided to become a publisher. Brace yourself, there’s a lot to read if you want to handle it all. The best resource is an official guide to how sell assets. Please make sure to read all the listed documents. Read and remember the Submission Guidelines – making it right will surely increase your chance of getting approved.

Make sure that your asset has a decent documentation. For the first version you can do a PDF file generated out of Libre Office document, but as your asset will grow the documentation may become bigger and less coherent. Consider building a HTML documentation with Jekyll. Jekyll is like wiki, but it generates static html files that can be sent to any http server or zipped into a file and distributed along with your asset.

Prepare a decent presentation, but do not spend too much time on it – you can easily append it later! YouTube video is a must-have, having a WebGL demo will help too. Don’t worry too much about the icon and product page background. It’s not as important as you may think.

Do not upload your assets using the latest Unity version available – users of older Unity versions won’t be able to use them. Usually only a newly created games use the newest Unity version. After that, their creators stick to that particular version until the next game. If there’s a significant change between Unity versions that you cannot ignore, you’re allowed to upload your asset from multiple Unity versions. Thanks to this your customer will receive the content that will closely match his setup.

Don’t worry if you get declined for the first few times. Unity guys are very friendly and helpful with getting your asset right. Usually it’s a matter of something that you’ve missed while preparing it for the upload.

Your asset is now online!

After getting approved, set up a forum thread about your asset. It’s a method of marking your presence. Many of your clients will also use it to get the support. It’s a preferred way of providing support, because when someone will search for issue that someone else had, most likely he or she will find one of your answers.

Make sure to reply to all of the email support requests. Even if you don’t know the answer or you’re not planning to add a requested feature the worst thing you can ever do is to ignore your client.

How would you know if a person that is writing to you is your client? You can ask them anytime for order no. (it’s on the invoice). On your publisher panel you can find a verification tool. If the Order No. is OK, you see your asset name, purchase date and for what price it has been purchased.

You can give away up to 12 free copies of your asset a year. Make use of that! I did it when I had released my initial version and I needed some feedback. I gave few away to some people on the forums and I’ve got a great feedback that helped me to improve my tool before the next release.

Then what?

As I said before, it’s difficult to measure a success. Think of releasing at least 3 assets. When you do, you will know enough to evaluate which one is a better investment.

Subscribe to Unity Blog. Stay up to date with the latest features. Test your assets on beta versions before releasing them. You can sometimes find yourself in a situation that new Unity version will break your code. This is your best chance to submit a bug report and get it fixed before it goes public. Trust me, it can save you from a lot of trouble.

If you’re already a publisher or if you want to become one after reading this article, please share your thoughts in the comments!

Links

Myths and Facts of the Unity Game Engine

Unity is only for games

It’s a myth. Of course Unity has been created as a game engine, but it’s so flexible that it is successfully being used in other industries, such as architecture, medicine, and engineering. For an example, see 3RD Planet.

It is the largest online consumer event platform, showcasing the top tourist destinations in each country with Unity 3D.

The Coherentrx SuiteAnother example is The Coherentrx Suite.

CoherentRx is a suite of point-of-care patient education applications that combine realtime 3D anatomy models with HIPAA-compliant doctor-patient messaging. CoherentRx apps currently address ten medical specialties, from orthopedics to opthalmology.

In the Unity Showcase there’s a separate category for non-game applications. Check it out yourself!

Unity is free

It’s a myth, but not entirely. You can download Unity for free. The free (personal) version of Unity has all the features that Unity Professional has (with some small exceptions). When your game is ready, you can publish it and make money out of it! It’s just like that! But if at one point your company exceeds a turnover of $100,000, then you are obligated to purchase the Unity Professional license. It’s not too expensive at that point, because the cost is $1500 US dollars. Sounds really cheap when compared to $100,000, doesn’t it?

The difference between free license and pro license is that in the former one mobile games and web games display a Unity logo for few seconds on startup. It’s not a big deal, but as a professional game developer you may want to get rid of it sometime in the future. Also, you aren’t allowed to use Unity editor pro skin and Cache Server.

You can only do small games with Unity

It’s a myth. The reason why there are so many small games created in Unity is that it is very indie-friendly. Unity does not constrain your game size in any way. You can create a clone of World of Warcraft if you really want to! All scenes can be loaded and merged in the run-time, so player won’t see any loading screens while playing. It’s also not true that Unity performance degrades when you have too much objects on your scene. Of course you have to optimize it in a special way. So it’s all about the experience.

One of the greatest examples of a large-scene and well-optimized Unity game is City Skylines.

Unity is worse than Unreal Engine

It’s a myth, but it really depends on what are your needs (it’s not worse in general). Unity has been always compared to Unreal Engine because the latter always had the upper hand in game development industry. Today the situation is a little different. While Unreal Engine was targeting PC and stationary consoles, Unity took its chances with mobile devices. Unreal was always about big games with stunning visuals, but this approach made it more difficult to learn and use. Unity on the other hand is based on the Mono platform. Thanks to that you can program your games using C# instead of C++ which is quite difficult to learn.

maxresdefault

Unity GDC demo – Adam – Part 1

Today Unity is trying to take over the Unreal Engine market. The first steps were made by Unity 5 graphics enhancements and by the optimization of scripting backend. On GDC 2016 Unity Technologies has published a stunning real-time demo of what Unity 5.3.4 is capable of. From today it will be more and more difficult to tell the difference between Unity and Unreal Engine graphics capabilities.

You don’t need programming knowledge to use Unity

It’s a fact. It’s easier when you have at least some programming knowledge, but you can easily build a complete game without it. One of the most popular editor extensions on the Asset Store is Playmaker. Playmaker allows you to build finite-state machines that will drive your entire game logic, and it does it well! If you need a good reference, then Dreamfall Chapters is a damn good one!

playmaker screen

Because of this fact many people may consider Unity as a toy rather than a serious tool for creating games. The truth is that Unity can be used by everyone, regardless of your skills!

You cannot spawn threads in Unity

Again, it’s a myth. Many people are confusing Unity coroutines with threads. Let’s get this straight: Coroutines have nothing to do with threads. Coroutine is only a way to delay code execution without too much effort. It’s really a great method of writing game code when some routines are needed to be executed in sequence over a time (like animations), but everything is still done in a single thread.

Yet you can create threads in Unity. You will not find too much about it in the official documentation, because there’s not much to be said. All you need to know is that Unity API is not thread safe, but it is a good thing! To learn more about how to use threads in Unity please read our article about threads.

All Unity games looks the same

It’s a myth, of course. Every developer who decides to use one game engine or another is asking himself a question how this game engine will help him and how it will constrain his ideas.  Unity is quite interesting because it’s easy to learn and hard to master. Yet if you will master it you will realize that you can do almost anything with it! You can even create your own game engine within! If you’re still wondering if Unity constrains your creativity, stop right now. It doesn’t!

You need to know that many of Unity components (like physics) can be replaced by anything you want. There’s no requirement of Unity game using components provided by Unity. This is a great deal if you have very specific needs.

Unity has a lot of bugs

It’s a fact. Since Unity 5 the developers were rushing forward with new features, but with a cost of stability. On GCD 2016 current Unity CEO John Riccitiello announced that Unity will take a road of increasing Unity releases’ quality. At the time Unity 5.3.4 has been released and Unity 5.4 entered a beta stage. Let’s hope for the best, because we all need a tool that is as stable as possible, and lately there was a serious fear of upgrading to a new release that could be heard in Unity community.

Editor Console Pro on the Unity Asset Store

Asset Review – Editor Console Pro

We’re starting a new series! Once in a while The Knights of Unity will be reviewing assets from the Asset Store. In the first post we will take a closer look at Editor Console Pro.

editor console pro in the Unity Asset Store

Overview

Editor Console Pro is an Unity editor extension and a replacement for standard Unity console window. Its primary objective is to make the best of Unity logs. The hottest feature is probably the ability to display source code snippets instead of raw backtrace file names and line numbers.

editor console pro screenshot 1

The first thing you may want to do after seeing the backtrace is going to source files and seeing where and how the log has been produced (or exception occurred.) It’s such a common thing to do that after you realize that displaying code snippets instead of line numbers works much better, you’ll wonder why haven’t you used it before! What’s more, clicking on any visible code line will take you directly to that place!

Another great feature is log filtering. Big games typically have lots of logs. Sometimes they may be used to debug a specific behavior and sometimes there are log messages that (maybe) should be there, but are not necessarily visible to you every time. For these and any other cases you can set up a filter. You are able to submit a quick filter (the filtering text input is always visible,) or define custom filters to be displayed right next to standard filters (these are Log, Warn, Error and Exception).

editor console pro quick filter

If this is not enough, can save your filters to preferences file, so when you’ll be working on a single project with other people, you’ll be able to share your filters with them!

There is also a special kind of filters called simply Ignore. It can be found in preferences window.

editor console pro ignore

Logs filtered with the use of these conditions will not be displayed in the console window. This will help you to hide logs you don’t want to see.

ECP is highly customizable as well. You can choose your own font, font size, decide which columns should be visible. There are also other options that you will find in the preferences window.

The quality

Editor Console Pro asset is distributed as a DLL library. It’s a wise choice for editor extensions, because it works even when Unity fails to compile project scripts when started. The downside is that the source code is not available for the customer.

I never had any issues with Editor Console Pro except one. Prior to Unity 5 you could only set one log callback (for getting log messages from inside the engine). By trying to read the logs you were forced to remove any previously set callback. No need to mention that ECP was using this particular callback to get the logs for itself. This gave me a serious headache for a short period.

The documentation

This type of asset does not need a lot of documentation, but one short readme file is, to be honest, too little. It would be nice of the author if he could prepare an illustrated PDF or more web page content.

Summary

 

Asset Store URL: https://www.assetstore.unity3d.com/en/#!/content/11889?aid=1011lGBH

Pros

  • Great quality
  • Actively supported
  • Low price ($30)
  • Really makes a difference

Cons

  • No sources, only dll
  • Documentation could be better

Score: 8 / 10